Author Topic: FATAL Error in class-mysql line 94 (kr 0.9.8.4)  (Read 11142 times)

Offline remo

  • User
  • *
  • Posts: 7
    • View Profile
FATAL Error in class-mysql line 94 (kr 0.9.8.4)
« on: August 02, 2007, 05:40:45 PM »
Hallo zusammen,

ich verwendete jetzt einen ganze Weile die 0.9.8ß und war soweit zufrieden.
Kuerzlich hatte ich etwas Langeweile und entschloss mich zu einem Update auf die o.a. Release.
Zuerst schien alles ok, bei einem Editoraufruf jedoch erschien unterhalb des Editorfensters der Fehler:
FATAL ERROR : Call to a member function on a non-object in class-mysql line 94.
Dachte das waere ein php fehler und da ich das nicht kann, hab ich einen Freund gefragt, mit dessen Hilfe
und einem echo $query haben wir herausbekommen das es KEIN php-Fehler ist, sondern das es eigentlich
ein sql-fehler ist (Fehlten Felder in der Tabelle "settings").
Ich habe darauf hin nochmals die UPGRADE Datei durchgelesen ob ich was falsch gemacht oder vergessen habe,
aber hab ich alles so gemacht... wie es da drin stand - denke ich.
Ich hab daraufhin die Tabelle geloescht und mittels dump/upgrade_mysql.sql die Tabelle neu erstellt.

Mein Kumpel meinte statt des irrefuehrenden php Fatal Error  sollte Hinweis kommen auf tatsaechliche Ursache,
evtl waere an der bewussten Stelle ein "new" fuer die Erzeugung des Objektes vergessen ???

Und falls es notwendig ist die Datenbank zu aendern seid ihr so gut und macht einen Hinweis in der UPGRADE Datei,
oder ?

Bin mir ehrlich gesagt nicht sicher ob ich mich einfach nur daemlich angestellt habe oder ob tatsaechlich ein Fehler
vorliegt, aber immerhin hab ichs gemeldet. Macht was draus oder auch nicht :-)

Gruss,

remo

Offline admin

  • Administrator
  • User
  • *****
  • Posts: 688
    • View Profile
    • http://www.lordlamer.de
Re: FATAL Error in class-mysql line 94 (kr 0.9.8.4)
« Reply #1 on: August 02, 2007, 10:44:38 PM »
Hi,

kann ich so schlecht nach vollziehen. Eigentlich solltest du von einer 0.9.8.x version auf eine 0.9.8.x version kein update ausführen. da ändert sich nichts an der db struktur. Deswegen wundert mich das grad ein wenig. Hast du vielleicht zufällig ein Backup von den Sachen die ich mal testen könnte?

MFg Frank

Offline remo

  • User
  • *
  • Posts: 7
    • View Profile
Re: FATAL Error in class-mysql line 94 (kr 0.9.8.4)
« Reply #2 on: August 04, 2007, 12:56:56 AM »
kann ich so schlecht nach vollziehen. Eigentlich solltest du von einer 0.9.8.x version auf eine 0.9.8.x version kein update ausführen. da ändert sich nichts an der db struktur. Deswegen wundert mich das grad ein wenig. Hast du vielleicht zufällig ein Backup von den Sachen die ich mal testen könnte?

Was braeuchtest du denn da genau ? Komplette db ?
Oder nur dump von den strukturen der fehlerhaften db  ?

Bis dann,

remo

Offline admin

  • Administrator
  • User
  • *****
  • Posts: 688
    • View Profile
    • http://www.lordlamer.de
Re: FATAL Error in class-mysql line 94 (kr 0.9.8.4)
« Reply #3 on: August 04, 2007, 04:22:14 PM »
Hi,

also gut wäre nen Dump der Kompletten DB und vielleicht auch die Dateien vor dem eigentlichen Update. Den so könnte ich das komplett nachvollziehen.

Die Inhalte kannst du gegebenfalls löschen und auch Passwörter ändern. Aber ansonsten wäre nen Komplettes Dump sehr hilfreich.

