Hi, all!

I have an application written using sqlite. It writes into the
database very intensively. And I noticed that it works nice and very
fast but from time to time it just freezes for several seconds (I've
registered freezes up to 8 secs). After some tracing of sqlite code
I've found that all these 8 secs of freeze sqlite spends inside
pwrite() call. So evidently when everything works fast all pwrites
return almost immediately because kernel writes everything to the
cache. And on some calls kernel have just flush all disk buffers, and
with intensive disk usage this flushing can last for pretty long time.
I've tried to set pragma synchronous = on (it's off by default for
me), but it makes application to work 5 times slower which is not
acceptable for me. I would be happy if there was some solution in
between that, i.e. for example just a bit slower operation on every
pwrite but without 8 seconds-peaks.

Does anybody know what solution I can apply here?

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

Reply via email to