QuakeWang opened a new pull request, #8385:
URL: https://github.com/apache/paimon/pull/8385
### Purpose
PyPaimon `GlobalIndexScanner` flattened multi-column global index metadata
by field id. Extra-field scans therefore lost the primary-index group boundary
used by Java, and padding was applied as an independent reader.
That caused two correctness issues:
- Groups with different or non-contiguous coverage could drop valid hits
from ranges not indexed by a shorter group.
- Padding could convert a real reader's `None` result, meaning the
predicate cannot be evaluated by the index, into concrete row-id hits.
This PR groups index files by primary field, computes extra-field padding
from union coverage minus each group's indexed coverage, and applies padding
only after the real group reader returns a non-`None` result.
### Tests
- Added regression coverage for extra-field padding with tail gaps,
non-contiguous coverage, and `None` propagation.
- `python3 -m py_compile
paimon-python/pypaimon/globalindex/global_index_scanner.py
paimon-python/pypaimon/tests/vector_search_filter_test.py`
--
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]