diff --git a/db/cats_schema.sql b/db/cats_schema.sql index 5484f266f..fce7c1424 100755 --- a/db/cats_schema.sql +++ b/db/cats_schema.sql @@ -850,7 +850,7 @@ insert into `module_schema`(`module_schema_id`,`name`,`version`) values (9,'ext insert into `module_schema`(`module_schema_id`,`name`,`version`) values (10,'graphs',0); insert into `module_schema`(`module_schema_id`,`name`,`version`) values (11,'home',0); insert into `module_schema`(`module_schema_id`,`name`,`version`) values (12,'import',0); -insert into `module_schema`(`module_schema_id`,`name`,`version`) values (13,'install',370); +insert into `module_schema`(`module_schema_id`,`name`) values (13,'install'); insert into `module_schema`(`module_schema_id`,`name`,`version`) values (14,'joborders',0); insert into `module_schema`(`module_schema_id`,`name`,`version`) values (15,'lists',0); insert into `module_schema`(`module_schema_id`,`name`,`version`) values (16,'login',0); diff --git a/lib/ModuleUtility.php b/lib/ModuleUtility.php index c93179444..ed5bb9559 100755 --- a/lib/ModuleUtility.php +++ b/lib/ModuleUtility.php @@ -500,6 +500,26 @@ private static function processModuleSchema($moduleName, $schema) $newestVersion = 0; } + if ($moduleName === 'install' && ($currentVersion === NULL || $currentVersion === '')) + { + /* A NULL version indicates a schema snapshot install (cats_schema.sql). + * Mark the install module as up-to-date to avoid re-running migrations. + */ + $sql = sprintf( + "UPDATE + module_schema + SET + version = %s + WHERE + name = %s", + (int) $newestVersion, + $db->makeQueryString($moduleName) + ); + $db->query($sql); + + return; + } + /* Do we have any updates to process? */ if ($newestVersion <= $currentVersion) {