This is the mail archive of the cygwin mailing list for the Cygwin project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: sqlite3: bug with monotone


On 5/31/2013 13:58, Warren Young wrote:

The SQLite code prefers POSIX advisory locks, but it can fall back to
BSD locks if it has to.

Just to clarify, when I say "POSIX locks" I always mean new style fcntl() locks. There are no calls to lockf() in sqlite3.c.

I'm not sure why it doesn't just
blindly try the lock.

On reflection, I'm sure it has something to do with maintaining high concurrency. If it knows its near-future DB file write is going to get blocked, it can choose to do something else while the existing DB lock holders finish.

By contrast, SQLite's flock() based locking is documented as being much more brute-force, resulting in much lower concurrency.

--
Problem reports:       http://cygwin.com/problems.html
FAQ:                   http://cygwin.com/faq/
Documentation:         http://cygwin.com/docs.html
Unsubscribe info:      http://cygwin.com/ml/#unsubscribe-simple


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]