On 27 Sep 2019, at 11:59pm, Roman Fleysher <roman.fleys...@einstein.yu.edu> 
wrote:

> From experience, it seems that because SQLite still requests file locks, the 
> performance increase is not that big. I wonder if there is a way to disable 
> SQLite's internal file locking mechanism. I know this seems strange to ask. 
> But FLoM should be able to do it faster over many compute nodes.

What busy_timeout did you set ?

Do you process multiple operations inside a transaction, or do you let SQLite 
create its own transactions automatically ?

SQLite always locks the entire database.  It does not implement table or row 
locking.

SQLite has two (main) journalling modes.  The journalling made influences which 
operations lock out other operations.  The biggest change in lockouts occurs 
whether you do or do not have writes from multiple connections at once.  You 
might want to try executing this command just once:

    PRAGMA journal_mode = WAL

This makes a change to the database so that all connections which open it know 
it's in WAL mode.  You don't have to change your software.  It might speed 
things up.  (You can do

    PRAGMA journal_mode = DELETE

to set it back.)

There are other other things you can do to disable various parts of the locking 
system, but you should try the above first.  You might want to play around with

<https://sqlite.org/pragma.html#pragma_synchronous>

Refs:

<https://sqlite.org/pragma.html#pragma_journal_mode>
<https://sqlite.org/wal.html>
_______________________________________________
sqlite-users mailing list
sqlite-users@mailinglists.sqlite.org
http://mailinglists.sqlite.org/cgi-bin/mailman/listinfo/sqlite-users

Reply via email to