I just wanted to post this in case anyone else has or will have this problem.
I got a call from my client saying that their website was down and that she’d called the host and they said they upgraded things. I called the host and they said they just upgraded their web server with the latest version of php (5.2.3) and latest version of MySQL (5.0.27).
So with this information I logged into my client’s plesk control panel and found this error message in the error log:
[Thu Jul 12 10:59:18 2007] [error] [client 220.127.116.11] PHP Fatal error: Allowed memory size of 33554432 bytes exhausted (tried to allocate 7527027 bytes) in /var/www/vhosts/.../httpdocs/manager/includes/document.parser.class.inc.php on line 1287
I immediately searched the forums for this error message and found others have had similar problems
and were able to solve it with an upgrade to 0.9.6. I upgraded with no success on the front end (still just showed a blank page - php errors are off, and logged to the error_log), but I could access the manager. In the manager I kept getting ’Duplicate key 0 for 1’, and "Error updating error log" messages. So when looking at the modx_error_log table in the database I noticed that the ’id’ field didn’t have auto_increment on. Then I looked at the other tables in the database, and NONE of them had auto_increment turned on for the ’id’ fields!! I couldn’t believe it. Going back and looking at the backup I made before I upgraded confirmed that this was messed up before the upgrade to 0.9.6. So somehow, auto_increment got removed from all fields where it was set when the host upgraded MySQL (at least that’s what I think happened).
This was such a perplexing problem for me and took over 8 hours to solve. I hope this helps someone else if they have the same problem, but moreover I hope this was an isolated incident.
Also, has anyone ever heard of this happening before??