[5.5] Update index for faster job access #20702
Merged
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.
Including
reserved_at
in the index creates so many unique keys (being a timestamp) that MySQL simply ignores the index and uses the PRIMARY key instead.This PR sets the index to the queue name only, the first field in the where condition of the query pulling jobs, ensuring the index is actually used. This greatly accelerates the query accessing jobs.
An alternative solution would be to leave the queue+reserved index and just add the additional index on the queue field, but there doesn't seem a reason to leave it... unless other db implementations would use it?