Fix PostgreSQL index name collision in MigrationQueueIndexOptimization #448
+1
−1
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.
The migration was creating an index named 'workerkey' on the queued_jobs table, but this name already exists on the queue_processes table (created in MigrationQueueInitV8).
PostgreSQL requires index names to be unique across the entire schema, unlike MySQL which only requires uniqueness within a table. This caused the migration to fail with error:
SQLSTATE[42P07]: Duplicate table: 7 ERROR: relation "workerkey" already exists
Solution: Rename the index from 'workerkey' to 'queued_jobs_workerkey' to follow the table_column naming convention and avoid the collision.
This fix is backwards compatible with MySQL and resolves the PostgreSQL migration failure.