sks-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Sks-devel] DB_INIT_LOCK problems?


From: Jason Harris
Subject: Re: [Sks-devel] DB_INIT_LOCK problems?
Date: Mon, 26 Jul 2004 10:28:44 -0400
User-agent: Mutt/1.4.2.1i

On Mon, Jul 26, 2004 at 07:34:11AM -0400, Yaron Minsky wrote:
> On Sun, 25 Jul 2004 23:33:56 -0400, Jason Harris <address@hidden> wrote:

> > "sks db" remains responsive but "sks recon" stopped logging events
> > at 02:01:32 without reporting any errors.  Only a "kill -9" worked
> > to kill the recon process.
> 
> Yeah, that's more like the behavior I've seen when playing with this. 
> Is the difference whether or not you told it to compute DB stats
> initially?

Actually, it goes into an infinite loop calling select().  A running
db_deadlock process on the PTree database environment finally reveals
why (TZ=UTC):

2004-07-26 06:58:14 18 keys received
2004-07-26 06:58:17 Raising Sys.Break -- PTree may be corrupted: 
Bdb.DBError("caml_db_get: DB_LOCK_DEADLOCK: Locker killed to resolve a 
deadlock")
2004-07-26 06:58:17 <get_missing_keys.catchup> callback interrupted by break.
2004-07-26 06:58:18 DB closed

However, I don't currently access the ptree database via a second
process, so removing DB_INIT_LOCK from it is acceptable for now.

> > As for being single-threaded, if any signal handlers interrupt any
> > database operations in progress and attempt to do any new database
> > operations, they could cause deadlock.
> 
> The only signal I really use is SIGALARM, and that's just for waking
> up (and aborting) long-running transactions.  In any case, the 
> behavior you shows doesn't involve any interrupts, since interrupts
> announce themselves on the log.

This will require more investigation then.

-- 
Jason Harris           |  NIC:  JH329, PGP:  This _is_ PGP-signed, isn't it?
address@hidden _|_ web:  http://keyserver.kjsl.com/~jharris/
          Got photons?   (TM), (C) 2004

Attachment: pgpjxiM72H_Vx.pgp
Description: PGP signature


reply via email to

[Prev in Thread] Current Thread [Next in Thread]