diff -u b/core/includes/install.core.inc b/core/includes/install.core.inc --- b/core/includes/install.core.inc +++ b/core/includes/install.core.inc @@ -340,7 +340,7 @@ $install_state['database_verified'] = install_verify_database_settings(); $install_state['settings_verified'] = $install_state['config_verified'] && $install_state['database_verified']; - if ($install_state['database_verified']) { + if ($install_state['settings_verified']) { try { $system_schema = system_schema(); end($system_schema); @@ -348,6 +348,11 @@ $install_state['base_system_verified'] = Database::getConnection()->schema()->tableExists($table); } catch (DatabaseExceptionWrapper $e) { + // The last defined table of the base system_schema() does not exist yet. + // $install_state['base_system_verified'] defaults to FALSE, so the code + // following below will use the minimal installer service container. + // As soon as the base system is verified here, the installer operates in + // a full and regular Drupal environment, without any kind of exceptions. } }