github-actions[bot] commented on code in PR #65672:
URL: https://github.com/apache/doris/pull/65672#discussion_r3592694369


##########
regression-test/suites/compaction/test_compaction_uniq_keys_with_delete.groovy:
##########
@@ -120,29 +121,35 @@ suite("test_compaction_uniq_keys_with_delete") {
         
//TabletId,ReplicaId,BackendId,SchemaHash,Version,LstSuccessVersion,LstFailedVersion,LstFailedTime,LocalDataSize,RemoteDataSize,RowCount,State,LstConsistencyCheckTime,CheckVersion,VersionCount,PathHash,MetaUrl,CompactionStatus
         def tablets = sql_return_maparray """ show tablets from ${tableName}; 
"""
 
-        def replicaNum = get_table_replica_num(tableName)
-        logger.info("get table replica num: " + replicaNum)
+        def isFullyCompacted = { tabletJson ->
+            def versionRanges = ((List<String>) tabletJson.rowsets).collect { 
rowset ->
+                rowset.split(" ")[0]
+            }
+            logger.info("rowset version ranges after cumulative compaction: " 
+ versionRanges)
+            return versionRanges.size() == 2 &&
+                    versionRanges.contains("[0-1]") &&
+                    versionRanges.contains("[2-12]")

Review Comment:
   Retrying the same cumulative request is not always a progress guarantee. If 
the first trigger sees the valid visible prefix through version 9, it creates 
one nonoverlapping `[2-9]` rowset; after versions 10-12 become eligible, that 
output plus three singleton tails has compaction score 4. The branch defaults 
require score 5 (or 64 MiB), so the policy clears these tiny inputs and every 
later trigger is a no-op; the 86400-second idle escape also cannot fit this 
300-second wait. Prefixes ending at 10 or 11 are even smaller. Please either 
temporarily lower and restore the cumulative minimum so short tails remain 
eligible, or disable and restore automatic compaction while loading and 
establish BE visibility through version 12 before the first trigger, instead of 
relying on retries to force `[2-12]`.



##########
regression-test/suites/compaction/test_compaction_uniq_keys_with_delete_ck.groovy:
##########
@@ -137,29 +138,35 @@ suite("test_compaction_uniq_keys_with_delete_ck") {
         
//TabletId,ReplicaId,BackendId,SchemaHash,Version,LstSuccessVersion,LstFailedVersion,LstFailedTime,LocalDataSize,RemoteDataSize,RowCount,State,LstConsistencyCheckTime,CheckVersion,VersionCount,PathHash,MetaUrl,CompactionStatus
         def tablets = sql_return_maparray """ show tablets from ${tableName}; 
"""
 
-        def replicaNum = get_table_replica_num(tableName)
-        logger.info("get table replica num: " + replicaNum)
+        def isFullyCompacted = { tabletJson ->
+            def versionRanges = ((List<String>) tabletJson.rowsets).collect { 
rowset ->
+                rowset.split(" ")[0]
+            }
+            logger.info("rowset version ranges after cumulative compaction: " 
+ versionRanges)
+            return versionRanges.size() == 2 &&
+                    versionRanges.contains("[0-1]") &&
+                    versionRanges.contains("[2-12]")

Review Comment:
   On the local/default path, the CK table's `enable_mow_light_delete` makes 
these DELETEs `TPushType.DELETE` rowsets with delete predicates (versions 4, 7, 
and 10). Since local `enable_delete_when_cumu_compaction` defaults false, 
cumulative selection stops/skips at those predicates and advances its point; 
cumulative-only retries cannot produce one `[2-12]` rowset, so this exact wait 
can time out. Please drive a cumulative/base sequence and assert the 
mode-correct terminal shape, or explicitly enable and restore cumulative delete 
handling only where that setting is supported, instead of requiring `[2-12]` 
unconditionally.



-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: [email protected]

For queries about this service, please contact Infrastructure at:
[email protected]


---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to