summary refs log tree commit diff
path: root/synapse/config/database.py
diff options
context:
space:
mode:
authorToni Spets <toni.spets@iki.fi>2021-08-02 16:24:43 +0300
committerGitHub <noreply@github.com>2021-08-02 13:24:43 +0000
commitba5287f5e8be150551824493b3ad685dde00a543 (patch)
treecb8b765fa310c52e4c84a704327b38fe3055891a /synapse/config/database.py
parentFix deb build script to set prerelease flag correctly (#10500) (diff)
downloadsynapse-ba5287f5e8be150551824493b3ad685dde00a543.tar.xz
Allow setting transaction limit for db connections (#10440)
Setting the value will help PostgreSQL free up memory by recycling
the connections in the connection pool.

Signed-off-by: Toni Spets <toni.spets@iki.fi>
Diffstat (limited to 'synapse/config/database.py')
-rw-r--r--synapse/config/database.py4
1 files changed, 4 insertions, 0 deletions
diff --git a/synapse/config/database.py b/synapse/config/database.py
index 3d7d92f615..651e31b576 100644
--- a/synapse/config/database.py
+++ b/synapse/config/database.py
@@ -33,6 +33,9 @@ DEFAULT_CONFIG = """\
 # 'name' gives the database engine to use: either 'sqlite3' (for SQLite) or
 # 'psycopg2' (for PostgreSQL).
 #
+# 'txn_limit' gives the maximum number of transactions to run per connection
+# before reconnecting. Defaults to 0, which means no limit.
+#
 # 'args' gives options which are passed through to the database engine,
 # except for options starting 'cp_', which are used to configure the Twisted
 # connection pool. For a reference to valid arguments, see:
@@ -53,6 +56,7 @@ DEFAULT_CONFIG = """\
 #
 #database:
 #  name: psycopg2
+#  txn_limit: 10000
 #  args:
 #    user: synapse_user
 #    password: secretpassword