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]
-----------------------------------------------------------------------------