diff options
author | Dries Buytaert <dries@buytaert.net> | 2010-11-13 14:08:47 +0000 |
---|---|---|
committer | Dries Buytaert <dries@buytaert.net> | 2010-11-13 14:08:47 +0000 |
commit | 0828119240f45b9cdcb63426db4bda9183f51052 (patch) | |
tree | 00fb7309030be3862074958dd9c5407001ff9456 | |
parent | 346854c12e5ce1560df35de492a4c283623dccfb (diff) | |
download | brdo-0828119240f45b9cdcb63426db4bda9183f51052.tar.gz brdo-0828119240f45b9cdcb63426db4bda9183f51052.tar.bz2 |
- Patch #946968 by dmitrig01: we are not checking the version of MySQL and PostgreSQL servers anymore (nor we do for SQLite).
-rw-r--r-- | includes/bootstrap.inc | 5 | ||||
-rw-r--r-- | includes/database/mysql/install.inc | 7 | ||||
-rw-r--r-- | includes/database/pgsql/install.inc | 4 | ||||
-rw-r--r-- | includes/database/sqlite/install.inc | 3 | ||||
-rw-r--r-- | includes/install.inc | 4 |
5 files changed, 23 insertions, 0 deletions
diff --git a/includes/bootstrap.inc b/includes/bootstrap.inc index e83832d5b..e332e01b4 100644 --- a/includes/bootstrap.inc +++ b/includes/bootstrap.inc @@ -37,6 +37,11 @@ define('DRUPAL_MINIMUM_MYSQL', '5.0.15'); define('DRUPAL_MINIMUM_PGSQL', '8.3'); /** + * Minimum supported version of SQLite, if it is used. + */ +define('DRUPAL_MINIMUM_SQLITE', '3.3.7'); + +/** * Indicates that the item should never be removed unless explicitly selected. * * The item may be removed using cache_clear_all() with a cache ID. diff --git a/includes/database/mysql/install.inc b/includes/database/mysql/install.inc index 59320f4f7..6965cb440 100644 --- a/includes/database/mysql/install.inc +++ b/includes/database/mysql/install.inc @@ -24,5 +24,12 @@ class DatabaseTasks_mysql extends DatabaseTasks { public function name() { return 'MySQL, MariaDB, or equivalent'; } + + /** + * Returns the minimum version for mysql. + */ + protected function minimumVersion() { + return DRUPAL_MINIMUM_MYSQL; + } } diff --git a/includes/database/pgsql/install.inc b/includes/database/pgsql/install.inc index 82ba57ca8..1ff69580e 100644 --- a/includes/database/pgsql/install.inc +++ b/includes/database/pgsql/install.inc @@ -31,6 +31,10 @@ class DatabaseTasks_pgsql extends DatabaseTasks { return 'PostgreSQL'; } + protected function minimumVersion() { + return DRUPAL_MINIMUM_PGSQL; + } + /** * Check encoding is UTF8. */ diff --git a/includes/database/sqlite/install.inc b/includes/database/sqlite/install.inc index 334e09dfd..07ce754f0 100644 --- a/includes/database/sqlite/install.inc +++ b/includes/database/sqlite/install.inc @@ -11,5 +11,8 @@ class DatabaseTasks_sqlite extends DatabaseTasks { public function name() { return 'SQLite'; } + protected function minimumVersion() { + return DRUPAL_MINIMUM_SQLITE; + } } diff --git a/includes/install.inc b/includes/install.inc index e68e272d3..fd3ce35fb 100644 --- a/includes/install.inc +++ b/includes/install.inc @@ -349,6 +349,7 @@ abstract class DatabaseTasks { } abstract public function name(); + abstract protected function minimumVersion(); /** * Run database tasks and tests to see if Drupal can run on the database. @@ -356,6 +357,9 @@ abstract class DatabaseTasks { public function runTasks() { // We need to establish a connection before we can run tests. if ($this->connect()) { + if (version_compare(Database::getConnection()->version(), $this->minimumVersion()) < 0) { + throw new DatabaseTaskException(st("The database version %version is less than the minimum required version %minimum_version.", array('%version' => Database::getConnection()->version(), '%minimum_version' => $this->minimumVersion()))); + } foreach ($this->tasks as $task) { if (!isset($task['function'])) { $task['function'] = 'runTestQuery'; |