Mfg Frank

Offline remo

  • User
  • *
  • Posts: 7
    • View Profile
Re: FATAL Error in class-mysql line 94 (kr 0.9.8.4)
« Reply #4 on: August 11, 2007, 12:20:15 AM »
also gut wäre nen Dump der Kompletten DB und vielleicht auch die Dateien vor dem eigentlichen Update. Den so könnte ich das komplett nachvollziehen.

Die Inhalte kannst du gegebenfalls löschen und auch Passwörter ändern. Aber ansonsten wäre nen Komplettes Dump sehr hilfreich.


Ich denke das ich rein theoretisch alles noch habe, aber der dump den ich mit mysqldump -ac kr2 > xxx.sql mal erstellt hatte, gibt jetzt beim
zurueckspielen ein Error 1064 (sql error near...). Selbst wenn ich von der aktuellen db einen dump erstelle bringt er mir bei zurueckspielen einen
Fehler. Sprich, alleine bekomme ich das nicht hin. Muss ich warten bis ich meinen Spezi wieder fragen kann :-)
Finde ich ehrlich gesagt doof das ich eine Sicherung habe die nicht tut. Eigentlich sollte man annehmen das mysql das mit mysqldump geschriebene auch
wieder lesen kann.

Bis nachher dann...

remo

Offline admin

  • Administrator
  • User
  • *****
  • Posts: 688
    • View Profile
    • http://www.lordlamer.de
Re: FATAL Error in class-mysql line 94 (kr 0.9.8.4)
« Reply #5 on: August 11, 2007, 09:50:18 PM »
Hi,

schick sonst einfach mal das Dump rüber. Dann guck ich mir das an.

Mfg Frank

Offline Koala

  • User
  • *
  • Posts: 12
    • View Profile
Re: FATAL Error in class-mysql line 94 (kr 0.9.8.4)
« Reply #6 on: August 12, 2007, 08:51:31 AM »
Finde ich ehrlich gesagt doof das ich eine Sicherung habe die nicht tut. Eigentlich sollte man annehmen das mysql das mit mysqldump geschriebene auch wieder lesen kann.
Versuch es doch mal mit dem mysqldumper.

Offline sean_yan

  • User
  • *
  • Posts: 1
    • View Profile
Re: FATAL Error in class-mysql line 94 (kr 0.9.8.4)
« Reply #7 on: August 13, 2007, 06:11:03 AM »
I met this problem too!. Could anyone explain it in English? Thanks a  lot!

Offline admin

  • Administrator
  • User
  • *****
  • Posts: 688
    • View Profile
    • http://www.lordlamer.de
Re: FATAL Error in class-mysql line 94 (kr 0.9.8.4)
« Reply #8 on: August 15, 2007, 10:19:33 PM »
Hi,

you have a problem with the mysqldumps or do you mean you have a problem with the upgrade?

Frank

Offline remo

  • User
  • *
  • Posts: 7
    • View Profile
Re: FATAL Error in class-mysql line 94 (kr 0.9.8.4)
« Reply #9 on: October 14, 2007, 02:49:29 PM »
Hallo zusammen,

hatte die Sache eine Weile ruhen (auch wegen des dump-Problems), jetzt habe ich aber herausgefunden wie ich
die knowledgeroot db korrekt dumpe "mysqldump -acQ". Das -Q ist offensichtlich sehr wichtig :-).

Nachdem dieses Problem nun keines mehr ist, habe ich den dump in einer frischen VM eingespielt,
knowledgeroot 0.9.8.5 installiert, install.php laeuft auch fehlerfrei... aber beim ersten Start kommt wieder
diese Fehlermeldung mit class_mysql.php und line 94...

Ich werde jetzt mal versuchen einen dump zu erstellen, der nach Moeglichkeit keine sensiblen Daten mehr enthaelt,
aber den Fehler noch beeinhaltet...

Bis dann

remo

Offline admin

  • Administrator
  • User
  • *****
  • Posts: 688
    • View Profile
    • http://www.lordlamer.de
