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]
