dendrite/syncapi/sync
kegsay b3162755a9
bugfix: fix race condition when updating presence via /sync (#2470)
* bugfix: fix race condition when updating presence via /sync

Previously when presence is updated via /sync, we would send the presence update
asyncly via NATS. This created a race condition:
 - If the presence update is processed quickly, the /sync which triggered the presence
   update would see an online presence.
 - If the presence update was processed slowly, the /sync which triggered the presence
   update would see an offline presence.

This is the root cause behind the flakey sytest: 'User sees their own presence in a sync'.

The fix is to ensure we update the database/advance the stream position synchronously
for local users.

* Bugfix for test
2022-05-17 15:53:08 +01:00
..
request.go Use a value that is Go 1.16-friendly 2022-04-26 17:05:31 +01:00
requestpool_test.go bugfix: fix race condition when updating presence via /sync (#2470) 2022-05-17 15:53:08 +01:00
requestpool.go bugfix: fix race condition when updating presence via /sync (#2470) 2022-05-17 15:53:08 +01:00