Skip to content

[core] Drop concurrently-built global indexes at materialize-deletion compaction - #8947

Merged
JingsongLi merged 1 commit into
apache:masterfrom
XiaoHongbo-Hope:fix/de-compact-drop-concurrent-global-index
Jul 31, 2026
Merged

[core] Drop concurrently-built global indexes at materialize-deletion compaction#8947
JingsongLi merged 1 commit into
apache:masterfrom
XiaoHongbo-Hope:fix/de-compact-drop-concurrent-global-index

Conversation

@XiaoHongbo-Hope

Copy link
Copy Markdown
Contributor

Purpose

DataEvolutionCompactGlobalIndexDropper drops global indexes that a
materialize-deletion compaction invalidates (the compaction renumbers row-ids,
so pre-materialization indexes become stale). It scanned the compaction's base
snapshot for indexes to drop. A global index built concurrently and committed
after the compaction planned still encodes pre-materialization row-ids, but is
not visible at the base snapshot, so it survives — and a later vector search
resolves its stale row-ids against renumbered data.

Latent on master today (index build on DV tables is currently blocked); reachable
once Lumina indexes on DV tables are allowed. Self-contained; submitted
independently.

Change

Scan the latest snapshot for stale indexes instead of the compaction base, so
concurrently-committed indexes are also dropped (falling back to the base snapshot
when no newer one exists).

… compaction

DataEvolutionCompactGlobalIndexDropper scanned the compaction's base
snapshot for stale global indexes. A global index built concurrently
and committed after the compaction planned still encodes
pre-materialization row-ids, but was not seen at the base snapshot and
so survived, letting a later vector search resolve those row-ids
against renumbered data.

Scan the latest snapshot instead so such concurrently-committed indexes
are also dropped.
@JingsongLi

Copy link
Copy Markdown
Contributor

+1

@JingsongLi
JingsongLi merged commit 5b39ec2 into apache:master Jul 31, 2026
12 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants