Dear all, I have a large SQLite database with genomic data which is strictly read-only at this point, and in direct spite of the FAQ I intend to query it concurrently on a network FS. Our parallel FS ought to be able to handle a heavy read workload from our cluster, based on past experience, but acquiring read locks seems to cause a bottleneck. I have found a few mentions of an experimental 'pragma omit_readlock' which seems just right for this situation, but I have not been having luck making it work so far.
I also found the following June 2009 e-mail to this list from Joerg Hoinkis that seemed to make some progress by digging into the SQLite source, but did not get any replies. I have similarly tried some obvious things like opening my database with SQLITE_OPEN_READONLY and making sure my file's permissions are 444. I'd appreciate it if anyone could let me know if this pragma still works and how to use it if so. Thanks, Mike Lin > Hi! > > I'm trying to access a readonly database without locks, using the > amalgamation of SQLite 3.6.14.2 > > After I opened the database with flags = SQLITE_OPEN_READONLY I perform > > sqlite3_exec (db, "PRAGMA omit_readlock=ON", 0, 0, 0); > > I traced that down into the amalgamation to the point where the database > flag is set in flagPragma... > > db->flags |= p-mask; > > So I can be sure the pragma syntax is correct. > > > Now when I execute a SELECT statement, it is parsed and I run into > pagerSharedLock, but > the pager->noReadlock variable is 0. As a result the database file gets > locked. > > > It look like the initialization of the pager->noReadlock flag, but that > happens when the database is > opened. I messed up the last sentence, better: It looks like the initialization of the pager->noReadlock flag only happens when the database is opened, but by that time the omit_readlock pragma is not active. > > Am I doing something wrong or did this ("Very experimental") feature got > lost in past refactorings? > > > Thanks for listening & in advance to any hints Joerg _______________________________________________ sqlite-users mailing list sqlite-users@sqlite.org http://sqlite.org:8080/cgi-bin/mailman/listinfo/sqlite-users