dendrite/cmd
Neil Alexander 42dd962425
Persistent federation sender queues (PDUs) (#1173)
* Initial work on persistent queues

* Update index for event ID and server name

* Put things into database (postgres for now)

* Duplicate postgres code into sqlite for now just to stop build errors, will fix SQLite soon

* Fix table name

* Fix index

* Fix table name

* Use RETURNING because LastInsertID is not supported by postgres

* Use functions

* Marshal headered event

* Don't error on now rows

* Don't block if there are PDUs waiting

* Try to tidy up JSON

* Debug logging

* Fix query, use transactions in postgres

* Clean up

* Rehydrate more opportunistically

* Fix SQLite

* remove unused types

* Review comments

* Shuffle things around a bit

* Clean up transaction properly

* Don't send empty transactions

* Reduce unnecessary retries

* Count PDUs to make more resilient

* Don't stop when there is work to be done

* Try to limit wakeups

* well this is tedious

* Fix race in incomplete transactions

* Thread safety on transaction ID/count
2020-07-01 11:46:38 +01:00
..
client-api-proxy Remove trailing slash in client api proxy (#1163) 2020-06-25 12:27:09 +01:00
create-account Move account/device DBs to userapi (#1141) 2020-06-17 12:05:56 +01:00
create-room-events Fix rooms v3 url paths for good - with tests (#1130) 2020-06-15 16:57:59 +01:00
dendrite-appservice-server BREAKING: Make eduserver/appservice use userapi (#1138) 2020-06-16 17:39:56 +01:00
dendrite-client-api-server Remove membership table from account DB (#1172) 2020-06-30 13:34:59 +01:00
dendrite-demo-libp2p Persistent federation sender queues (PDUs) (#1173) 2020-07-01 11:46:38 +01:00
dendrite-demo-yggdrasil Persistent federation sender queues (PDUs) (#1173) 2020-07-01 11:46:38 +01:00
dendrite-edu-server BREAKING: Make eduserver/appservice use userapi (#1138) 2020-06-16 17:39:56 +01:00
dendrite-federation-api-server Make federationapi use userapi (#1135) 2020-06-16 14:53:19 +01:00
dendrite-federation-sender-server Rehuffle where things are in the internal package (#1122) 2020-06-12 14:55:57 +01:00
dendrite-key-server Make userapi responsible for checking access tokens (#1133) 2020-06-16 14:10:55 +01:00
dendrite-media-api-server Fix media API for demos and possibly Synapse (#1134) 2020-06-16 14:29:11 +01:00
dendrite-monolith-server Remove membership table from account DB (#1172) 2020-06-30 13:34:59 +01:00
dendrite-public-rooms-api-server Make userapi responsible for checking access tokens (#1133) 2020-06-16 14:10:55 +01:00
dendrite-room-server Rehuffle where things are in the internal package (#1122) 2020-06-12 14:55:57 +01:00
dendrite-server-key-api-server Rehuffle where things are in the internal package (#1122) 2020-06-12 14:55:57 +01:00
dendrite-sync-api-server Make syncapi use userapi (#1136) 2020-06-16 17:05:38 +01:00
dendrite-user-api-server Add appservices component to docker scripts (#1153) 2020-06-20 21:28:30 +01:00
dendritejs Remove membership table from account DB (#1172) 2020-06-30 13:34:59 +01:00
federation-api-proxy Separate muxes for public and internal APIs (#1056) 2020-05-22 11:43:17 +01:00
generate-keys Fix #897 and shuffle directory around (#1054) 2020-05-21 14:40:13 +01:00
kafka-producer Fix sarama import URLs (#856) 2020-04-22 15:26:56 +01:00
mediaapi-integration-tests Fix #897 and shuffle directory around (#1054) 2020-05-21 14:40:13 +01:00
roomserver-integration-tests More server key updates, tests (#1129) 2020-06-16 13:11:20 +01:00
syncserver-integration-tests Fix #897 and shuffle directory around (#1054) 2020-05-21 14:40:13 +01:00