[Midnightbsd-cvs] src [7626] trunk/lib/libmport: fix upgrades so that we do not continuously try to recreate tables during mport operations.
laffer1 at midnightbsd.org
laffer1 at midnightbsd.org
Tue May 31 18:44:27 EDT 2016
Revision: 7626
http://svnweb.midnightbsd.org/src/?rev=7626
Author: laffer1
Date: 2016-05-31 18:44:27 -0400 (Tue, 31 May 2016)
Log Message:
-----------
fix upgrades so that we do not continuously try to recreate tables during mport operations. This fixes some errors as well as speeds up some operations
Modified Paths:
--------------
trunk/lib/libmport/db.c
trunk/lib/libmport/instance.c
Modified: trunk/lib/libmport/db.c
===================================================================
--- trunk/lib/libmport/db.c 2016-05-31 22:41:58 UTC (rev 7625)
+++ trunk/lib/libmport/db.c 2016-05-31 22:44:27 UTC (rev 7626)
@@ -192,6 +192,8 @@
int
mport_upgrade_master_schema(sqlite3 *db, int databaseVersion)
{
+ if (databaseVersion == MPORT_MASTER_VERSION)
+ return MPORT_OK;
switch (databaseVersion) {
case 0:
@@ -198,12 +200,18 @@
case 1:
mport_upgrade_master_schema_0to2(db);
mport_upgrade_master_schema_2to3(db);
+ mport_upgrade_master_schema_4to6(db);
+ mport_set_database_version(db);
+ break;
case 2:
mport_upgrade_master_schema_2to3(db);
case 3:
mport_upgrade_master_schema_3to4(db);
+ mport_upgrade_master_schema_4to6(db);
+ mport_set_database_version(db);
break;
case 4:
+ /* falls through */
case 5:
mport_upgrade_master_schema_4to6(db);
mport_set_database_version(db);
Modified: trunk/lib/libmport/instance.c
===================================================================
--- trunk/lib/libmport/instance.c 2016-05-31 22:41:58 UTC (rev 7625)
+++ trunk/lib/libmport/instance.c 2016-05-31 22:44:27 UTC (rev 7626)
@@ -102,8 +102,11 @@
mport_upgrade_master_schema(mport->db, mport_get_database_version(mport->db));
- /* create tables */
- return mport_generate_master_schema(mport->db);
+ if (MPORT_MASTER_VERSION == mport_get_database_version(mport->db))
+ return (MPORT_OK);
+
+ /* create tables */
+ return mport_generate_master_schema(mport->db);
}
/**
More information about the Midnightbsd-cvs
mailing list