Update Beta 1 --> Beta 2

Topics from older beta tests.
Offe
Beiträge: 568
Registriert: 30. Aug 2007, 17:42

Update Beta 1 --> Beta 2

Beitrag von Offe »

Hallo zusammen,

ich wollte gerade meine Umgebung von Beta 1 auf Beta 2 updaten und habe einige Auffälligkeiten / Fehler beobachtet.

- Nach dem Hochalden der neuen Files wird kein Update der Datenbank angeboten, da in der constants.php immernoch die Version Beta 1 eingetragen ist.

- Nachdem ich den Eintrag auf Beta 2 geändert habe, erkennt das System auch das nötige Datenbankupgrade. Mich wundert nur, dass auch im PHP-Log eine entsprechende Warnung davon erscheint. Ist das so gewollt?
mod_fcgid: stderr: Admidio.ERROR: AdmException is thrown! {"message":"SYS_DATABASE_VERSION_INVALID","params":["3.2.0-Beta.1","3.2.0 Beta 2","<a href=\\"https://localhost/adm_program/installat ... \\">","</a>"]} {"file":"/var/www/html/adm_program/system/classes/admexception.php","line":56,"class":"AdmException","function":"__construct"}
- Wenn ich nun aber das Update starte, wird ein Fehler geworfen, sodass das Update schief geht:
Fatal error: Call to a member function fetch() on a non-object in /var/www/html/adm_program/system/classes/user.php on line 401, referer: https://localhost/adm_program/installation/update.php
- Bitte auch die Spielumgebung auf Beta 2 aktualisieren

Gruß Offe
XimeX
Developer
Beiträge: 1148
Registriert: 12. Jul 2015, 13:21
Wohnort: Austria

Re: Update Beta 1 --> Beta 2

Beitrag von XimeX »

Das ist ein Fehler des es noch Beta 1 ist.
Der Error log ist gewollt. Wobei das logging level "error" vermutlich zu hoch ist das auch viele Dinge eine Exception werfen die ganz normal sind. Werd das logging level auf "notice" runter stellen.

Den 2 Fehler muss ich mir noch genauer anschauen
Giovanni9030
Beiträge: 247
Registriert: 4. Sep 2012, 23:40

Re: Update Beta 1 --> Beta 2

Beitrag von Giovanni9030 »

Auch bei mir dieser Fehler bei Update von Beta1 auf Beta2 mittels update.php.

Fatal error: Uncaught Error: Call to a member function fetch() on boolean in /home/.sites/210/site1823/web/admidio/adm_program/system/classes/user.php:401 Stack trace: #0 /home/.sites/210/site1823/web/admidio/adm_program/installation/update.php(331): User->checkLogin('Mein Passwort', false, false, false, true) #1 {main} thrown in /home/.sites/210/site1823/web/admidio/adm_program/system/classes/user.php on line 401

LG Hans
XimeX
Developer
Beiträge: 1148
Registriert: 12. Jul 2015, 13:21
Wohnort: Austria

Re: Update Beta 1 --> Beta 2

Beitrag von XimeX »

Könnt ihr auch die logs posten? (Debug mode einschalten!) Sieht nach einem SQL Fehler aus.
Giovanni9030
Beiträge: 247
Registriert: 4. Sep 2012, 23:40

Re: Update Beta 1 --> Beta 2

Beitrag von Giovanni9030 »

Hallo Ximex,

Code: Alles auswählen

S Q L - E R R O R
CODE: 42S22
1054
Unbekanntes Tabellenfeld 'rol_webmaster' in field list
B A C K T R A C E

FILE: adm_program/system/classes/database.php
LINE: 513
CALL: Database->showError()

FILE: adm_program/system/classes/user.php
LINE: 400
CALL: Database->query()

FILE: adm_program/installation/update.php
LINE: 331
CALL: User->checkLogin()
LG Hans
Offe
Beiträge: 568
Registriert: 30. Aug 2007, 17:42

Re: Update Beta 1 --> Beta 2

Beitrag von Offe »

Der von Hans genannte SQL Error tritt entsprechend auch bei mir auf.

Gruß Offe
Giovanni9030
Beiträge: 247
Registriert: 4. Sep 2012, 23:40

Re: Update Beta 1 --> Beta 2

Beitrag von Giovanni9030 »

XimeX hat geschrieben:Den 2. Fehler muss ich mir noch genauer anschauen
Ich glaube, zumindest einen Fehler gefunden zu haben. In meiner Datenbank (Beta1) gibt es in der Tabelle adm_roles ein Feld rol_administrator
Soweit ich das gesehen habe, sollte dieses Feld beim Update in rol_webmaster umbenannt werden.
So steht es zumindest in der update_3_2.xml. In der db.sql existiert bereits das neue Feld rol_webmaster.
Daher die Fehlermeldung: Unbekanntes Tabellenfeld 'rol_webmaster' in field list
Ich habe nun das Feld in rol_webmaster umbenannt, jetzt funktioniert zwar das Update auf die Beta 2 ohne Fehler aber bei erneutem Aufruf meiner Seite bekomme ich nur mehr eine weiße Seite. In der Tabelle adm_components steht nun "3.2.0 Beta 2". Nach Entfernung von "Debug" kommt dann untenstehende Anmelde-Seite. Nach der Anmeldung läuft dann die Seite normal.
Nur fehlen jetzt im Administrator-Menü das Datenbank-Backup und die Einstellungen.
Vielleicht hilft euch das weiter.
Anmeldung.JPG
Anmeldung.JPG (14.96 KiB) 10229 mal betrachtet
LG Hans
XimeX
Developer
Beiträge: 1148
Registriert: 12. Jul 2015, 13:21
Wohnort: Austria

Re: Update Beta 1 --> Beta 2

Beitrag von XimeX »

Also in der v3.2 wird von webmaster in administrator unbenannt. https://github.com/Admidio/admidio/issues/249

Was habt ihr wenn ihr auf Beta 1 seits in der components tabelle beim wert "core" stehen? Sieht aus als würde er in user.php in Zeile 376 falsch prüfen.

Ich hab eig die logs im neuem Logs ordner gemeint. -> adm_my_files/logs/[DATUM]_admidio.log
Offe
Beiträge: 568
Registriert: 30. Aug 2007, 17:42

Re: Update Beta 1 --> Beta 2

Beitrag von Offe »

MIgrationsszenario war ja ursprünglich von 3.1.8 --> 3.2 Beta 1 --> 3.2 Beta 2 . Da bereits beim Schritt auf Beta 1 einiges schief gelaufen ist viewtopic.php?f=13&t=7238 könnte ja dort bereits etwas noch falsch gesetzt worden sein.

In der angesprochenen Spalte core steht 3.2.0 Beta 1 drin:
Component_Core.jpg
Component_Core.jpg (10.86 KiB) 10210 mal betrachtet
Ich habe dir mal mein Logfile vom Updateversuch von Beta 1 --> Beta 2 angehängt.

Gruß Offe
Dateianhänge
admidio-2016-11-27.zip
(2.36 KiB) 284-mal heruntergeladen
XimeX
Developer
Beiträge: 1148
Registriert: 12. Jul 2015, 13:21
Wohnort: Austria

Re: Update Beta 1 --> Beta 2

Beitrag von XimeX »

Lass dir mal "$installedDbVersion" in Zeile 376 in user.php ausgeben/loggen wenn du das update durchführen willst. Er springt eindeutig in den elseif Teil was falsch ist.
Offe
Beiträge: 568
Registriert: 30. Aug 2007, 17:42

Re: Update Beta 1 --> Beta 2

Beitrag von Offe »

Es wird "3.2.0 Beta 1" ausgegeben.

Gruß Offe
XimeX
Developer
Beiträge: 1148
Registriert: 12. Jul 2015, 13:21
Wohnort: Austria

Re: Update Beta 1 --> Beta 2

Beitrag von XimeX »

Ok dann hab ich den Fehler. Muss mir das nur nochmal genauer durch den Kopf gehen lassen welche Art es zu fixen die bessere ist.
Es würde daweil reichen wenn du die Zeile abänderst in:

Code: Alles auswählen

// Das Leerzeichen nach "3.2.0"
if ($isAdministrator && version_compare($installedDbVersion, '3.2.0 ', '>='))
Giovanni9030
Beiträge: 247
Registriert: 4. Sep 2012, 23:40

Re: Update Beta 1 --> Beta 2

Beitrag von Giovanni9030 »

Bei erneutem Aufruf meiner Seite bekomme ich nur mehr eine weiße Seite. In der Tabelle adm_components steht nun "3.2.0 Beta 2". Nur fehlen jetzt im Administrator-Menü das Datenbank-Backup und die Einstellungen.
Habe heute in der login_form.php "rol_administrator" gegen "rol_webmaster" ausgetauscht, jetzt ist die Anmeldeseite wieder normal. Die beiden fehlenden Einträge im Administratormenü bestehen jedoch noch immer.
Meine Log von gestern anbei.
admidio-2016-11-26.zip
(28.03 KiB) 299-mal heruntergeladen
LG Hans[/quote]
Offe
Beiträge: 568
Registriert: 30. Aug 2007, 17:42

Re: Update Beta 1 --> Beta 2

Beitrag von Offe »

Mit der Änderung konnte ich nun erfolgreich auf Beta 2 updaten. Die von Hans angesprochenen fehlenden Menüeinträge kann ich nicht bestätigen, bei mir sieht es normal aus.

Einzigster Punkt, der mir aufgefallen ist, ist folgender Eintrag im Admidio-Logfile, den ich aber bereits die letzten Tage schonmal gesehen habe:
Admidio.WARNING: DEPRECATED: "$user->isWebmaster()" is deprecated, use "$user->isAdministrator()" instead! {"file":"/var/www/html/adm_program/system/classes/user.php","line":1745,"class":"User","function":"isWebmaster"}
PHP-Errorlog ist fehlerfrei.

Gruß Offe
Giovanni9030
Beiträge: 247
Registriert: 4. Sep 2012, 23:40

Re: Update Beta 1 --> Beta 2

Beitrag von Giovanni9030 »

Hallo,
nachdem ich jetzt nach gestrigem geglücktem Update das Feld rol_webmaster in rol_administrator wieder umbenannt habe, ist jetzt das Administrator-Menü wieder komplett. Änderung in der login_form.php auch wieder rückgängig gemacht.
Sieht so aus, dass nun alles wieder funktioniert.

LG Hans
Antworten