Skip to content

fix(index): skip unrecognized index types - #8529

Open
lance-gatefixer[bot] wants to merge 5 commits into
mainfrom
gatekeeper/fix-8528-1
Open

fix(index): skip unrecognized index types#8529
lance-gatefixer[bot] wants to merge 5 commits into
mainfrom
gatekeeper/fix-8528-1

Conversation

@lance-gatefixer

Copy link
Copy Markdown
Contributor

Summary

  • exclude index detail types this build cannot resolve from automatic vector index selection
  • skip unrecognized logical indices during optimize_indices with a warning so supported indices can still be maintained
  • preserve the foreign segment and cover vector fallback plus unrelated BTree maintenance in a regression test

Root cause

load_indices intentionally retains metadata for unknown index types, but vector planning selected any index on the queried field and index optimization attempted every non-system logical index without checking whether IndexDetails::index_version() could resolve its reader. Both paths therefore tried to open a type this build could not read.

Validation

  • cargo test -p lance test_unknown_index_type_does_not_block_queries_or_optimization
  • cargo fmt --all -- --check
  • cargo clippy --all --tests --benches -- -D warnings

Fixes #8528

@github-actions github-actions Bot added the bug Something isn't working label Aug 13, 2026
lance-gatekeeper[bot]

This comment was marked as outdated.

@lance-gatekeeper lance-gatekeeper Bot added the K-approved Latest Gatekeeper recommendation permits acceptance. label Aug 13, 2026
@lance-gatekeeper lance-gatekeeper Bot removed the K-approved Latest Gatekeeper recommendation permits acceptance. label Aug 21, 2026
lance-gatekeeper[bot]

This comment was marked as outdated.

@lance-gatekeeper lance-gatekeeper Bot added the K-changes Latest Gatekeeper recommendation requests changes. label Aug 21, 2026
@github-actions github-actions Bot added the A-index Vector index, linalg, tokenizer label Aug 22, 2026
@lance-gatekeeper lance-gatekeeper Bot removed the K-changes Latest Gatekeeper recommendation requests changes. label Aug 22, 2026
lance-gatekeeper[bot]

This comment was marked as outdated.

@lance-gatekeeper lance-gatekeeper Bot added the K-changes Latest Gatekeeper recommendation requests changes. label Aug 22, 2026
@lance-gatekeeper lance-gatekeeper Bot removed the K-changes Latest Gatekeeper recommendation requests changes. label Aug 22, 2026
lance-gatekeeper[bot]

This comment was marked as outdated.

@lance-gatekeeper lance-gatekeeper Bot added the K-approved Latest Gatekeeper recommendation permits acceptance. label Aug 22, 2026
@lance-gatekeeper lance-gatekeeper Bot removed the K-approved Latest Gatekeeper recommendation permits acceptance. label Aug 22, 2026

@lance-gatekeeper lance-gatekeeper Bot left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Gate recommendation: approve.

The feature patch is unchanged after the beta.20 base refresh. Exact, case-insensitive reader identities—including released 0.36 scalar aliases—continue to preserve opaque metadata and legacy fallback while supported queries and index maintenance remain available.

@lance-gatekeeper lance-gatekeeper Bot added the K-approved Latest Gatekeeper recommendation permits acceptance. label Aug 22, 2026
@lance-gatefixer

Copy link
Copy Markdown
Contributor Author

Blocked: The current-head Rust linux-arm check is failing from an inherited DataFusion memory-pool exhaustion outside this repair diff.

At remote head c86443bd668cb5b2b2eeec6a162fbd7b2d255034, the linux-arm job 96953077588 failed its test step when an external-sort merge requested 40.0 MB with only 30.0 MB available in a shared 150.0 MB pool. Current main tip 55f5ac5cdd778df673598bd58e531b54b74e1ec3 is an ancestor of this head. The failing JSON BTree test and allocation path are unchanged from main, and the exact test passes under the locked CI profile with every lance-index feature, so the evidence does not support an attributable in-scope code change.

Re-run the failed linux-arm job as the smallest next action. If it reproduces, address the shared DataFusion test memory or concurrency configuration in a dedicated fix; reducing the test runtime sort-spill reservation is a practical alternative.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

A-index Vector index, linalg, tokenizer bug Something isn't working K-approved Latest Gatekeeper recommendation permits acceptance.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

bug: a committed index of an unknown type breaks optimize_indices for every index of the dataset

0 participants