[BUGFIX] Correct sys_refindex update on workspace publish
When publishing workspace changes to live, many sys_refindex rows are not updated properly, especially if dealing with workspace-new or workspace-moved rows and relations. To update the reference index for relations, the data handler uses class ReferenceIndex, which uses class RelationHandler, which uses PlainDataResolver. All of these classes are workspace aware and pick the current user workspace if not explicitely told otherwise. When publishing records, a given user is currently in some workspace, but the reference index needs to be fixed for live. This explicit runtime workspace switch is lost in the ReferenceIndex. The patch hands over given workspace context from ReferenceIndex to RelationHandler during publish. This one-liner fixes tons of broken reference index cases. It also reveals a couple of still missing entries. Those will be tackled with another patch. Change-Id: Ib7647baad827fa8f148763efe91b331e5ad4484e Resolves: #92348 Releases: master, 10.4 Reviewed-on: https://review.typo3.org/c/Packages/TYPO3.CMS/+/65771 Tested-by:TYPO3com <noreply@typo3.com> Tested-by:
Andreas Fernandez <a.fernandez@scripting-base.de> Tested-by:
Anja Leichsenring <aleichsenring@ab-softlab.de> Reviewed-by:
Andreas Fernandez <a.fernandez@scripting-base.de> Reviewed-by:
Anja Leichsenring <aleichsenring@ab-softlab.de>
Showing
- typo3/sysext/core/Classes/Database/ReferenceIndex.php 1 addition, 0 deletionstypo3/sysext/core/Classes/Database/ReferenceIndex.php
- typo3/sysext/workspaces/Tests/Functional/DataHandling/FAL/Publish/DataSet/changeContentSorting.csv 2 additions, 2 deletions...DataHandling/FAL/Publish/DataSet/changeContentSorting.csv
- typo3/sysext/workspaces/Tests/Functional/DataHandling/FAL/Publish/DataSet/copyContent.csv 1 addition, 2 deletions...nctional/DataHandling/FAL/Publish/DataSet/copyContent.csv
- typo3/sysext/workspaces/Tests/Functional/DataHandling/FAL/Publish/DataSet/createContentWFileReference.csv 1 addition, 1 deletion...dling/FAL/Publish/DataSet/createContentWFileReference.csv
- typo3/sysext/workspaces/Tests/Functional/DataHandling/FAL/Publish/DataSet/deleteContent.csv 2 additions, 2 deletions...tional/DataHandling/FAL/Publish/DataSet/deleteContent.csv
- typo3/sysext/workspaces/Tests/Functional/DataHandling/FAL/Publish/DataSet/localizeContent.csv 0 additions, 2 deletions...onal/DataHandling/FAL/Publish/DataSet/localizeContent.csv
- typo3/sysext/workspaces/Tests/Functional/DataHandling/FAL/Publish/DataSet/modifyContent.csv 2 additions, 2 deletions...tional/DataHandling/FAL/Publish/DataSet/modifyContent.csv
- typo3/sysext/workspaces/Tests/Functional/DataHandling/FAL/Publish/DataSet/modifyContentNAddFileReference.csv 3 additions, 3 deletions...ng/FAL/Publish/DataSet/modifyContentNAddFileReference.csv
- typo3/sysext/workspaces/Tests/Functional/DataHandling/FAL/Publish/DataSet/modifyContentNDeleteAllFileReference.csv 2 additions, 2 deletions.../Publish/DataSet/modifyContentNDeleteAllFileReference.csv
- typo3/sysext/workspaces/Tests/Functional/DataHandling/FAL/Publish/DataSet/modifyContentNDeleteFileReference.csv 2 additions, 2 deletions...FAL/Publish/DataSet/modifyContentNDeleteFileReference.csv
- typo3/sysext/workspaces/Tests/Functional/DataHandling/FAL/Publish/DataSet/modifyContentWFileReference.csv 2 additions, 2 deletions...dling/FAL/Publish/DataSet/modifyContentWFileReference.csv
- typo3/sysext/workspaces/Tests/Functional/DataHandling/FAL/Publish/DataSet/moveContentToDifferentPage.csv 2 additions, 2 deletions...ndling/FAL/Publish/DataSet/moveContentToDifferentPage.csv
- typo3/sysext/workspaces/Tests/Functional/DataHandling/FAL/Publish/DataSet/moveContentToDifferentPageNChangeSorting.csv 4 additions, 4 deletions...lish/DataSet/moveContentToDifferentPageNChangeSorting.csv
- typo3/sysext/workspaces/Tests/Functional/DataHandling/FAL/PublishAll/DataSet/changeContentSorting.csv 2 additions, 2 deletions...aHandling/FAL/PublishAll/DataSet/changeContentSorting.csv
- typo3/sysext/workspaces/Tests/Functional/DataHandling/FAL/PublishAll/DataSet/copyContent.csv 0 additions, 2 deletions...ional/DataHandling/FAL/PublishAll/DataSet/copyContent.csv
- typo3/sysext/workspaces/Tests/Functional/DataHandling/FAL/PublishAll/DataSet/createContentWFileReference.csv 0 additions, 1 deletion...ng/FAL/PublishAll/DataSet/createContentWFileReference.csv
- typo3/sysext/workspaces/Tests/Functional/DataHandling/FAL/PublishAll/DataSet/deleteContent.csv 2 additions, 2 deletions...nal/DataHandling/FAL/PublishAll/DataSet/deleteContent.csv
- typo3/sysext/workspaces/Tests/Functional/DataHandling/FAL/PublishAll/DataSet/localizeContent.csv 0 additions, 2 deletions...l/DataHandling/FAL/PublishAll/DataSet/localizeContent.csv
- typo3/sysext/workspaces/Tests/Functional/DataHandling/FAL/PublishAll/DataSet/modifyContent.csv 2 additions, 2 deletions...nal/DataHandling/FAL/PublishAll/DataSet/modifyContent.csv
- typo3/sysext/workspaces/Tests/Functional/DataHandling/FAL/PublishAll/DataSet/modifyContentNAddFileReference.csv 2 additions, 3 deletions...FAL/PublishAll/DataSet/modifyContentNAddFileReference.csv
Please register or sign in to comment