eldenmoon commented on PR #69761:
URL: https://github.com/apache/doris/pull/69761#issuecomment-6601116305

   Re: review of c7fec9b1ff7 
(https://github.com/apache/doris/pull/69761#issuecomment-6598520201)
   
   Both findings reproduced on an ASAN cluster and are fixed in 3a63ad32a85.
   
   **F-01.** Confirmed: with your sequence, `BUILD INDEX s_idx` killed the BE 
at the `DORIS_CHECK` in `_build_snii_indexes_for_segment`, and again when FE 
retried the task after the restart. BUILD INDEX of any index is now rejected on 
a table with a VARIANT values index, in the handler shared by local and cloud 
mode (`SchemaChangeHandler.java:2593`). The generic builder returns 
`INVERTED_INDEX_NOT_SUPPORTED` instead of the fatal check, so a task that slips 
through fails without stopping the BE. The other index changes do not rebuild 
the values index with the generic builder: light ADD INDEX only publishes the 
schema, local SNII DROP keeps the container, and cloud and heavy index changes 
go through the regular rowset writer. `test_variant_values_index_ddl` runs your 
sequence and checks the rejection, values-index MATCH and BE health.
   
   **F-02.** Confirmed with your two rowsets: after a native merge, `MATCH_ANY 
'true'` returned id 1 with the index and no rows without it. A values index now 
merges natively only when every input leaf type under the root equals its 
output type, compared after removing nullability and normalizing integer 
widths. Type promotion, sparse or DOC input, and vertical VARIANT compaction 
turned off use the whole-root rebuild path. The planner removes the native pair 
together with the root's extracted columns and read plan, so the writer and the 
postings merge follow the same decision. `test_variant_values_index_compaction` 
checks index-on/index-off parity for BOOL/BIGINT and for BIGINT beyond 2^53 
mixed with DOUBLE, before and after full compaction, in all four 
native/vertical combinations. The mixed native/rebuild BE test no longer forces 
its root to rebuild with a skip flag.
   
   **Other notes.** The scalar MATCH token sort and byte-bounded writer batches 
are left as follow-up optimizations. Mixed-version operation is not claimed, so 
the values index should be used once all FE and BE nodes are upgraded.
   


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