From 06a905fcdfcf8927b9d02d598adeb9011871bae1 Mon Sep 17 00:00:00 2001
From: reivilibre allowed_lifetime_min
and allowed_lifetime_max
conf
which are older than the room's maximum retention period. Synapse will also
filter events received over federation so that events that should have been
purged are ignored and not stored again.
The message retention policies feature is disabled by default. Please be advised +
The message retention policies feature is disabled by default. Please be advised that enabling this feature carries some risk. There are known bugs with the implementation which can cause database corruption. Setting retention to delete older history is less risky than deleting newer history but in general caution is advised when enabling this @@ -5979,7 +5979,7 @@ which is set to the claims returned by the UserInfo Endpoint and/or in the ID Token.
backchannel_logout_enabled
: set to true
to process OIDC Back-Channel Logout notifications.
+
backchannel_logout_enabled
: set to true
to process OIDC Back-Channel Logout notifications.
Those notifications are expected to be received on /_synapse/client/oidc/backchannel_logout
.
Defaults to false
.
worker_replication_secret
A shared secret used by the replication APIs on the main process to authenticate HTTP requests from workers.
-The default, this value is omitted (equivalently null
), which means that
+
The default, this value is omitted (equivalently null
), which means that
traffic between the workers and the main process is not authenticated.
Example configuration:
worker_replication_secret: "secret_secret"
start_pushers
Unnecessary to set if using pusher_instances
with generic_workers
.
Controls sending of push notifications on the main process. Set to false
if using a pusher worker. Defaults to true
.
Example configuration:
@@ -6655,21 +6656,24 @@ if using a puspusher_instances
It is possible to run multiple pusher workers,
-in which case the work is balanced across them. Use this setting to list the pushers by
-worker_name
. Ensure the main process and all pusher workers are
-restarted after changing this option.
If no or only one pusher worker is configured, this setting is not necessary.
-The main process will send out push notifications by default if you do not disable
-it by setting start_pushers: false
.
Example configuration:
-start_pushers: false
-pusher_instances:
+It is possible to scale the processes that handle sending push notifications to sygnal
+and email by running a generic_worker
and adding it's worker_name
to
+a pusher_instances
map. Doing so will remove handling of this function from the main
+process. Multiple workers can be added to this map, in which case the work is balanced
+across them. Ensure the main process and all pusher workers are restarted after changing
+this option.
+Example configuration for a single worker:
+pusher_instances:
+ - pusher_worker1
+
+And for multiple workers:
+pusher_instances:
- pusher_worker1
- pusher_worker2
send_federation
+Unnecessary to set if using federation_sender_instances
with generic_workers
.
Controls sending of outbound federation transactions on the main process.
Set to false
if using a federation sender worker.
Defaults to true
.
@@ -6678,25 +6682,31 @@ Defaults to true
.
federation_sender_instances
It is possible to run multiple -federation sender worker, in which -case the work is balanced across them. Use this setting to list the senders.
-This configuration setting must be shared between all federation sender workers, and if -changed all federation sender workers must be stopped at the same time and then -started, to ensure that all instances are running with the same config (otherwise +
It is possible to scale the processes that handle sending outbound federation requests
+by running a generic_worker
and adding it's worker_name
to
+a federation_sender_instances
map. Doing so will remove handling of this function from
+the main process. Multiple workers can be added to this map, in which case the work is
+balanced across them.
This configuration setting must be shared between all workers handling federation +sending, and if changed all federation sender workers must be stopped at the same time +and then started, to ensure that all instances are running with the same config (otherwise events may be dropped).
-Example configuration:
-send_federation: false
-federation_sender_instances:
+Example configuration for a single worker:
+federation_sender_instances:
+ - federation_sender1
+
+And for multiple workers:
+federation_sender_instances:
- federation_sender1
+ - federation_sender2
instance_map
When using workers this should be a map from worker_name
to the
HTTP replication listener of the worker, if configured.
-Each worker declared under stream_writers
needs
+Each worker declared under stream_writers
needs
a HTTP replication listener, and that listener should be included in the instance_map
.
-(The main process also needs an HTTP replication listener, but it should not be
+(The main process also needs an HTTP replication listener, but it should not be
listed in the instance_map
.)
Example configuration:
instance_map:
@@ -6797,8 +6807,8 @@ See worker_listeners
-A worker can handle HTTP requests. To do so, a worker_listeners
option
-must be declared, in the same way as the listeners
option
+
A worker can handle HTTP requests. To do so, a worker_listeners
option
+must be declared, in the same way as the listeners
option
in the shared config.
Workers declared in stream_writers
will need to include a
replication
listener here, in order to accept internal HTTP requests from
@@ -6813,7 +6823,7 @@ other workers.
worker_daemonize
Specifies whether the worker should be started as a daemon process.
-If Synapse is being managed by systemd, this option
+If Synapse is being managed by systemd, this option
must be omitted or set to false
.
Defaults to false
.
Example configuration:
@@ -6821,10 +6831,10 @@ must be omitted or set to false
.
worker_pid_file
-When running a worker as a daemon, we need a place to store the
+
When running a worker as a daemon, we need a place to store the
PID of the worker.
This option defines the location of that "pid file".
-This option is required if worker_daemonize
is true
and ignored
+
This option is required if worker_daemonize
is true
and ignored
otherwise. It has no default.
See also the pid_file
option option for the main Synapse process.
Example configuration:
@@ -10602,6 +10612,8 @@ after setting this option in the shared configuration!
This style of configuration supersedes the legacy synapse.app.appservice
worker application type.
synapse.app.pusher
+It is likely this option will be deprecated in the future and is not recommended for new
+installations. Instead, use synapse.app.generic_worker
with the pusher_instances
.
Handles sending push notifications to sygnal and email. Doesn't handle any
REST endpoints itself, but you should set
start_pushers: false
in the
@@ -10633,6 +10645,8 @@ REST endpoints itself, but you should set notify_appservices: False
shared configuration file to stop the main synapse sending appservice notifications.
Note this worker cannot be load-balanced: only one instance should be active.
synapse.app.federation_sender
+It is likely this option will be deprecated in the future and not recommended for
+new installations. Instead, use synapse.app.generic_worker
with the federation_sender_instances
.
Handles sending federation traffic to other servers. Doesn't handle any
REST endpoints itself, but you should set
send_federation: false
@@ -10724,7 +10738,9 @@ equivalent to synapse.app.generic_worker
:
synapse.app.client_reader
synapse.app.event_creator
synapse.app.federation_reader
+synapse.app.federation_sender
synapse.app.frontend_proxy
+synapse.app.pusher
synapse.app.synchrotron
Migration from old config
--
cgit 1.4.1