While upgrading from drupal 7.24 to 7.26, Entity reference 7.x-1.0 to 7.x-1.1, and ctools 7.x-1.3 to 7.x-1.4, I got a white screen of death on the update.php results screen.
Steps:
1. Backup database
2. Backup code
3. Install ctools 1.4 code
4. Place site in maintenance mode
5. Click Update
Result: Update shows 3 updates:
system module - 7079 - Convert the 'filesize' column in {file_managed} to a bigint.
node module - 7014 - Add an index on {node}.language.
taxonomy module - 7011 - Drop unpublished nodes from the index.
6. Click Continue
Actual result:
https://[redacted domain]/update.php?op=selection&token=[redacted token]&op=start&id=3782
shows System Module processed 100%, but progress bar doesn't fill up. Screen then goes to
https://[redacted domain]/update.php?op=selection&token=[redacted token]&id=3782&op=finished which gets the white screen of death.
Drupal Watchdog log shows
Feb 12 23:57:45 [redacted server] [redacted environment]: https://[redacted domain]|1392249465|php|[redacted IP address]|https://[redacted domain]/update.php?op=selection&token=[redacted token]&id=3782&op=do|https://[redacted domain]/update.php?op=selection&token=[redacted token]&op=start&id=3782|193||Notice: Undefined variable: finished in _batch_process() (line 344 of /mnt/www/html/[redacted environment]/docroot/includes/batch.inc).
Feb 12 23:57:46 [redacted server] [redacted environment]: https://[redacted domain]|1392249466|ctools|[redacted IP address]|https://[redacted domain]/update.php?op=selection&token=[redacted token]&id=3782&op=finished|https://[redacted domain]/update.php?op=selection&token=[redacted token]&op=start&id=3782|193||Plugin XPath HTML parser of plugin type feeds:plugins points to nonexistent file sites/all/modules/feeds_xpathparser/FeedsXPathParserHTML.class.php for class handler handler.
Feb 12 23:57:46 [redacted server] [redacted environment]: https://[redacted domain]|1392249466|ctools|[redacted IP address]|https://[redacted domain]/update.php?op=selection&token=[redacted token]&id=3782&op=finished|https://[redacted domain]/update.php?op=selection&token=[redacted token]&op=start&id=3782|193||Plugin XPath XML parser of plugin type feeds:plugins points to nonexistent file sites/all/modules/feeds_xpathparser/FeedsXPathParserXML.class.php for class handler handler.
Feb 12 23:57:52 [redacted server] [redacted environment]: https://[redacted domain]|1392249472|actions|[redacted IP address]|https://[redacted domain]/update.php?op=selection&token=[redacted token]&id=3782&op=finished|https://[redacted domain]/update.php?op=selection&token=[redacted token]&op=start&id=3782|193||3 orphaned actions (comment_publish_action, comment_save_action, comment_unpublish_action) exist in the actions table. Remove orphaned actions
Expected result: https://[redacted domain]/update.php?op=selection&token=[redacted token]&id=3782&op=finished give the results of the update.
Restoring the database and repeating the steps 4-6 gives nearly the same result, white screen of death and the last three of the four Watchdog messages. New time stamp and message count, of course.
/admin/reports/status and /admin/reports/updates show ctools as being up to date. But since that's in code and not in the database, I would have expected that.
https://sfmtadev.prod.acquia-sites.com/update.php?op=info shows No pending updates, so it appears the database updates themselves were successful.
Comments
Comment #1
Charles BelovAdded note on ctools now being up to date and update.php showing no pending updates.
Comment #2
Charles BelovActually, the upgrade scope was larger than just ctools. It included core. The ctools upgrade did not create any work for update.php. Title changed.
Comment #3
dalinLooking at the error messages it looks like this is an issue with Feeds XPath Parser.
Comment #4
dalinComment #5
twistor CreditAttribution: twistor commentedHmmm... I'll try to investigate this. Looks like a ctools problem at first glance.
Comment #6
twistor CreditAttribution: twistor commentedThis was fixed a while ago. It looks like you caught an unfortunate dev release where we had removed some parts of the Feeds plugin declaration.
Comment #7
Charles BelovThe situation has not recurred since I filed this issue.