diff options
author | Erik Johnston <erik@matrix.org> | 2020-10-02 12:22:19 +0100 |
---|---|---|
committer | GitHub <noreply@github.com> | 2020-10-02 12:22:19 +0100 |
commit | 695240d34a9dd1c34379ded1fbbbe42a1850549e (patch) | |
tree | b8ab12b922cf6217e91baf279db02607f267cdfa | |
parent | Convert additional templates to Jinja (#8444) (diff) | |
download | synapse-695240d34a9dd1c34379ded1fbbbe42a1850549e.tar.xz |
Fix DB query on startup for negative streams. (#8447)
For negative streams we have to negate the internal stream ID before querying the DB. The effect of this bug was to query far too many rows, slowing start up time, but we would correctly filter the results afterwards so there was no ill effect.
-rw-r--r-- | changelog.d/8447.bugfix | 1 | ||||
-rw-r--r-- | synapse/storage/util/id_generators.py | 2 |
2 files changed, 2 insertions, 1 deletions
diff --git a/changelog.d/8447.bugfix b/changelog.d/8447.bugfix new file mode 100644 index 0000000000..88edaf322e --- /dev/null +++ b/changelog.d/8447.bugfix @@ -0,0 +1 @@ +Fix DB query on startup for negative streams which caused long start up times. Introduced in #8374. diff --git a/synapse/storage/util/id_generators.py b/synapse/storage/util/id_generators.py index 02fbb656e8..48efbb5067 100644 --- a/synapse/storage/util/id_generators.py +++ b/synapse/storage/util/id_generators.py @@ -341,7 +341,7 @@ class MultiWriterIdGenerator: "cmp": "<=" if self._positive else ">=", } sql = self._db.engine.convert_param_style(sql) - cur.execute(sql, (min_stream_id,)) + cur.execute(sql, (min_stream_id * self._return_factor,)) self._persisted_upto_position = min_stream_id |