On 25 Sep 2014, at 10:53am, Deon Brewis <[email protected]> wrote:

> In the majority of my application, I'm fine running in WAL/NORMAL and lose
> some committed transactions if the application crashes.

When you lose data are you ever losing part of a transaction ?  SQLite is 
allowed to lose entire transactions, back to some END/COMMIT statement.  It 
should not be losing parts of transactions.  Or, at least, when you reopen the 
database using the SQLite library it should restore the data to an END/COMMIT 
statement.

> (Which actually just
> happened to me on iOS - I thought that can only happen on a full O/S crash -
> not just app. But oh well).

If an iOS app crashes (or is terminated by the OS because it has been hogging a 
resource) OS will close its files and ports.  But it will not flush the buffers 
before it closes them.  I don't know why this is -- it's way out of my field of 
expertise -- but this does mean that you can lose entire SQLite transactions 
which your application thought it had made.

Simon.
_______________________________________________
sqlite-users mailing list
[email protected]
http://sqlite.org:8080/cgi-bin/mailman/listinfo/sqlite-users

Reply via email to