Bug #81756

DatabaseSchemaComparator does not handle renamed columns

Added by Robert Vock over 2 years ago. Updated 12 days ago.

Status:
New
Priority:
Should have
Assignee:
-
Category:
Database API (Doctrine DBAL)
Start date:
Due date:
% Done:

0%

TYPO3 Version:
8
PHP Version:
Tags:
Complexity:
Is Regression:
Yes
Sprint Focus:

Description

This is a followup to #78771

When adding and removing columns to the same table, the Doctrine Comparator saves these changes in a `renamedColumns` property. When rebuilding the TableDiff class this information is dropped:

Database\Schema\Comparator:73

This leads to fields which are can not be added in the install tool.


Related issues

Related to TYPO3 Core - Bug #86793: Renamed columns are not correctly detected by database schema diff Closed 2018-10-30
Follows TYPO3 Core - Bug #78771: ConnectionMigrator does not handle renamed columns Closed 2016-11-23

History

#1 Updated by Robert Vock over 2 years ago

  • Due date set to 2016-11-24
  • Start date changed from 2017-06-30 to 2016-11-24
  • Follows Bug #78771: ConnectionMigrator does not handle renamed columns added

#2 Updated by Robert Vock over 2 years ago

  • Due date deleted (2016-11-24)
  • Start date deleted (2016-11-24)

#3 Updated by Morton Jonuschat over 2 years ago

  • Assignee set to Morton Jonuschat
  • Target version set to Candidate for patchlevel

#4 Updated by Christian Kuhn about 1 year ago

  • Assignee deleted (Morton Jonuschat)

uh. i think i confirmed that issue. nasty. adding me as watcher, we should fix that ...

tested: i renamed text_42 to text_43 in ext:styleguide and would have expected db analyzer shows me an addition and a removal, but it does not.

#5 Updated by Christian Kuhn about 1 year ago

  • Related to Bug #86793: Renamed columns are not correctly detected by database schema diff added

#6 Updated by Robert Vock 10 months ago

It appears this is fixed in TYPO3 9 with #86793 but not in TYPO3 8.

But this bug currently prevents an update from TYPO3 7 to 8. Applying the fix from #86793 to Comparator.php solved this for me.

#7 Updated by Robert Vock 5 months ago

I just had another TYPO3 Update which broke in TYPO3 v8 because this fix is not backported :(

It would be REALLY nice, if this fix was in TYPO3 v8.

#8 Updated by Robert Vock 12 days ago

For those also affected on TYPO3 8, I would recommend to install composer-patches and apply the bugfix from #86793.

composer require cweagans/composer-patches

And then within composer.json, add the following:

{
    "extra": {
        "patches": {
            "typo3/cms": {
                "Fix broken Database renames": "https://forge.typo3.org/projects/typo3cms-core/repository/revisions/1a66bc91986e5cc4697eabd40728120e44036db3/diff/typo3/sysext/core/Classes/Database/Schema/Comparator.php?format=diff" 
            }
        }
    }
}

Also available in: Atom PDF