WordPress.org

Make WordPress Core

Opened 4 years ago

Closed 20 months ago

#39135 closed defect (bug) (invalid)

Update to WP 4.7 results in white screen bug

Reported by: gaelan Owned by:
Milestone: Priority: normal
Severity: normal Version: 4.7
Component: Upgrade/Install Keywords:
Focuses: Cc:

Description

After doing a manual upgrade to WP 4.7, the browser is redirected to:

/wp-admin/about.php?updated

and you get a blank white screen. If you quickly enable PHP debugging and refresh the white screen page, you get this error:

Fatal error: Call to undefined function get_user_locale() in /var/www/winshuttle.fr/wp-admin/about.php on line 22

If you wait about 1-2 minutes and refresh, the admin area works again you're taken to the usual "Database upgrade" page at this URL:

/wp-admin/upgrade.php?_wp_http_referer=%2Fwp-admin%2Fabout.php%3Fupdated

I wonder if this has something to do with the PHP cache not being cleared properly after the upgrade operation finishes?

SERVER AND SOFTWARE CONFIGURATION

Two separate installs on two separate servers showed this behavior. Each server is running:

Change History (22)

#1 @gaelan
4 years ago

I just upgraded another WP install on a different server and saw the same white screen again. Restarting Apache and then refreshing the white screen page immediately fixed the issue, so it's very likely this is PHP-cache related.

#2 @robinchen
4 years ago

Wordpress didn't update the db_version variable in wp_options table. The variable in the database must match the variable $wp_db_version in wp-includes/version.php. A change of the database variable works for me.

#3 @swissspidy
4 years ago

Could definitely be a caching issue. The PHP OpCache is not yet cleared on updates, see #36455.

#4 @dahamsta
4 years ago

Having this problem on a site, however waiting a few minutes hasn't corrected it. DB version is correct in database. Restarting Apache didn't help. It's not an important site, however I've done 4 4.7 upgrades now and every one has failed for various reasons.

#5 @Frank6tg
4 years ago

Same here, I purged opcache after the upgrade and then I got the WordPress is updating your database... All is well, problem is I have to do this for every website (I manage dozens)

#6 @femorais
4 years ago

For me, changing the name of the Jetpack plugin folder (making it unusable) worked!

#7 @mikepolinske
4 years ago

Clicked the upgrade button this morning and my front-end (what the user sees is fine), but I can't bring up the admin panel. I get the following message: Fatal error: Call to undefined function get_user_locale() in /home/micpol26/mikepolinske.info/blog/wp-admin/admin-header.php on line 165

I noticed that in my version.php it is still showing 4.6.1 and not 4.7. The wp_dp_version does match db_version in wp_options table.

I did disable all plugins the phpMyAdmin

Any suggestions on how to resolve this?

#8 @Frank6tg
4 years ago

If your server is using Opcache you will need to reset / invalidate all the keys

#9 follow-up: @swissspidy
4 years ago

@mikepolinske Sounds like an incomplete update. Can you try re-updating via Dashboard -> Updates?

#10 in reply to: ↑ 9 @dahamsta
4 years ago

Replying to swissspidy:

@mikepolinske Sounds like an incomplete update. Can you try re-updating via Dashboard -> Updates?

He said he can't get to the admin panel.

#11 @swissspidy
4 years ago

Ah right, my bad. In that case, try manually re-uploading the WordPress files. For anything else, I recommend the support forums at https://wordpress.org/support/

#12 follow-up: @mikepolinske
4 years ago

Thanks. I've already created a post over there.

Sounds like a lot of people are having issues with this update.

#13 follow-up: @charlestonsw
4 years ago

Just ran into the same issue on a WP Multisite upgrade.

No Opcache or other caching of code running on my site. I am using PHP 7 and FPM though.

Now sure how new code for about.php is executing before new code from i10n.php but it does seem to be a general problem.

The error is transient. The update appears to have worked pulling in the new code. A simple site refresh cleared the problem but the question remains - how are some sites executing line 22 of about.php with the get_user_locale() call BEFORE the function is loaded from i10n.php?

Don't want to be another "me too" +1 on this thread. Trying to provide some clues to help isolate and resolve the issue.

#14 in reply to: ↑ 12 ; follow-up: @mikepolinske
4 years ago

Replying to mikepolinske:

Thanks. I've already created a post over there.

Sounds like a lot of people are having issues with this update.

I was able to successfully update by going into the shell for my hosting account and run the command "wp core update" and that resolved my issue.

#15 in reply to: ↑ 14 ; follow-up: @dahamsta
4 years ago

Replying to mikepolinske:

I was able to successfully update by going into the shell for my hosting account and run the command "wp core update" and that resolved my issue.

This will only for work hosts with wp-cli installed.

#16 in reply to: ↑ 15 @mikepolinske
4 years ago

Replying to dahamsta:

Replying to mikepolinske:

I was able to successfully update by going into the shell for my hosting account and run the command "wp core update" and that resolved my issue.

This will only for work hosts with wp-cli installed.

Yes, fortunately in my case, my web hosting provider Dreamhost, did have it installed.

#17 in reply to: ↑ 13 ; follow-up: @charlestonsw
4 years ago

Replying to charlestonsw:

Just ran into the same issue on a WP Multisite upgrade.

No Opcache or other caching of code running on my site. I am using PHP 7 and FPM though.

Follow up... on THIS particular site no Opcache is running but it *IS* running for another site on the server for the same PHP 7 install. So , unless I'm mistaken, the Opcache is running for ALL sites on this server.

That would explain the inconsistency.

I bet other site updates from 4.6=>4.7 go without a problem on this box.

Thought: Can WP Core automatically flush opcache during an upgrade? May be prudent. I think a few people would prefer a performance hit over breakage.

#18 @idarek
4 years ago

Got similar situation on my multisite - but, only on 1 from 5 sites.
1 site is loading blank, when all others working correctly.
Also, unable to login to dashboard - blank page - where other sites running correctly again.

Strange,
any advise?

#19 @idarek
4 years ago

Hmm... my issue with only 1 site in multisite were Facebook (official) plugin.
Deleted it and all back to normal.

#20 in reply to: ↑ 17 @rmccue
4 years ago

Replying to charlestonsw:

Thought: Can WP Core automatically flush opcache during an upgrade? May be prudent. I think a few people would prefer a performance hit over breakage.

As @swissspidy mentioned, this is being tracked in #36455.


Future commenters: rather than commenting here, please post on the support forums instead. This helps the support team see the common problems and discover the underlying issues, and they're much better at this than we are on Trac.

#21 @conradkleinespel
4 years ago

Thanks @swissspidy and @Frank6tg . Disabling opcache during the upgrade worked for me.

#22 @desrosj
20 months ago

  • Milestone Awaiting Review deleted
  • Resolution set to invalid
  • Status changed from new to closed

Thanks for creating this originally, @gaelan. I am going to close this one out. As noted above, further discussion should be directed to #36455.

Note: See TracTickets for help on using tickets.