From 528f282dc7e3f77801dd0a76c1b01aac17d0f889 Mon Sep 17 00:00:00 2001 From: obdev Date: Mon, 16 Dec 2024 20:46:19 +0000 Subject: [PATCH] modify upgrade script --- tools/upgrade/upgrade_checker.py | 2 +- tools/upgrade/upgrade_post.py | 31 ++++++++++--------------------- tools/upgrade/upgrade_pre.py | 31 ++++++++++--------------------- 3 files changed, 21 insertions(+), 43 deletions(-) diff --git a/tools/upgrade/upgrade_checker.py b/tools/upgrade/upgrade_checker.py index 736b0bf63..10d100a03 100755 --- a/tools/upgrade/upgrade_checker.py +++ b/tools/upgrade/upgrade_checker.py @@ -18,7 +18,7 @@ if sys.version_info.major == 3: class UpgradeParams: log_filename = 'upgrade_checker.log' - old_version = '4.0.0.0' + old_version = '4.2.5.1' class PasswordMaskingFormatter(logging.Formatter): def format(self, record): diff --git a/tools/upgrade/upgrade_post.py b/tools/upgrade/upgrade_post.py index a58f73e06..d8d805a3e 100755 --- a/tools/upgrade/upgrade_post.py +++ b/tools/upgrade/upgrade_post.py @@ -1667,7 +1667,7 @@ # #class UpgradeParams: # log_filename = 'upgrade_checker.log' -# old_version = '4.0.0.0' +# old_version = '4.2.5.1' # #class PasswordMaskingFormatter(logging.Formatter): # def format(self, record): @@ -2547,26 +2547,15 @@ # ## 检查 direct_load 是否已经结束,开启升级之前需要确保没有 direct_load 任务,且升级期间尽量禁止 direct_load 任务 #def disable_and_check_direct_load_task(cur, query_cur): -# get_version_sql = """select distinct value from GV$OB_PARAMETERS where name='min_observer_version'""" -# (version_desc, version_results) = query_cur.exec_query(get_version_sql) -# if len(version_results) != 1: -# fail_list.append('min_observer_version is not sync') -# elif len(version_results[0]) != 1: -# fail_list.append('column cnt not match') -# else: -# min_cluster_version = get_version(version_results[0][0]) -# if min_cluster_version < get_version("4.3.3.0"): -# # 通过配置项关闭 direct_load -# set_parameter(cur, '_ob_enable_direct_load', 'False') -# # 等待 5s,确保没有导入任务 -# time.sleep(5) -# sql = """select count(1) from __all_virtual_load_data_stat""" -# (desc, results) = query_cur.exec_query(sql) -# if 0 != results[0][0]: -# fail_list.append("There are direct load task in progress") -# logging.info('check direct load task execut status success') -# else: -# logging.info('min cluster version is greater than 4.3.3, no need to disable and check direct load task') +# # 通过配置项关闭 direct_load +# set_parameter(cur, '_ob_enable_direct_load', 'False') +# # 等待 5s,确保没有导入任务 +# time.sleep(5) +# sql = """select count(1) from __all_virtual_load_data_stat""" +# (desc, results) = query_cur.exec_query(sql) +# if 0 != results[0][0]: +# fail_list.append("There are direct load task in progress") +# logging.info('check direct load task execut status success') # ## 检查cs_encoding格式是否兼容,对小于4.3.3版本的cpu不支持avx2指令集的集群,我们要求升级前schema上不存在cs_encoding的存储格式 ## 注意:这里对混布集群 / schema上row_format进行了ddl变更的场景无法做到完全的防御 diff --git a/tools/upgrade/upgrade_pre.py b/tools/upgrade/upgrade_pre.py index 3ff56d4df..a3b5890c0 100755 --- a/tools/upgrade/upgrade_pre.py +++ b/tools/upgrade/upgrade_pre.py @@ -1667,7 +1667,7 @@ # #class UpgradeParams: # log_filename = 'upgrade_checker.log' -# old_version = '4.0.0.0' +# old_version = '4.2.5.1' # #class PasswordMaskingFormatter(logging.Formatter): # def format(self, record): @@ -2547,26 +2547,15 @@ # ## 检查 direct_load 是否已经结束,开启升级之前需要确保没有 direct_load 任务,且升级期间尽量禁止 direct_load 任务 #def disable_and_check_direct_load_task(cur, query_cur): -# get_version_sql = """select distinct value from GV$OB_PARAMETERS where name='min_observer_version'""" -# (version_desc, version_results) = query_cur.exec_query(get_version_sql) -# if len(version_results) != 1: -# fail_list.append('min_observer_version is not sync') -# elif len(version_results[0]) != 1: -# fail_list.append('column cnt not match') -# else: -# min_cluster_version = get_version(version_results[0][0]) -# if min_cluster_version < get_version("4.3.3.0"): -# # 通过配置项关闭 direct_load -# set_parameter(cur, '_ob_enable_direct_load', 'False') -# # 等待 5s,确保没有导入任务 -# time.sleep(5) -# sql = """select count(1) from __all_virtual_load_data_stat""" -# (desc, results) = query_cur.exec_query(sql) -# if 0 != results[0][0]: -# fail_list.append("There are direct load task in progress") -# logging.info('check direct load task execut status success') -# else: -# logging.info('min cluster version is greater than 4.3.3, no need to disable and check direct load task') +# # 通过配置项关闭 direct_load +# set_parameter(cur, '_ob_enable_direct_load', 'False') +# # 等待 5s,确保没有导入任务 +# time.sleep(5) +# sql = """select count(1) from __all_virtual_load_data_stat""" +# (desc, results) = query_cur.exec_query(sql) +# if 0 != results[0][0]: +# fail_list.append("There are direct load task in progress") +# logging.info('check direct load task execut status success') # ## 检查cs_encoding格式是否兼容,对小于4.3.3版本的cpu不支持avx2指令集的集群,我们要求升级前schema上不存在cs_encoding的存储格式 ## 注意:这里对混布集群 / schema上row_format进行了ddl变更的场景无法做到完全的防御