[6.x] Fix mysql schema for srid (point) #31852
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.
As described in #31543 if a migration add a column of type
POINT
using the SRID parameter and also uses theafter
modifier, the generated SQL is invalid.Steps to reproduce:
Expected SQL:
Actual SQL:
When adding modifiers, the
Grammar
base class iterates over the$modifiers
array and processes them inotherorder:https://github.com/laravel/framework/blob/6.x/src/Illuminate/Database/Schema/Grammars/Grammar.php#L144-L161
This PR, moves the
'Srid'
modifier sooner in theMySqlGrammar
's$modifier
array, so it is processed before the relevant modifiers.I added two tests:
after
modifierafter
modifierThis a submission of PR #31851 to the 6.x branch