0
0
Fork 0
mirror of https://github.com/matrix-org/dendrite synced 2024-12-15 06:53:44 +01:00
dendrite/federationapi/routing
kegsay 6de29c1cd2
bugfix: E2EE device keys could sometimes not be sent to remote servers (#2466)
* Fix flakey sytest 'Local device key changes get to remote servers'

* Debug logs

* Remove internal/test and use /test only

Remove a lot of ancient code too.

* Use FederationRoomserverAPI in more places

* Use more interfaces in federationapi; begin adding regression test

* Linting

* Add regression test

* Unbreak tests

* ALL THE LOGS

* Fix a race condition which could cause events to not be sent to servers

If a new room event which rewrites state arrives, we remove all joined hosts
then re-calculate them. This wasn't done in a transaction so for a brief period
we would have no joined hosts. During this interim, key change events which arrive
would not be sent to destination servers. This would sporadically fail on sytest.

* Unbreak new tests

* Linting
2022-05-17 13:23:35 +01:00
..
backfill.go Define component interfaces based on consumers (2/2) (#2425) 2022-05-05 19:30:38 +01:00
devices.go Clean up interface definitions (#2427) 2022-05-06 12:39:26 +01:00
eventauth.go Define component interfaces based on consumers (2/2) (#2425) 2022-05-05 19:30:38 +01:00
events.go Define component interfaces based on consumers (2/2) (#2425) 2022-05-05 19:30:38 +01:00
invite.go Define component interfaces based on consumers (2/2) (#2425) 2022-05-05 19:30:38 +01:00
join.go Define component interfaces based on consumers (2/2) (#2425) 2022-05-05 19:30:38 +01:00
keys.go Clean up interface definitions (#2427) 2022-05-06 12:39:26 +01:00
leave.go Define component interfaces based on consumers (2/2) (#2425) 2022-05-05 19:30:38 +01:00
missingevents.go Define component interfaces based on consumers (2/2) (#2425) 2022-05-05 19:30:38 +01:00
openid.go Define component interfaces based on consumers (2/2) (#2425) 2022-05-05 19:30:38 +01:00
peek.go Define component interfaces based on consumers (2/2) (#2425) 2022-05-05 19:30:38 +01:00
profile.go Define component interfaces based on consumers (2/2) (#2425) 2022-05-05 19:30:38 +01:00
publicrooms.go Define component interfaces based on consumers (2/2) (#2425) 2022-05-05 19:30:38 +01:00
query.go bugfix: E2EE device keys could sometimes not be sent to remote servers (#2466) 2022-05-17 13:23:35 +01:00
routing.go bugfix: E2EE device keys could sometimes not be sent to remote servers (#2466) 2022-05-17 13:23:35 +01:00
send.go bugfix: E2EE device keys could sometimes not be sent to remote servers (#2466) 2022-05-17 13:23:35 +01:00
send_test.go bugfix: E2EE device keys could sometimes not be sent to remote servers (#2466) 2022-05-17 13:23:35 +01:00
state.go Define component interfaces based on consumers (2/2) (#2425) 2022-05-05 19:30:38 +01:00
threepid.go bugfix: E2EE device keys could sometimes not be sent to remote servers (#2466) 2022-05-17 13:23:35 +01:00
version.go Version imprint (#1383) 2020-09-02 16:18:08 +01:00