[TYPO3-core] RFC #11979: TCEforms suggest doesn't find everything on large sites and is slow

Steffen Gebert steffen at steffen-gebert.de
Wed Sep 16 21:09:16 CEST 2009


Hi all,

This is an SVN patch request.

Type: bugfix

Bugtracker references:
http://bugs.typo3.org/view.php?id=11979

Branches: trunk

Problem:
On large sites (e.g. 20.000 pages) there are situations, when suggest  
doesn't find all results.
This can happen, if you e.g. have 500 users and each one has site called  
"links" and nobody has access to the other's site. So suggest would find  
this page for some users and for some not.

There are several problems causing this:
* During each query 50 elements are fetched
* Recursion depth of fetching another 50 recurds is limited to  
$this->maxItems (which is 10 and should have nothing to do with recursion  
depth at all..)

Fetching 50 records again and again also takes a long time and because of  
PHP's maximum nesting level of 100, keeping 50 and removing the recursion  
limiter is no good idea.

Solution:
To speed the process up and fetch all available records, increase the  
number of fetched records exponentially.
Then the recursion limiter can also be removed. Nobody should have 2^100  
records in a table :-P

Notes:
Further improvement using treelist cache are welcome. Unfortunately I've  
never used this and my cache_treelist tables are also empty in all  
installations.

Regards
Steffen
 


More information about the TYPO3-team-core mailing list