Yes, pages are of 1024 bytes and checkpoint is writing 500 MB. I see that I am unable to write data during checkpoint. Any solution?
-----Original Message----- From: [email protected] [mailto:[email protected]] On Behalf Of Dan Kennedy Sent: Friday, January 31, 2014 10:01 AM To: [email protected] Subject: Re: [sqlite] wal_autocheckpoint 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 _______________________________________________ sqlite-users mailing list [email protected] http://sqlite.org:8080/cgi-bin/mailman/listinfo/sqlite-users

