From 40d220a51d9f550661a46bda0e844c413a9511b6 Mon Sep 17 00:00:00 2001 From: yangqise7en <877793735@qq.com> Date: Tue, 16 Jul 2024 05:06:03 +0000 Subject: [PATCH] fix schema defense 4002 --- src/storage/ob_storage_schema.h | 2 +- src/storage/ob_storage_schema_util.cpp | 7 +- .../r/mysql/multi_minor_merge.result | 452 +++++++++--------- .../t/multi_minor_merge.test | 14 +- unittest/storage/test_storage_schema.cpp | 3 +- 5 files changed, 241 insertions(+), 237 deletions(-) diff --git a/src/storage/ob_storage_schema.h b/src/storage/ob_storage_schema.h index 65dcc405a..273b57abf 100644 --- a/src/storage/ob_storage_schema.h +++ b/src/storage/ob_storage_schema.h @@ -361,7 +361,7 @@ public: ObString encryption_; // for encryption ObString encrypt_key_; // for encryption common::ObFixedArray rowkey_array_; // rowkey column - common::ObFixedArray column_array_; // column schema + common::ObFixedArray column_array_; // column schema, including virtual column common::ObFixedArray column_group_array_; // column group schema common::ObFixedArray skip_idx_attr_array_; int64_t store_column_cnt_; // NOT include virtual generated column diff --git a/src/storage/ob_storage_schema_util.cpp b/src/storage/ob_storage_schema_util.cpp index b4ce04b3e..bae5b532d 100644 --- a/src/storage/ob_storage_schema_util.cpp +++ b/src/storage/ob_storage_schema_util.cpp @@ -68,8 +68,11 @@ int ObStorageSchemaUtil::update_tablet_storage_schema( new_storage_schema_ptr->store_column_cnt_ = MAX(tablet_schema_stored_col_cnt, param_schema_stored_col_cnt); new_storage_schema_ptr->schema_version_ = MAX(tablet_schema_version, param_schema_version); new_storage_schema_ptr->column_info_simplified_ = - (new_storage_schema_ptr->store_column_cnt_ != new_storage_schema_ptr->get_store_column_schemas().count()); - if (param_schema_version > tablet_schema_version + (new_storage_schema_ptr->column_cnt_ != new_storage_schema_ptr->get_store_column_schemas().count()); + if (OB_UNLIKELY(!new_storage_schema_ptr->is_valid())) { + ret = OB_ERR_UNEXPECTED; + LOG_ERROR("generated schema is invalid", KR(ret), KPC(new_storage_schema_ptr), K(old_schema_on_tablet), K(param_schema)); + } else if (param_schema_version > tablet_schema_version || param_schema_stored_col_cnt > tablet_schema_stored_col_cnt || param_schema_column_group_cnt > old_schema_column_group_cnt) { // ATTENTION! Critical diagnostic log, DO NOT CHANGE!!! diff --git a/tools/deploy/mysql_test/test_suite/merge_uncommitted/r/mysql/multi_minor_merge.result b/tools/deploy/mysql_test/test_suite/merge_uncommitted/r/mysql/multi_minor_merge.result index e53e74757..25b395c34 100644 --- a/tools/deploy/mysql_test/test_suite/merge_uncommitted/r/mysql/multi_minor_merge.result +++ b/tools/deploy/mysql_test/test_suite/merge_uncommitted/r/mysql/multi_minor_merge.result @@ -6,237 +6,237 @@ set SESSION ob_trx_timeout = 600 * 1000 * 1000; set SESSION ob_trx_idle_timeout = 600 * 1000 * 1000; alter system set minor_compact_trigger = 10; drop table if exists test_multi_minor_merge_t; -create table test_multi_minor_merge_t(num int, str varchar(50), tag int); +create table test_multi_minor_merge_t(c1 int, c2 int, c3 varchar(40960), c4 varchar(10) generated always as (substring(c3, 2, 8)) virtual); begin; -insert into test_multi_minor_merge_t values(200, 'Hello OceanBase & Happy New Year', 1); -insert into test_multi_minor_merge_t values(199, 'Hello OceanBase & Happy New Year', 1); -insert into test_multi_minor_merge_t values(198, 'Hello OceanBase & Happy New Year', 1); -insert into test_multi_minor_merge_t values(197, 'Hello OceanBase & Happy New Year', 1); -insert into test_multi_minor_merge_t values(196, 'Hello OceanBase & Happy New Year', 1); -insert into test_multi_minor_merge_t values(195, 'Hello OceanBase & Happy New Year', 1); -insert into test_multi_minor_merge_t values(194, 'Hello OceanBase & Happy New Year', 1); -insert into test_multi_minor_merge_t values(193, 'Hello OceanBase & Happy New Year', 1); -insert into test_multi_minor_merge_t values(192, 'Hello OceanBase & Happy New Year', 1); -insert into test_multi_minor_merge_t values(191, 'Hello OceanBase & Happy New Year', 1); -insert into test_multi_minor_merge_t values(190, 'Hello OceanBase & Happy New Year', 1); -insert into test_multi_minor_merge_t values(189, 'Hello OceanBase & Happy New Year', 1); -insert into test_multi_minor_merge_t values(188, 'Hello OceanBase & Happy New Year', 1); -insert into test_multi_minor_merge_t values(187, 'Hello OceanBase & Happy New Year', 1); -insert into test_multi_minor_merge_t values(186, 'Hello OceanBase & Happy New Year', 1); -insert into test_multi_minor_merge_t values(185, 'Hello OceanBase & Happy New Year', 1); -insert into test_multi_minor_merge_t values(184, 'Hello OceanBase & Happy New Year', 1); -insert into test_multi_minor_merge_t values(183, 'Hello OceanBase & Happy New Year', 1); -insert into test_multi_minor_merge_t values(182, 'Hello OceanBase & Happy New Year', 1); -insert into test_multi_minor_merge_t values(181, 'Hello OceanBase & Happy New Year', 1); -insert into test_multi_minor_merge_t values(180, 'Hello OceanBase & Happy New Year', 1); -insert into test_multi_minor_merge_t values(179, 'Hello OceanBase & Happy New Year', 1); -insert into test_multi_minor_merge_t values(178, 'Hello OceanBase & Happy New Year', 1); -insert into test_multi_minor_merge_t values(177, 'Hello OceanBase & Happy New Year', 1); -insert into test_multi_minor_merge_t values(176, 'Hello OceanBase & Happy New Year', 1); -insert into test_multi_minor_merge_t values(175, 'Hello OceanBase & Happy New Year', 1); -insert into test_multi_minor_merge_t values(174, 'Hello OceanBase & Happy New Year', 1); -insert into test_multi_minor_merge_t values(173, 'Hello OceanBase & Happy New Year', 1); -insert into test_multi_minor_merge_t values(172, 'Hello OceanBase & Happy New Year', 1); -insert into test_multi_minor_merge_t values(171, 'Hello OceanBase & Happy New Year', 1); -insert into test_multi_minor_merge_t values(170, 'Hello OceanBase & Happy New Year', 1); -insert into test_multi_minor_merge_t values(169, 'Hello OceanBase & Happy New Year', 1); -insert into test_multi_minor_merge_t values(168, 'Hello OceanBase & Happy New Year', 1); -insert into test_multi_minor_merge_t values(167, 'Hello OceanBase & Happy New Year', 1); -insert into test_multi_minor_merge_t values(166, 'Hello OceanBase & Happy New Year', 1); -insert into test_multi_minor_merge_t values(165, 'Hello OceanBase & Happy New Year', 1); -insert into test_multi_minor_merge_t values(164, 'Hello OceanBase & Happy New Year', 1); -insert into test_multi_minor_merge_t values(163, 'Hello OceanBase & Happy New Year', 1); -insert into test_multi_minor_merge_t values(162, 'Hello OceanBase & Happy New Year', 1); -insert into test_multi_minor_merge_t values(161, 'Hello OceanBase & Happy New Year', 1); -insert into test_multi_minor_merge_t values(160, 'Hello OceanBase & Happy New Year', 1); -insert into test_multi_minor_merge_t values(159, 'Hello OceanBase & Happy New Year', 1); -insert into test_multi_minor_merge_t values(158, 'Hello OceanBase & Happy New Year', 1); -insert into test_multi_minor_merge_t values(157, 'Hello OceanBase & Happy New Year', 1); -insert into test_multi_minor_merge_t values(156, 'Hello OceanBase & Happy New Year', 1); -insert into test_multi_minor_merge_t values(155, 'Hello OceanBase & Happy New Year', 1); -insert into test_multi_minor_merge_t values(154, 'Hello OceanBase & Happy New Year', 1); -insert into test_multi_minor_merge_t values(153, 'Hello OceanBase & Happy New Year', 1); -insert into test_multi_minor_merge_t values(152, 'Hello OceanBase & Happy New Year', 1); -insert into test_multi_minor_merge_t values(151, 'Hello OceanBase & Happy New Year', 1); -insert into test_multi_minor_merge_t values(150, 'Hello OceanBase & Happy New Year', 1); -insert into test_multi_minor_merge_t values(149, 'Hello OceanBase & Happy New Year', 1); -insert into test_multi_minor_merge_t values(148, 'Hello OceanBase & Happy New Year', 1); -insert into test_multi_minor_merge_t values(147, 'Hello OceanBase & Happy New Year', 1); -insert into test_multi_minor_merge_t values(146, 'Hello OceanBase & Happy New Year', 1); -insert into test_multi_minor_merge_t values(145, 'Hello OceanBase & Happy New Year', 1); -insert into test_multi_minor_merge_t values(144, 'Hello OceanBase & Happy New Year', 1); -insert into test_multi_minor_merge_t values(143, 'Hello OceanBase & Happy New Year', 1); -insert into test_multi_minor_merge_t values(142, 'Hello OceanBase & Happy New Year', 1); -insert into test_multi_minor_merge_t values(141, 'Hello OceanBase & Happy New Year', 1); -insert into test_multi_minor_merge_t values(140, 'Hello OceanBase & Happy New Year', 1); -insert into test_multi_minor_merge_t values(139, 'Hello OceanBase & Happy New Year', 1); -insert into test_multi_minor_merge_t values(138, 'Hello OceanBase & Happy New Year', 1); -insert into test_multi_minor_merge_t values(137, 'Hello OceanBase & Happy New Year', 1); -insert into test_multi_minor_merge_t values(136, 'Hello OceanBase & Happy New Year', 1); -insert into test_multi_minor_merge_t values(135, 'Hello OceanBase & Happy New Year', 1); -insert into test_multi_minor_merge_t values(134, 'Hello OceanBase & Happy New Year', 1); -insert into test_multi_minor_merge_t values(133, 'Hello OceanBase & Happy New Year', 1); -insert into test_multi_minor_merge_t values(132, 'Hello OceanBase & Happy New Year', 1); -insert into test_multi_minor_merge_t values(131, 'Hello OceanBase & Happy New Year', 1); -insert into test_multi_minor_merge_t values(130, 'Hello OceanBase & Happy New Year', 1); -insert into test_multi_minor_merge_t values(129, 'Hello OceanBase & Happy New Year', 1); -insert into test_multi_minor_merge_t values(128, 'Hello OceanBase & Happy New Year', 1); -insert into test_multi_minor_merge_t values(127, 'Hello OceanBase & Happy New Year', 1); -insert into test_multi_minor_merge_t values(126, 'Hello OceanBase & Happy New Year', 1); -insert into test_multi_minor_merge_t values(125, 'Hello OceanBase & Happy New Year', 1); -insert into test_multi_minor_merge_t values(124, 'Hello OceanBase & Happy New Year', 1); -insert into test_multi_minor_merge_t values(123, 'Hello OceanBase & Happy New Year', 1); -insert into test_multi_minor_merge_t values(122, 'Hello OceanBase & Happy New Year', 1); -insert into test_multi_minor_merge_t values(121, 'Hello OceanBase & Happy New Year', 1); -insert into test_multi_minor_merge_t values(120, 'Hello OceanBase & Happy New Year', 1); -insert into test_multi_minor_merge_t values(119, 'Hello OceanBase & Happy New Year', 1); -insert into test_multi_minor_merge_t values(118, 'Hello OceanBase & Happy New Year', 1); -insert into test_multi_minor_merge_t values(117, 'Hello OceanBase & Happy New Year', 1); -insert into test_multi_minor_merge_t values(116, 'Hello OceanBase & Happy New Year', 1); -insert into test_multi_minor_merge_t values(115, 'Hello OceanBase & Happy New Year', 1); -insert into test_multi_minor_merge_t values(114, 'Hello OceanBase & Happy New Year', 1); -insert into test_multi_minor_merge_t values(113, 'Hello OceanBase & Happy New Year', 1); -insert into test_multi_minor_merge_t values(112, 'Hello OceanBase & Happy New Year', 1); -insert into test_multi_minor_merge_t values(111, 'Hello OceanBase & Happy New Year', 1); -insert into test_multi_minor_merge_t values(110, 'Hello OceanBase & Happy New Year', 1); -insert into test_multi_minor_merge_t values(109, 'Hello OceanBase & Happy New Year', 1); -insert into test_multi_minor_merge_t values(108, 'Hello OceanBase & Happy New Year', 1); -insert into test_multi_minor_merge_t values(107, 'Hello OceanBase & Happy New Year', 1); -insert into test_multi_minor_merge_t values(106, 'Hello OceanBase & Happy New Year', 1); -insert into test_multi_minor_merge_t values(105, 'Hello OceanBase & Happy New Year', 1); -insert into test_multi_minor_merge_t values(104, 'Hello OceanBase & Happy New Year', 1); -insert into test_multi_minor_merge_t values(103, 'Hello OceanBase & Happy New Year', 1); -insert into test_multi_minor_merge_t values(102, 'Hello OceanBase & Happy New Year', 1); -insert into test_multi_minor_merge_t values(101, 'Hello OceanBase & Happy New Year', 1); -insert into test_multi_minor_merge_t values(100, 'Hello OceanBase & Happy New Year', 1); -insert into test_multi_minor_merge_t values(99, 'Hello OceanBase & Happy New Year', 1); -insert into test_multi_minor_merge_t values(98, 'Hello OceanBase & Happy New Year', 1); -insert into test_multi_minor_merge_t values(97, 'Hello OceanBase & Happy New Year', 1); -insert into test_multi_minor_merge_t values(96, 'Hello OceanBase & Happy New Year', 1); -insert into test_multi_minor_merge_t values(95, 'Hello OceanBase & Happy New Year', 1); -insert into test_multi_minor_merge_t values(94, 'Hello OceanBase & Happy New Year', 1); -insert into test_multi_minor_merge_t values(93, 'Hello OceanBase & Happy New Year', 1); -insert into test_multi_minor_merge_t values(92, 'Hello OceanBase & Happy New Year', 1); -insert into test_multi_minor_merge_t values(91, 'Hello OceanBase & Happy New Year', 1); -insert into test_multi_minor_merge_t values(90, 'Hello OceanBase & Happy New Year', 1); -insert into test_multi_minor_merge_t values(89, 'Hello OceanBase & Happy New Year', 1); -insert into test_multi_minor_merge_t values(88, 'Hello OceanBase & Happy New Year', 1); -insert into test_multi_minor_merge_t values(87, 'Hello OceanBase & Happy New Year', 1); -insert into test_multi_minor_merge_t values(86, 'Hello OceanBase & Happy New Year', 1); -insert into test_multi_minor_merge_t values(85, 'Hello OceanBase & Happy New Year', 1); -insert into test_multi_minor_merge_t values(84, 'Hello OceanBase & Happy New Year', 1); -insert into test_multi_minor_merge_t values(83, 'Hello OceanBase & Happy New Year', 1); -insert into test_multi_minor_merge_t values(82, 'Hello OceanBase & Happy New Year', 1); -insert into test_multi_minor_merge_t values(81, 'Hello OceanBase & Happy New Year', 1); -insert into test_multi_minor_merge_t values(80, 'Hello OceanBase & Happy New Year', 1); -insert into test_multi_minor_merge_t values(79, 'Hello OceanBase & Happy New Year', 1); -insert into test_multi_minor_merge_t values(78, 'Hello OceanBase & Happy New Year', 1); -insert into test_multi_minor_merge_t values(77, 'Hello OceanBase & Happy New Year', 1); -insert into test_multi_minor_merge_t values(76, 'Hello OceanBase & Happy New Year', 1); -insert into test_multi_minor_merge_t values(75, 'Hello OceanBase & Happy New Year', 1); -insert into test_multi_minor_merge_t values(74, 'Hello OceanBase & Happy New Year', 1); -insert into test_multi_minor_merge_t values(73, 'Hello OceanBase & Happy New Year', 1); -insert into test_multi_minor_merge_t values(72, 'Hello OceanBase & Happy New Year', 1); -insert into test_multi_minor_merge_t values(71, 'Hello OceanBase & Happy New Year', 1); -insert into test_multi_minor_merge_t values(70, 'Hello OceanBase & Happy New Year', 1); -insert into test_multi_minor_merge_t values(69, 'Hello OceanBase & Happy New Year', 1); -insert into test_multi_minor_merge_t values(68, 'Hello OceanBase & Happy New Year', 1); -insert into test_multi_minor_merge_t values(67, 'Hello OceanBase & Happy New Year', 1); -insert into test_multi_minor_merge_t values(66, 'Hello OceanBase & Happy New Year', 1); -insert into test_multi_minor_merge_t values(65, 'Hello OceanBase & Happy New Year', 1); -insert into test_multi_minor_merge_t values(64, 'Hello OceanBase & Happy New Year', 1); -insert into test_multi_minor_merge_t values(63, 'Hello OceanBase & Happy New Year', 1); -insert into test_multi_minor_merge_t values(62, 'Hello OceanBase & Happy New Year', 1); -insert into test_multi_minor_merge_t values(61, 'Hello OceanBase & Happy New Year', 1); -insert into test_multi_minor_merge_t values(60, 'Hello OceanBase & Happy New Year', 1); -insert into test_multi_minor_merge_t values(59, 'Hello OceanBase & Happy New Year', 1); -insert into test_multi_minor_merge_t values(58, 'Hello OceanBase & Happy New Year', 1); -insert into test_multi_minor_merge_t values(57, 'Hello OceanBase & Happy New Year', 1); -insert into test_multi_minor_merge_t values(56, 'Hello OceanBase & Happy New Year', 1); -insert into test_multi_minor_merge_t values(55, 'Hello OceanBase & Happy New Year', 1); -insert into test_multi_minor_merge_t values(54, 'Hello OceanBase & Happy New Year', 1); -insert into test_multi_minor_merge_t values(53, 'Hello OceanBase & Happy New Year', 1); -insert into test_multi_minor_merge_t values(52, 'Hello OceanBase & Happy New Year', 1); -insert into test_multi_minor_merge_t values(51, 'Hello OceanBase & Happy New Year', 1); -insert into test_multi_minor_merge_t values(50, 'Hello OceanBase & Happy New Year', 1); -insert into test_multi_minor_merge_t values(49, 'Hello OceanBase & Happy New Year', 1); -insert into test_multi_minor_merge_t values(48, 'Hello OceanBase & Happy New Year', 1); -insert into test_multi_minor_merge_t values(47, 'Hello OceanBase & Happy New Year', 1); -insert into test_multi_minor_merge_t values(46, 'Hello OceanBase & Happy New Year', 1); -insert into test_multi_minor_merge_t values(45, 'Hello OceanBase & Happy New Year', 1); -insert into test_multi_minor_merge_t values(44, 'Hello OceanBase & Happy New Year', 1); -insert into test_multi_minor_merge_t values(43, 'Hello OceanBase & Happy New Year', 1); -insert into test_multi_minor_merge_t values(42, 'Hello OceanBase & Happy New Year', 1); -insert into test_multi_minor_merge_t values(41, 'Hello OceanBase & Happy New Year', 1); +insert into test_multi_minor_merge_t(c1,c2,c3) values(200, 200, 'Hello OceanBase & Happy New Year'); +insert into test_multi_minor_merge_t(c1,c2,c3) values(199, 199, 'Hello OceanBase & Happy New Year'); +insert into test_multi_minor_merge_t(c1,c2,c3) values(198, 198, 'Hello OceanBase & Happy New Year'); +insert into test_multi_minor_merge_t(c1,c2,c3) values(197, 197, 'Hello OceanBase & Happy New Year'); +insert into test_multi_minor_merge_t(c1,c2,c3) values(196, 196, 'Hello OceanBase & Happy New Year'); +insert into test_multi_minor_merge_t(c1,c2,c3) values(195, 195, 'Hello OceanBase & Happy New Year'); +insert into test_multi_minor_merge_t(c1,c2,c3) values(194, 194, 'Hello OceanBase & Happy New Year'); +insert into test_multi_minor_merge_t(c1,c2,c3) values(193, 193, 'Hello OceanBase & Happy New Year'); +insert into test_multi_minor_merge_t(c1,c2,c3) values(192, 192, 'Hello OceanBase & Happy New Year'); +insert into test_multi_minor_merge_t(c1,c2,c3) values(191, 191, 'Hello OceanBase & Happy New Year'); +insert into test_multi_minor_merge_t(c1,c2,c3) values(190, 190, 'Hello OceanBase & Happy New Year'); +insert into test_multi_minor_merge_t(c1,c2,c3) values(189, 189, 'Hello OceanBase & Happy New Year'); +insert into test_multi_minor_merge_t(c1,c2,c3) values(188, 188, 'Hello OceanBase & Happy New Year'); +insert into test_multi_minor_merge_t(c1,c2,c3) values(187, 187, 'Hello OceanBase & Happy New Year'); +insert into test_multi_minor_merge_t(c1,c2,c3) values(186, 186, 'Hello OceanBase & Happy New Year'); +insert into test_multi_minor_merge_t(c1,c2,c3) values(185, 185, 'Hello OceanBase & Happy New Year'); +insert into test_multi_minor_merge_t(c1,c2,c3) values(184, 184, 'Hello OceanBase & Happy New Year'); +insert into test_multi_minor_merge_t(c1,c2,c3) values(183, 183, 'Hello OceanBase & Happy New Year'); +insert into test_multi_minor_merge_t(c1,c2,c3) values(182, 182, 'Hello OceanBase & Happy New Year'); +insert into test_multi_minor_merge_t(c1,c2,c3) values(181, 181, 'Hello OceanBase & Happy New Year'); +insert into test_multi_minor_merge_t(c1,c2,c3) values(180, 180, 'Hello OceanBase & Happy New Year'); +insert into test_multi_minor_merge_t(c1,c2,c3) values(179, 179, 'Hello OceanBase & Happy New Year'); +insert into test_multi_minor_merge_t(c1,c2,c3) values(178, 178, 'Hello OceanBase & Happy New Year'); +insert into test_multi_minor_merge_t(c1,c2,c3) values(177, 177, 'Hello OceanBase & Happy New Year'); +insert into test_multi_minor_merge_t(c1,c2,c3) values(176, 176, 'Hello OceanBase & Happy New Year'); +insert into test_multi_minor_merge_t(c1,c2,c3) values(175, 175, 'Hello OceanBase & Happy New Year'); +insert into test_multi_minor_merge_t(c1,c2,c3) values(174, 174, 'Hello OceanBase & Happy New Year'); +insert into test_multi_minor_merge_t(c1,c2,c3) values(173, 173, 'Hello OceanBase & Happy New Year'); +insert into test_multi_minor_merge_t(c1,c2,c3) values(172, 172, 'Hello OceanBase & Happy New Year'); +insert into test_multi_minor_merge_t(c1,c2,c3) values(171, 171, 'Hello OceanBase & Happy New Year'); +insert into test_multi_minor_merge_t(c1,c2,c3) values(170, 170, 'Hello OceanBase & Happy New Year'); +insert into test_multi_minor_merge_t(c1,c2,c3) values(169, 169, 'Hello OceanBase & Happy New Year'); +insert into test_multi_minor_merge_t(c1,c2,c3) values(168, 168, 'Hello OceanBase & Happy New Year'); +insert into test_multi_minor_merge_t(c1,c2,c3) values(167, 167, 'Hello OceanBase & Happy New Year'); +insert into test_multi_minor_merge_t(c1,c2,c3) values(166, 166, 'Hello OceanBase & Happy New Year'); +insert into test_multi_minor_merge_t(c1,c2,c3) values(165, 165, 'Hello OceanBase & Happy New Year'); +insert into test_multi_minor_merge_t(c1,c2,c3) values(164, 164, 'Hello OceanBase & Happy New Year'); +insert into test_multi_minor_merge_t(c1,c2,c3) values(163, 163, 'Hello OceanBase & Happy New Year'); +insert into test_multi_minor_merge_t(c1,c2,c3) values(162, 162, 'Hello OceanBase & Happy New Year'); +insert into test_multi_minor_merge_t(c1,c2,c3) values(161, 161, 'Hello OceanBase & Happy New Year'); +insert into test_multi_minor_merge_t(c1,c2,c3) values(160, 160, 'Hello OceanBase & Happy New Year'); +insert into test_multi_minor_merge_t(c1,c2,c3) values(159, 159, 'Hello OceanBase & Happy New Year'); +insert into test_multi_minor_merge_t(c1,c2,c3) values(158, 158, 'Hello OceanBase & Happy New Year'); +insert into test_multi_minor_merge_t(c1,c2,c3) values(157, 157, 'Hello OceanBase & Happy New Year'); +insert into test_multi_minor_merge_t(c1,c2,c3) values(156, 156, 'Hello OceanBase & Happy New Year'); +insert into test_multi_minor_merge_t(c1,c2,c3) values(155, 155, 'Hello OceanBase & Happy New Year'); +insert into test_multi_minor_merge_t(c1,c2,c3) values(154, 154, 'Hello OceanBase & Happy New Year'); +insert into test_multi_minor_merge_t(c1,c2,c3) values(153, 153, 'Hello OceanBase & Happy New Year'); +insert into test_multi_minor_merge_t(c1,c2,c3) values(152, 152, 'Hello OceanBase & Happy New Year'); +insert into test_multi_minor_merge_t(c1,c2,c3) values(151, 151, 'Hello OceanBase & Happy New Year'); +insert into test_multi_minor_merge_t(c1,c2,c3) values(150, 150, 'Hello OceanBase & Happy New Year'); +insert into test_multi_minor_merge_t(c1,c2,c3) values(149, 149, 'Hello OceanBase & Happy New Year'); +insert into test_multi_minor_merge_t(c1,c2,c3) values(148, 148, 'Hello OceanBase & Happy New Year'); +insert into test_multi_minor_merge_t(c1,c2,c3) values(147, 147, 'Hello OceanBase & Happy New Year'); +insert into test_multi_minor_merge_t(c1,c2,c3) values(146, 146, 'Hello OceanBase & Happy New Year'); +insert into test_multi_minor_merge_t(c1,c2,c3) values(145, 145, 'Hello OceanBase & Happy New Year'); +insert into test_multi_minor_merge_t(c1,c2,c3) values(144, 144, 'Hello OceanBase & Happy New Year'); +insert into test_multi_minor_merge_t(c1,c2,c3) values(143, 143, 'Hello OceanBase & Happy New Year'); +insert into test_multi_minor_merge_t(c1,c2,c3) values(142, 142, 'Hello OceanBase & Happy New Year'); +insert into test_multi_minor_merge_t(c1,c2,c3) values(141, 141, 'Hello OceanBase & Happy New Year'); +insert into test_multi_minor_merge_t(c1,c2,c3) values(140, 140, 'Hello OceanBase & Happy New Year'); +insert into test_multi_minor_merge_t(c1,c2,c3) values(139, 139, 'Hello OceanBase & Happy New Year'); +insert into test_multi_minor_merge_t(c1,c2,c3) values(138, 138, 'Hello OceanBase & Happy New Year'); +insert into test_multi_minor_merge_t(c1,c2,c3) values(137, 137, 'Hello OceanBase & Happy New Year'); +insert into test_multi_minor_merge_t(c1,c2,c3) values(136, 136, 'Hello OceanBase & Happy New Year'); +insert into test_multi_minor_merge_t(c1,c2,c3) values(135, 135, 'Hello OceanBase & Happy New Year'); +insert into test_multi_minor_merge_t(c1,c2,c3) values(134, 134, 'Hello OceanBase & Happy New Year'); +insert into test_multi_minor_merge_t(c1,c2,c3) values(133, 133, 'Hello OceanBase & Happy New Year'); +insert into test_multi_minor_merge_t(c1,c2,c3) values(132, 132, 'Hello OceanBase & Happy New Year'); +insert into test_multi_minor_merge_t(c1,c2,c3) values(131, 131, 'Hello OceanBase & Happy New Year'); +insert into test_multi_minor_merge_t(c1,c2,c3) values(130, 130, 'Hello OceanBase & Happy New Year'); +insert into test_multi_minor_merge_t(c1,c2,c3) values(129, 129, 'Hello OceanBase & Happy New Year'); +insert into test_multi_minor_merge_t(c1,c2,c3) values(128, 128, 'Hello OceanBase & Happy New Year'); +insert into test_multi_minor_merge_t(c1,c2,c3) values(127, 127, 'Hello OceanBase & Happy New Year'); +insert into test_multi_minor_merge_t(c1,c2,c3) values(126, 126, 'Hello OceanBase & Happy New Year'); +insert into test_multi_minor_merge_t(c1,c2,c3) values(125, 125, 'Hello OceanBase & Happy New Year'); +insert into test_multi_minor_merge_t(c1,c2,c3) values(124, 124, 'Hello OceanBase & Happy New Year'); +insert into test_multi_minor_merge_t(c1,c2,c3) values(123, 123, 'Hello OceanBase & Happy New Year'); +insert into test_multi_minor_merge_t(c1,c2,c3) values(122, 122, 'Hello OceanBase & Happy New Year'); +insert into test_multi_minor_merge_t(c1,c2,c3) values(121, 121, 'Hello OceanBase & Happy New Year'); +insert into test_multi_minor_merge_t(c1,c2,c3) values(120, 120, 'Hello OceanBase & Happy New Year'); +insert into test_multi_minor_merge_t(c1,c2,c3) values(119, 119, 'Hello OceanBase & Happy New Year'); +insert into test_multi_minor_merge_t(c1,c2,c3) values(118, 118, 'Hello OceanBase & Happy New Year'); +insert into test_multi_minor_merge_t(c1,c2,c3) values(117, 117, 'Hello OceanBase & Happy New Year'); +insert into test_multi_minor_merge_t(c1,c2,c3) values(116, 116, 'Hello OceanBase & Happy New Year'); +insert into test_multi_minor_merge_t(c1,c2,c3) values(115, 115, 'Hello OceanBase & Happy New Year'); +insert into test_multi_minor_merge_t(c1,c2,c3) values(114, 114, 'Hello OceanBase & Happy New Year'); +insert into test_multi_minor_merge_t(c1,c2,c3) values(113, 113, 'Hello OceanBase & Happy New Year'); +insert into test_multi_minor_merge_t(c1,c2,c3) values(112, 112, 'Hello OceanBase & Happy New Year'); +insert into test_multi_minor_merge_t(c1,c2,c3) values(111, 111, 'Hello OceanBase & Happy New Year'); +insert into test_multi_minor_merge_t(c1,c2,c3) values(110, 110, 'Hello OceanBase & Happy New Year'); +insert into test_multi_minor_merge_t(c1,c2,c3) values(109, 109, 'Hello OceanBase & Happy New Year'); +insert into test_multi_minor_merge_t(c1,c2,c3) values(108, 108, 'Hello OceanBase & Happy New Year'); +insert into test_multi_minor_merge_t(c1,c2,c3) values(107, 107, 'Hello OceanBase & Happy New Year'); +insert into test_multi_minor_merge_t(c1,c2,c3) values(106, 106, 'Hello OceanBase & Happy New Year'); +insert into test_multi_minor_merge_t(c1,c2,c3) values(105, 105, 'Hello OceanBase & Happy New Year'); +insert into test_multi_minor_merge_t(c1,c2,c3) values(104, 104, 'Hello OceanBase & Happy New Year'); +insert into test_multi_minor_merge_t(c1,c2,c3) values(103, 103, 'Hello OceanBase & Happy New Year'); +insert into test_multi_minor_merge_t(c1,c2,c3) values(102, 102, 'Hello OceanBase & Happy New Year'); +insert into test_multi_minor_merge_t(c1,c2,c3) values(101, 101, 'Hello OceanBase & Happy New Year'); +insert into test_multi_minor_merge_t(c1,c2,c3) values(100, 100, 'Hello OceanBase & Happy New Year'); +insert into test_multi_minor_merge_t(c1,c2,c3) values(99, 99, 'Hello OceanBase & Happy New Year'); +insert into test_multi_minor_merge_t(c1,c2,c3) values(98, 98, 'Hello OceanBase & Happy New Year'); +insert into test_multi_minor_merge_t(c1,c2,c3) values(97, 97, 'Hello OceanBase & Happy New Year'); +insert into test_multi_minor_merge_t(c1,c2,c3) values(96, 96, 'Hello OceanBase & Happy New Year'); +insert into test_multi_minor_merge_t(c1,c2,c3) values(95, 95, 'Hello OceanBase & Happy New Year'); +insert into test_multi_minor_merge_t(c1,c2,c3) values(94, 94, 'Hello OceanBase & Happy New Year'); +insert into test_multi_minor_merge_t(c1,c2,c3) values(93, 93, 'Hello OceanBase & Happy New Year'); +insert into test_multi_minor_merge_t(c1,c2,c3) values(92, 92, 'Hello OceanBase & Happy New Year'); +insert into test_multi_minor_merge_t(c1,c2,c3) values(91, 91, 'Hello OceanBase & Happy New Year'); +insert into test_multi_minor_merge_t(c1,c2,c3) values(90, 90, 'Hello OceanBase & Happy New Year'); +insert into test_multi_minor_merge_t(c1,c2,c3) values(89, 89, 'Hello OceanBase & Happy New Year'); +insert into test_multi_minor_merge_t(c1,c2,c3) values(88, 88, 'Hello OceanBase & Happy New Year'); +insert into test_multi_minor_merge_t(c1,c2,c3) values(87, 87, 'Hello OceanBase & Happy New Year'); +insert into test_multi_minor_merge_t(c1,c2,c3) values(86, 86, 'Hello OceanBase & Happy New Year'); +insert into test_multi_minor_merge_t(c1,c2,c3) values(85, 85, 'Hello OceanBase & Happy New Year'); +insert into test_multi_minor_merge_t(c1,c2,c3) values(84, 84, 'Hello OceanBase & Happy New Year'); +insert into test_multi_minor_merge_t(c1,c2,c3) values(83, 83, 'Hello OceanBase & Happy New Year'); +insert into test_multi_minor_merge_t(c1,c2,c3) values(82, 82, 'Hello OceanBase & Happy New Year'); +insert into test_multi_minor_merge_t(c1,c2,c3) values(81, 81, 'Hello OceanBase & Happy New Year'); +insert into test_multi_minor_merge_t(c1,c2,c3) values(80, 80, 'Hello OceanBase & Happy New Year'); +insert into test_multi_minor_merge_t(c1,c2,c3) values(79, 79, 'Hello OceanBase & Happy New Year'); +insert into test_multi_minor_merge_t(c1,c2,c3) values(78, 78, 'Hello OceanBase & Happy New Year'); +insert into test_multi_minor_merge_t(c1,c2,c3) values(77, 77, 'Hello OceanBase & Happy New Year'); +insert into test_multi_minor_merge_t(c1,c2,c3) values(76, 76, 'Hello OceanBase & Happy New Year'); +insert into test_multi_minor_merge_t(c1,c2,c3) values(75, 75, 'Hello OceanBase & Happy New Year'); +insert into test_multi_minor_merge_t(c1,c2,c3) values(74, 74, 'Hello OceanBase & Happy New Year'); +insert into test_multi_minor_merge_t(c1,c2,c3) values(73, 73, 'Hello OceanBase & Happy New Year'); +insert into test_multi_minor_merge_t(c1,c2,c3) values(72, 72, 'Hello OceanBase & Happy New Year'); +insert into test_multi_minor_merge_t(c1,c2,c3) values(71, 71, 'Hello OceanBase & Happy New Year'); +insert into test_multi_minor_merge_t(c1,c2,c3) values(70, 70, 'Hello OceanBase & Happy New Year'); +insert into test_multi_minor_merge_t(c1,c2,c3) values(69, 69, 'Hello OceanBase & Happy New Year'); +insert into test_multi_minor_merge_t(c1,c2,c3) values(68, 68, 'Hello OceanBase & Happy New Year'); +insert into test_multi_minor_merge_t(c1,c2,c3) values(67, 67, 'Hello OceanBase & Happy New Year'); +insert into test_multi_minor_merge_t(c1,c2,c3) values(66, 66, 'Hello OceanBase & Happy New Year'); +insert into test_multi_minor_merge_t(c1,c2,c3) values(65, 65, 'Hello OceanBase & Happy New Year'); +insert into test_multi_minor_merge_t(c1,c2,c3) values(64, 64, 'Hello OceanBase & Happy New Year'); +insert into test_multi_minor_merge_t(c1,c2,c3) values(63, 63, 'Hello OceanBase & Happy New Year'); +insert into test_multi_minor_merge_t(c1,c2,c3) values(62, 62, 'Hello OceanBase & Happy New Year'); +insert into test_multi_minor_merge_t(c1,c2,c3) values(61, 61, 'Hello OceanBase & Happy New Year'); +insert into test_multi_minor_merge_t(c1,c2,c3) values(60, 60, 'Hello OceanBase & Happy New Year'); +insert into test_multi_minor_merge_t(c1,c2,c3) values(59, 59, 'Hello OceanBase & Happy New Year'); +insert into test_multi_minor_merge_t(c1,c2,c3) values(58, 58, 'Hello OceanBase & Happy New Year'); +insert into test_multi_minor_merge_t(c1,c2,c3) values(57, 57, 'Hello OceanBase & Happy New Year'); +insert into test_multi_minor_merge_t(c1,c2,c3) values(56, 56, 'Hello OceanBase & Happy New Year'); +insert into test_multi_minor_merge_t(c1,c2,c3) values(55, 55, 'Hello OceanBase & Happy New Year'); +insert into test_multi_minor_merge_t(c1,c2,c3) values(54, 54, 'Hello OceanBase & Happy New Year'); +insert into test_multi_minor_merge_t(c1,c2,c3) values(53, 53, 'Hello OceanBase & Happy New Year'); +insert into test_multi_minor_merge_t(c1,c2,c3) values(52, 52, 'Hello OceanBase & Happy New Year'); +insert into test_multi_minor_merge_t(c1,c2,c3) values(51, 51, 'Hello OceanBase & Happy New Year'); +insert into test_multi_minor_merge_t(c1,c2,c3) values(50, 50, 'Hello OceanBase & Happy New Year'); +insert into test_multi_minor_merge_t(c1,c2,c3) values(49, 49, 'Hello OceanBase & Happy New Year'); +insert into test_multi_minor_merge_t(c1,c2,c3) values(48, 48, 'Hello OceanBase & Happy New Year'); +insert into test_multi_minor_merge_t(c1,c2,c3) values(47, 47, 'Hello OceanBase & Happy New Year'); +insert into test_multi_minor_merge_t(c1,c2,c3) values(46, 46, 'Hello OceanBase & Happy New Year'); +insert into test_multi_minor_merge_t(c1,c2,c3) values(45, 45, 'Hello OceanBase & Happy New Year'); +insert into test_multi_minor_merge_t(c1,c2,c3) values(44, 44, 'Hello OceanBase & Happy New Year'); +insert into test_multi_minor_merge_t(c1,c2,c3) values(43, 43, 'Hello OceanBase & Happy New Year'); +insert into test_multi_minor_merge_t(c1,c2,c3) values(42, 42, 'Hello OceanBase & Happy New Year'); +insert into test_multi_minor_merge_t(c1,c2,c3) values(41, 41, 'Hello OceanBase & Happy New Year'); alter system set minor_compact_trigger = 1; select * from test_multi_minor_merge_t; -num str tag -select * from test_multi_minor_merge_t where num > 190; -num str tag -200 Hello OceanBase & Happy New Year 1 -199 Hello OceanBase & Happy New Year 1 -198 Hello OceanBase & Happy New Year 1 -197 Hello OceanBase & Happy New Year 1 -196 Hello OceanBase & Happy New Year 1 -195 Hello OceanBase & Happy New Year 1 -194 Hello OceanBase & Happy New Year 1 -193 Hello OceanBase & Happy New Year 1 -192 Hello OceanBase & Happy New Year 1 -191 Hello OceanBase & Happy New Year 1 -insert into test_multi_minor_merge_t values(40, 'Hello OceanBase & Happy New Year', 1); -insert into test_multi_minor_merge_t values(39, 'Hello OceanBase & Happy New Year', 1); -insert into test_multi_minor_merge_t values(38, 'Hello OceanBase & Happy New Year', 1); -insert into test_multi_minor_merge_t values(37, 'Hello OceanBase & Happy New Year', 1); -insert into test_multi_minor_merge_t values(36, 'Hello OceanBase & Happy New Year', 1); -insert into test_multi_minor_merge_t values(35, 'Hello OceanBase & Happy New Year', 1); -insert into test_multi_minor_merge_t values(34, 'Hello OceanBase & Happy New Year', 1); -insert into test_multi_minor_merge_t values(33, 'Hello OceanBase & Happy New Year', 1); -insert into test_multi_minor_merge_t values(32, 'Hello OceanBase & Happy New Year', 1); -insert into test_multi_minor_merge_t values(31, 'Hello OceanBase & Happy New Year', 1); -insert into test_multi_minor_merge_t values(30, 'Hello OceanBase & Happy New Year', 1); -insert into test_multi_minor_merge_t values(29, 'Hello OceanBase & Happy New Year', 1); -insert into test_multi_minor_merge_t values(28, 'Hello OceanBase & Happy New Year', 1); -insert into test_multi_minor_merge_t values(27, 'Hello OceanBase & Happy New Year', 1); -insert into test_multi_minor_merge_t values(26, 'Hello OceanBase & Happy New Year', 1); -insert into test_multi_minor_merge_t values(25, 'Hello OceanBase & Happy New Year', 1); -insert into test_multi_minor_merge_t values(24, 'Hello OceanBase & Happy New Year', 1); -insert into test_multi_minor_merge_t values(23, 'Hello OceanBase & Happy New Year', 1); -insert into test_multi_minor_merge_t values(22, 'Hello OceanBase & Happy New Year', 1); -insert into test_multi_minor_merge_t values(21, 'Hello OceanBase & Happy New Year', 1); -insert into test_multi_minor_merge_t values(20, 'Hello OceanBase & Happy New Year', 1); -insert into test_multi_minor_merge_t values(19, 'Hello OceanBase & Happy New Year', 1); -insert into test_multi_minor_merge_t values(18, 'Hello OceanBase & Happy New Year', 1); -insert into test_multi_minor_merge_t values(17, 'Hello OceanBase & Happy New Year', 1); -insert into test_multi_minor_merge_t values(16, 'Hello OceanBase & Happy New Year', 1); -insert into test_multi_minor_merge_t values(15, 'Hello OceanBase & Happy New Year', 1); -insert into test_multi_minor_merge_t values(14, 'Hello OceanBase & Happy New Year', 1); -insert into test_multi_minor_merge_t values(13, 'Hello OceanBase & Happy New Year', 1); -insert into test_multi_minor_merge_t values(12, 'Hello OceanBase & Happy New Year', 1); -insert into test_multi_minor_merge_t values(11, 'Hello OceanBase & Happy New Year', 1); -insert into test_multi_minor_merge_t values(10, 'Hello OceanBase & Happy New Year', 1); -insert into test_multi_minor_merge_t values(9, 'Hello OceanBase & Happy New Year', 1); -insert into test_multi_minor_merge_t values(8, 'Hello OceanBase & Happy New Year', 1); -insert into test_multi_minor_merge_t values(7, 'Hello OceanBase & Happy New Year', 1); -insert into test_multi_minor_merge_t values(6, 'Hello OceanBase & Happy New Year', 1); -insert into test_multi_minor_merge_t values(5, 'Hello OceanBase & Happy New Year', 1); -insert into test_multi_minor_merge_t values(4, 'Hello OceanBase & Happy New Year', 1); -insert into test_multi_minor_merge_t values(3, 'Hello OceanBase & Happy New Year', 1); -insert into test_multi_minor_merge_t values(2, 'Hello OceanBase & Happy New Year', 1); -insert into test_multi_minor_merge_t values(1, 'Hello OceanBase & Happy New Year', 1); +c1 c2 c3 c4 +select * from test_multi_minor_merge_t where c1 > 190; +c1 c2 c3 c4 +200 200 Hello OceanBase & Happy New Year ello Oce +199 199 Hello OceanBase & Happy New Year ello Oce +198 198 Hello OceanBase & Happy New Year ello Oce +197 197 Hello OceanBase & Happy New Year ello Oce +196 196 Hello OceanBase & Happy New Year ello Oce +195 195 Hello OceanBase & Happy New Year ello Oce +194 194 Hello OceanBase & Happy New Year ello Oce +193 193 Hello OceanBase & Happy New Year ello Oce +192 192 Hello OceanBase & Happy New Year ello Oce +191 191 Hello OceanBase & Happy New Year ello Oce +insert into test_multi_minor_merge_t(c1,c2,c3) values(40, 40, 'Hello OceanBase & Happy New Year'); +insert into test_multi_minor_merge_t(c1,c2,c3) values(39, 39, 'Hello OceanBase & Happy New Year'); +insert into test_multi_minor_merge_t(c1,c2,c3) values(38, 38, 'Hello OceanBase & Happy New Year'); +insert into test_multi_minor_merge_t(c1,c2,c3) values(37, 37, 'Hello OceanBase & Happy New Year'); +insert into test_multi_minor_merge_t(c1,c2,c3) values(36, 36, 'Hello OceanBase & Happy New Year'); +insert into test_multi_minor_merge_t(c1,c2,c3) values(35, 35, 'Hello OceanBase & Happy New Year'); +insert into test_multi_minor_merge_t(c1,c2,c3) values(34, 34, 'Hello OceanBase & Happy New Year'); +insert into test_multi_minor_merge_t(c1,c2,c3) values(33, 33, 'Hello OceanBase & Happy New Year'); +insert into test_multi_minor_merge_t(c1,c2,c3) values(32, 32, 'Hello OceanBase & Happy New Year'); +insert into test_multi_minor_merge_t(c1,c2,c3) values(31, 31, 'Hello OceanBase & Happy New Year'); +insert into test_multi_minor_merge_t(c1,c2,c3) values(30, 30, 'Hello OceanBase & Happy New Year'); +insert into test_multi_minor_merge_t(c1,c2,c3) values(29, 29, 'Hello OceanBase & Happy New Year'); +insert into test_multi_minor_merge_t(c1,c2,c3) values(28, 28, 'Hello OceanBase & Happy New Year'); +insert into test_multi_minor_merge_t(c1,c2,c3) values(27, 27, 'Hello OceanBase & Happy New Year'); +insert into test_multi_minor_merge_t(c1,c2,c3) values(26, 26, 'Hello OceanBase & Happy New Year'); +insert into test_multi_minor_merge_t(c1,c2,c3) values(25, 25, 'Hello OceanBase & Happy New Year'); +insert into test_multi_minor_merge_t(c1,c2,c3) values(24, 24, 'Hello OceanBase & Happy New Year'); +insert into test_multi_minor_merge_t(c1,c2,c3) values(23, 23, 'Hello OceanBase & Happy New Year'); +insert into test_multi_minor_merge_t(c1,c2,c3) values(22, 22, 'Hello OceanBase & Happy New Year'); +insert into test_multi_minor_merge_t(c1,c2,c3) values(21, 21, 'Hello OceanBase & Happy New Year'); +insert into test_multi_minor_merge_t(c1,c2,c3) values(20, 20, 'Hello OceanBase & Happy New Year'); +insert into test_multi_minor_merge_t(c1,c2,c3) values(19, 19, 'Hello OceanBase & Happy New Year'); +insert into test_multi_minor_merge_t(c1,c2,c3) values(18, 18, 'Hello OceanBase & Happy New Year'); +insert into test_multi_minor_merge_t(c1,c2,c3) values(17, 17, 'Hello OceanBase & Happy New Year'); +insert into test_multi_minor_merge_t(c1,c2,c3) values(16, 16, 'Hello OceanBase & Happy New Year'); +insert into test_multi_minor_merge_t(c1,c2,c3) values(15, 15, 'Hello OceanBase & Happy New Year'); +insert into test_multi_minor_merge_t(c1,c2,c3) values(14, 14, 'Hello OceanBase & Happy New Year'); +insert into test_multi_minor_merge_t(c1,c2,c3) values(13, 13, 'Hello OceanBase & Happy New Year'); +insert into test_multi_minor_merge_t(c1,c2,c3) values(12, 12, 'Hello OceanBase & Happy New Year'); +insert into test_multi_minor_merge_t(c1,c2,c3) values(11, 11, 'Hello OceanBase & Happy New Year'); +insert into test_multi_minor_merge_t(c1,c2,c3) values(10, 10, 'Hello OceanBase & Happy New Year'); +insert into test_multi_minor_merge_t(c1,c2,c3) values(9, 9, 'Hello OceanBase & Happy New Year'); +insert into test_multi_minor_merge_t(c1,c2,c3) values(8, 8, 'Hello OceanBase & Happy New Year'); +insert into test_multi_minor_merge_t(c1,c2,c3) values(7, 7, 'Hello OceanBase & Happy New Year'); +insert into test_multi_minor_merge_t(c1,c2,c3) values(6, 6, 'Hello OceanBase & Happy New Year'); +insert into test_multi_minor_merge_t(c1,c2,c3) values(5, 5, 'Hello OceanBase & Happy New Year'); +insert into test_multi_minor_merge_t(c1,c2,c3) values(4, 4, 'Hello OceanBase & Happy New Year'); +insert into test_multi_minor_merge_t(c1,c2,c3) values(3, 3, 'Hello OceanBase & Happy New Year'); +insert into test_multi_minor_merge_t(c1,c2,c3) values(2, 2, 'Hello OceanBase & Happy New Year'); +insert into test_multi_minor_merge_t(c1,c2,c3) values(1, 1, 'Hello OceanBase & Happy New Year'); alter system minor freeze; commit; -select * from test_multi_minor_merge_t where num > 190; -num str tag -200 Hello OceanBase & Happy New Year 1 -199 Hello OceanBase & Happy New Year 1 -198 Hello OceanBase & Happy New Year 1 -197 Hello OceanBase & Happy New Year 1 -196 Hello OceanBase & Happy New Year 1 -195 Hello OceanBase & Happy New Year 1 -194 Hello OceanBase & Happy New Year 1 -193 Hello OceanBase & Happy New Year 1 -192 Hello OceanBase & Happy New Year 1 -191 Hello OceanBase & Happy New Year 1 +select * from test_multi_minor_merge_t where c1 > 190; +c1 c2 c3 c4 +200 200 Hello OceanBase & Happy New Year ello Oce +199 199 Hello OceanBase & Happy New Year ello Oce +198 198 Hello OceanBase & Happy New Year ello Oce +197 197 Hello OceanBase & Happy New Year ello Oce +196 196 Hello OceanBase & Happy New Year ello Oce +195 195 Hello OceanBase & Happy New Year ello Oce +194 194 Hello OceanBase & Happy New Year ello Oce +193 193 Hello OceanBase & Happy New Year ello Oce +192 192 Hello OceanBase & Happy New Year ello Oce +191 191 Hello OceanBase & Happy New Year ello Oce select count(*) from test_multi_minor_merge_t; count(*) 200 diff --git a/tools/deploy/mysql_test/test_suite/merge_uncommitted/t/multi_minor_merge.test b/tools/deploy/mysql_test/test_suite/merge_uncommitted/t/multi_minor_merge.test index 26be9de17..8686e97ca 100644 --- a/tools/deploy/mysql_test/test_suite/merge_uncommitted/t/multi_minor_merge.test +++ b/tools/deploy/mysql_test/test_suite/merge_uncommitted/t/multi_minor_merge.test @@ -31,7 +31,7 @@ connection conn1; drop table if exists test_multi_minor_merge_t; --enable_warnings -create table test_multi_minor_merge_t(num int, str varchar(50), tag int); +create table test_multi_minor_merge_t(c1 int, c2 int, c3 varchar(40960), c4 varchar(10) generated always as (substring(c3, 2, 8)) virtual); let $__freeze_table_name__ = 'test_multi_minor_merge_t'; connection conn0; @@ -44,7 +44,7 @@ begin; let $_i_ = 200; while ($_i_ > 120) { - eval insert into test_multi_minor_merge_t values($_i_, 'Hello OceanBase & Happy New Year', 1); + eval insert into test_multi_minor_merge_t(c1,c2,c3) values($_i_, $_i_, 'Hello OceanBase & Happy New Year'); dec $_i_; } @@ -54,7 +54,7 @@ connection conn1; connection conn1; while ($_i_ > 80) { - eval insert into test_multi_minor_merge_t values($_i_, 'Hello OceanBase & Happy New Year', 1); + eval insert into test_multi_minor_merge_t(c1,c2,c3) values($_i_, $_i_, 'Hello OceanBase & Happy New Year'); dec $_i_; } @@ -64,7 +64,7 @@ connection conn1; connection conn1; while ($_i_ > 40) { - eval insert into test_multi_minor_merge_t values($_i_, 'Hello OceanBase & Happy New Year', 1); + eval insert into test_multi_minor_merge_t(c1,c2,c3) values($_i_, $_i_, 'Hello OceanBase & Happy New Year'); dec $_i_; } @@ -81,12 +81,12 @@ select * from test_multi_minor_merge_t; connection conn1; #同一事务查询sstable未提交数据 -select * from test_multi_minor_merge_t where num > 190; +select * from test_multi_minor_merge_t where c1 > 190; connection conn1; while ($_i_ > 0) { - eval insert into test_multi_minor_merge_t values($_i_, 'Hello OceanBase & Happy New Year', 1); + eval insert into test_multi_minor_merge_t(c1,c2,c3) values($_i_, $_i_, 'Hello OceanBase & Happy New Year'); dec $_i_; } @@ -98,7 +98,7 @@ connection conn1; commit; #查sstable未提交数据,但事务已提交 -select * from test_multi_minor_merge_t where num > 190; +select * from test_multi_minor_merge_t where c1 > 190; connection conn2; select count(*) from test_multi_minor_merge_t; diff --git a/unittest/storage/test_storage_schema.cpp b/unittest/storage/test_storage_schema.cpp index 1fbe19471..38f0733e0 100644 --- a/unittest/storage/test_storage_schema.cpp +++ b/unittest/storage/test_storage_schema.cpp @@ -290,7 +290,8 @@ TEST_F(TestStorageSchema, test_update_tablet_store_schema) TestSchemaPrepare::prepare_schema(table_schema); ASSERT_EQ(OB_SUCCESS, storage_schema1.init(allocator_, table_schema, lib::Worker::CompatMode::MYSQL)); ASSERT_EQ(OB_SUCCESS, storage_schema2.init(allocator_, table_schema, lib::Worker::CompatMode::MYSQL)); - storage_schema2.store_column_cnt_ += 1; + storage_schema2.column_cnt_ += 1; + storage_schema2.column_info_simplified_ = true; storage_schema2.schema_version_ += 100; // schema 2 have large store column cnt