Skip to content
This repository was archived by the owner on Apr 12, 2024. It is now read-only.

Commit 6fdf577

Browse files
authored
Add new sequences to port DB script (#8387)
1 parent ac11fcb commit 6fdf577

File tree

2 files changed

+25
-0
lines changed

2 files changed

+25
-0
lines changed

changelog.d/8387.feature

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
Add experimental support for sharding event persister.

scripts/synapse_port_db

Lines changed: 24 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -628,6 +628,7 @@ class Porter(object):
628628
self.progress.set_state("Setting up sequence generators")
629629
await self._setup_state_group_id_seq()
630630
await self._setup_user_id_seq()
631+
await self._setup_events_stream_seqs()
631632

632633
self.progress.done()
633634
except Exception as e:
@@ -804,6 +805,29 @@ class Porter(object):
804805

805806
return self.postgres_store.db_pool.runInteraction("setup_user_id_seq", r)
806807

808+
def _setup_events_stream_seqs(self):
809+
def r(txn):
810+
txn.execute("SELECT MAX(stream_ordering) FROM events")
811+
curr_id = txn.fetchone()[0]
812+
if curr_id:
813+
next_id = curr_id + 1
814+
txn.execute(
815+
"ALTER SEQUENCE events_stream_seq RESTART WITH %s", (next_id,)
816+
)
817+
818+
txn.execute("SELECT -MIN(stream_ordering) FROM events")
819+
curr_id = txn.fetchone()[0]
820+
if curr_id:
821+
next_id = curr_id + 1
822+
txn.execute(
823+
"ALTER SEQUENCE events_backfill_stream_seq RESTART WITH %s",
824+
(next_id,),
825+
)
826+
827+
return self.postgres_store.db_pool.runInteraction(
828+
"_setup_events_stream_seqs", r
829+
)
830+
807831

808832
##############################################
809833
# The following is simply UI stuff

0 commit comments

Comments
 (0)