"No pseudo-site found in root line of page" when executing upgrade wizard
When executing upgrade wizard in the install tool, I'm getting
"No pseudo-site found in root line of page 161737" error.
Where page "161737" is a translation of some page (sys_language_uid =1)
Is that correct that the wizzard is trying to find site per translated page id ?
I've dig into the code and what is happening is that
then in line ~269 of the SlugHelper there is a foreach loop with
and this is a translated uid
Then matchByPageId calls pseudoSiteFinder->getSiteByPageId($pageId, $rootLine); (edited)
and get SiteByPageID throws an exception, as there is no site configuration for translated page.
Seems we're missing some check for translated page?
What is also worth noticing is that \TYPO3\CMS\Core\DataHandling\SlugHelper::resolveParentPageRecord is NOT called.
[BUGFIX] Always use default language for uniqueInSite
SlugHelper fetches records of the same language, and takes the
pageId of the current language record (uid), which is wrong.
For records, it must be 'pid', for pages it must be 'uid', but for
translated pages it must be 'pages.l10n_parent'.
Reviewed-by: Oliver Hader <firstname.lastname@example.org>
Tested-by: Oliver Hader <email@example.com>
Tested-by: TYPO3com <firstname.lastname@example.org>
Reviewed-by: Wouter Wolters <email@example.com>
Reviewed-by: Susanne Moog <firstname.lastname@example.org>
Tested-by: Susanne Moog <email@example.com>
Reviewed-by: Benni Mack <firstname.lastname@example.org>
Tested-by: Benni Mack <email@example.com>