LuciferYang commented on code in PR #68521:
URL: https://github.com/apache/doris/pull/68521#discussion_r4111862541


##########
be/src/storage/segment/segment_iterator.cpp:
##########
@@ -1560,6 +1567,13 @@ inline bool 
SegmentIterator::_inverted_index_not_support_pred_type(const Predica
 Status SegmentIterator::_apply_inverted_index_on_column_predicate(
         std::shared_ptr<ColumnPredicate> pred,
         std::vector<std::shared_ptr<ColumnPredicate>>& remaining_predicates, 
bool* continue_apply) {
+    if (_segment->placeholder_effective_value(pred->column_id(), *_schema, 
_opts).has_value()) {

Review Comment:
   Fixed in 31b79e8ea30. `_apply_index_expr` now skips any pushed-down conjunct 
that references a placeholder column (collected via `collect_slot_column_ids` 
over the conjunct's root), leaving it to the row-level path that evaluates 
against the substituted value. So a compound such as `(__DORIS_VERSION_COL__ = 
<real version> AND/OR indexed_col = ...)` is no longer matched against the 
physical-`0` index. New regression `version_col_indexed_compound` covers an 
inverted-indexed compound predicate: it returns all rows.



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