Ich weiß, dass dieser Thread schon in die Jahre gekommen ist, aber das Problem gibts in der aktuellen Version immernoch und ich bin beim Suchen hierauf gestoßen und der Thread hat mir geholfen, das Problem zu beheben. Problematisch war wie von meinen Vorrednern angedacht, dass die hier mehrfach zitierten Zeilen in verschiedenen Frames ausgeführt werden. Reproduzieren lässt sich der Fehler ganz leicht, indem man im Firefox einfach einige Tabs mit Contenido aufmacht und "Reload Every" auf eine Sekunde stellt.
Nach ein bisschen ausprobieren merkt man schnell, dass das (ent-)sperren der Tabellen nicht funktioniert:
- Code: Alles auswählen
$this->db->lock($this->database_table);
[...]
$this->db->unlock();
Mir ist das ganze PHPLIB Zeugs eh nicht so geheuer, und wenn man einfach die Tabellen "von Hand" sperrt, tritt der Fehler nicht mehr auf. Die beiden obigen Zeilen muss man einfach ersetzen durch
- Code: Alles auswählen
$this->db->query('LOCK TABLES '.$this->database_table.' WRITE');
[...]
$this->db->query('UNLOCK TABLES');
Mit Reload Every bin ich auf einen Fehler alle 5 Sekunden gekommen. Nach dem Fix läuft das ganze jetzt schon 10 Minuten stabil, ich denke, das sollte also jetzt passen.
Ich würde mich auch über euer Feedback dazu freuen...