summary refs log tree commit diff
path: root/synapse
diff options
context:
space:
mode:
authorMatthew Hodgson <matthew@matrix.org>2018-01-09 16:25:04 +0000
committerMatthew Hodgson <matthew@matrix.org>2018-01-09 16:25:04 +0000
commit19f9227643b5099666878de33453bbe361f216fc (patch)
tree444a21c3268d13d3a4277fcd07e4417bdabdcbf5 /synapse
parentMerge pull request #2683 from seckrv/fix_pwd_auth_prov_typo (diff)
downloadsynapse-19f9227643b5099666878de33453bbe361f216fc.tar.xz
avoid 80s GIN inserts by tweaking work_mem
see https://github.com/matrix-org/synapse/issues/2753 for details
Diffstat (limited to 'synapse')
-rw-r--r--synapse/storage/search.py4
1 files changed, 4 insertions, 0 deletions
diff --git a/synapse/storage/search.py b/synapse/storage/search.py

index 479b04c636..7b1166f417 100644 --- a/synapse/storage/search.py +++ b/synapse/storage/search.py
@@ -106,6 +106,7 @@ class SearchStore(BackgroundUpdateStore): event_search_rows.append((event_id, room_id, key, value)) if isinstance(self.database_engine, PostgresEngine): + txn.execute("SET work_mem='256KB'") sql = ( "INSERT INTO event_search (event_id, room_id, key, vector)" " VALUES (?,?,?,to_tsvector('english', ?))" @@ -123,6 +124,9 @@ class SearchStore(BackgroundUpdateStore): clump = event_search_rows[index:index + INSERT_CLUMP_SIZE] txn.executemany(sql, clump) + if isinstance(self.database_engine, PostgresEngine): + txn.execute("RESET work_mem") + progress = { "target_min_stream_id_inclusive": target_min_stream_id, "max_stream_id_exclusive": min_stream_id,