github-actions[bot] commented on code in PR #66048:
URL: https://github.com/apache/doris/pull/66048#discussion_r3652031746
##########
be/src/storage/rowset/beta_rowset_writer.cpp:
##########
@@ -984,12 +1047,19 @@ Status BetaRowsetWriter::_close_file_writers() {
}
}
}
- return Status::OK();
+ return first_error;
}
Status BetaRowsetWriter::build(RowsetSharedPtr& rowset) {
if (_calc_delete_bitmap_token != nullptr) {
- RETURN_IF_ERROR(_calc_delete_bitmap_token->wait());
+ auto delete_bitmap_status = _calc_delete_bitmap_token->wait();
+ if (!delete_bitmap_status.ok()) {
+ WARN_IF_ERROR(_synchronize_segcompaction(),
Review Comment:
**[P1] Finish normal rowset writers on bitmap failure**
This branch returns after cleaning only `SegcompactionWorker`, so the normal
`SegmentCreator` ownership tree is skipped. A prior segment's delete-bitmap
task can fail after a later segment is buffered; moreover, flushed
inverted-index writers have only run `begin_close()` and still need
`InvertedIndexFileCollection::finish_close()`. The same early return remains in
`CloudRowsetWriter::build()`, where S3/packed-writer destruction is not
equivalent to a successful explicit close and can leave multipart/buffered
output abandoned. Please preserve `delete_bitmap_status`, mark/discard any
buffered creator writer, and run a cleanup-only close for all normal data/index
writers in both local and cloud build paths before returning. This should not
reuse the success path unchanged because that may flush/preload or apply
segcompaction/delete-bitmap conversion after the owner failure.
--
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]