X-Git-Url: https://git.mxchange.org/?a=blobdiff_plain;ds=sidebyside;f=boot.php;h=7654d261c3c5b0576511a5a26209c69237ee7b92;hb=bb99ac81114c80b424000316b76b5eb1d3c2a2d6;hp=8f25c2b93163261268fa889d1742fecd57324dc0;hpb=762a78661109d28dbc29a15b379b342938b35f40;p=friendica.git diff --git a/boot.php b/boot.php index 8f25c2b931..7654d261c3 100644 --- a/boot.php +++ b/boot.php @@ -41,7 +41,7 @@ define('FRIENDICA_PLATFORM', 'Friendica'); define('FRIENDICA_CODENAME', 'The Tazmans Flax-lily'); define('FRIENDICA_VERSION', '2018.08-dev'); define('DFRN_PROTOCOL_VERSION', '2.23'); -define('DB_UPDATE_VERSION', 1277); +define('DB_UPDATE_VERSION', 1279); define('NEW_UPDATE_ROUTINE_VERSION', 1170); /** @@ -113,11 +113,12 @@ define('SSL_POLICY_SELFSIGN', 2); * log levels * @{ */ -define('LOGGER_NORMAL', 0); -define('LOGGER_TRACE', 1); -define('LOGGER_DEBUG', 2); -define('LOGGER_DATA', 3); -define('LOGGER_ALL', 4); +define('LOGGER_WARNING', 0); +define('LOGGER_INFO', 1); +define('LOGGER_TRACE', 2); +define('LOGGER_DEBUG', 3); +define('LOGGER_DATA', 4); +define('LOGGER_ALL', 5); /* @}*/ /** @@ -703,10 +704,17 @@ function update_db() return; } + // run the pre_update_nnnn functions in update.php + for ($x = $stored + 1; $x <= $current; $x++) { + $r = run_update_function($x, 'pre_update'); + if (!$r) { + break; + } + } + Config::set('database', 'dbupdate_' . DB_UPDATE_VERSION, time()); - // run update routine - // it update the structure in one call + // update the structure in one call $retval = DBStructure::update(false, true); if ($retval) { DBStructure::updateFail( @@ -718,9 +726,9 @@ function update_db() Config::set('database', 'dbupdate_' . DB_UPDATE_VERSION, 'success'); } - // run any left update_nnnn functions in update.php + // run the update_nnnn functions in update.php for ($x = $stored + 1; $x <= $current; $x++) { - $r = run_update_function($x); + $r = run_update_function($x, 'update'); if (!$r) { break; } @@ -731,9 +739,11 @@ function update_db() return; } -function run_update_function($x) +function run_update_function($x, $prefix) { - if (function_exists('update_' . $x)) { + $funcname = $prefix . '_' . $x; + + if (function_exists($funcname)) { // There could be a lot of processes running or about to run. // We want exactly one process to run the update command. // So store the fact that we're taking responsibility @@ -741,16 +751,14 @@ function run_update_function($x) // If the update fails or times-out completely you may need to // delete the config entry to try again. - $t = Config::get('database', 'update_' . $x); + $t = Config::get('database', $funcname); if (!is_null($t)) { return false; } - Config::set('database', 'update_' . $x, time()); + Config::set('database', $funcname, time()); // call the specific update - - $func = 'update_' . $x; - $retval = $func(); + $retval = $funcname(); if ($retval) { //send the administrator an e-mail @@ -760,13 +768,21 @@ function run_update_function($x) ); return false; } else { - Config::set('database', 'update_' . $x, 'success'); - Config::set('system', 'build', $x); + Config::set('database', $funcname, 'success'); + + if ($prefix == 'update') { + Config::set('system', 'build', $x); + } + return true; } } else { - Config::set('database', 'update_' . $x, 'success'); - Config::set('system', 'build', $x); + Config::set('database', $funcname, 'success'); + + if ($prefix == 'update') { + Config::set('system', 'build', $x); + } + return true; } }