Hallo,
ich fahre eine 6.1.8 und habe mit einer Extbase Extension genau das gleiche Fehlverhalten.
Die Ergebnismengen scheinen zu stimmen, genau wie die PID, aber die Ergebnisdetails sind leer.
Ich kann den Fehler auch leider nicht nachstellen.
Ist das mit 6.2 jetzt noch mal aufgetreten?
Hallo!
Die Extension läuft bis jetzt fehlerfrei. Das Problem trat bei uns vor dem Upgrade mindestens alle 3 Tage (manchmal auch mehrmals am Tag) auf - die Chancen stehen also gut, dass das Upgrade wirklich geholfen hat 🙂
Danke Dir für die Info. Dann werde ich jetzt wohl oder übel auch mal auf 6.2 upgraden...
Hallo,
habe jetzt auf die 6.2.1 geupgradet. Der spezifische Fehler mit den leeren Ergebnissen ist seitdem nicht mehr aufgetreten. Aufgrund der Frequenz der Seite, ist das bei uns täglich bis mehrmals täglich aufgetreten.
Dafür ist aber ein anderes Problem aufgetreten und zwar dieser Bug hier:
http://wiki.typo3.org/Exception/CMS/1382687163
"Supplied file object type TYPO3\CMS\Core\Resource\Folder must be File or FileReference."
Nun lag bei uns die Vermutung nahe, dass dieser Fehler evtl. auch schon in 6.1 allerdings ohne die Fehlermeldung aufgetreten ist.
Nach einiger Suche in den Fluid Templates der Seite ist mir ein alter <f:comment> aufgefallen.
Dort hatte ich eine f:image Aufruf stehen, den ich durch einen anderen f:image Aufruf, aber mit der gleichen Ressource, ersetzt habe. Nun ist es zwar so, dass f:comment nicht im Frontend gerendert wird, aber trotzdem ausgeführt wird. Das war mir bis dato nicht bekannt.
Meine Befürchtung ist nun also, dass Extbase versucht hat das nächste Image zu rendern, während der alte Aufruf noch dabei war und das den Fehler erzeugt hat.
Das sind jetzt natürlich alles wilde Mutmaßungen, aber das ist das einzige, was mir momentan halbwegs logisch erscheint.
Habt ihr zufällig auch noch irgendwelche f:comments im Fluid Template?
wurde leider gerade schon widerlegt. :/
In der Zwischenzeit hat sich leider herausgestellt, dass das Cache-Problem auch unter 6.2.1 auftritt - wenn auch deutlich seltener. Das auslösende Ereignis konnte ich nach wie vor nicht ausfindig machen. Unter 6.2.1. ist es zudem nicht ausreichend, den Frontend- und General-Cache zu leeren, um den Fehler zu beheben. Lediglich das Ausführen von "clear all caches" im Install-Tool sorgt für Abhilfe.
Wir konnten auch schon beobachten, dass die Seite auch ohne manuellen Eingriffs (cache clearing) wieder korrekt mit allen Objekt-Attributen dargestellt wird.
@Winddancer: Hast du mittlerweile eine Lösung gefunden? f:comments kommen in meinem Template nicht vor. Der FileReference Fehler tritt bei mir nicht auf, ich denke nicht, dass da ein Zusammenhang zum Cache-Problem besteht.
Der Beitrag
#116509 beschreibt selbiges Problem, leider wurden auch hier noch keine Lösungsvorschläge gepostet.
Hallo zusammen,
tut mir Leid, dass ich diesen Thread wieder aufwärmen muss. Gibt es hierzu bislang neue Erkenntnisse?
Bei mir tritt das Problem ebenfalls unter 6.2.1 auf, wobei ich lediglich auf der Produktionsumgebung und leider nicht auf der Entwicklungsumgebung den Fehler beobachten konnte. (Entwicklung und Prod. sind Abbildgleich.)
Die Tabelle cf_extbase_datamapfactory_datamap beinhaltet die gecachten Models. Sobald diese geleert werden, ist das Problem vorerst gelöst. Das Problem ist ebenfalls vorerst gelöst, wenn man ca. eine Stunde ausharrt und den Cron für das Caching der Models abwartet.
Da dieser Fehler in unregelmäßigen Abständen auftritt, gehe ich mittlerweile davon aus, dass die Reihenfolge der Models (Abhängigkeiten untereinander) falsch gecached wird.
Für Ratschläge oder weitere Beobachten wäre ich euch äußerst dankbar...
Hallo,
leider besteht das Problem bei mir nach wie vor. Bist du mittlerweile nach einer Lösung fündig geworden? Das Problem lässt sich nur durch das manuelle Löschen des Caches im Install-Tool bzw. durch Leeren der Tabelle cf_extbase_datamapfactory_datamap temporär lösen.
Warum die Models auch bei einem vollständig deaktivierten Cache (no_cache=1) gecached werden, ist mir ebenfalls unklar.
Wäre für jeden Hinweis sehr dankbar!
Hallo liesmar,
ich habe eben deinen Thread gefunden, weil ich vor dem gleichen Problem. Solange die Tabelle cf_extbase_datamapfactory_datamap bei mir leer ist, funktioniert meine Extension einwandfrei
Sobald aber das Mapping gespeichert wird, bekomme ich beim Erstellen von Objekten nur leere Felder bis auf pid und uid.
Vielleicht kommen wir ja gemeinsam auf die Lösung.
Grüße
Daniel
Hallo zusammen,
melde mich nun auch wieder zurück.
Folgende neue Erkenntnisse:
Sobald der Cache in der php.ini erhöht wird, taucht der Fehler nicht mehr in dem Ausmaße auf. Das ist schon relativ verwunderlich...
Wie viel Datensätze habt ihr in der DB?
Ich habe insgesamt 3 Tabellen für meine Ext.(Umfang an Datensätze: ca. 3k, 16k und 38k)
p.s. Habe zwischenzeitlich noch eine Bereinigung durchgeführt. Es gab Datensätze, die zu keiner pid zugewiesen wurden.
Besten Gruß
tronic
Hallo zusammen,
der Fehler trat bei uns auch auf. Danke für den entscheidenden Hinweis auf die cf_extbase_datamapfactory_datamap. Diese Cache-Tabelle wurde in unserem Fall falsch aufgebaut, falls auf ein Extbase-Repository zugegriffen wurde bzw. ein Extbase-Model geladen oder geschrieben wurde, und das TCA nicht korrekt geladen ist. In unserem Fall war das innerhalb einer eID-Funktionalität der Fall.
Im Prinzip handelt es sich um einen TYPO3-Core Bug. Die Cache-Tabelle darf nicht befüllt werden, falls das TCA nicht (komplett) geladen wurde. Vor dem Füllen der Tabelle muss auf jedem Fall ein EidUtility::initTCA (); aufgerufen sein.
Abhilfe hilft es ggf, diesen Aufruf innerhalb der eigenen Extension zu platzieren.
Danke für den Hinweis! Werde ich bei mir einbauen.
Kurze Rückmeldung:
Nach nun etwas über 2 Wochen gab es keine Probleme mehr. In meinem Fall hat das Initialisieren des TCA in meinem AJAX-Dispatcher wunderbar funktioniert.
Danke!
Der Aufruf von EidUtility::initTCA (); hat das Problem bei mir ebenfalls beseitigt - den Code wurde vor ca. einer Woche eingefügt und das fehlerhafte Caching trat seitdem nicht mehr auf.
Vielen Dank für alle Hinweise!
An welcher Stelle, bitte, in der Extension sollte EidUtility::initTCA () in der Extension eingebaut werden?