modify upgrade checker
This commit is contained in:
@ -29,7 +29,7 @@
|
||||
- 4.1.0.1
|
||||
require_from_binary:
|
||||
value: True
|
||||
when_come_from: [4.0.0.0, 4.1.0.0]
|
||||
when_come_from: [4.0.0.0]
|
||||
|
||||
- version: 4.1.0.1
|
||||
can_be_upgraded_to:
|
||||
|
||||
@ -398,7 +398,7 @@ def check_rebalance_task(query_cur):
|
||||
# 4. 检查集群状态
|
||||
def check_cluster_status(query_cur):
|
||||
# 4.1 检查是否非合并状态
|
||||
(desc, results) = query_cur.exec_query("""select count(1) from CDB_OB_MAJOR_COMPACTION where STATUS != 'IDLE'""")
|
||||
(desc, results) = query_cur.exec_query("""select count(1) from CDB_OB_MAJOR_COMPACTION where (GLOBAL_BROADCAST_SCN > LAST_SCN or STATUS != 'IDLE')""")
|
||||
if results[0][0] > 0 :
|
||||
fail_list.append('{0} tenant is merging, please check'.format(results[0][0]))
|
||||
logging.info('check cluster status success')
|
||||
@ -555,6 +555,28 @@ def check_backup_dest_exist(query_cur):
|
||||
else:
|
||||
logging.info('check backup destination success')
|
||||
|
||||
def check_server_version(query_cur):
|
||||
sql = """select distinct(substring_index(build_version, '_', 1)) from __all_server""";
|
||||
(desc, results) = query_cur.exec_query(sql);
|
||||
if len(results) != 1:
|
||||
fail_list.append("servers build_version not match")
|
||||
else:
|
||||
logging.info("check server version success")
|
||||
|
||||
# 14. 检查server是否可服务
|
||||
def check_observer_status(query_cur):
|
||||
(desc, results) = query_cur.exec_query("""select count(*) from oceanbase.__all_server where (start_service_time <= 0 or status != "active")""")
|
||||
if results[0][0] > 0 :
|
||||
fail_list.append('{0} observer not available , please check'.format(results[0][0]))
|
||||
logging.info('check observer status success')
|
||||
|
||||
# 15 检查schema是否刷新成功
|
||||
def check_schema_status(query_cur):
|
||||
(desc, results) = query_cur.exec_query("""select if (a.cnt = b.cnt, 1, 0) as passed from (select count(*) as cnt from oceanbase.__all_virtual_server_schema_info where refreshed_schema_version > 1 and refreshed_schema_version % 8 = 0) as a join (select count(*) as cnt from oceanbase.__all_server join oceanbase.__all_tenant) as b""")
|
||||
if results[0][0] != 1 :
|
||||
fail_list.append('{0} schema not available, please check'.format(results[0][0]))
|
||||
logging.info('check schema status success')
|
||||
|
||||
# last check of do_check, make sure no function execute after check_fail_list
|
||||
def check_fail_list():
|
||||
if len(fail_list) != 0 :
|
||||
@ -593,6 +615,9 @@ def do_check(my_host, my_port, my_user, my_passwd, timeout, upgrade_params):
|
||||
check_archive_job_exist(query_cur)
|
||||
check_archive_dest_exist(query_cur)
|
||||
check_backup_dest_exist(query_cur)
|
||||
check_observer_status(query_cur)
|
||||
check_schema_status(query_cur)
|
||||
check_server_version(query_cur)
|
||||
# all check func should execute before check_fail_list
|
||||
check_fail_list()
|
||||
modify_server_permanent_offline_time(cur)
|
||||
|
||||
@ -1902,7 +1902,7 @@
|
||||
## 4. 检查集群状态
|
||||
#def check_cluster_status(query_cur):
|
||||
# # 4.1 检查是否非合并状态
|
||||
# (desc, results) = query_cur.exec_query("""select count(1) from CDB_OB_MAJOR_COMPACTION where STATUS != 'IDLE'""")
|
||||
# (desc, results) = query_cur.exec_query("""select count(1) from CDB_OB_MAJOR_COMPACTION where (GLOBAL_BROADCAST_SCN > LAST_SCN or STATUS != 'IDLE')""")
|
||||
# if results[0][0] > 0 :
|
||||
# fail_list.append('{0} tenant is merging, please check'.format(results[0][0]))
|
||||
# logging.info('check cluster status success')
|
||||
@ -2059,6 +2059,28 @@
|
||||
# else:
|
||||
# logging.info('check backup destination success')
|
||||
#
|
||||
#def check_server_version(query_cur):
|
||||
# sql = """select distinct(substring_index(build_version, '_', 1)) from __all_server""";
|
||||
# (desc, results) = query_cur.exec_query(sql);
|
||||
# if len(results) != 1:
|
||||
# fail_list.append("servers build_version not match")
|
||||
# else:
|
||||
# logging.info("check server version success")
|
||||
#
|
||||
## 14. 检查server是否可服务
|
||||
#def check_observer_status(query_cur):
|
||||
# (desc, results) = query_cur.exec_query("""select count(*) from oceanbase.__all_server where (start_service_time <= 0 or status != "active")""")
|
||||
# if results[0][0] > 0 :
|
||||
# fail_list.append('{0} observer not available , please check'.format(results[0][0]))
|
||||
# logging.info('check observer status success')
|
||||
#
|
||||
## 15 检查schema是否刷新成功
|
||||
#def check_schema_status(query_cur):
|
||||
# (desc, results) = query_cur.exec_query("""select if (a.cnt = b.cnt, 1, 0) as passed from (select count(*) as cnt from oceanbase.__all_virtual_server_schema_info where refreshed_schema_version > 1 and refreshed_schema_version % 8 = 0) as a join (select count(*) as cnt from oceanbase.__all_server join oceanbase.__all_tenant) as b""")
|
||||
# if results[0][0] != 1 :
|
||||
# fail_list.append('{0} schema not available, please check'.format(results[0][0]))
|
||||
# logging.info('check schema status success')
|
||||
#
|
||||
## last check of do_check, make sure no function execute after check_fail_list
|
||||
#def check_fail_list():
|
||||
# if len(fail_list) != 0 :
|
||||
@ -2097,6 +2119,9 @@
|
||||
# check_archive_job_exist(query_cur)
|
||||
# check_archive_dest_exist(query_cur)
|
||||
# check_backup_dest_exist(query_cur)
|
||||
# check_observer_status(query_cur)
|
||||
# check_schema_status(query_cur)
|
||||
# check_server_version(query_cur)
|
||||
# # all check func should execute before check_fail_list
|
||||
# check_fail_list()
|
||||
# modify_server_permanent_offline_time(cur)
|
||||
|
||||
@ -1902,7 +1902,7 @@
|
||||
## 4. 检查集群状态
|
||||
#def check_cluster_status(query_cur):
|
||||
# # 4.1 检查是否非合并状态
|
||||
# (desc, results) = query_cur.exec_query("""select count(1) from CDB_OB_MAJOR_COMPACTION where STATUS != 'IDLE'""")
|
||||
# (desc, results) = query_cur.exec_query("""select count(1) from CDB_OB_MAJOR_COMPACTION where (GLOBAL_BROADCAST_SCN > LAST_SCN or STATUS != 'IDLE')""")
|
||||
# if results[0][0] > 0 :
|
||||
# fail_list.append('{0} tenant is merging, please check'.format(results[0][0]))
|
||||
# logging.info('check cluster status success')
|
||||
@ -2059,6 +2059,28 @@
|
||||
# else:
|
||||
# logging.info('check backup destination success')
|
||||
#
|
||||
#def check_server_version(query_cur):
|
||||
# sql = """select distinct(substring_index(build_version, '_', 1)) from __all_server""";
|
||||
# (desc, results) = query_cur.exec_query(sql);
|
||||
# if len(results) != 1:
|
||||
# fail_list.append("servers build_version not match")
|
||||
# else:
|
||||
# logging.info("check server version success")
|
||||
#
|
||||
## 14. 检查server是否可服务
|
||||
#def check_observer_status(query_cur):
|
||||
# (desc, results) = query_cur.exec_query("""select count(*) from oceanbase.__all_server where (start_service_time <= 0 or status != "active")""")
|
||||
# if results[0][0] > 0 :
|
||||
# fail_list.append('{0} observer not available , please check'.format(results[0][0]))
|
||||
# logging.info('check observer status success')
|
||||
#
|
||||
## 15 检查schema是否刷新成功
|
||||
#def check_schema_status(query_cur):
|
||||
# (desc, results) = query_cur.exec_query("""select if (a.cnt = b.cnt, 1, 0) as passed from (select count(*) as cnt from oceanbase.__all_virtual_server_schema_info where refreshed_schema_version > 1 and refreshed_schema_version % 8 = 0) as a join (select count(*) as cnt from oceanbase.__all_server join oceanbase.__all_tenant) as b""")
|
||||
# if results[0][0] != 1 :
|
||||
# fail_list.append('{0} schema not available, please check'.format(results[0][0]))
|
||||
# logging.info('check schema status success')
|
||||
#
|
||||
## last check of do_check, make sure no function execute after check_fail_list
|
||||
#def check_fail_list():
|
||||
# if len(fail_list) != 0 :
|
||||
@ -2097,6 +2119,9 @@
|
||||
# check_archive_job_exist(query_cur)
|
||||
# check_archive_dest_exist(query_cur)
|
||||
# check_backup_dest_exist(query_cur)
|
||||
# check_observer_status(query_cur)
|
||||
# check_schema_status(query_cur)
|
||||
# check_server_version(query_cur)
|
||||
# # all check func should execute before check_fail_list
|
||||
# check_fail_list()
|
||||
# modify_server_permanent_offline_time(cur)
|
||||
|
||||
Reference in New Issue
Block a user