Forum
Ich nenn jetzt mal die Programme, die die Inserts machen PGM-A, und das Programm, das den Timestamp ermitteln will PGM-B.
zu meiner Lösung b:
was die PGM-A genau lesen sollen ist irrelevant, solange es etwas aus der Protokoll-Tabelle ist ( das kann z.B. ein Satz mit bestimmtem Schlüssel sein ( timestamp 01:01:0001-00:00:00, oder beliebiger Cursor und ein FETCH).
Es geht ja nur um die Serialisierung gegenüber dem
PGM-B.
Ist eines der PGM-A aktiv, muss das PGM-B wegen seinem LOCK EXCLUSIVE auf das Ende der ganzen Inserts von PGM-A warten.
Andererseits muss bei laufendem PGM-B jedes PGM-A bereits beim Lesen WITH RR warten, so dass der Insert dann mit dem korrekten Timestamp ( größer als von PGM-B ermittelt ) erfolgt.
Bei dieser Variante könnten beliebig viele PGM-A laufen, ohne sich gegenseitig zu behindern