[EMAIL PROTECTED] wrote:
Dave Dyer <[EMAIL PROTECTED]> wrote:
The real problem is that sqlite assumes it "owns" the temporary
transaction file that it created, and can do anything it wants with it; for example read, rename, or delete it.

I think this is a very reasonable assumption.

Any other process which gets it's hooks into the file can obviously invalidate this assumption.


This is not at all obvious to someone who does not
user or program for windows.

The obvious quick fix is to retry these file operations that must succeed,...

Can some windows programmers suggest patches to os_win.c to
implement this.

but the underlying problem is a fundamental one that deserves to be addressed.

Yes, I agree. But microsoft is unlikely to address the gross deficiencies in their filesystem. So I suppose it will fall to me to find a work-around.

I'll look into the matter when I have a chance.

--
D. Richard Hipp   <[EMAIL PROTECTED]>


The solution used by others (for example Firebird) is to create exclusive lock on file (in case of Firebird it is database file) to prevent this situation.However in case of sqlite.dll it not so obvious, because there is no database engine working all the time.


Regards
Boguslaw Brandys


Reply via email to