Re: FATAL Error in class-mysql line 94 (kr 0.9.8.4)
« Reply #10 on: October 14, 2007, 03:01:41 PM »
OK. Ich warte dann aufs Dump.

Welche Apache/PHP/MySQL Version setzt du ein?

Wie genau hast du die Installation gemacht? DB Automatisch erstellen lassen?
Config Dateien Automatisch schreiben lassen oder selber erstellt?

War das ne nackte Install jetzt oder wieder nen Update?

Mfg Frank

Offline remo

  • User
  • *
  • Posts: 7
    • View Profile
Re: FATAL Error in class-mysql line 94 (kr 0.9.8.4)
« Reply #11 on: October 14, 2007, 03:09:12 PM »
OK. Ich warte dann aufs Dump.

Welche Apache/PHP/MySQL Version setzt du ein?

Wie genau hast du die Installation gemacht? DB Automatisch erstellen lassen?
Config Dateien Automatisch schreiben lassen oder selber erstellt?

War das ne nackte Install jetzt oder wieder nen Update?

Mfg Frank

Aktuell : Debian Etch
mit Apache 1.3.34, php 4.4.4 und mysql 5
(Fehler tritt aber auch unter Sarge auf mit den aelteren Versionen)

Hmm, nackt ? Datenbank von vorheriger Version, die Programmdateien und der
Rest vom System komplett neu.

Habe ein Paket (tgz) fertiggemacht mit dem knowledgeroot-Verzeichnis und dem
dump von der Datenbank : Wo soll der Kram hin ? (Groesse 2,2 MB)

Bis dann

remo

Offline admin

  • Administrator
  • User
  • *****
  • Posts: 688
    • View Profile
    • http://www.lordlamer.de
Re: FATAL Error in class-mysql line 94 (kr 0.9.8.4)
« Reply #12 on: October 14, 2007, 03:13:54 PM »
Entweder per Mail an lordlamer_an_lordlamer_dot_de oder irgendwo hochladen wo ich es ziehen kann.

Frank

Offline remo

  • User
  • *
  • Posts: 7
    • View Profile
Re: FATAL Error in class-mysql line 94 (kr 0.9.8.4)
« Reply #13 on: October 14, 2007, 04:31:47 PM »
Hallo erstma...

Den aktuellen Fehler wegen der die o.a. Fehlermeldung kommt hab ich - denke ich - gefunden:

GRANT ALL on <db> to user@host identified by pw;

quittiert mysql zwar mit einem "query OK", ist aber so nicht richtig, muss heissen:

GRANT ALL on <db>.* to user@host identified by pw;

Und entweder ein flush privileges hinterher oder mysql restart...



Trotzdem scheint es mir als ob mein Kumpel nicht ganz unrecht hat, wenn er sagt das an dieser Stelle
(um die Zeile 94 rum) ein Error-Objekt aufgerufen wird das noch gar nicht erzeugt ist ???
Weil, 2 verschiedene Zustaende (beides ja eigentlich SQL-Fehler, einmal fehlende Felder, einmal fehlende Berechtigung)
jeweils die gleiche Fehlermehldung (s.o.) produzieren...

Gruesse,

remo

P.S: Denke das mit dem dump ist nun hinfaellig ?

Offline admin

  • Administrator
  • User
  • *****
  • Posts: 688
    • View Profile
    • http://www.lordlamer.de
Re: FATAL Error in class-mysql line 94 (kr 0.9.8.4)
« Reply #14 on: October 14, 2007, 10:12:59 PM »
Hi,

ja das mit Dump hat sich erledigt.
Der Fehler liegt wie immer im Detail ;) Also erstens waren es natürlich falsche Rechte. Aber der Fehler war dann von PHP auch schon richtig. Die error-Klasse wird in der init.php erst nach der Datenbankklasse geladen. Also existiert das Objekt hier wirklich noch nicht.

Also ein Bug ;)
Danke für die Klärung. Im svn steht es schon anders drin.

Mfg Frank