This repository has been archived by the owner on Apr 26, 2024. It is now read-only.
-
-
Notifications
You must be signed in to change notification settings - Fork 2.1k
Delete event_push_summary_unique_index again. #14669
Merged
+34
−9
Merged
Changes from all commits
Commits
Show all changes
5 commits
Select commit
Hold shift + click to select a range
4d367ef
Delete the obsolete index again.
clokep 6205d2b
Newsfragment
clokep 11e3395
Merge remote-tracking branch 'origin/develop' into clokep/thread-inde…
clokep 8d97536
Also drop the older index and remove the background update handler.
clokep b30cf7a
Fix comment.
clokep File filter
Filter by extension
Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1 @@ | ||
Fix a bug introduced in Synapse 1.70.0 which could cause spurious `UNIQUE constraint failed` errors in the `rotate_notifs` background job. |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
33 changes: 33 additions & 0 deletions
33
synapse/storage/schema/main/delta/73/23_fix_thread_index.sql
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,33 @@ | ||
/* Copyright 2022 The Matrix.org Foundation C.I.C | ||
* | ||
* Licensed under the Apache License, Version 2.0 (the "License"); | ||
* you may not use this file except in compliance with the License. | ||
* You may obtain a copy of the License at | ||
* | ||
* http://www.apache.org/licenses/LICENSE-2.0 | ||
* | ||
* Unless required by applicable law or agreed to in writing, software | ||
* distributed under the License is distributed on an "AS IS" BASIS, | ||
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. | ||
* See the License for the specific language governing permissions and | ||
* limitations under the License. | ||
*/ | ||
|
||
-- If a Synapse deployment made a large jump in versions (from < 1.62.0 to >= 1.70.0) | ||
-- in a single upgrade then it might be possible for the event_push_summary_unique_index | ||
-- to be created in the background from delta 71/02event_push_summary_unique.sql after | ||
-- delta 73/06thread_notifications_thread_id_idx.sql is executed, causing it to | ||
-- not drop the event_push_summary_unique_index index. | ||
-- | ||
-- See https://github.com/matrix-org/synapse/issues/14641 | ||
|
||
-- Stop the index from being scheduled for creation in the background. | ||
DELETE FROM background_updates WHERE update_name = 'event_push_summary_unique_index'; | ||
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. I sanity checked to see if we need to update There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. Good idea. Thanks for checking! |
||
|
||
-- The above background job also replaces another index, so ensure that side-effect | ||
-- is applied. | ||
DROP INDEX IF EXISTS event_push_summary_user_rm; | ||
|
||
-- Fix deployments which ran the 73/06thread_notifications_thread_id_idx.sql delta | ||
-- before the event_push_summary_unique_index background job was run. | ||
DROP INDEX IF EXISTS event_push_summary_unique_index; |
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Sanity check: what does the background update logic do if it tries to run an update but there's no handler for it?
Oh, the migration deletes the update in question, so it doesn't matter. 👍
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
An error gets raised if it cannot find the background update, but as you've said we're deleting it so it doesn't matter.