summaryrefslogtreecommitdiff
path: root/update.php
diff options
context:
space:
mode:
authorAndrew Dolgov <[email protected]>2019-03-07 06:44:59 +0300
committerAndrew Dolgov <[email protected]>2019-03-07 06:44:59 +0300
commite91223ec7d41cc15a24117fd42f3a00c87eee201 (patch)
tree033c9b12f3e6fc58c3889a4db1417a2d210ebe1e /update.php
parent91cfd9c391c9c243b9a9ead6ca856740f156a38e (diff)
update CLI schema updater with newer warnings
Diffstat (limited to 'update.php')
-rwxr-xr-xupdate.php20
1 files changed, 15 insertions, 5 deletions
diff --git a/update.php b/update.php
index 1dc2efd91..9526c839b 100755
--- a/update.php
+++ b/update.php
@@ -111,7 +111,7 @@
$schema_version = get_schema_version();
if ($schema_version != SCHEMA_VERSION) {
- die("Schema version is wrong, please upgrade the database.\n");
+ die("Schema version is wrong, please upgrade the database (--update-schema).\n");
}
}
@@ -326,20 +326,30 @@
if ($updater->isUpdateRequired()) {
Debug::log("schema update required, version " . $updater->getSchemaVersion() . " to " . SCHEMA_VERSION);
+
+ if (DB_TYPE == "mysql")
+ Debug::Log("READ THIS: Due to MySQL limitations, your database is not completely protected while updating.\n".
+ "Errors may put it in an inconsistent state requiring manual rollback.\nBACKUP YOUR DATABASE BEFORE CONTINUING.");
+
Debug::log("WARNING: please backup your database before continuing.");
Debug::log("Type 'yes' to continue.");
if (read_stdin() != 'yes')
exit;
+ print "Performing updates to version " . SCHEMA_VERSION . "...\n";
+
for ($i = $updater->getSchemaVersion() + 1; $i <= SCHEMA_VERSION; $i++) {
- Debug::log("performing update up to version $i...");
+ Debug::log(" * Updating to version $i...");
$result = $updater->performUpdateTo($i, false);
- Debug::log($result ? "OK!" : "FAILED!");
-
- if (!$result) return;
+ if ($result) {
+ print " * Completed.";
+ } else {
+ print "One of the updates failed. Either retry the process or perform updates manually.";
+ return;
+ }
}
} else {