0
0
Fork 0
mirror of https://github.com/matrix-org/dendrite synced 2024-11-16 06:41:06 +01:00
dendrite/federationsender/storage/postgres
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
..
joined_hosts_table.go Rehuffle where things are in the internal package (#1122) 2020-06-12 14:55:57 +01:00
queue_json_table.go Persistent federation sender queues (PDUs) (#1173) 2020-07-01 11:46:38 +01:00
queue_pdus_table.go Persistent federation sender queues (PDUs) (#1173) 2020-07-01 11:46:38 +01:00
room_table.go Rehuffle where things are in the internal package (#1122) 2020-06-12 14:55:57 +01:00
storage.go Persistent federation sender queues (PDUs) (#1173) 2020-07-01 11:46:38 +01:00