This is an automated email from the ASF dual-hosted git repository.
dataroaring 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 dfdec4d161b [fix](compaction) disable cumu delete rowset from
performing ordered data compaction (#38742)
dfdec4d161b is described below
commit dfdec4d161b20f21e6beb4239a23816d387b382c
Author: Luwei <[email protected]>
AuthorDate: Sun Aug 4 10:40:32 2024 +0800
[fix](compaction) disable cumu delete rowset from performing ordered data
compaction (#38742)
## problem
When enable_delete_when_cumu_compaction = true, multiple delete rowsets
may be merged into an empty data rowset through ordered data compaction,
causing the delete predicate to be lost.
---
be/src/olap/compaction.cpp | 4 +++-
1 file changed, 3 insertions(+), 1 deletion(-)
diff --git a/be/src/olap/compaction.cpp b/be/src/olap/compaction.cpp
index 2190521589c..935c9991e97 100644
--- a/be/src/olap/compaction.cpp
+++ b/be/src/olap/compaction.cpp
@@ -352,7 +352,9 @@ bool CompactionMixin::handle_ordered_data_compaction() {
// check delete version: if compaction type is base compaction and
// has a delete version, use original compaction
- if (compaction_type() == ReaderType::READER_BASE_COMPACTION) {
+ if (compaction_type() == ReaderType::READER_BASE_COMPACTION ||
+ (_allow_delete_in_cumu_compaction &&
+ compaction_type() == ReaderType::READER_CUMULATIVE_COMPACTION)) {
for (auto& rowset : _input_rowsets) {
if (rowset->rowset_meta()->has_delete_predicate()) {
return false;
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]