ruvector/crates/ruvector-postgres/sql
rUv de3b80bc93 feat(postgres): Enable HNSW access method for CREATE INDEX ... USING hnsw
- Rewrote hnsw_am.rs to fix pgrx 0.12 API compatibility:
  - Use raw pg_sys::Relation instead of PgRelation wrapper
  - Use palloc0 + Internal return type for handler function
  - Fix ScanDirection and IndexUniqueCheck type paths
  - Use RelationGetNumberOfBlocksInFork to check if index exists
  - Use P_NEW (InvalidBlockNumber) for allocating first page
  - Define static HNSW_AM_HANDLER template for IndexAmRoutine
- Enabled hnsw_am module in index/mod.rs
- Re-enabled HNSW access method SQL declarations:
  - hnsw_handler function
  - CREATE ACCESS METHOD hnsw
  - Operator families: hnsw_l2_ops, hnsw_cosine_ops, hnsw_ip_ops
  - Operator classes with distance function bindings

CREATE INDEX ... USING hnsw now works with real[] columns.
Query planner uses HNSW index for ORDER BY <-> queries.

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-12-03 15:56:11 +00:00
..
graph_examples.sql feat(postgres): Add 7 advanced AI modules to ruvector-postgres 2025-12-02 20:12:48 +00:00
hnsw_index.sql feat(postgres): Add ruvector-postgres extension with SIMD optimizations (#42) 2025-12-02 09:55:07 -05:00
ivfflat_am.sql feat(postgres): Add ruvector-postgres extension with SIMD optimizations (#42) 2025-12-02 09:55:07 -05:00
routing_example.sql feat(postgres): Add 7 advanced AI modules to ruvector-postgres 2025-12-02 20:12:48 +00:00
ruvector--0.1.0.sql feat(postgres): Enable HNSW access method for CREATE INDEX ... USING hnsw 2025-12-03 15:56:11 +00:00