diff --git a/changelog.d/10291.bugfix b/changelog.d/10291.bugfix
new file mode 100644
index 0000000000000000000000000000000000000000..7ebda7cdc29c7c46aeca01c299c276d726cf07a9
--- /dev/null
+++ b/changelog.d/10291.bugfix
@@ -0,0 +1 @@
+Fix a long-standing bug where Synapse would return errors after 2<sup>31</sup> events were handled by the server.
diff --git a/synapse/storage/schema/main/delta/60/01recreate_stream_ordering.sql.postgres b/synapse/storage/schema/main/delta/60/01recreate_stream_ordering.sql.postgres
index b5fb763ddd73ccb82c9511cbda5e562c7cedff81..0edc9fe7a27cc7acfea74116ca1956f836307dde 100644
--- a/synapse/storage/schema/main/delta/60/01recreate_stream_ordering.sql.postgres
+++ b/synapse/storage/schema/main/delta/60/01recreate_stream_ordering.sql.postgres
@@ -42,4 +42,4 @@ INSERT INTO background_updates (ordering, update_name, progress_json, depends_on
 
 -- ... and another to do the switcheroo
 INSERT INTO background_updates (ordering, update_name, progress_json, depends_on) VALUES
-  (6003, 'replace_stream_ordering_column', '{}', 'index_stream_ordering2_ts');
+  (6001, 'replace_stream_ordering_column', '{}', 'index_stream_ordering2_ts');