AW: [Allegro] Gesperrte Datenbank
Bernhard Eversberg
ev at biblio.tu-bs.de
Fr Apr 18 10:31:00 CEST 2008
Thomas Berger schrieb:
>
> Es koennte sein, dass zufaellig in jener Millisekunde jemand
> einen Satz speichert und daher die .tbl im Moment des Tests
> voruebergehend gesperrt war: Dann gibt es vermeidbare
> Irritationen.
>
Das Speichern dauert meistens länger als eine Millisekunde!
Deshalb sollte wohl im Anschluß an die Prüfung der Ratschlag
folgen, es nach einigen Sekunden nochmals zu versuchen, oder
man baut eine Message ein, mit 10 Sek. als Verzugszeit
Message 10,TBL gesperrt - neuer Versuch folgt gleich!
...
> Umgehen laesst sich das bekanntlich nur, indem man selbst
> die .tbl sperrt, nur dann weiss man zuverlaessig, dass sie
> vorher frei war:
>
> set tbl lock
>
> Nur: Wass passiert hier, wenn die Datenbank wegen einer Fehlersituatino
> tatsaechlich permanent gesperrt ist: Dann haengt die Angelegenheit
> unendlich lange und blockiert a99?
Nein, nur 10 Sekunden, dann gilt die Bedingung "no".
>
> Meine Vorstellung ist, dass a99, wenn alles automatische scheitert,
> letztendlich dem Benutzer die Frage stellt, ob (unter a) Verzicht aufs
> Speichern der b) Verwerfen/Verlust aller Bearbeitungen und Neusaetze
> beendet werden soll oder ob es noch einmal zu probieren ist.
>
Ja, mit den gegebenen Angaben läßt sich das so lösen.
> Problem am Rande uebrigens, wenn wegen irgendwelcher Probleme a99 sich
> auf access=0 zurueckgestuft hat: Dann sollten solche Tests beim
> Beenden von a99 gar nicht erst versucht werden...
>
Dann tritt die Situation nicht auf, weil er keine Sätze ändern konnte.
Das Rückstufen passiert ja sofort beim Start.
B.E.
Mehr Informationen über die Mailingliste Allegro