diff --git a/test/expected/ivfflat_bit.out b/test/expected/ivfflat_bit.out index ab8adfd..2457e6f 100644 --- a/test/expected/ivfflat_bit.out +++ b/test/expected/ivfflat_bit.out @@ -35,3 +35,25 @@ NOTICE: ivfflat index created with little data DETAIL: This will cause low recall. HINT: Drop the index until the table has more data. DROP TABLE t; +-- memory +CREATE TABLE t (val bit(64000)); +CREATE INDEX ON t USING ivfflat (val bit_hamming_ops) WITH (lists = 32768); +ERROR: memory required is 251 MB, maintenance_work_mem is 64 MB +DROP TABLE t; +SET maintenance_work_mem = '1MB'; +CREATE TABLE t (val bit(64000)); +CREATE INDEX ON t USING ivfflat (val bit_hamming_ops); +NOTICE: ivfflat index created with little data +DETAIL: This will cause low recall. +HINT: Drop the index until the table has more data. +DROP TABLE t; +RESET maintenance_work_mem; +SET maintenance_work_mem = '29MB'; +CREATE TABLE t (val bit(64000)); +INSERT INTO t (val) VALUES (B'0'::bit(64000)); +CREATE INDEX ON t USING ivfflat (val bit_hamming_ops); +NOTICE: ivfflat index created with little data +DETAIL: This will cause low recall. +HINT: Drop the index until the table has more data. +DROP TABLE t; +RESET maintenance_work_mem; diff --git a/test/sql/ivfflat_bit.sql b/test/sql/ivfflat_bit.sql index e0f9e25..f76d8a4 100644 --- a/test/sql/ivfflat_bit.sql +++ b/test/sql/ivfflat_bit.sql @@ -21,3 +21,22 @@ CREATE INDEX ON t USING ivfflat ((val::bit(3)) bit_hamming_ops) WITH (lists = 1) CREATE INDEX ON t USING ivfflat ((val::bit(64001)) bit_hamming_ops) WITH (lists = 1); CREATE INDEX ON t USING ivfflat ((val::bit(2)) bit_hamming_ops) WITH (lists = 5); DROP TABLE t; + +-- memory + +CREATE TABLE t (val bit(64000)); +CREATE INDEX ON t USING ivfflat (val bit_hamming_ops) WITH (lists = 32768); +DROP TABLE t; + +SET maintenance_work_mem = '1MB'; +CREATE TABLE t (val bit(64000)); +CREATE INDEX ON t USING ivfflat (val bit_hamming_ops); +DROP TABLE t; +RESET maintenance_work_mem; + +SET maintenance_work_mem = '29MB'; +CREATE TABLE t (val bit(64000)); +INSERT INTO t (val) VALUES (B'0'::bit(64000)); +CREATE INDEX ON t USING ivfflat (val bit_hamming_ops); +DROP TABLE t; +RESET maintenance_work_mem;