Hi Simon

Thank you for your reply.

>
> Probably worth us knowing whether you've read the 'Performance 
> Considerations' section of
>
> <http://www.sqlite.org/wal.html>
>

Yes, I have read that, along with all the threads/posts I could find
from the Internet. The thing that I cannot fully understand is how can
FULL (2) guarantee durability, but NORMAL (1) cannot. Before making an
attempt to look into the code, I just wanted to see if anyone can help
provide some explanation.

> before anyone gives an in-depth answer.  The basic difference between the two 
> settings is that FULL (2) synchronises far more frequently than NORMAL (1), 
> meaning that in the even of power loss, fewer transactions will be lost.  
> Though if your OS and hardware does perform as documented then neither mode 
> will actually lose data or cause database corruption.

Durability means a transaction cannot be lost, and I know FULL (1)
will provide that. The question is why NORMAL (1) cannot provide the
same.

I am using EXT3 with barrier=1 and write-cache disabled from the HDD,
as far as I know this is as good as it gets for making the system
reliable. So, in this case, will the NORMAL (1) actually cause data
loss on power loss? I already know that corruption will not happen, I
am just interested in the "losing transactions" or "sacrifice
durability" as suggested in various threads/posts I have read.

Regards
Keith

>
> Simon.
> _______________________________________________
> sqlite-users mailing list
> sqlite-users@sqlite.org
> http://sqlite.org:8080/cgi-bin/mailman/listinfo/sqlite-users
_______________________________________________
sqlite-users mailing list
sqlite-users@sqlite.org
http://sqlite.org:8080/cgi-bin/mailman/listinfo/sqlite-users

Reply via email to