Field 'extension_id' doesn't have a default value

  • hallo zusammen,


    mein Update von 3.10 auf 4.0 misslingt:


    letzte Meldung der joomla_update.php ist:


    2023-01-01T16:35:09+00:00 INFO 91.2.250.36 update JInstaller: :Install: SQL-Fehler Field 'extension_id' doesn't have a default value

    2023-01-01T16:35:09+00:00 INFO 91.2.250.36 update End of SQL updates - INCOMPLETE.

    2023-01-01T16:35:09+00:00 INFO 91.2.250.36 update Aufräumen nach der Installation.

    2023-01-01T16:35:09+00:00 INFO 91.2.250.36 update Aktualisierung auf Version 4.2.6 ist vollständig.



    Datenbank hatte ich aktualisiert und auch einige Module deinstalliert. Die Updateprüfung hatte keine Probleme angezeigt.
    Bei Seitenaufruf erhalte ich eine Fehlerseite:

    Unknown column 'm.publish_up' in 'where clause'


    Über administrator kann ich mich zwar einloggen, aber da scheint kein Template Aktiv zu sein und es ist auch keine Eingabe möglich.

    Wie kann ich einen "default value" nachtragen, und würde mir das helfen?

    Schon mal Danke für Tipps und noch ein gutes neues Jahr.

  • Starte mal die Fehleranalyse und poste das Ergebnis:

  • Hmm, ich fürchte, dass mir das nicht mehr möglich ist ;-
    aber über ftp komme ich noch an die configuration.php heran. dort ist "maximum" eingestellt und bei $debug "1"

    --------------

    Code
    Joomla\Database\Exception\PrepareStatementFailureException:
    Unknown column 'm.publish_up' in 'where clause'
      at /var/www/vhosts/k116220.web267.dogado.net/WWWROOT/285653/htdocs/libraries/vendor/joomla/database/src/Mysqli/MysqliStatement.php:141  at Joomla\Database\Mysqli\MysqliStatement->__construct(object(mysqli), 'SELECT `m`.`id`,`m`.`menutype`,`m`.`title`,`m`.`alias`,`m`.`note`,`m`.`link`,`m`.`type`,`m`.`level`,`m`.`language`,`m`.`browserNav`,`m`.`access`,`m`.`params`,`m`.`home`,`m`.`img`,`m`.`template_style_id`,`m`.`component_id`,`m`.`parent_id`,`m`.`path` AS `route`,`e`.`element` AS `component`FROM `bak_j25b_menu` AS `m`LEFT JOIN `bak_j25b_extensions` AS `e` ON `m`.`component_id` = `e`.`extension_id`WHERE ((`m`.`published` = 1 AND `m`.`parent_id` > 0 AND `m`.`client_id` = 0) AND (`m`.`publish_up` IS NULL OR `m`.`publish_up` <= ?)) AND (`m`.`publish_down` IS NULL OR `m`.`publish_down` >= ?)ORDER BY `m`.`lft`')     (/var/www/vhosts/k116220.web267.dogado.net/WWWROOT/285653/htdocs/libraries/vendor/joomla/database/src/Mysqli/MysqliDriver.php:1048)  at Joomla\Database\Mysqli\MysqliDriver->prepareStatement('SELECT `m`.`id`,`m`.`menutype`,`m`.`title`,`m`.`alias`,`m`.`note`,`m`.`link`,`m`.`type`,`m`.`level`,`m`.`language`,`m`.`browserNav`,`m`.`access`,`m`.`params`,`m`.`home`,`m`.`img`,`m`.`template_style_id`,`m`.`component_id`,`m`.`parent_id`,`m`.`path` AS `route`,`e`.`element` AS `component`FROM `bak_j25b_menu` AS `m`LEFT JOIN `bak_j25b_extensions` AS `e` ON `m`.`component_id` = `e`.`extension_id`WHERE ((`m`.`published` = 1 AND `m`.`parent_id` > 0 AND `m`.`client_id` = 0) AND (`m`.`publish_up` IS NULL OR `m`.`publish_up` <= :currentDate1)) AND (`m`.`publish_down` IS NULL OR `m`.`publish_down` >= :currentDate2)ORDER BY `m`.`lft`')     (/var/www/vhosts/k116220.web267.dogado.net/WWWROOT/285653/htdocs/libraries/vendor/joomla/database/src/DatabaseDriver.php:1900)  at Joomla\Database\DatabaseDriver->setQuery(object(MysqliQuery))     (/var/www/vhosts/k116220.web267.dogado.net/WWWROOT/285653/htdocs/libraries/src/Menu/SiteMenu.php:166)  at Joomla\CMS\Menu\SiteMenu->Joomla\CMS\Menu\{closure}()     (/var/www/vhosts/k116220.web267.dogado.net/WWWROOT/285653/htdocs/libraries/src/Cache/Controller/CallbackController.php:103)  at Joomla\CMS\Cache\Controller\CallbackController->get(object(Closure), array(), 'd17e8e13b99b4d9bf23a7d0b83a466c3', false)     (/var/www/vhosts/k116220.web267.dogado.net/WWWROOT/285653/htdocs/libraries/src/Menu/SiteMenu.php:179)  at Joomla\CMS\Menu\SiteMenu->load()     (/var/www/vhosts/k116220.web267.dogado.net/WWWROOT/285653/htdocs/libraries/src/Menu/AbstractMenu.php:323)  at Joomla\CMS\Menu\AbstractMenu->getMenu()     (/var/www/vhosts/k116220.web267.dogado.net/WWWROOT/285653/htdocs/libraries/src/Menu/AbstractMenu.php:160)  at Joomla\CMS\Menu\AbstractMenu->getItem(null)     (/var/www/vhosts/k116220.web267.dogado.net/WWWROOT/285653/htdocs/libraries/src/Application/SiteApplication.php:412)  at Joomla\CMS\Application\SiteApplication->getTemplate(true)     (/var/www/vhosts/k116220.web267.dogado.net/WWWROOT/285653/htdocs/libraries/src/Error/Renderer/HtmlRenderer.php:50)  at Joomla\CMS\Error\Renderer\HtmlRenderer->render(object(PrepareStatementFailureException))     (/var/www/vhosts/k116220.web267.dogado.net/WWWROOT/285653/htdocs/libraries/src/Exception/ExceptionHandler.php:121)  at Joomla\CMS\Exception\ExceptionHandler::render(object(PrepareStatementFailureException))     (/var/www/vhosts/k116220.web267.dogado.net/WWWROOT/285653/htdocs/libraries/src/Exception/ExceptionHandler.php:72)  at Joomla\CMS\Exception\ExceptionHandler::handleException(object(PrepareStatementFailureException))     (/var/www/vhosts/k116220.web267.dogado.net/WWWROOT/285653/htdocs/libraries/src/Application/CMSApplication.php:323)  at Joomla\CMS\Application\CMSApplication->execute()     (/var/www/vhosts/k116220.web267.dogado.net/WWWROOT/285653/htdocs/includes/app.php:61)  at require_once('/var/www/vhosts/k116220.web267.dogado.net/WWWROOT/285653/htdocs/includes/app.php')     (/var/www/vhosts/k116220.web267.dogado.net/WWWROOT/285653/htdocs/index.php:32)    


    Code
    public $error_reporting = 'maximum';
    public $debug = true;

    Hilft das weiter?

    SELECT `m`.*,`e`.`element`
    FROM `bak_j25b_menu` AS `m`
    LEFT JOIN `bak_j25b_extensions` AS `e` ON `m`.`component_id` = `e`.`extension_id`
    WHERE (`m`.`menutype` = :menutype AND `m`.`client_id` = 1 AND `m`.`id` > 1) AND (`e`.`enabled` = 1 OR `e`.`enabled` IS NULL)
    ORDER BY `m`.`lft`

  • Nein. Wenn du dich an die Vorgehensweise gehalten hast und gehst auf deine Webseite, müsste der Fehlerbericht angezeigt werden.

    Wie lautet der Link zur Webseite denn?


    Ein oder mehrere Plugins und eventuell Template sind wohl nicht J4 kompartibel. Die müssen wir finden und dafür ist die Anleitung #2 genau zu befolgen. Schau dir das bitte nochmal in Ruhe an und verfahre genau wie dort beschrieben.

  • Erst mal danke für die Aufmerksamkeit,
    zur Rückfrage, ich habe die error.php (wie angeraten) aus dem Template Ordner umbenannt.

    Inzwischen habe ich:

    mein Backup in n ein anderes subdirectory hochgeladen

    Als Template das Standard Beez3 eingestellt

    Versucht alle externen Erweiterungen zu Deinstallieren (Ist nicht immer gelungen, da wohl xml-Dateien fehlen, bzw. die Verzeichnisse schon weggelöscht sind.
    Datenbank "repariert"
    Neues update gestartet.
    Aber selbe Fehlermeldung ;(

    Nun würde ich gerne die Komponentenfragmente löschen, finde aber keinen weg dahin.

  • Erst mal danke für die Aufmerksamkeit,
    zur Rückfrage, ich habe die error.php (wie angeraten) aus dem Template Ordner umbenannt.


    Dann müsstest du doch die Call-Stack-Anzeige haben!



    mein Backup in n ein anderes subdirectory hochgeladen


    Die Pfade angepasst?



    Versucht alle externen Erweiterungen zu Deinstallieren (Ist nicht immer gelungen, da wohl xml-Dateien fehlen, bzw. die Verzeichnisse schon weggelöscht sind.


    Dann lösche sie in der Datenbank.


    Auch mal bei #_extensions schauen!


    Welche Extensions wurden denn 'angemeckert' bei der Migrationsprüfung?

  • Wie geschrieben, einige konnte ich nicht deinstallieren
    Wie die Seite aussehen soll ist mir schon klar, aber ich sehe sie in meiner Domain halt leider nicht ;(
    Welche Seite muss ich denn dafür aufrufen?

  • Ach mist,

    nun habe ich zuerst die "_powr"Tabelle aus der Datenbank gelöscht und erst danach gesehen, dass das angeblich kein Update benötigt, Nun meckert mir Joomla beim Versuch zu Deinstallieren das Fehlen einer Manifest-Datei an.

    Nun habe ich auch eine CallStack Anzeige gefunden, die sieht aber anders aus, als in dem Bild.

    Sie ist im Debug-Bereich bei Datenbankabfragen und es gibt mehrere davon.

    Hier die erste:

    Call Stack

    #AufruferDatei und Zeilennummer
    16JDatabaseDriverMysqli->execute()JROOT/libraries/joomla/database/driver.php:1740
    15JDatabaseDriver->loadResult()JROOT/libraries/joomla/session/storage/database.php:45
    14JSessionStorageDatabase->read()Derselbe Aufruf in der Zeile darunter.
    13session_start()JROOT/libraries/joomla/session/handler/native.php:260
    12JSessionHandlerNative->doSessionStart()JROOT/libraries/joomla/session/handler/native.php:50
    11JSessionHandlerNative->start()JROOT/libraries/joomla/session/handler/joomla.php:88
    10JSessionHandlerJoomla->start()JROOT/libraries/src/Session/Session.php:661
    9Joomla\CMS\Session\Session->_start()JROOT/libraries/src/Session/Session.php:621
    8Joomla\CMS\Session\Session->start()JROOT/libraries/src/Session/Session.php:499
    7Joomla\CMS\Session\Session->get()JROOT/libraries/src/Session/Session.php:456
    6Joomla\CMS\Session\Session->isNew()JROOT/libraries/src/Application/CMSApplication.php:826
    5Joomla\CMS\Application\CMSApplication->loadSession()JROOT/libraries/src/Application/CMSApplication.php:136
    4Joomla\CMS\Application\CMSApplication->__construct()JROOT/libraries/src/Application/AdministratorApplication.php:48
    3Joomla\CMS\Application\AdministratorApplication->__construct()JROOT/libraries/src/Application/CMSApplication.php:386
    2Joomla\CMS\Application\CMSApplication::getInstance()JROOT/libraries/src/Factory.php:140
    1Joomla\CMS\Factory::getApplication()JROOT/administrator/index.php:48

    [Die „xdebug.file_link_format“-Anweisung der php.ini hinzufügen, um Links zu den Dateien zu erzeugen]

  • Wenn du möchtest, kannst du mir deine Zugangsdaten vom Hoster und der Seite per PN schicken:



    Dann würde ich kurz reinschauen. ;)