[Xapian-discuss] NFSv4 and locking

Olly Betts olly at survex.com
Wed Dec 3 01:36:23 GMT 2008


On Tue, Dec 02, 2008 at 04:20:52PM +0200, Henry wrote:
> We use NFSv4 on our cluster and perform distributed indexing (well, we  
> used to on our previous system which used a simple touch() locking  
> mechanism).
> 
> I'm having a spot of bother getting Xapian to obtain a lock (hangs on  
> fcntl64()).

Hmm, that shouldn't happen - we use F_SETLK which shouldn't block.

If locking isn't supported, I'd expect ENOLCK.  If it is supported, I'd
expect the lock to be obtained, or to fail with EACCES/EAGAIN.

Sounds to me like you need to debug your NFS setup.  

> So, how-now-brown-cow?  I'm tempted to dig into Xapian's guts and  
> simply change it to perform no locking since my backend system manager  
> takes care of concurrency, but I'd prefer to figure/find out what's  
> causing this lock to fail/hang.

If you deliberately thwart Xapian's locking, don't expect much sympathy
if you get corrupt databases...

Cheers,
    Olly



More information about the Xapian-discuss mailing list