$this->
fail(t('The MyISAM storage engine is not supported.'
));
} } /**
* {@inheritdoc}
*/
protected function checkEngineVersion() { parent::
checkEngineVersion();
// Ensure that the MySQL driver supports utf8mb4 encoding.
$version = Database::
getConnection()->
clientVersion();
if (str_contains($version, 'mysqlnd'
)) { // The mysqlnd driver supports utf8mb4 starting at version 5.0.9.
$version =
preg_replace('/^\D+([\d.]+).*/', '$1',
$version);
if (version_compare($version, self::MYSQLND_MINIMUM_VERSION, '<'
)) { $this->
fail(t("The MySQLnd driver version %version is less than the minimum required version. Upgrade to MySQLnd version %mysqlnd_minimum_version or up, or alternatively switch mysql drivers to libmysqlclient version %libmysqlclient_minimum_version or up.",
['%version' =>
$version, '%mysqlnd_minimum_version' => self::MYSQLND_MINIMUM_VERSION, '%libmysqlclient_minimum_version' => self::LIBMYSQLCLIENT_MINIMUM_VERSION
]));
} } else { // The libmysqlclient driver supports utf8mb4 starting at version 5.5.3.
if (version_compare($version, self::LIBMYSQLCLIENT_MINIMUM_VERSION, '<'
)) { $this->
fail(t("The libmysqlclient driver version %version is less than the minimum required version. Upgrade to libmysqlclient version %libmysqlclient_minimum_version or up, or alternatively switch mysql drivers to MySQLnd version %mysqlnd_minimum_version or up.",
['%version' =>
$version, '%libmysqlclient_minimum_version' => self::LIBMYSQLCLIENT_MINIMUM_VERSION, '%mysqlnd_minimum_version' => self::MYSQLND_MINIMUM_VERSION
]));
}