Site Health: Only get MySQL server information in tests where it's actually needed.

This resolves an issue with plugins like HyperDB, which doesn't have a database connection until a query is made.

Props xkon, Otto42, Clorith.
See #47606.
Built from https://develop.svn.wordpress.org/trunk@47215


git-svn-id: http://core.svn.wordpress.org/trunk@47015 1a063a9b-81f0-0310-95a4-ce76da25c4cd
This commit is contained in:
Sergey Biryukov 2020-02-08 20:10:05 +00:00
parent 297aa098ae
commit e713bf9a88
2 changed files with 9 additions and 3 deletions

View File

@ -33,8 +33,6 @@ class WP_Site_Health {
public function __construct() {
$this->maybe_create_scheduled_event();
$this->prepare_sql_data();
$this->timeout_late_cron = 0;
$this->timeout_missed_cron = - 5 * MINUTE_IN_SECONDS;
@ -1095,6 +1093,10 @@ class WP_Site_Health {
* @return array The test results.
*/
public function get_test_sql_server() {
if ( ! $this->mysql_server_version ) {
$this->prepare_sql_data();
}
$result = array(
'label' => __( 'SQL server is up to date' ),
'status' => 'good',
@ -1182,6 +1184,10 @@ class WP_Site_Health {
public function get_test_utf8mb4_support() {
global $wpdb;
if ( ! $this->mysql_server_version ) {
$this->prepare_sql_data();
}
$result = array(
'label' => __( 'UTF8MB4 is supported' ),
'status' => 'good',

View File

@ -13,7 +13,7 @@
*
* @global string $wp_version
*/
$wp_version = '5.4-alpha-47214';
$wp_version = '5.4-alpha-47215';
/**
* Holds the WordPress DB revision, increments when changes are made to the WordPress DB schema.