SQL Fehler in der we_schedpro.inc.php

Fragen zu den Grundfunktionen der webEdition Oberfläche wie Backup, Import, ...
Fragen zu we:Tags bitte im Forum "Templates erstellen"
szadmin
Junior Member
Beiträge: 27
Registriert: Mi 13. Feb 2013, 10:32

SQL Fehler in der we_schedpro.inc.php

Beitragvon szadmin » Do 4. Apr 2013, 14:06

Hallo zusammen,

eben habe ich eine 6.3.6 Beta 1 auf die aktuelle Stable gebracht. Leider kann man im Anschluss garnicht oder nur mit viiel Geduld die Seite aufrufen.

'MYSQL-ERROR
Fehler: 1064
Detail: Fehler in der SQL-Syntax. Bitte die korrekte Syntax im Handbuch nachschlagen bei ''AND Active=1 AND Wann= AND ClassName="" AND Type="" AND Was=""'' in Zeile 1
Info:
Query: UPDATE WE_tblSchedule SET Active=0, Schedpro="a:0:{}" WHERE DID= AND Active=1 AND Wann= AND ClassName="" AND Type="" AND Was=""'
0 error_handler called at [:]\n#1 query called at [webEdition/we/include/we_modules/schedule/we_schedpro.inc.php:471]

MYSQL-ERROR
Fehler: 1064
Detail: Fehler in der SQL-Syntax. Bitte die korrekte Syntax im Handbuch nachschlagen bei ''AND Active=1 AND ClassName="" AND Type="" AND Was="" AND Wann='' in Zeile 1
Info:
Query: UPDATE WE_tblSchedule SET lockedUntil=lockedUntil+INTERVAL 1 minute WHERE DID= AND Active=1 AND ClassName="" AND Type="" AND Was="" AND Wann=', '2013-04-04 09:55:09', 'SQL Error', 'error_handler', '', 0, '#0 error_handler called at [:]\n#1 query called at [webEdition/we/include/we_modules/schedule/we_schedpro.inc.php:455]

Anscheinend wird in der we_schedpro.inc.php irgendwas nicht richtig abgefangen. Beidesmal ist der Wert DID in der Query nicht befüllt - da in der ScheduleTabelle keine Zeilen vorhanden sind. Den Scheduler verwenden wir beim betroffenen Auftritt sowieso nicht.
Die tblErrorLog wächst dank aktivem Fehlerlogging übrigens ohne Unterlass, 2 GB nach 40 Minuten

Folgende Änderungen helfen mir nun kurzzeitig, eine gute Lösung ist das aber leider nicht

Die Zeile 454 schaut nun wie folgt aus:
while((!$hasLock && ($DB_WE->lock(array(SCHEDULE_TABLE, ERROR_LOG_TABLE))) && ($rec = getHash('SELECT * FROM ' . SCHEDULE_TABLE . ' WHERE Wann<=UNIX_TIMESTAMP() AND lockedUntil<NOW() AND Active=1 ORDER BY Wann LIMIT 1', $DB_WE)))) {

Jetzt funktioniert aber der Scheduler nicht mehr wie er sollte. :-/

In Zeile 456 wurde noch folgendes "verschönert" ...SET lockedUntil=DATE_ADD(lockedUntil, INTERVAL 1 MINUTE)...
...aber dieser Mod ist nicht kriegsentscheidend bei dem aktuellen Problem ^^

Die Modifikationen sind nicht von mir selbst, aber Sie sorgen dafür, dass unser Auftritt wieder ordentlich ausliefert.
Ich konnte diesen "Bug" auch nicht im Bugtracker bzw hier im Forum finden, scheinbar tritt dieser Fehler ja nur selten auf (alternativ hab ichs übersehen).

Gibt es Eurerseits evtl. Ideen oder Vorschläge, was in diesem Fall zu tun ist?

e_herrmann
Senior Member
Beiträge: 1273
Registriert: Do 22. Mai 2003, 23:25

Re: SQL Fehler in der we_schedpro.inc.php

Beitragvon e_herrmann » Do 4. Apr 2013, 14:39

Hi,
das scheint mir eher ein Fall für die Bugbase, als für das Forum. Dort schauem die Entwickler regelmäßiger rein als hier.

Wenn ihr den Scheduler/Zeitplaner nicht nutzt, versuch doch mal unter Einstellungen>Module den Zeitplaner zu deaktivieren. Vielleicht tritt der Fehler dann nicht mehr auf.

Grüße Elko
Elko Herrmann
komplexx | internet.fotografie
web: http://www.komplexx.de

szadmin
Junior Member
Beiträge: 27
Registriert: Mi 13. Feb 2013, 10:32

Re: SQL Fehler in der we_schedpro.inc.php

Beitragvon szadmin » Do 4. Apr 2013, 15:14

Ich hätte ja das Modul deaktiviert, wenn ich ins WebEdition reingekommen wäre. Aber schon das hat wg dem Fehler nicht funktioniert!

Danke für den BugtrackerHinweis, ich habs mal eingestellt.

http://qa.webedition.org/tracker/view.php?id=7585

szadmin
Junior Member
Beiträge: 27
Registriert: Mi 13. Feb 2013, 10:32

Re: SQL Fehler in der we_schedpro.inc.php

Beitragvon szadmin » Fr 5. Apr 2013, 10:46

Ok, Problem "gelöst" - der Datenbankuser benötigt LOCK TABLES Rechte.
Diese wurden dem User des betroffenen Webauftritts nicht gewährt.
Das Fazit war ne Endlosschleife

mokraemer
Senior Member
Beiträge: 2569
Registriert: So 8. Aug 2010, 01:23
Wohnort: Mainz

Re: SQL Fehler in der we_schedpro.inc.php

Beitragvon mokraemer » Fr 5. Apr 2013, 17:28

Zusatzinfo: eigentlich sollte der Kode genau überprüfen ob es das Lock Recht gibt.
Derzeit prüft der Installer/Updater noch nicht ob dieses Recht vorhanden ist (muß noch erweitert werden).
Sofern ein Shop vorhanden ist, oder eine stark frequentierte Seite mit Scheduler benutzt wird, sollte überprüft werden das es dieses Recht gibt, sonst kann es hier zu Fehlern kommen (dies ist eine der wenigen Stellen wo WE Transaktionen benötigt).
webEdition-Kern-Entwickler


Zurück zu „Basisversion“

Wer ist online?

Mitglieder in diesem Forum: 0 Mitglieder und 1 Gast