Bug #90754
closedDatabase Compare with SQLite can not be finished
100%
Description
With current master, and since some v10 releases already, I can't finish the database compare using SQLite.
I've attached a screenshot of the result when executing the compare, together with a file containing the output of the compare beforehand:
liayn1 8 minutes ago
I added a dummy column to the pages table locally and did a compare.
it showed me the option to rename the column to zzz_, this worked without errors.
Now I see the same suggestion again and additionally the statements to drop the zzz field.
So this is some different bug indeed
Files
Updated by Gerrit Code Review over 4 years ago
- Status changed from New to Under Review
Patch set 1 for branch master of project Packages/TYPO3.CMS has been pushed to the review server.
It is available at https://review.typo3.org/c/Packages/TYPO3.CMS/+/63702
Updated by Markus Klein over 4 years ago
- Follows Bug #90751: database compare shows differences for fresh installation added
Updated by Markus Klein over 4 years ago
The proposed patch solves the problem when a single field is to be renamed for a table, but does not solve the issue if multiple fields are to be changed.
The reason is hidden in\TYPO3\CMS\Core\Database\Schema\ConnectionMigrator::getUnusedFieldUpdateSuggestions
There it says "// Treat each changed column with a new diff to get a dedicated suggestions just for this single column."
This works for DB-Systems which need only 1 statement to adjust the schema for each column, but fails on SQLite where a column rename is a series of at least 5 statements (via temporary table).
If one than more column for the same table needs to be renamed the subsequent statements are calculated without knowing about the changes from the first column to change. This leads to absolute chaos.
Two possible solutions for SQLite therefore are:- Allow only a single field per table to be renamed at once
- Rename all fields per table at once (no individual choice possible for single fields)
Updated by Markus Klein over 4 years ago
- Related to Bug #90758: Renaming of column does work in sqlite with db compare added
Updated by Markus Klein over 4 years ago
Patch https://review.typo3.org/c/Packages/TYPO3.CMS/+/63702 was reassigned to ticket #90758
Updated by Gerrit Code Review over 4 years ago
Patch set 3 for branch master of project Packages/TYPO3.CMS has been pushed to the review server.
It is available at https://review.typo3.org/c/Packages/TYPO3.CMS/+/63702
Updated by Gerrit Code Review over 4 years ago
Patch set 1 for branch master of project Packages/TYPO3.CMS has been pushed to the review server.
It is available at https://review.typo3.org/c/Packages/TYPO3.CMS/+/63712
Updated by Gerrit Code Review over 4 years ago
Patch set 2 for branch master of project Packages/TYPO3.CMS has been pushed to the review server.
It is available at https://review.typo3.org/c/Packages/TYPO3.CMS/+/63712
Updated by Gerrit Code Review over 4 years ago
Patch set 3 for branch master of project Packages/TYPO3.CMS has been pushed to the review server.
It is available at https://review.typo3.org/c/Packages/TYPO3.CMS/+/63712
Updated by Gerrit Code Review over 4 years ago
Patch set 6 for branch master of project Packages/TYPO3.CMS has been pushed to the review server.
It is available at https://review.typo3.org/c/Packages/TYPO3.CMS/+/63702
Updated by Gerrit Code Review over 4 years ago
Patch set 1 for branch 9.5 of project Packages/TYPO3.CMS has been pushed to the review server.
It is available at https://review.typo3.org/c/Packages/TYPO3.CMS/+/63745
Updated by Gerrit Code Review over 4 years ago
Patch set 2 for branch 9.5 of project Packages/TYPO3.CMS has been pushed to the review server.
It is available at https://review.typo3.org/c/Packages/TYPO3.CMS/+/63745
Updated by Markus Klein over 4 years ago
- Status changed from Under Review to Resolved
- % Done changed from 0 to 100
Applied in changeset decea21ae67e05c2e358b74261a6ca037cc4867a.
Updated by Daniel Siepmann over 3 years ago
- Related to Bug #94710: Database Compare "Change fields" with SQLite shows red error added
Updated by Daniel Siepmann over 3 years ago
- Related to Bug #94709: TypeError for SQLite in DB Compare added