This is an automated email from the ASF dual-hosted git repository.
hello-stephen pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/doris.git
The following commit(s) were added to refs/heads/master by this push:
new 5abd40cc536 [fix](regression) Disable auto compaction for physical row
inspections (#65536)
5abd40cc536 is described below
commit 5abd40cc536f97030ddc0334f3e2220420090abf
Author: shuke <[email protected]>
AuthorDate: Thu Jul 16 21:03:40 2026 +0800
[fix](regression) Disable auto compaction for physical row inspections
(#65536)
Related PR: #65211, #64508
Problem Summary:
Some unique-key MOW regression cases deliberately bypass the delete
bitmap and assert historical physical rows, sequence values, skip
bitmaps, and rowset versions. These assertions require the
pre-compaction rowsets to remain available, but the affected tables
leave automatic compaction enabled. Background compaction can therefore
merge the expected old rowsets before `qt_inspect` or an equivalent
raw-row query runs, while all user-visible SQL results remain correct.
This PR disables table-level automatic compaction only for the tables
whose assertions intentionally depend on historical physical layout. It
covers nine case files, including publish-conflict, read-from-old,
delete-sign, sequence-column, and auto-increment physical-row checks.
Golden results and user-visible correctness assertions are unchanged.
The source scan reviewed all master cases that set
`skip_delete_bitmap=true` without already disabling automatic
compaction. Four remaining files were intentionally excluded because the
variable is used only for debug-mode validation, routine-load waiting,
insert execution setup, or binlog TVF behavior; they do not assert
historical table rowsets.
---
.../test_partial_update_publish_conflict_seq.groovy | 1 +
.../flexible/publish/test_auto_inc_replica_consistency.groovy | 1 +
.../flexible/publish/test_f_seq_publish_read_from_old.groovy | 1 +
.../test_fleixble_partial_update_publish_conflict_seq.groovy | 1 +
.../unique_with_mow_p0/flexible/test_f_seq_read_from_old.groovy | 3 ++-
.../flexible/test_flexible_partial_update_delete_sign.groovy | 9 ++++++++-
.../flexible/test_flexible_partial_update_seq_col.groovy | 4 +++-
.../partial_update/test_p_seq_publish_read_from_old.groovy | 1 +
.../partial_update/test_partial_update_seq_read_from_old.groovy | 3 ++-
9 files changed, 20 insertions(+), 4 deletions(-)
diff --git
a/regression-test/suites/fault_injection_p0/partial_update/test_partial_update_publish_conflict_seq.groovy
b/regression-test/suites/fault_injection_p0/partial_update/test_partial_update_publish_conflict_seq.groovy
index 8e9d692b35d..4aa2d660be7 100644
---
a/regression-test/suites/fault_injection_p0/partial_update/test_partial_update_publish_conflict_seq.groovy
+++
b/regression-test/suites/fault_injection_p0/partial_update/test_partial_update_publish_conflict_seq.groovy
@@ -32,6 +32,7 @@ suite("test_partial_update_publish_conflict_seq",
"nonConcurrent") {
) UNIQUE KEY(`k`) DISTRIBUTED BY HASH(`k`) BUCKETS 1
PROPERTIES(
"replication_num" = "1",
+ "disable_auto_compaction" = "true",
"enable_unique_key_merge_on_write" = "true",
"light_schema_change" = "true",
"enable_unique_key_skip_bitmap_column" = "true",
diff --git
a/regression-test/suites/unique_with_mow_p0/flexible/publish/test_auto_inc_replica_consistency.groovy
b/regression-test/suites/unique_with_mow_p0/flexible/publish/test_auto_inc_replica_consistency.groovy
index fb4f1b10a17..5054c45b992 100644
---
a/regression-test/suites/unique_with_mow_p0/flexible/publish/test_auto_inc_replica_consistency.groovy
+++
b/regression-test/suites/unique_with_mow_p0/flexible/publish/test_auto_inc_replica_consistency.groovy
@@ -36,6 +36,7 @@ suite("test_auto_inc_replica_consistency") {
) UNIQUE KEY(`k`) DISTRIBUTED BY HASH(`k`) BUCKETS 1
PROPERTIES(
"replication_num" = "1",
+ "disable_auto_compaction" = "true",
"enable_unique_key_merge_on_write" = "true",
"light_schema_change" = "true",
"enable_unique_key_skip_bitmap_column" = "true",
diff --git
a/regression-test/suites/unique_with_mow_p0/flexible/publish/test_f_seq_publish_read_from_old.groovy
b/regression-test/suites/unique_with_mow_p0/flexible/publish/test_f_seq_publish_read_from_old.groovy
index 0c62427f94b..d83bbd42ca0 100644
---
a/regression-test/suites/unique_with_mow_p0/flexible/publish/test_f_seq_publish_read_from_old.groovy
+++
b/regression-test/suites/unique_with_mow_p0/flexible/publish/test_f_seq_publish_read_from_old.groovy
@@ -36,6 +36,7 @@ suite("test_f_seq_publish_read_from_old") {
) UNIQUE KEY(`k`) DISTRIBUTED BY HASH(`k`) BUCKETS 1
PROPERTIES(
"replication_num" = "1",
+ "disable_auto_compaction" = "true",
"enable_unique_key_merge_on_write" = "true",
"light_schema_change" = "true",
"enable_unique_key_skip_bitmap_column" = "true",
diff --git
a/regression-test/suites/unique_with_mow_p0/flexible/publish/test_fleixble_partial_update_publish_conflict_seq.groovy
b/regression-test/suites/unique_with_mow_p0/flexible/publish/test_fleixble_partial_update_publish_conflict_seq.groovy
index 7f257a2c336..0f29ad90654 100644
---
a/regression-test/suites/unique_with_mow_p0/flexible/publish/test_fleixble_partial_update_publish_conflict_seq.groovy
+++
b/regression-test/suites/unique_with_mow_p0/flexible/publish/test_fleixble_partial_update_publish_conflict_seq.groovy
@@ -36,6 +36,7 @@ suite("test_flexible_partial_update_publish_conflict_seq") {
) UNIQUE KEY(`k`) DISTRIBUTED BY HASH(`k`) BUCKETS 1
PROPERTIES(
"replication_num" = "1",
+ "disable_auto_compaction" = "true",
"enable_unique_key_merge_on_write" = "true",
"light_schema_change" = "true",
"enable_unique_key_skip_bitmap_column" = "true",
diff --git
a/regression-test/suites/unique_with_mow_p0/flexible/test_f_seq_read_from_old.groovy
b/regression-test/suites/unique_with_mow_p0/flexible/test_f_seq_read_from_old.groovy
index 4eed4ada2bd..d1cafa5f493 100644
---
a/regression-test/suites/unique_with_mow_p0/flexible/test_f_seq_read_from_old.groovy
+++
b/regression-test/suites/unique_with_mow_p0/flexible/test_f_seq_read_from_old.groovy
@@ -39,6 +39,7 @@ suite('test_f_seq_read_from_old') {
) UNIQUE KEY(`k`) DISTRIBUTED BY HASH(`k`) BUCKETS 1
PROPERTIES(
"replication_num" = "1",
+ "disable_auto_compaction" = "true",
"enable_unique_key_merge_on_write" = "true",
"light_schema_change" = "true",
"enable_unique_key_skip_bitmap_column" = "true",
@@ -85,4 +86,4 @@ suite('test_f_seq_read_from_old') {
qt_sql3 "select
k,v1,v2,v3,v4,v5,__DORIS_SEQUENCE_COL__,__DORIS_DELETE_SIGN__ from ${tableName}
order by k;"
inspect_rows "select
k,v1,v2,v3,v4,v5,__DORIS_SEQUENCE_COL__,__DORIS_DELETE_SIGN__,__DORIS_VERSION_COL__,BITMAP_TO_STRING(__DORIS_SKIP_BITMAP_COL__)
from ${tableName} order by k,__DORIS_VERSION_COL__;"
}
-}
\ No newline at end of file
+}
diff --git
a/regression-test/suites/unique_with_mow_p0/flexible/test_flexible_partial_update_delete_sign.groovy
b/regression-test/suites/unique_with_mow_p0/flexible/test_flexible_partial_update_delete_sign.groovy
index 3fad13d5304..b4c26493b2c 100644
---
a/regression-test/suites/unique_with_mow_p0/flexible/test_flexible_partial_update_delete_sign.groovy
+++
b/regression-test/suites/unique_with_mow_p0/flexible/test_flexible_partial_update_delete_sign.groovy
@@ -43,6 +43,7 @@ suite('test_flexible_partial_update_delete_sign') {
) UNIQUE KEY(`k`) DISTRIBUTED BY HASH(`k`) BUCKETS 1
PROPERTIES(
"replication_num" = "1",
+ "disable_auto_compaction" = "true",
"enable_unique_key_merge_on_write" = "true",
"light_schema_change" = "true",
"enable_unique_key_skip_bitmap_column" = "true",
@@ -93,6 +94,7 @@ suite('test_flexible_partial_update_delete_sign') {
) UNIQUE KEY(`k`) DISTRIBUTED BY HASH(`k`) BUCKETS 1
PROPERTIES(
"replication_num" = "1",
+ "disable_auto_compaction" = "true",
"enable_unique_key_merge_on_write" = "true",
"light_schema_change" = "true",
"enable_unique_key_skip_bitmap_column" = "true",
@@ -130,6 +132,7 @@ suite('test_flexible_partial_update_delete_sign') {
) UNIQUE KEY(`k`) DISTRIBUTED BY HASH(`k`) BUCKETS 1
PROPERTIES(
"replication_num" = "1",
+ "disable_auto_compaction" = "true",
"enable_unique_key_merge_on_write" = "true",
"light_schema_change" = "true",
"enable_unique_key_skip_bitmap_column" = "true",
@@ -161,6 +164,7 @@ suite('test_flexible_partial_update_delete_sign') {
) UNIQUE KEY(`k`) DISTRIBUTED BY HASH(`k`) BUCKETS 1
PROPERTIES(
"replication_num" = "1",
+ "disable_auto_compaction" = "true",
"enable_unique_key_merge_on_write" = "true",
"light_schema_change" = "true",
"enable_unique_key_skip_bitmap_column" = "true",
@@ -193,6 +197,7 @@ suite('test_flexible_partial_update_delete_sign') {
) UNIQUE KEY(`k`) DISTRIBUTED BY HASH(`k`) BUCKETS 1
PROPERTIES(
"replication_num" = "1",
+ "disable_auto_compaction" = "true",
"enable_unique_key_merge_on_write" = "true",
"light_schema_change" = "true",
"enable_unique_key_skip_bitmap_column" = "true",
@@ -264,6 +269,7 @@ suite('test_flexible_partial_update_delete_sign') {
) UNIQUE KEY(`k`) DISTRIBUTED BY HASH(`k`) BUCKETS 1
PROPERTIES(
"replication_num" = "1",
+ "disable_auto_compaction" = "true",
"enable_unique_key_merge_on_write" = "true",
"light_schema_change" = "true",
"enable_unique_key_skip_bitmap_column" = "true",
@@ -336,6 +342,7 @@ suite('test_flexible_partial_update_delete_sign') {
) UNIQUE KEY(`k`) DISTRIBUTED BY HASH(`k`) BUCKETS 1
PROPERTIES(
"replication_num" = "1",
+ "disable_auto_compaction" = "true",
"enable_unique_key_merge_on_write" = "true",
"light_schema_change" = "true",
"enable_unique_key_skip_bitmap_column" = "true",
@@ -353,4 +360,4 @@ suite('test_flexible_partial_update_delete_sign') {
qt_insert_after_delete_3_4 "select
k,v1,v2,v3,v4,v5,__DORIS_SEQUENCE_COL__,__DORIS_DELETE_SIGN__ from ${tableName}
order by k;"
inspect_rows "select
k,v1,v2,v3,v4,v5,__DORIS_SEQUENCE_COL__,__DORIS_DELETE_SIGN__,BITMAP_TO_STRING(__DORIS_SKIP_BITMAP_COL__),__DORIS_VERSION_COL__
from ${tableName} order by k,__DORIS_VERSION_COL__,v1,v2,v3,v4,v5;"
}
-}
\ No newline at end of file
+}
diff --git
a/regression-test/suites/unique_with_mow_p0/flexible/test_flexible_partial_update_seq_col.groovy
b/regression-test/suites/unique_with_mow_p0/flexible/test_flexible_partial_update_seq_col.groovy
index 8296531ea9f..6b865b01f1f 100644
---
a/regression-test/suites/unique_with_mow_p0/flexible/test_flexible_partial_update_seq_col.groovy
+++
b/regression-test/suites/unique_with_mow_p0/flexible/test_flexible_partial_update_seq_col.groovy
@@ -287,6 +287,7 @@ suite('test_flexible_partial_update_seq_col') {
DISTRIBUTED BY HASH(`k`) BUCKETS 1
PROPERTIES (
"replication_num" = "1",
+ "disable_auto_compaction" = "true",
"enable_unique_key_merge_on_write" = "true",
"enable_unique_key_skip_bitmap_column" = "true",
"function_column.sequence_col" = "c1");
@@ -321,6 +322,7 @@ suite('test_flexible_partial_update_seq_col') {
DISTRIBUTED BY HASH(`k`) BUCKETS 1
PROPERTIES (
"replication_num" = "1",
+ "disable_auto_compaction" = "true",
"enable_unique_key_merge_on_write" = "true",
"enable_unique_key_skip_bitmap_column" = "true",
"function_column.sequence_col" = "c1");
@@ -343,4 +345,4 @@ suite('test_flexible_partial_update_seq_col') {
sql "set skip_delete_bitmap=false;"
sql "sync;"
}
-}
\ No newline at end of file
+}
diff --git
a/regression-test/suites/unique_with_mow_p0/partial_update/test_p_seq_publish_read_from_old.groovy
b/regression-test/suites/unique_with_mow_p0/partial_update/test_p_seq_publish_read_from_old.groovy
index f1a6ea813e8..bd07a6cf5f4 100644
---
a/regression-test/suites/unique_with_mow_p0/partial_update/test_p_seq_publish_read_from_old.groovy
+++
b/regression-test/suites/unique_with_mow_p0/partial_update/test_p_seq_publish_read_from_old.groovy
@@ -35,6 +35,7 @@ suite("test_p_seq_publish_read_from_old") {
) UNIQUE KEY(`k`) DISTRIBUTED BY HASH(`k`) BUCKETS 1
PROPERTIES(
"replication_num" = "1",
+ "disable_auto_compaction" = "true",
"enable_unique_key_merge_on_write" = "true",
"light_schema_change" = "true",
"function_column.sequence_col" = "v1",
diff --git
a/regression-test/suites/unique_with_mow_p0/partial_update/test_partial_update_seq_read_from_old.groovy
b/regression-test/suites/unique_with_mow_p0/partial_update/test_partial_update_seq_read_from_old.groovy
index 643ded4ef09..73abf34c1e2 100644
---
a/regression-test/suites/unique_with_mow_p0/partial_update/test_partial_update_seq_read_from_old.groovy
+++
b/regression-test/suites/unique_with_mow_p0/partial_update/test_partial_update_seq_read_from_old.groovy
@@ -40,6 +40,7 @@ suite('test_partial_update_seq_read_from_old') {
) UNIQUE KEY(`k`) DISTRIBUTED BY HASH(`k`) BUCKETS 1
PROPERTIES(
"replication_num" = "1",
+ "disable_auto_compaction" = "true",
"enable_unique_key_merge_on_write" = "true",
"light_schema_change" = "true",
"enable_unique_key_skip_bitmap_column" = "true",
@@ -65,4 +66,4 @@ suite('test_partial_update_seq_read_from_old') {
qt_sql3 "select
k,v1,v2,v3,v4,v5,__DORIS_SEQUENCE_COL__,__DORIS_DELETE_SIGN__ from ${tableName}
order by k;"
inspect_rows "select
k,v1,v2,v3,v4,v5,__DORIS_SEQUENCE_COL__,__DORIS_DELETE_SIGN__,__DORIS_VERSION_COL__
from ${tableName} order by k,__DORIS_VERSION_COL__;"
}
-}
\ No newline at end of file
+}
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]