From c62aa880a21e08cb8a0f025bf0993a12c4d20daa Mon Sep 17 00:00:00 2001 From: Paul Holden Date: Wed, 22 May 2024 20:56:47 +0100 Subject: [PATCH] MDL-81870 core: re-factor duplicate plugin savepoint implementations. --- lib/upgradelib.php | 70 +++------------------------------------------- 1 file changed, 4 insertions(+), 66 deletions(-) diff --git a/lib/upgradelib.php b/lib/upgradelib.php index 26abadb6fe4..d4cbfcd16fd 100644 --- a/lib/upgradelib.php +++ b/lib/upgradelib.php @@ -373,43 +373,12 @@ function upgrade_main_savepoint($result, $version, $allowabort=true) { * * @category upgrade * @param bool $result false if upgrade step failed, true if completed - * @param string or float $version main version + * @param string|float $version main version * @param string $modname name of module * @param bool $allowabort allow user to abort script execution here - * @return void */ function upgrade_mod_savepoint($result, $version, $modname, $allowabort=true) { - global $DB; - - $component = 'mod_'.$modname; - - if (!$result) { - throw new upgrade_exception($component, $version); - } - - $dbversion = $DB->get_field('config_plugins', 'value', array('plugin'=>$component, 'name'=>'version')); - - if (!$module = $DB->get_record('modules', array('name'=>$modname))) { - throw new \moodle_exception('modulenotexist', 'debug', '', $modname); - } - - if ($dbversion >= $version) { - // something really wrong is going on in upgrade script - throw new downgrade_exception($component, $dbversion, $version); - } - set_config('version', $version, $component); - - upgrade_log(UPGRADE_LOG_NORMAL, $component, 'Upgrade savepoint reached'); - - // reset upgrade timeout to default - upgrade_set_timeout(); - - core_upgrade_time::record_savepoint($version); - - // this is a safe place to stop upgrades if user aborts page loading - if ($allowabort and connection_aborted()) { - die; - } + upgrade_plugin_savepoint($result, $version, 'mod', $modname, $allowabort); } /** @@ -419,43 +388,12 @@ function upgrade_mod_savepoint($result, $version, $modname, $allowabort=true) { * * @category upgrade * @param bool $result false if upgrade step failed, true if completed - * @param string or float $version main version + * @param string|float $version main version * @param string $blockname name of block * @param bool $allowabort allow user to abort script execution here - * @return void */ function upgrade_block_savepoint($result, $version, $blockname, $allowabort=true) { - global $DB; - - $component = 'block_'.$blockname; - - if (!$result) { - throw new upgrade_exception($component, $version); - } - - $dbversion = $DB->get_field('config_plugins', 'value', array('plugin'=>$component, 'name'=>'version')); - - if (!$block = $DB->get_record('block', array('name'=>$blockname))) { - throw new \moodle_exception('blocknotexist', 'debug', '', $blockname); - } - - if ($dbversion >= $version) { - // something really wrong is going on in upgrade script - throw new downgrade_exception($component, $dbversion, $version); - } - set_config('version', $version, $component); - - upgrade_log(UPGRADE_LOG_NORMAL, $component, 'Upgrade savepoint reached'); - - // reset upgrade timeout to default - upgrade_set_timeout(); - - core_upgrade_time::record_savepoint($version); - - // this is a safe place to stop upgrades if user aborts page loading - if ($allowabort and connection_aborted()) { - die; - } + upgrade_plugin_savepoint($result, $version, 'block', $blockname, $allowabort); } /**