Frage

Ich habe einige PHP-CLI-Skripts, die lange Zeit (24 Stunden Plus) laufen, und obwohl sie regelmäßig "Commit's" hatte, hatte ich einige Probleme mit verwaisteten Transaktionen - möglicherweise durch den Absturz der Skripts.

Meine Lösung bestand darin, die Transaktion wie folgt zu erstellen - vor einem Jahr, dass ich dies erforschte, und sich nicht ganz an die genauen Gründe für diese Einstellungen erinnern, aber es schien einige Probleme mit der Datenbank zu lösen.

$ dbh= ibase_connect ($ dbhost, $ dbuser, $ dbpass); $ trans= ibase_trans (ibase_write + ibase_committed + ibase_rec_version + ibase_wait, $ dbh);

hat jetzt auf PHP 5.3.5 aktualisiert und stellt fest, dass die IBASE_TRANS-Leitung einen Segmentierungsfehler verursacht. Auf der PHP ibase_trans-Seite gibt es eine Anmerkung:

"Das Verhalten dieser Funktion wurde in PHP 5.0.0 geändert. Der erste Aufruf von ibase_trans () gibt nicht die Standardtransaktion einer Verbindung zurück."

So ist meine Frage, ob ich die Transaktionsargumente für die Standardtransaktion einstellen kann ... sekundäre Frage, ob ich den Punkt nicht fehlt, in dem ich versucht habe, dies sowieso zu tun!

danke

War es hilfreich?

Lösung

Sie sollten nicht mit Standardtransaktion arbeiten.

Definieren Sie Ihre Transaktion als Follows: generasacodicetagpre.

Nach dem Ausführen Ihrer Anfrage: generasacodicetagpre.

oder Sie können ibase_prepare & ibase_execute verwenden.

danach, anrufen generasacodicetagpre.

oder generasacodicetagpre.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top