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


##########
be/src/storage/rowset/beta_rowset_writer.cpp:
##########
@@ -541,6 +568,12 @@ Status 
BetaRowsetWriter::_find_longest_consecutive_small_segment(

Review Comment:
   The gate prevents the immediate race, but it also drops the compaction 
attempt permanently when all triggers happen while delete bitmap work is still 
pending. `_segcompaction_if_necessary()` is only called from `add_segment()`: 
if this check breaks for segment 0 on each trigger, `build()` later waits for 
`_calc_delete_bitmap_token`, then `_close_file_writers()` only calls 
`_segcompaction_rename_last_segments()` when `is_segcompacted()` is already 
true. There is no retry after the bitmaps become ready, so a fast MoW load can 
keep every small segment un-compacted and then fail the final segment-count 
check once it exceeds `max_segment_num_per_rowset`, even though segment 
compaction is enabled. Please re-run the selection after the token wait, or 
make the pending-bitmap case wait/reschedule instead of just returning with no 
future trigger.
   



-- 
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