Site search

Search IndexLane

Type at least two characters to search.

    Open-source PostgreSQL operations tool

    pgvector-index-manager — safe HNSW index reconciliation

    An open-source Go reconciler for pgvector HNSW indexes that belong to a defined workload or filtered population. It detects drift, plans the required change, builds and verifies a replacement concurrently, publishes it under the desired name, and retires only indexes from the same managed family.

    Record
    pgvector-index-manager
    Release
    Version 0.1.0
    License
    Apache-2.0
    Language
    Go
    GoPostgreSQLpgvectorHNSWConcurrent DDLDocker

    Engineering record

    pgvector-index-manager

    An open-source Go reconciler for pgvector HNSW indexes that belong to a defined workload or filtered population. It detects drift, plans the required change, builds and verifies a replacement concurrently, publishes it under the desired name, and retires only indexes from the same managed family.

    The current public release is v0.1.0. The source demonstrates the intended reconciliation model; it does not establish production history, adoption, or continuous validation.

    Verified behavior

    System behavior and guardrails

    • Detects HNSW drift across health, opclass, dimensions, parameters, population, and ownership metadata
    • Uses advisory locking and concurrent replacement builds
    • Verifies the replacement before publishing it under the desired name
    • Refuses unowned replacement by default and avoids sweeping unrelated indexes

    Implementation log

    Design, operation, and verification notes

    How reconciliation works

    • Inspects PostgreSQL catalog state for HNSW indexes on the configured table
    • Compares health, vector identity, population filters, opclass, HNSW parameters, ownership, and the complete specification hash
    • Provides status, plan, apply, and dry-run workflows
    • Holds a table-scoped advisory lock through the mutation sequence
    • Builds replacement indexes concurrently and verifies them before publication
    • Records structured ownership, managed-family, and specification metadata
    • Protects a conflicting same-name unowned index unless replacement is explicitly authorized
    • Retires only superseded indexes in the same managed family, optionally after a grace period

    Safety and interpretation

    Review plan before apply. Catalog inspection can use read-only credentials; applying a plan requires index create, comment, rename, and drop privileges. drop_unowned is an explicit authorization, not a default sweep, and unrelated indexes must never be retired.