Xampp (Windows) Update-Problem 7.4 > 7.4.1 Beta3

  • Beim Update auf meiner lokalen XAMPP-Installation tritt schon beim Aufruf der /setup/update.php ein Fehler auf:

    Warning: Undefined variable $showDbMailsNote in C:\xampp\htdocs\oss.loc\setup\update.php on line 190

    Der Inhalt kann nicht angezeigt werden, da Sie keine Berechtigung haben, diesen Inhalt zu sehen.

    Im weiteren Verlauf des Datenbank-Updates erhalte ich laufend diese Fehlermeldungen, das Datenbank-Update wird nicht fertiggestellt bzw. nicht durchgeführt.

    "Unexpected response - skipping position ....... "

    Die Fehlermeldung wird immer um 1 hochgezählt. und endet nicht.

    Der Inhalt kann nicht angezeigt werden, da Sie keine Berechtigung haben, diesen Inhalt zu sehen.

    Meine lokale MySQL-Datenbank funktioniert unter b1gMail Version 7.4.

    Woran könnte das liegen?

  • Nun hab ich meine xampp-Installation neu aufgesetzt (neueste Version) und gleich mal gecheckt welche MYSQL-Version dabei ist:

    C:\xampp\mysql\bin>mysql --version

    mysql Ver 15.1 Distrib 10.4.27-MariaDB, for Win64 (AMD64), source revision 0946c99e7d6f7ac9dfcf3e60dae6ae85161d5ef2

    Der Skipping-Fehler loopt immer noch...

    • Offizieller Beitrag

    OK, da stimmt was mit der Prüfung nicht... werde ich nachgehen.

    Temporärer Workaround: Ins b1gMail-Adminbereich einloggen -> "Tools" -> "Optimierung" und dort "Struktur prüfen" und da die Struktur reparieren lassen. Danach version.inc.php löschen und version.default.inc.php zu version.inc.php umbenennen. Dann kann die update.php übersprungen werden, weil dieser Schritt über den ACP identisch mit der Routine ist.

    Achtung: Der Strukturprüfer wird immer anzeigen, dass die Struktur beschädigt ist. Nicht irritieren lassen, ist ein Fehler. Die Reparatur funktioniert aber. Dieser Fehler ist auch der Grund, warum die Updateroutine in der Endlosschleife hängt.

    Alternativ: db_sync.php (aus dem Ordner tools) ausführen.

  • Irgendwas stimmt (wahrscheinlich bei meiner xampp-Installation) nicht, obwohl ich sonst lokal mein b1gMail-Projekt aufrufen und bearbeiten kann.

    - V7.4.1-Beta3 über meine Version drüber kopiert

    - Wenn ich die DB-Struktur prüfen lasse, bricht das Script irgendwann ab und dann erhalte ich diese Fehlermeldung:

    Die Website ist nicht erreichbar

    Verbindung wurde zurückgesetzt.

    Versuche Folgendes:

    ERR_CONNECTION_RESET



    - version.default.inc.php umbenannt -> version.inc.php.

    - Wenn ich die setup/update.php aufrufe, wird nun angezeigt: Ihre b1gMail-Version befindet sich bereits auf dem aktuellsten Stand (7.4.1-Beta3)?!

    Die alternative mit tools/db_sync.php funktioniert auch nicht, auch wenn man zuerst die Pfade in den Dateien im Tools-Ordner anpasst, denn meine Hauptinstallation liegt nicht im /src-Ordner. Nach Anpassung der Pfade und nnach Aufruf der db_snyc.php kommt wieder eine Fehlermeldung.

    Erst mal sorry für die Ausführungen..

    Nun zum Wesentlichen:

    Ich gehe davon aus, dass der Updateprozess dazu dient die Datenbank in Teilen anzupassen, da du ja bestimmt Änderungen an der Struktur vorgenommen hast. Wie komme ich zu dem Punkt, an dem nur die Datenbankänderungen vom Script vorgenommen werden? Oder kann man die DB auch manuell updaten?

    Solange das nicht lokal bei mir funktioniert brauch ich über ein Serverupdate gar nicht nachdenken...

    • Offizieller Beitrag

    Die alternative mit tools/db_sync.php funktioniert auch nicht, auch wenn man zuerst die Pfade in den Dateien im Tools-Ordner anpasst, denn meine Hauptinstallation liegt nicht im /src-Ordner. Nach Anpassung der Pfade und nnach Aufruf der db_snyc.php kommt wieder eine Fehlermeldung.

    Erst mal sorry für die Ausführungen..

    Erstmal vielen Dank fürs Testen. Ich hab das reproduziert und anscheinend ist entweder in der Windows-Version oder in XAMPP ein Bug drin, so dass PHP abstürzt und es zu dieser Meldung komnmt.

    Bitte ersetze mal die database.struct.php mit dieser hier in serverlib. Kommst du damit weiter?

  • Hatte es mit Xampp unter Windows und mit plesk unter linux getestet .

    Die von euch und besonders von SLM angegebenen Fehler werden bei einer Installation unter linux nicht aufgeführt . Dort wird die Installation fehlerfrei ausgeführt.

    • Offizieller Beitrag

    Der Fehler ist in PHP 8.2 gefixt. Hab mal gefragt, ob das zu 8.1 rückportiert wird.

    Ansonsten einfach die o.g. database.struct.php herunterladen. Im Grunde wurden dort folgende Sachen gelöscht.

    PHP
    '
        . '

    Zudem muss in $databaseStructure der gesamte String in einer Zeile sein.

    • Offizieller Beitrag

    So, hab das mal mit dem offiziellen PHP Windows Version von php.net getestet: Selbe Fehler. Ist also ein PHP Bug. Habs unter https://github.com/php/php-src/issues/10002 gemeldet.

    Hab ne Antwort bekommen.

    Zitat

    I don't think so, since the AST representation changes, what could cause BC issues (from the commit message: "Extensions such as nikic/php-ast which expose the internal php ast would see literals be flattened, though.)


    D.h. das vor PHP 8.2 wird das nicht behoben. In den nächsten Updates werde ich entsprechend die Dateien anpassen.

    • Offizieller Beitrag

    Der Fehler ist in PHP 8.2 gefixt. Hab mal gefragt, ob das zu 8.1 rückportiert wird.

    Ansonsten einfach die o.g. database.struct.php herunterladen. Im Grunde wurden dort folgende Sachen gelöscht.

    PHP
    '
        . '

    Zudem muss in $databaseStructure der gesamte String in einer Zeile sein.

    Das bezieht sich im übrigen auch auf das b1gmailserver, PremiumAccount,Signatur, PluginUpdates, News, AccountMirror sowie das Fax-Plugin. Wenn da derselbe Fehler kommt, muss dies an den Dateien entsprechend angepasst werden.

    Eine Anpassung ist in Arbeit, aktuell überlege ich wie ich es am besten gestalte. Meine Tendenz geht rüber zum Verzicht von base64 zwecks besserer Entwicklungsübersicht sowie zum Auslagen der SQL-Struktur in eine separate Datei, die wiederum mit Hashes überprüft wird, ob sie sich (versehentlich) geändert hat.

Jetzt mitmachen!

Sie haben noch kein Benutzerkonto auf unserer Seite? Registrieren Sie sich kostenlos und nehmen Sie an unserer Community teil!