-
-
Notifications
You must be signed in to change notification settings - Fork 78
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Broken WAL mode in 1.3.0|1 #39
Comments
Unfortunately I have to confirm the issue. Thanks for reporting. I will look into it to find out the cause of the problem. |
I think I found the cause of the problem and hopefully fixed it with commit 43bd436. On writing the WAL journal file the codec pointer was not determined correctly leading to a corrupted WAL journal. A small, but fatal mistake. I'm sorry for the inconveniences this may have caused. Please verify that it now works for you. When I get a confirmation from you I will make a new release. |
I will let you know. Will take a little time because I want to make sure it also works in some other scenario I had problems with in 1.1.1 |
Take your time. Thanks for testing in real world scenarios. |
The point in case here seems to be fixed as you expected. |
I'm pretty confident that WAL journal mode now works as expected.
Yes, that's understandable. And it is now more important to get things right than to publish just another broken release. I added a note to the release messages of version 1.3.0 and 1.3.1 that WAL journal mode is broken in those releases. Users of the default Rollback Journal mode are not affected. |
Release 1.3.2 fixes the underlying problems and provides a configuration parameter to facilitate the transition from prior versions. The documentation has been updated accordingly. Therefore this issue will be closed. Reopen it if necessary. |
I was actually trying to replace sqlite3mc 1.1.1 with 1.3.1 using WAL mode and some old database, but stumbled upon some issues. After narrowing down I found that WAL mode in general seems to be broken in release 1.3.1 (or 1.3.0).
Run this to create a new database (in the sqlite3mc shell provided in the binary download for win64):
and you still get a result, but after re-opening the database again:
we're lost with a broken db:
Error: unsupported file format
My original attempt was to model our application code and switch back out of WAL mode before closing the db:
which also fails, but with a different error message:
Error: database disk image is malformed
The text was updated successfully, but these errors were encountered: