Skip to content

Docker image missing ruvector--2.0.0.sql - extension install broken #175

@stuinfla

Description

@stuinfla

Bug Description

The ruvnet/ruvector-postgres:latest Docker image on Docker Hub (built 2026-01-28) has a packaging bug:

  • ruvector.control specifies default_version = '2.0.0'
  • Only ruvector--0.1.0.sql is present in /usr/share/postgresql/17/extension/
  • ruvector--2.0.0.sql exists in the repo at crates/ruvector-postgres/sql/ but is not copied into the image

This means:

  1. Fresh CREATE EXTENSION ruvector fails with: extension "ruvector" has no installation script nor update path for version "2.0.0"
  2. Existing installs stuck at 0.1.0 cannot upgrade (no migration path file either)
  3. ruvector_version() reports 2.0.1 (C functions are updated) but the SQL catalog shows 0.1.0

To Reproduce

docker pull ruvnet/ruvector-postgres:latest
docker run -d --name test-rv -e POSTGRES_PASSWORD=test -p 5436:5432 ruvnet/ruvector-postgres:latest
docker exec test-rv psql -U postgres -c "CREATE EXTENSION ruvector;"
# ERROR: extension "ruvector" has no installation script nor update path for version "2.0.0"

Workaround

Manually download ruvector--2.0.0.sql from the repo and copy it into the container:

# Download from GitHub
curl -o /tmp/ruvector--2.0.0.sql https://raw.githubusercontent.com/ruvnet/ruvector/main/crates/ruvector-postgres/sql/ruvector--2.0.0.sql

# Copy into container
docker cp /tmp/ruvector--2.0.0.sql <container>:/usr/share/postgresql/17/extension/ruvector--2.0.0.sql

Additional Issue: Build from source fails

Building the Docker image from the latest source (main branch, commit from 2026-02-15) also fails:

cargo pgrx package --features "pg17 index-all quant-all embeddings gated-transformer"
# exit code: 1

Expected Behavior

  1. The Docker image should include ruvector--2.0.0.sql in the extension directory
  2. CREATE EXTENSION ruvector should work out of the box
  3. A migration path file (ruvector--0.1.0--2.0.0.sql) would help existing users upgrade without dropping/recreating

Environment

  • Docker image: ruvnet/ruvector-postgres:latest (built 2026-01-28)
  • PostgreSQL: 17
  • Platform: macOS (Apple Silicon M3 Max via Docker Desktop)

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions