Geez.  I can't believe how much more stable Citadel Server is with this new improved backend.  it was worth spending most of the summer working on this.

Kitty -- I hope you're having good results on FreeBSD -- please let me know if it works for you.

I've got a test running right now with the load tester running in an auto-restarting loop in one window, and in the other window Citadel Server is running under timeout(1) so it automatically dies from signal 9 after 20-30 seconds.  It's been running for close to an hour now, and no matter how catastrophically I make the server die, the database recovers cleanly on the next startup every time.  My faith in BDB's recoverability has been restored.  I'm just wondering whether we've been using it wrong for the last 20+ years (doubtful, considering LS's substantial talent at this sort of thing) or if some change came along later and silently made it wrong.

Anyway, the purpose of this exercise was originally to prepare for moving away from BDB, and we are in a position to add new backends now ... but then I unexpectedly made the BDB backend more or less bulletproof during a late-night coding and testing binge.  And so, here is the NEW plan.

1. I am not going to begin working on the LMDB backend at this time.  I want to spend my time on WebCit-NG.

2. If anyone wants to work on a backend of any type (LMDB, SQL, whatever) I'll be happy to provide whatever support you need, including modifications to the interface if needed.

3. Naturally, if any stability/durability issues are reported, fixing them will take first priority.

4. I'll do my best to keep everything buildable on FreeBSD.  It'll still require gcc and gmake for the time being, but as of right now it does work.

I'm trying to line up new hardware to run my stuff on.  Hopefully soon.  That'll be when I finally move Uncensored to a 64-bit system.  I'll proably run the container version.

Reply via email to