The above commit has to do with the experience a few of us had with rooms
suddenly containing all new messages. 
  
 There was no database corruption.  THE DREADED AUTO-PURGER did this, and
it appears to have believed that it was supposed to do that.  When we purge
`visit` records, we first build lists of valid users and rooms, and we delete
any `visit` record that doesn't point to a valid user *and* a valid room.

  
 I'm still not sure, but I think we built incomplete user and room lists in
memory because of memory allocation.  So now if we fail to allocate we crash
the server completely.  It's bad but losing data is worse. 
  
 On another note, I think this happened on Uncensored because of the Brown
Paper Bug that I fixed in the previous release. 
 

Reply via email to