diff --git a/src/share/ob_cluster_version.h b/src/share/ob_cluster_version.h index eb993afc2..d57a73aad 100644 --- a/src/share/ob_cluster_version.h +++ b/src/share/ob_cluster_version.h @@ -166,6 +166,7 @@ cal_version(const uint64_t major, const uint64_t minor, const uint64_t major_pat #define CLUSTER_VERSION_3_2_3_0 (oceanbase::common::cal_version(3, 2, 3, 0)) #define CLUSTER_VERSION_4_0_0_0 (oceanbase::common::cal_version(4, 0, 0, 0)) #define CLUSTER_VERSION_4_1_0_0 (oceanbase::common::cal_version(4, 1, 0, 0)) +#define CLUSTER_VERSION_4_1_0_1 (oceanbase::common::cal_version(4, 1, 0, 1)) #define CLUSTER_VERSION_4_2_0_0 (oceanbase::common::cal_version(4, 2, 0, 0)) //!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! //TODO: If you update the above version, please update CLUSTER_CURRENT_VERSION. @@ -180,6 +181,7 @@ cal_version(const uint64_t major, const uint64_t minor, const uint64_t major_pat // 3. TODO: If you update data_version below, please update DATA_CURRENT_VERSION & ObUpgradeChecker too. #define DATA_VERSION_4_0_0_0 (oceanbase::common::cal_version(4, 0, 0, 0)) #define DATA_VERSION_4_1_0_0 (oceanbase::common::cal_version(4, 1, 0, 0)) +#define DATA_VERSION_4_1_0_1 (oceanbase::common::cal_version(4, 1, 0, 1)) #define DATA_VERSION_4_2_0_0 (oceanbase::common::cal_version(4, 2, 0, 0)) #define DATA_CURRENT_VERSION DATA_VERSION_4_2_0_0 diff --git a/src/share/ob_upgrade_utils.cpp b/src/share/ob_upgrade_utils.cpp index 085ef18c7..e9af2f437 100644 --- a/src/share/ob_upgrade_utils.cpp +++ b/src/share/ob_upgrade_utils.cpp @@ -37,6 +37,7 @@ namespace share const uint64_t ObUpgradeChecker::UPGRADE_PATH[DATA_VERSION_NUM] = { CALC_VERSION(4UL, 0UL, 0UL, 0UL), // 4.0.0.0 CALC_VERSION(4UL, 1UL, 0UL, 0UL), // 4.1.0.0 + CALC_VERSION(4UL, 1UL, 0UL, 1UL), // 4.1.0.1 CALC_VERSION(4UL, 2UL, 0UL, 0UL) // 4.2.0.0 }; @@ -53,6 +54,7 @@ int ObUpgradeChecker::get_data_version_by_cluster_version( } CONVERT_CLUSTER_VERSION_TO_DATA_VERSION(CLUSTER_VERSION_4_0_0_0, DATA_VERSION_4_0_0_0) CONVERT_CLUSTER_VERSION_TO_DATA_VERSION(CLUSTER_VERSION_4_1_0_0, DATA_VERSION_4_1_0_0) + CONVERT_CLUSTER_VERSION_TO_DATA_VERSION(CLUSTER_VERSION_4_1_0_1, DATA_VERSION_4_1_0_1) CONVERT_CLUSTER_VERSION_TO_DATA_VERSION(CLUSTER_VERSION_4_2_0_0, DATA_VERSION_4_2_0_0) #undef CONVERT_CLUSTER_VERSION_TO_DATA_VERSION default: { @@ -607,6 +609,7 @@ int ObUpgradeProcesserSet::init( // order by data version asc INIT_PROCESSOR_BY_VERSION(4, 0, 0, 0); INIT_PROCESSOR_BY_VERSION(4, 1, 0, 0); + INIT_PROCESSOR_BY_VERSION(4, 1, 0, 1); INIT_PROCESSOR_BY_VERSION(4, 2, 0, 0); #undef INIT_PROCESSOR_BY_VERSION inited_ = true; diff --git a/src/share/ob_upgrade_utils.h b/src/share/ob_upgrade_utils.h index 82cd4edeb..21f1dba02 100644 --- a/src/share/ob_upgrade_utils.h +++ b/src/share/ob_upgrade_utils.h @@ -170,12 +170,13 @@ public: const uint64_t cluster_version, uint64_t &data_version); public: - static const int64_t DATA_VERSION_NUM = 3; + static const int64_t DATA_VERSION_NUM = 4; static const uint64_t UPGRADE_PATH[DATA_VERSION_NUM]; }; /* =========== special upgrade processor start ============= */ DEF_SIMPLE_UPGRARD_PROCESSER(4, 0, 0, 0) + class ObUpgradeFor4100Processor : public ObBaseUpgradeProcessor { public: @@ -190,6 +191,8 @@ private: static int recompile_all_views_and_synonyms(const uint64_t tenant_id); }; +DEF_SIMPLE_UPGRARD_PROCESSER(4, 1, 0, 1) + class ObUpgradeFor4200Processor : public ObBaseUpgradeProcessor { public: diff --git a/tools/upgrade/oceanbase_upgrade_dep.yml b/tools/upgrade/oceanbase_upgrade_dep.yml index b81feab31..9800b2eb8 100644 --- a/tools/upgrade/oceanbase_upgrade_dep.yml +++ b/tools/upgrade/oceanbase_upgrade_dep.yml @@ -26,11 +26,15 @@ - version: 4.1.0.0 can_be_upgraded_to: - - 4.2.0.0 + - 4.1.0.1 require_from_binary: value: True when_come_from: [4.0.0.0, 4.1.0.0] +- version: 4.1.0.1 + can_be_upgraded_to: + - 4.2.0.0 + - version: 4.2.0.0 can_be_upgraded_to: - 4.3.0.0