[Frage] Fehlermeldung Doctrine\DBAL\Exception\TableNotFoundException

  • n-y-la n-y-la
    Typ im Roten Hemd
    0 x
    3 Beiträge
    0 Hilfreiche Beiträge
    30. 09. 2021, 17:26

    Hallo,

    ich bekomme folgende Fehlermeldung im Frontend angezeigt und untenstehende Fehlermeldung im Administrationsprotokoll.
    (Davor hatte ich die Indexed Search Engine installiert mit '$ ddev composer require typo3/cms-indexed-search=11.4.0'.
    Zusätzlich '$ apt-get install unrtf ppthtml xlhtml catdoc unzip poppler-utils', dies hat aber teilweise zu Fehlermeldungen im Terminal geführt.
    Ich weiß nicht, ob das eine mit dem anderen zu tun hat, habe bereits versucht, die indexed-search-Erweiterung wieder zu deinstallieren, allerdings ohne Erfolg.
    (Der Übersichtlichkeit halber habe ich die Fehlermeldung hier nur teilweise eingestellt, lässt sich aber natürlich nachliefern, wenn das Problem dann besser nachvollziehbar wird.)
    Irgendein Vorschlag, wie sich das lösen lässt? Vielen Dank!!

    Whoops, looks like something went wrong.
    (1/2) Doctrine\DBAL\Exception\TableNotFoundException

    An exception occurred while executing 'SELECT `item_mtime`, `tstamp` FROM `index_phash` WHERE `phash` = ? LIMIT 1' with params [201496228]: Table 'db.index_phash' doesn't exist

    in /var/www/html/vendor/doctrine/dbal/lib/Doctrine/DBAL/Driver/AbstractMySQLDriver.php

    ...(...hier folgen viele weitere Einträge...)

    im Administrationsprotokoll:

    Core: Exception handler (WEB): Uncaught TYPO3 Exception: An exception occurred while executing 'SELECT COUNT(*) FROM `index_phash`': Table 'db.index_phash' doesn't exist | Doctrine\DBAL\Exception\TableNotFoundException thrown in file /var/www/html/vendor/doctrine/dbal/lib/Doctrine/DBAL/Driver/AbstractMySQLDriver.php in line 61. Requested URL: https...

  • Hilfreichster Beitrag

  • Teisinger Teisinger
    Jedi-Ratsmitglied
    1 x
    502 Beiträge
    37 Hilfreiche Beiträge
    04. 10. 2021, 09:46 - Hilfreichster Beitrag

    Der oben genannte Fehler kann auch auftreten, wenn du eine Extension installiert hast und dir für diese Extension die SiteConfig.yaml (Routing) angepasst hast - wenn du dann die Extension wieder deinstallierst ohne den entsprechenden Teil aus der SiteConfig.yaml zu löschen, bekommst du auch den obigen Fehler...
    Hat ewig gedauert bis ich mal da drauf gekommen bin... Das selbe übrigens bei Sprachen:
    https://forge.typo3.org/issues/94510

    https://github.com/groundstack-org


  • 1
  • 0 x
    3253 Beiträge
    152 Hilfreiche Beiträge
    01. 10. 2021, 08:29

    Das klingt, als hätte TYPO3 irgendwo noch gecacht, das es die indexed_search-Tabellen gibt...
    Hast Du mal die Caches ordentlich geleert (-> Install-Tool bzw. typo3/sysext/core/bin/typo3 cache:flush)

  • n-y-la n-y-la
    Typ im Roten Hemd
    0 x
    3 Beiträge
    0 Hilfreiche Beiträge
    01. 10. 2021, 10:58

    Vielen Dank für die Antwort! Ich hatte gestern alle mir bis dato bekannten caches geleert, auch unter 'Maintenance bzw. Wartung'. Bei einem neuen Versuch heute unter Maintenance(Wartung)-> Analyze Database Structure -> Analyze Database -> Apply selected changes gewählt (hier wurden viele Einträge angezeigt).

    Fürs erste scheint jetzt alles zu funktionieren, auch wenn ich als Neuling (noch) nicht wirklich nachvollziehen kann, was genau jetzt in der 'database' geändert wurde.. ;)

  • 0 x
    3253 Beiträge
    152 Hilfreiche Beiträge
    03. 10. 2021, 13:48

    Dann hole ich gerne noch ein klein wenig weiter aus... Beim Helfen reicht manchen der richtige Stups, weil man nur den Wald vor lauter Bäumen nicht gesehen hat, für andere (gerade eben Einsteiger) braucht's vielleicht mehr Hintergrund-Infos.

    Die meisten Extensions benötigen eigene Tabellen in der Datenbank. Diese werden via ext_tables.sql definiert und über das TCA (Table Configuration Array) für TYPO3 nochmal etwas umfangreicher konfiguriert. Gerade, dass die Infos aus dem TCA nicht bei jedem Laden einer Seite erneut aus allen Extension ausgelesen werden müssen, werden diese Infos zusammengefasst gecacht und nur bei Bedarf aktualisiert - oder bei manuellem Erzwingen des Neu-Cachens.

    Unter "Maintenance" das Cache-Leeren leert alles (während der "Blitz" oben rechts nur fürs FE relevante Caches leert). D.h. es kann sein, dass Du eine Extension zwar löscht, dies je nach Art und Weise nicht getriggert hat, dass das gecachte TCA aktualisiert werden müsste. Entsprchend verarbeitet TYPO3 weiter das veraltete und vermucht auch nicht (mehr) existierende Tabellen zuzugreifen...

    Der Database-Analyzer ist das Mittel, um "krumme" Datenbankzustände wieder zu glätten. Er vergleicht den IST-Zustand der Datenbank mit dem SOLL-Zustand, also dem, was die aktuell installierten Extensions definieren. Und hier wird auch die Auffrischung des TCA dann angetriggert.
    Über ihn lassen sich auch nicht mehr notwendige Tabellen/Spalten aufspüren, die TYPO3 bewusst beim Entfernen von Extensions *nicht* löscht (Das ist z.B. bei manchen Upgrade-Szenarien gut, wo nur zeitweise eine Extension entfernt wird, die Daten aber später wieder verwendet werden sollen)

  • Teisinger Teisinger
    Jedi-Ratsmitglied
    1 x
    502 Beiträge
    37 Hilfreiche Beiträge
    04. 10. 2021, 09:46

    Der oben genannte Fehler kann auch auftreten, wenn du eine Extension installiert hast und dir für diese Extension die SiteConfig.yaml (Routing) angepasst hast - wenn du dann die Extension wieder deinstallierst ohne den entsprechenden Teil aus der SiteConfig.yaml zu löschen, bekommst du auch den obigen Fehler...
    Hat ewig gedauert bis ich mal da drauf gekommen bin... Das selbe übrigens bei Sprachen:
    https://forge.typo3.org/issues/94510

    https://github.com/groundstack-org

  • 1