General help

Windows server: PHP processing error/site crash

Jeffrey L. Jones
Windows server: PHP processing error/site crash

We're experiencing intermittent crashs and problems with our site. Our Moodle install has about 30,000 registered students and a bit over 2,000 course shells used primarily for "blended" instructional purposes. Many are just static, and the others are just starting to get active as we start up our school year.

We're running PHP Version 5.3.13, MySQL (I forget that version, but it's current as of June), Moodle 2.2.3+ (Build: 20120601) on Windows Server 2008 SP1 running IIS 7.5. Data (including file data) and web service are split between two boxes. 

When things started goin' south, we'd get the following...

HTTP Error 500.0 - Internal Server Error
The FastCGI process has failed frequently recently. Try the request again in a while we turned off FastCGI's auto fast recovery. We've had some problems getting PHP's error logs goin' too, but the error below seems the most likely crash-inducer...

[23-Aug-2012 09:17:23 UTC] Potential coding error - existing temptables found when disposing database. Must be dropped!
[23-Aug-2012 09:17:23 UTC] PHP Fatal error:  Uncaught exception 'ddl_change_structure_exception' with message 'DDL sql execution error' in E:\www\lib\dml\moodle_database.php:400
Stack trace:
#0 E:\www\lib\dml\mysqli_native_moodle_database.php(669): moodle_database->query_end(false)
#1 E:\www\lib\ddl\database_manager.php(88): mysqli_native_moodle_database->change_database_structure('DROP TEMPORARY ...')
#2 E:\www\lib\ddl\database_manager.php(75): database_manager->execute_sql('DROP TEMPORARY ...')
#3 E:\www\lib\ddl\database_manager.php(522): database_manager->execute_sql_arr(Array)
#4 E:\www\lib\dml\moodle_temptables.php(130): database_manager->drop_temp_table(Object(xmldb_table))
#5 E:\www\lib\dml\moodle_database.php(322): moodle_temptables->dispose()
#6 E:\www\lib\dml\mysqli_native_moodle_database.php(334): moodle_database->dispose()
#7 E:\www\lib\dml\moodle_database.php(140): mysqli_native_moodle_database->dispose()
#8 [internal function]: moodle_database->__destruct()
#9 {main}
  thrown in E:\www\lib\dml\moodle_database.php on line 400

...Does that actually look likely? If so, fixes? If not, any ideas where we might look?

Average of ratings: -
Picture of Howard Miller
Re: Windows server: PHP processing error/site crash
Core developersDocumentation writersParticularly helpful MoodlersPlugin developers

Well... I don't know. The bit of code throwing the exception isn't very well commented but it seems to be related to database transactions and looks to be throwing out certain 'types' - although I'm not sure what a type is.

The commit for that line leads to MDL-19470 which is also rather opaque. Your man here is Petr Skoda. He will probably put his finger on thi straight away if you drop him an email!

Average of ratings: -
Jeffrey L. Jones
Re: Windows server: PHP processing error/site crash

Will do, and thanks!

Average of ratings: -
Picture of Mark Adams
Re: Windows server: PHP processing error/site crash

Hi Jeffrey - did you ever find a solution to this as i'm having the same issue on one of our servers?



Average of ratings: -
Picture of Mike deSimon
Re: Windows server: PHP processing error/site crash

We are having this issue as well. Any help?

Average of ratings: -