You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
This commit was created on GitHub.com and signed with GitHub’s verified signature.
The key has expired.
Features
NATS JetStream is now used instead of Kafka and Naffka
For monolith deployments, a built-in NATS Server is embedded into Dendrite or a standalone NATS Server deployment can be optionally used instead
For polylith deployments, a standalone NATS Server deployment is required
Requires the version 2 configuration file — please see the new dendrite-config.yaml sample config file
Kafka and Naffka are no longer supported as of this release
The roomserver is now responsible for fetching missing events and state instead of the federation API
Removes a number of race conditions between the federation API and roomserver, which reduces duplicate work and overall lowers CPU usage
The roomserver input API is now strictly ordered with support for asynchronous requests, smoothing out incoming federation significantly
Consolidated the federation API, federation sender and signing key server into a single component
If multiple databases are used, tables for the federation sender and signing key server should be merged into the federation API database (table names have not changed)
Device list synchronisation is now database-backed rather than using the now-removed Kafka logs
Fixes
The code for fetching missing events and state now correctly identifies when gaps in history have been closed, so federation traffic will consume less CPU and memory than before
The stream position is now correctly advanced when typing notifications time out in the sync API
Event NIDs are now correctly returned when persisting events in the roomserver in SQLite mode
The built-in SQLite was updated to version 3.37.0 as a result
The /event_auth endpoint now strictly returns the auth chain for the requested event without loading the room state, which should reduce spikes in memory usage
Filters are now correctly sent when using federated public room directories (contributed by S7evinK)
Login usernames are now squashed to lower-case (contributed by BernardZhao)
The logs should no longer be flooded with Failed to get server ACLs for room warnings at startup
Backfilling will now attempt federation as a last resort when trying to retrieve missing events from the database fails