howare
Goto Top

Es wird nicht die aktuellste Datei-Version geöffnet

Guten Tag,

es handelt sich um eine .cfg Datei, welche von 3 Arbeitsplätzen als Batch-Configurationsdatei genutzt wird. Die batch.cfg liegt auf einem App. Server und wird von einer Software verwendet.
Wird von einem Arbeitsplatz ein neuer Batch angelegt, wird dieser automatisch in diese Config geschrieben und der Wert des "next batch" um 1 erhöht.

Es ist nun schon des öffteren passiert, dass ein Arbeitsplatz diese Config-Datei nicht mehr korrekt geöffnet hat.

Sprich:
User 1 erstellt einen Batch und erhält Batch-Nr. 1024.
In der Batchdatei wird "next Batch" um einen erhöht.
Batchdatei hat den Inhalt "next batch: 1025"

User 2 erstellt einen Batch und bekommt Batch-Nr. 1025.
In der Batchdatei wird "next Batch" um einen erhöht.
Batchdatei hat den Inhalt "next batch: 1026"

User 1 erstellt einen weiteren Batch und erhält wieder Batch-Nr. 1024.

Öffne ich die batch.cfg manuell mit dem Editor (von PC-User1), so steht dort drin: next batch: 1024.

Öffne ich die batch.cfg von User2 oder direkt auf dem Server, so steht dort drin: next batch: 1026.


Leider tritt der Fehler relativ selten auf und es bleibt des Weiteren nie viel Zeit um dem ganzen nachzugehen, da alles schnell wieder laufen muss. Nach einem Neustart des PC's von User1 ist das Problem behoben.


Hat jemand eine Idee, wieso so etwas zustande kommen kann?


MfG howare

Content-Key: 188863

Url: https://administrator.de/contentid/188863

Printed on: April 19, 2024 at 01:04 o'clock

Member: maretz
maretz Jul 31, 2012 at 10:37:50 (UTC)
Goto Top
Du hast ne wundervolle race-condition eingebaut... User 1 und 2 öffnen die Datei gleichzeitig? User 1 öffnet die das Programm, die Datei oder whatever - und während die "nextBatch" geschrieben wird (da erhält die nen File-Lock) öffnet User 2 die Datei -> sein Wert darf also wg. des Locks nicht geschrieben werden...