[Date Prev][Date Next] [Chronological] [Thread] [Top]

Re: back-bdb deadlocks?



Jong-Hyuk wrote:

Did a quick experiment and slapd ran just fine with removed log files.

The

lifetime of the long-lived transaction does not seem to span over

multiple

slapd runs. Do you mean the behavior on an erroneous condition where
transactions are not aborted/committed upon slapd termination ?

He means that if you keep slapd running for a long time (which most folks would aim to do, presumably), then the transaction logs will grow without bounds. Tyically the available disk space is not unlimited, so at some point it will fill up, if sufficient write operations are performed on the database.


In my box, slapd still works fine after removing log files while it is
running. Isn't it that the persistent (long-lived) transaction do not have
any updates ? Howard, which behavior did you observe in your setup ?
- Jong-Hyuk

David was pretty close. db_archive will report that all the log files are in use while slapd is running, despite any checkpointing. Even though the long-lived transactions perform no writes, BDB reserves a slot for them in the transaction log, and the log cannot be freed until the transactions are disposed of.


For this current approach to work without interfering with db_archive, we need a way to tell BDB that these transactions are read-only...

--
  -- Howard Chu
  Chief Architect, Symas Corp.       Director, Highland Sun
  http://www.symas.com               http://highlandsun.com/hyc
  Symas: Premier OpenSource Development and Support