Christian Smith wrote: > Max Barry uttered: > > My database is permanently locked, and I've spent two fruitless days > trying to unlock it. > > You haven't said what sort of box this is. I guess a generic Unix. If Linux, > you'll probably have fuser installed. Run fuser against the database file, > and it'll tell you the PID of any process that has the file open. I'm not > sure if other Unix have fuser installed by default.
Sorry, yes: it's a Linux box with a 2.4.32 kernel. > If the file is owned by a trac processs, you can kill it using "fuser -k", > assuming you have permission. Unfortunately fuser doesn't show any process holding a lock, and I've already tried killing every process I have permission to. I suspect that fuser might not show me the answer because I'm non-root. Certainly ps, top, etc, only show processes I own. I've asked the box owner to run 'fuser' for me and see if that shows something. drh wrote: > Is the database on an NFS filesystem. The locking is busted > on some (many?) implementations of NFS, resulting in behavior > like shown above. Yep, it's NFS. The line from /etc/fstab is: 10.3.100.108:/vol/boot/spunky/maitland /home/.maitland nfs defaults,intr,vers=3,bg,rsize=8192,wsize=8192 0 0 > Your work-around is to copy the database to a local filesystem > that actually supports posix advisory locks. Ah. Except I don't think I can do that, because I don't have root on this box. I discovered I could make a copy of the trac.db file and edit my trac.ini file to make point to that instead ("database = sqlite:db/trac2.db"). Ta da, no more lock! So at least my site is usable again. But it sounds like this will happen again with my current configuration. Is there anything I can do as non-root, or do I need to just be prepared for lots of db copying? Thanks very much to drh and Christian for the fast replies! Max. ----------------------------------------------------------------------------- To unsubscribe, send email to [EMAIL PROTECTED] -----------------------------------------------------------------------------