Subject Another process is locking the database file ...
Author Lucas Franzen
Hello,

Scenario:
Firebird 1.5.3 Superserver
Windows 2003 (but it also happened with W2K, always latest SP)
Application, written with Delphi/IBO, doing loooong data analysis
operations, no problems so far.

I had to drive to a customer this week where the program always fails
after some time (different durations, maybe 2 hours, maybe 5, maybe
more). It's the only site where this happens.

My error log shows:

ISC ERROR CODE:335544344

ISC ERROR MESSAGE:
I/O error for file "E:\DB\DATABASE.FDB"
Error while trying to read from file
Der Prozess kann nicht auf die Datei zugreifen, da ein anderer Prozess
einen Teil der Datei gesperrt hat.
(The process cannot access the file since another process locked some
part of the file.)

Never seen and experienced that before.
Looks like something's able to override the servers file lock.
And it's really Superserver running, not embedded one.

Analysing the Win systemprotocol I saw that approximately 90 seconds
before the program stopped a "volume shadow copy" process (vssvc.exe)
did run.
(On the Win2K server the same, the process was certsrv.exe)

So the service that started the VSC process was disabled.

The program was restartet in the afternoon, but failed with the same
error again in the evening.

I haven't received the log of the system protocol so far (so I'm not
sure if the 90-seconds-in-advance-process was really stopped by
disabling the VSC service)

Any clues for me?


Luc.