2017-10-25 3 views
0

Hat jemand eine Idee von wo die folgende Abfrage kommt? Wenn ich den Typ inline in TCA verwenden, um tt_content Datensätze zu beziehen, dann bekomme ich riesige Leistungsprobleme mit dieser Beziehung wegen der großen Menge von tt_content Datensätze in einem Ordner. (ID: 45)TYPO3 TCA Typ IRRE sehr langsam mit tt_contents

SELECT tt_content.uid 
    , tt_content.header 
    , tt_content.subheader 
    , tt_content.bodytext 
    , tt_content.t3ver_id 
    , tt_content.t3ver_state 
    , tt_content.t3ver_wsid 
    , tt_content.t3ver_count 
    , tt_content.CType 
    , tt_content.hidden 
    , tt_content.starttime 
    , tt_content.endtime 
    , tt_content.fe_group 
FROM tt_content, pages 
WHERE pages.uid=tt_content.pid 
    AND pages.deleted = 0 
    AND tt_content.deleted = 0 
    AND 1=1 
    AND tt_content.pid = 45 
    AND tt_content.sys_language_uid IN (-1,0) 

Ich benutze diese Konfiguration:

'content_elements' => [ 
      'displayCond' => [ 
       'OR' => [ 
        'FIELD:tasktype:=:1', 
        'FIELD:tasktype:=:5' 
       ] 
      ], 
      'exclude' => true, 
      'l10n_mode' => 'mergeIfNotBlank', 
      'label' => 'content', 
      'config' => [ 
       'type' => 'inline', 
       'allowed' => 'tt_content', 
       'foreign_table' => 'tt_content', 
       'foreign_sortby' => 'sorting', 
       'foreign_field' => 'tx_contentmanager_related_content', 
       'minitems' => 0, 
       'maxitems' => 99, 
       'appearance' => [ 
        'collapseAll' => true, 
        'expandSingle' => true, 
        'levelLinksPosition' => 'bottom', 
        'useSortable' => true, 
        'showPossibleLocalizationRecords' => true, 
        'showRemovedLocalizationRecords' => true, 
        'showAllLocalizationLink' => true, 
        'showSynchronizationLink' => true, 
        'enabledControls' => [ 
         'info' => false, 
        ] 
       ] 
      ] 
     ], 
+0

Dies ist ein Kernproblem. Ich versuche es über das Wochenende zu debuggen –

+0

Vielen Dank für Ihre schnelle Antwort. Ich versuche auch, das Problem zu lokalisieren. Ich freue mich über die Unterstützung eines so erfahrenen Entwicklers. – N1ck

Antwort

1

ich gedebuggt die Core-Datei: /sysext/backend/Classes/Form/FormDataProvider/AbstractItemProvider.php

Die Problem scheint in der Übersetzungsbehandlung von tt_content-Datensätzen zu liegen.

$GLOBALS['TCA']['tt_content']['columns']['l18n_parent']['config']['foreign_table_where'] = AND tt_content.pid=###CURRENT_PID### AND tt_content.sys_language_uid IN (-1,0) 

Aber ich weiß nicht, warum alle Inhalte aus der aktuellen PID abgerufen werden müssen. Als temporäre Lösung habe ich den TCA-Eintrag geändert, da wir tt_content nicht auf Seiten verwenden und noch keine Übersetzungen haben. Ich bin mir nicht sicher, ob das eine gute Idee ist, aber in diesem Moment löst es unser Performance-Problem für die Redaktion.

$GLOBALS['TCA']['tt_content']['columns']['l18n_parent']['config']['foreign_table_where'] = 'AND tt_content.pid = -1 AND tt_content.sys_language_uid IN (-1,0)'; 
+1

Es gibt bereits ein Problem mit diesem https://forge.typo3.org/issues/81036. IMO Ihre Lösung ist absolut in Ordnung –

Verwandte Themen