[CP] [CP] [OBCDC] upgrade drcmsg to v20240124, modify xml type_code in column_meta
This commit is contained in:
2
deps/init/oceanbase.el7.aarch64.deps
vendored
2
deps/init/oceanbase.el7.aarch64.deps
vendored
@ -41,7 +41,7 @@ obdevtools-gcc9-9.3.0-52022092914.el7.aarch64.rpm
|
||||
obdevtools-llvm-11.0.1-312022092921.el7.aarch64.rpm
|
||||
|
||||
[tools-deps]
|
||||
devdeps-oblogmsg-1.0-52022113019.el7.aarch64.rpm
|
||||
devdeps-oblogmsg-1.0-142024012415.el7.aarch64.rpm
|
||||
devdeps-rocksdb-6.22.1.1-52022100420.el7.aarch64.rpm
|
||||
obshell-4.2.2.0-122024022614.el7.aarch64.rpm target=community
|
||||
|
||||
|
||||
2
deps/init/oceanbase.el7.x86_64.deps
vendored
2
deps/init/oceanbase.el7.x86_64.deps
vendored
@ -44,7 +44,7 @@ obdevtools-gcc9-9.3.0-52022092914.el7.x86_64.rpm
|
||||
obdevtools-llvm-11.0.1-312022092921.el7.x86_64.rpm
|
||||
|
||||
[tools-deps]
|
||||
devdeps-oblogmsg-1.0-52022113019.el7.x86_64.rpm
|
||||
devdeps-oblogmsg-1.0-142024012415.el7.x86_64.rpm
|
||||
devdeps-rocksdb-6.22.1.1-52022100420.el7.x86_64.rpm
|
||||
obshell-4.2.2.0-122024022614.el7.x86_64.rpm target=community
|
||||
|
||||
|
||||
2
deps/init/oceanbase.el8.aarch64.deps
vendored
2
deps/init/oceanbase.el8.aarch64.deps
vendored
@ -41,7 +41,7 @@ obdevtools-gcc9-9.3.0-52022092914.el8.aarch64.rpm
|
||||
obdevtools-llvm-11.0.1-312022092921.el8.aarch64.rpm
|
||||
|
||||
[tools-deps]
|
||||
devdeps-oblogmsg-1.0-52022113019.el8.aarch64.rpm
|
||||
devdeps-oblogmsg-1.0-142024012415.el8.aarch64.rpm
|
||||
devdeps-rocksdb-6.22.1.1-52022100420.el8.aarch64.rpm
|
||||
obshell-4.2.2.0-122024022614.el8.aarch64.rpm target=community
|
||||
|
||||
|
||||
2
deps/init/oceanbase.el8.x86_64.deps
vendored
2
deps/init/oceanbase.el8.x86_64.deps
vendored
@ -43,7 +43,7 @@ obdevtools-gcc9-9.3.0-52022092914.el8.x86_64.rpm
|
||||
obdevtools-llvm-11.0.1-312022092921.el8.x86_64.rpm
|
||||
|
||||
[tools-deps]
|
||||
devdeps-oblogmsg-1.0-52022113019.el8.x86_64.rpm
|
||||
devdeps-oblogmsg-1.0-142024012415.el8.x86_64.rpm
|
||||
devdeps-rocksdb-6.22.1.1-52022100420.el8.x86_64.rpm
|
||||
obshell-4.2.2.0-122024022614.el8.x86_64.rpm target=community
|
||||
|
||||
|
||||
@ -33,6 +33,10 @@ namespace liboblog
|
||||
#define IColMeta oceanbase::logmessage::IColMeta
|
||||
#define binlogBuf oceanbase::logmessage::BinLogBuf
|
||||
#define IStrArray oceanbase::logmessage::StrArray
|
||||
#define drcmsg_field_types oceanbase::logmessage::logmsg_field_types
|
||||
#define DRCMSG_TYPE_ORA_BINARY_FLOAT LOGMSG_TYPE_ORA_BINARY_FLOAT
|
||||
#define DRCMSG_TYPE_ORA_BINARY_DOUBLE LOGMSG_TYPE_ORA_BINARY_DOUBLE
|
||||
#define DRCMSG_TYPE_ORA_XML LOGMSG_TYPE_ORA_XML
|
||||
// method
|
||||
#define createBinlogRecord createLogRecord
|
||||
|
||||
|
||||
@ -1187,11 +1187,11 @@ int ObLogMetaManager::set_column_meta_(
|
||||
col_meta->setDependent(true);
|
||||
}
|
||||
col_meta->setName(column_schema.get_column_name());
|
||||
col_meta->setType(static_cast<int>(mysql_type));
|
||||
col_meta->setSigned(signed_flag);
|
||||
col_meta->setIsPK(column_schema.is_original_rowkey_column());
|
||||
col_meta->setNotNull(! column_schema.is_nullable());
|
||||
|
||||
set_column_type_(*col_meta, mysql_type);
|
||||
set_column_encoding_(col_type, column_schema.get_charset_type(), col_meta);
|
||||
|
||||
if (column_schema.is_xmltype()) {
|
||||
@ -1235,6 +1235,20 @@ int ObLogMetaManager::set_column_meta_(
|
||||
return ret;
|
||||
}
|
||||
|
||||
// convert column type for drcmsg and oblogmsg
|
||||
void ObLogMetaManager::set_column_type_(IColMeta &col_meta, const obmysql::EMySQLFieldType &col_type)
|
||||
{
|
||||
if (EMySQLFieldType::MYSQL_TYPE_ORA_BINARY_FLOAT == col_type) {
|
||||
col_meta.setType(drcmsg_field_types::DRCMSG_TYPE_ORA_BINARY_FLOAT);
|
||||
} else if (EMySQLFieldType::MYSQL_TYPE_ORA_BINARY_DOUBLE == col_type) {
|
||||
col_meta.setType(drcmsg_field_types::DRCMSG_TYPE_ORA_BINARY_DOUBLE);
|
||||
} else if (EMySQLFieldType::MYSQL_TYPE_ORA_XML == col_type) {
|
||||
col_meta.setType(drcmsg_field_types::DRCMSG_TYPE_ORA_XML);
|
||||
} else {
|
||||
col_meta.setType(static_cast<int>(col_type));
|
||||
}
|
||||
}
|
||||
|
||||
template<class TABLE_SCHEMA>
|
||||
int ObLogMetaManager::set_primary_keys_(ITableMeta *table_meta,
|
||||
const TABLE_SCHEMA *table_schema,
|
||||
|
||||
@ -378,6 +378,7 @@ private:
|
||||
IColMeta *col_meta,
|
||||
const COLUMN_SCHEMA &column_schema,
|
||||
const TABLE_SCHEMA &table_schema);
|
||||
void set_column_type_(IColMeta &col_meta, const obmysql::EMySQLFieldType &col_type);
|
||||
template<class TABLE_SCHEMA>
|
||||
int set_primary_keys_(
|
||||
ITableMeta *table_meta,
|
||||
|
||||
@ -567,7 +567,15 @@ const char *get_ctype_string(int ctype)
|
||||
sc_type = "MYSQL_TYPE_OB_UROWID";
|
||||
break;
|
||||
|
||||
case oceanbase::obmysql::MYSQL_TYPE_ORA_XML:
|
||||
case drcmsg_field_types::DRCMSG_TYPE_ORA_BINARY_FLOAT:
|
||||
sc_type = "MYSQL_TYPE_ORA_BINARY_FLOAT";
|
||||
break;
|
||||
|
||||
case drcmsg_field_types::DRCMSG_TYPE_ORA_BINARY_DOUBLE:
|
||||
sc_type = "MYSQL_TYPE_ORA_BINARY_DOUBLE";
|
||||
break;
|
||||
|
||||
case drcmsg_field_types::DRCMSG_TYPE_ORA_XML:
|
||||
sc_type = "MYSQL_TYPE_ORA_XML";
|
||||
break;
|
||||
|
||||
@ -611,7 +619,7 @@ bool is_geometry_type(const int ctype)
|
||||
|
||||
bool is_xml_type(const int ctype)
|
||||
{
|
||||
return (ctype == oceanbase::obmysql::MYSQL_TYPE_ORA_XML);
|
||||
return (ctype == drcmsg_field_types::DRCMSG_TYPE_ORA_XML);
|
||||
}
|
||||
|
||||
double get_delay_sec(const int64_t tstamp_ns)
|
||||
|
||||
@ -152,8 +152,9 @@ if __name__ == '__main__':
|
||||
upgrade_post_filename = 'upgrade_post.py'
|
||||
do_upgrade_pre_filename = 'do_upgrade_pre.py'
|
||||
do_upgrade_post_filename = 'do_upgrade_post.py'
|
||||
obcdc_compatible_filename = 'gen_obcdc_compatiable_info.py'
|
||||
cur_filename = sys.argv[0][sys.argv[0].rfind(os.sep)+1:]
|
||||
except_filter_filename_list = [cur_filename, upgrade_pre_filename, upgrade_post_filename]
|
||||
except_filter_filename_list = [cur_filename, upgrade_pre_filename, upgrade_post_filename, obcdc_compatible_filename]
|
||||
file_splitter_line = '####====XXXX======######==== I am a splitter ====######======XXXX====####'
|
||||
sub_filename_line_prefix = '#filename:'
|
||||
sub_file_module_end_line = '#sub file module end'
|
||||
|
||||
Reference in New Issue
Block a user