[CP] [OBCDC] Support heap table for OB4.x mark part_key or dep_col of part_key as primary_key
This commit is contained in:
@ -139,7 +139,7 @@ TEST(ObDataDictStorage, test_storage_in_palf)
|
||||
} else {
|
||||
DDLOG(ERROR, "next_dict_header failed", KR(ret), K(header));
|
||||
}
|
||||
} else if (OB_FAIL(iterator.next_dict_entry(tb_meta_after))) {
|
||||
} else if (OB_FAIL(iterator.next_dict_entry(header, tb_meta_after))) {
|
||||
DDLOG(ERROR, "next_dict_entry failed", KR(ret), K(header));
|
||||
} else {
|
||||
EXPECT_TRUE(*tb_meta == tb_meta_after);
|
||||
@ -202,7 +202,7 @@ TEST(ObDataDictStorage, test_storage_in_dict)
|
||||
} else {
|
||||
DDLOG(ERROR, "next_dict_header failed", KR(ret), K(header));
|
||||
}
|
||||
} else if (OB_FAIL(iterator.next_dict_entry(tb_meta_after))) {
|
||||
} else if (OB_FAIL(iterator.next_dict_entry(header, tb_meta_after))) {
|
||||
DDLOG(ERROR, "next_dict_entry failed", KR(ret), K(header));
|
||||
} else {
|
||||
EXPECT_TRUE(*tb_meta == tb_meta_after);
|
||||
|
||||
@ -62,6 +62,7 @@ TEST(ObDictTenantMeta, test_raw)
|
||||
ObArenaAllocator allocator;
|
||||
ObArenaAllocator allocator_for_deserialize;
|
||||
ObDictTenantMeta tenant_meta(&allocator);
|
||||
ObDictMetaHeader header(ObDictMetaType::TENANT_META);
|
||||
tenant_meta.tenant_id_ = 1001;
|
||||
tenant_meta.schema_version_=100003124341;
|
||||
tenant_meta.tenant_name_ = "md_tenant";
|
||||
@ -82,7 +83,7 @@ TEST(ObDictTenantMeta, test_raw)
|
||||
|
||||
ObDictTenantMeta tenant_meta_after(&allocator_for_deserialize);
|
||||
int64_t deserialize_pos = 0;
|
||||
EXPECT_EQ(OB_SUCCESS, tenant_meta_after.deserialize(buf, serialize_size, deserialize_pos));
|
||||
EXPECT_EQ(OB_SUCCESS, tenant_meta_after.deserialize(header, buf, serialize_size, deserialize_pos));
|
||||
DDLOG(INFO, "deserialized_meta", K(deserialize_pos), K(tenant_meta_after));
|
||||
ob_free(buf);
|
||||
|
||||
@ -101,6 +102,7 @@ TEST(ObDictDatabaseMeta, test_raw)
|
||||
ObArenaAllocator allocator;
|
||||
ObArenaAllocator allocator_for_deserialize;
|
||||
ObDictDatabaseMeta db_meta(&allocator);
|
||||
ObDictMetaHeader header(ObDictMetaType::DATABASE_META);
|
||||
db_meta.database_id_ = 1003030501;
|
||||
db_meta.tenant_id_ = 23412;
|
||||
db_meta.schema_version_ = 790134621334;
|
||||
@ -119,7 +121,7 @@ TEST(ObDictDatabaseMeta, test_raw)
|
||||
|
||||
ObDictDatabaseMeta db_meta_after(&allocator_for_deserialize);
|
||||
int64_t deserialize_pos = 0;
|
||||
EXPECT_EQ(OB_SUCCESS, db_meta_after.deserialize(buf, serialize_size, deserialize_pos));
|
||||
EXPECT_EQ(OB_SUCCESS, db_meta_after.deserialize(header, buf, serialize_size, deserialize_pos));
|
||||
DDLOG(INFO, "deserialized_meta", K(deserialize_pos), K(db_meta_after));
|
||||
ob_free(buf);
|
||||
|
||||
@ -143,6 +145,7 @@ TEST(ObDictColumnMeta, test_raw)
|
||||
ObArenaAllocator allocator_for_deserialize;
|
||||
DictTableMetaBuilder meta_builder;
|
||||
ObDictColumnMeta col_meta(&allocator);
|
||||
ObDictMetaHeader header(ObDictMetaType::TABLE_META);
|
||||
meta_builder.build_column_meta(&col_meta);
|
||||
DDLOG(INFO, "build_column_meta", K(col_meta));
|
||||
|
||||
@ -154,7 +157,7 @@ TEST(ObDictColumnMeta, test_raw)
|
||||
|
||||
ObDictColumnMeta col_meta_after(&allocator_for_deserialize);
|
||||
int64_t deserialize_pos = 0;
|
||||
EXPECT_EQ(OB_SUCCESS, col_meta_after.deserialize(buf, serialize_size, deserialize_pos));
|
||||
EXPECT_EQ(OB_SUCCESS, col_meta_after.deserialize(header, buf, serialize_size, deserialize_pos));
|
||||
DDLOG(INFO, "deserialized_meta", K(deserialize_pos), K(col_meta_after));
|
||||
ob_free(buf);
|
||||
|
||||
@ -220,6 +223,7 @@ TEST(ObDictTableMeta, test_raw)
|
||||
ObArenaAllocator allocator_for_deserialize;
|
||||
DictTableMetaBuilder meta_builder;
|
||||
ObDictTableMeta *tb_meta;
|
||||
ObDictMetaHeader header(ObDictMetaType::TABLE_META);
|
||||
const int64_t col_count = 4000;
|
||||
const int64_t rowkey_count = 57;
|
||||
const int64_t index_column_count = 1235;
|
||||
@ -237,7 +241,7 @@ TEST(ObDictTableMeta, test_raw)
|
||||
|
||||
ObDictTableMeta tb_meta_after(&allocator_for_deserialize);
|
||||
int64_t deserialize_pos = 0;
|
||||
EXPECT_EQ(OB_SUCCESS, tb_meta_after.deserialize(buf, serialize_size, deserialize_pos));
|
||||
EXPECT_EQ(OB_SUCCESS, tb_meta_after.deserialize(header, buf, serialize_size, deserialize_pos));
|
||||
DDLOG(INFO, "deserialized_meta", K(deserialize_pos), K(tb_meta_after));
|
||||
ob_free(buf);
|
||||
|
||||
|
||||
@ -318,12 +318,57 @@ TEST(utils, cstring_to_num)
|
||||
EXPECT_EQ(OB_INVALID_ARGUMENT, ret);
|
||||
}
|
||||
|
||||
TEST(utils, unique_arr_uint64)
|
||||
{
|
||||
auto fn = [](uint64_t &a, uint64_t &b) { return a < b; };
|
||||
ObArray<uint64_t> arr;
|
||||
EXPECT_EQ(OB_SUCCESS, arr.push_back(0));
|
||||
EXPECT_EQ(OB_SUCCESS, arr.push_back(2));
|
||||
EXPECT_EQ(OB_SUCCESS, arr.push_back(1));
|
||||
EXPECT_EQ(OB_SUCCESS, arr.push_back(3));
|
||||
EXPECT_EQ(OB_SUCCESS, arr.push_back(1));
|
||||
EXPECT_EQ(OB_SUCCESS, arr.push_back(2));
|
||||
EXPECT_EQ(OB_SUCCESS, arr.push_back(3));
|
||||
EXPECT_EQ(OB_SUCCESS, arr.push_back(2));
|
||||
EXPECT_EQ(OB_SUCCESS, sort_and_unique_array(arr, fn));
|
||||
EXPECT_EQ(4, arr.count());
|
||||
EXPECT_EQ(0, arr.at(0));
|
||||
EXPECT_EQ(1, arr.at(1));
|
||||
EXPECT_EQ(2, arr.at(2));
|
||||
EXPECT_EQ(3, arr.at(3));
|
||||
}
|
||||
|
||||
TEST(utils, unique_arr_lsn)
|
||||
{
|
||||
auto fn = [](palf::LSN &a, palf::LSN &b) { return a < b; };
|
||||
ObSEArray<palf::LSN, 8> arr;
|
||||
EXPECT_EQ(OB_SUCCESS, arr.push_back(palf::LSN(0)));
|
||||
EXPECT_EQ(OB_SUCCESS, arr.push_back(palf::LSN(2)));
|
||||
EXPECT_EQ(OB_SUCCESS, arr.push_back(palf::LSN(1)));
|
||||
EXPECT_EQ(OB_SUCCESS, arr.push_back(palf::LSN(3)));
|
||||
EXPECT_EQ(OB_SUCCESS, arr.push_back(palf::LSN(1)));
|
||||
EXPECT_EQ(OB_SUCCESS, arr.push_back(palf::LSN(2)));
|
||||
EXPECT_EQ(OB_SUCCESS, arr.push_back(palf::LSN(3)));
|
||||
EXPECT_EQ(OB_SUCCESS, arr.push_back(palf::LSN(2)));
|
||||
EXPECT_EQ(OB_SUCCESS, sort_and_unique_array(arr, fn));
|
||||
EXPECT_EQ(4, arr.count());
|
||||
EXPECT_EQ(palf::LSN(0), arr.at(0));
|
||||
EXPECT_EQ(palf::LSN(1), arr.at(1));
|
||||
EXPECT_EQ(palf::LSN(2), arr.at(2));
|
||||
EXPECT_EQ(palf::LSN(3), arr.at(3));
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
int main(int argc, char **argv)
|
||||
{
|
||||
// ObLogger::get_logger().set_mod_log_levels("ALL.*:DEBUG, TLOG.*:DEBUG");
|
||||
system("rm -f test_log_utils.log");
|
||||
ObLogger &logger = ObLogger::get_logger();
|
||||
bool not_output_obcdc_log = true;
|
||||
logger.set_file_name("test_log_utils.log", not_output_obcdc_log, false);
|
||||
logger.set_log_level(OB_LOG_LEVEL_DEBUG);
|
||||
logger.set_mod_log_levels("ALL.*:DEBUG");
|
||||
logger.set_enable_async_log(false);
|
||||
testing::InitGoogleTest(&argc,argv);
|
||||
// testing::FLAGS_gtest_filter = "DO_NOT_RUN";
|
||||
return RUN_ALL_TESTS();
|
||||
|
||||
Reference in New Issue
Block a user