Fix off-by-one-error in synapse_port_db (#9991)

fixes #9979
pull/10055/head
Richard van der Hoff 2021-05-24 14:03:00 +01:00 committed by GitHub
parent c0df6bae06
commit daca7b2794
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
5 changed files with 10 additions and 9 deletions

View File

@ -3,7 +3,7 @@
# CI's Docker setup at the point where this file is considered. # CI's Docker setup at the point where this file is considered.
server_name: "localhost:8800" server_name: "localhost:8800"
signing_key_path: "/src/.buildkite/test.signing.key" signing_key_path: ".buildkite/test.signing.key"
report_stats: false report_stats: false
@ -16,6 +16,4 @@ database:
database: synapse database: synapse
# Suppress the key server warning. # Suppress the key server warning.
trusted_key_servers: trusted_key_servers: []
- server_name: "matrix.org"
suppress_key_server_warning: true

View File

@ -33,6 +33,10 @@ scripts-dev/update_database --database-config .buildkite/sqlite-config.yaml
echo "+++ Run synapse_port_db against test database" echo "+++ Run synapse_port_db against test database"
coverage run scripts/synapse_port_db --sqlite-database .buildkite/test_db.db --postgres-config .buildkite/postgres-config.yaml coverage run scripts/synapse_port_db --sqlite-database .buildkite/test_db.db --postgres-config .buildkite/postgres-config.yaml
# We should be able to run twice against the same database.
echo "+++ Run synapse_port_db a second time"
coverage run scripts/synapse_port_db --sqlite-database .buildkite/test_db.db --postgres-config .buildkite/postgres-config.yaml
##### #####
# Now do the same again, on an empty database. # Now do the same again, on an empty database.

View File

@ -3,7 +3,7 @@
# schema and run background updates on it. # schema and run background updates on it.
server_name: "localhost:8800" server_name: "localhost:8800"
signing_key_path: "/src/.buildkite/test.signing.key" signing_key_path: ".buildkite/test.signing.key"
report_stats: false report_stats: false
@ -13,6 +13,4 @@ database:
database: ".buildkite/test_db.db" database: ".buildkite/test_db.db"
# Suppress the key server warning. # Suppress the key server warning.
trusted_key_servers: trusted_key_servers: []
- server_name: "matrix.org"
suppress_key_server_warning: true

1
changelog.d/9991.bugfix Normal file
View File

@ -0,0 +1 @@
Fix a bug introduced in v1.26.0 which meant that `synapse_port_db` would not correctly initialise some postgres sequences, requiring manual updates afterwards.

View File

@ -959,7 +959,7 @@ class Porter(object):
def r(txn): def r(txn):
txn.execute( txn.execute(
"ALTER SEQUENCE event_auth_chain_id RESTART WITH %s", "ALTER SEQUENCE event_auth_chain_id RESTART WITH %s",
(curr_chain_id,), (curr_chain_id + 1,),
) )
if curr_chain_id is not None: if curr_chain_id is not None: