Skip to content

Revisiting MergeQuery_mysql

July 20, 2011

I wrote a few weeks ago about a problem I’m running into with Drupal when I attempt to run update.php. Specifically, I’m getting a White Screen of Death, which when I put in the three lines of debugging code reveals the following error message:

Class ‘MergeQuery_mysql’ not found

 

As I detailed in the comments to the previous post, I was able to get around this problem by copying the site down to my development environment, and running the update.php script there. I could then copy the site back up to the staging server and everything seemed in order.

Tonight, however, I’ve run into the same problem again. Where before I was trying to upgrade from Drupal 7.0 to 7.4, now I am attempting to upgrade the Date and Calendar modules to the latest -dev versions. The same scenario plays itself out – I am able to delete the old versions, uninstall them, etc – but when I add and enable the new modules, I see a warning in the status report that an upgrade is necessary. When I attempt to run update.php, however, the site goes into a WSOD.

The fact that I am seeing this problem with a module upgrade as well as a core upgrade, and that I do not see the problem with the same operations in my development environment, increases my suspicion that the problem lies with my stack somewhere.

The details of each stack are:

Development

Windows Server 2008, 64-bit
Apache 2.2.19
PHP 5.3.5
MySQL 5.1.37 (on a separate server)

Staging

Windows Server 2008, 64-bit
Apache 2.2.17
PHP 5.2.13
MySQL 5.1.37 (on a separate server)

First up will be an update to PHP, followed by Apache if necessary. Stay tuned for updates…

2 Comments leave one →
  1. Matt Bernhardt permalink*
    July 20, 2011 3:33 am

    First update: Apache 2.2.17 has been upgraded to 2.2.19, and in the process switched from the apache.org release to the apachelounge.com release. This has been done to accommodate PHP, which is no longer being recompiled for the 5.3.x branch apparently. I need to sort out this situation, as it is a bit confusing to me right now.

    In terms of the present problem, upgrading to 2.2.19 has not solved the problem, although it has clarified that stopping and re-starting the apache service does allow the site to come back in its pre-update form. As soon as I run update.php, however, the site returns to the WSOD.

  2. Matt Bernhardt permalink*
    July 20, 2011 4:18 am

    Second update: Upgrading PHP from 5.2.13 to the 5.3.x branch has apparently picked up the solution. Downloading the .zip of the thread-safe version of PHP 5.3.6, extracting that over the existing PHP folder, and reconciling the two php.ini files has allowed me to avoid the White Screen of Death when upgrading Drupal modules.

    To be clear, there might be a version in between 5.2.13 and 5.3.6 that would also avoid this problem. without trying all of them, I can’t be sure – but as 5.3.6 does get around the problem, and is the current latest version, that is good enough for me.

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s

%d bloggers like this: