Bug #88672

SlugHelper->isUniqueInSite() slow for installations with many sites and similar URL structures

Added by Thomas Fischer over 2 years ago. Updated 3 days ago.

Status:
Under Review
Priority:
Must have
Assignee:
-
Category:
Link Handling, Site Handling & Routing
Start date:
2019-07-02
Due date:
% Done:

0%

Estimated time:
TYPO3 Version:
9
PHP Version:
7.2
Tags:
Complexity:
easy
Is Regression:
Yes
Sprint Focus:

Description

If a large installation has a lot of sites / root pages, each with similar or identical page structures of a few levels, calling fixUniqueInSite() and especially fixUniqueInSiteForSubpages() in the DataHandler becomes slow due to the way potentially duplicate URLs are retrieved in SlugHelper->isUniqueInSite().

A fix could include a different or two alternative approaches for duplicate URL retrieval, taking into account the size and the overall page structure of the installation.

Also, the runtime cache could be used inside isUniqueInSite(), as this method is called recursively from inside fixUniqueInSiteForSubpages() and some of the necessary data (e.g. site definitions, root page association of a single page) should not be changed from the outside inbetween these calls.


Related issues

Related to TYPO3 Core - Epic #93547: Collection of problems with large sitesAccepted2021-02-19

Actions
#1

Updated by Gerrit Code Review over 2 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/+/61213

#2

Updated by Gerrit Code Review over 2 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/+/61213

#3

Updated by Gerrit Code Review over 2 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/+/61213

#4

Updated by Stefan P over 1 year ago

This true for TYPO3 9 as well. We have a setup that needs (literally!) five minutes to create a simple folder in the page tree.

And this hogs the Database so intense that the Frontend is going down in this time! So this can actually be considered a critical bug.

#5

Updated by Stefan P over 1 year ago

  • Category changed from DataHandler aka TCEmain to Link Handling, Site Handling & Routing
  • Priority changed from Should have to Must have
  • TYPO3 Version changed from 10 to 9
#6

Updated by Stefan P over 1 year ago

  • Is Regression changed from No to Yes

Flagged as regression, because TYO3 8 + realurl didn't need 5 minutes to add a page tree node.

#7

Updated by Stefan P 9 months ago

  • Related to Epic #93547: Collection of problems with large sites added
#8

Updated by Gerrit Code Review 3 days ago

Patch set 4 for branch main of project Packages/TYPO3.CMS has been pushed to the review server.
It is available at https://review.typo3.org/c/Packages/TYPO3.CMS/+/61213

Also available in: Atom PDF