Aaron Schulz wrote:
I see. OK, so now this is driving me crazy again. What
is it about
logging that makes it have all these problems, and nothing else? Does
anyone have any ideas? Deadlocks were the first think I was thinking
about, but then I wondered why no one reported getting DB error
messages.
Well, I was thinking of a deadlock in the PHP process, we've observed them
from time to time. The process typically persists for days, until apache
is manually restarted. The database connections time out and close
eventually. The user will also see a timeout. This can happen when
malloc() is called from a signal handler, a problem which the designers of
apache were apparently unaware of.
When I had the affectedRows() > 0 check in
LogPage.php, an admin
reported getting the error I had it say whenever it was not met (this
was for blocking) a few times. This is odd because it seems like the
main query function would just return false and throw a DB error if
that was the case. I with I had it logging the error code for that.
Yes, that's odd. And more consistent with what the admins are telling us,
about the lack of timeouts or other error messages when logging fails.
-- Tim Starling