-- pg_turbovec v1.3.0 -- Phase Q: side-table storage retired. -- -- This file is a *reference mirror*. The authoritative install -- script is generated by `cargo pgrx schema`. -- -- v1.3.0 removes the SPI side-table `turbovec.am_storage` that the -- AM used in v1.0.x..v1.1.0 and the v1 (Phase L preview) relfile -- meta layout used in v1.2.0. The relfile-resident page format -- with the persisted SIMD-blocked layout + Lloyd-Max codebook -- (Phase P, v2 wire format) is now the only storage strategy. -- -- ## Migration -- -- Any existing turbovec index built under v1.0.x..v1.2.0 must be -- rebuilt before it is queryable on v1.3.0: -- -- ALTER EXTENSION pg_turbovec UPDATE TO '1.3.0'; -- REINDEX INDEX ; -- -- Without REINDEX, `ambeginscan` raises an `ERROR` (no longer a -- `NOTICE`) explaining the situation. This is a deliberate hard -- migration boundary -- a half-broken state can't silently -- return zero rows. -- -- ## What the install script does -- -- - Drops `turbovec.am_storage` if it still exists (legacy state -- from a previous install). -- - Registers `turbovec_index_handler` and the `turbovec` access -- method (unchanged from v1.2.0). -- - Creates the `vec_ip_ops`, `vec_cosine_ops`, `vec_l2_ops`, -- `vec_l1_ops` operator classes (unchanged from v1.2.0). -- -- The Cargo feature flags `experimental_index_am` and -- `relfile_storage` are also retired in v1.3.0; the only build -- knob that remains is `pg` to select the PostgreSQL major -- version. SET search_path = turbovec, public; DROP TABLE IF EXISTS turbovec.am_storage CASCADE;