On 02/01/2014 12:13 AM, veeresh kumar wrote:
Hi All,
Below is my Sqlite settings. The current database size
is  ~ 8GB
PRAGMA journal_mode = WAL
PRAGMA synchronous = NORMAL
PRAGMA wal_autocheckpoint = 500000"
With the above check point, the time taken to commit
transaction to actual database file after reaching a checkpoint is 2.5 to 3
minutes for a 8 GB database.Is it taking acceptable time taken as per sqlite
standards?

Are your pages 1024 bytes? If so, I guess the checkpoint is writing
500MB of (possibly) non-contiguous data to the database file. Somewhere
in the neighbourhood of 3MB/second. Seems quite plausible.

My concern is during this 2.5 – 3 minutes, Will application
be able to perform any “new write operation” Or does the application has to
wait for 2-3 minutes until merging of the data from WAL file to actual database
operation gets completed ?

New writes are possible while a checkpoint is ongoing.

Although, if you are using synchronous=FULL, they might be
really slow, depending on the file-system. synchronous=NORMAL
or OFF should be Ok. Something to test if it matters to
you.

Dan.




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

Reply via email to