casanova_test.txt
text/plain
$ ./casanova_test.sh
\timing on
drop table if exists t1;
Time: 333.159 ms
create table t1 (i int);
Time: 155.827 ms
create index t1_i_idx on t1 using minmax(i);
Time: 204.031 ms
insert into t1 select generate_series(1, 25000000);
Time: 126312.302 ms
analyze t1;
ERROR: could not truncate file base/21324/26339_vm to 41 blocks: it's only 1 blocks now
Time: 472.504 ms
\timing on
set enable_bitmapscan=1; explain analyze select i from t1 where i between 10000000 and 10001000;
Time: 0.508 ms
QUERY PLAN
--------------------------------------------------------------------------------------------------------------------------
Bitmap Heap Scan on t1 (cost=32.25..117786.77 rows=125001 width=4) (actual time=1640.520..4465.768 rows=1001 loops=1)
Recheck Cond: ((i >= 10000000) AND (i <= 10001000))
Rows Removed by Index Recheck: 24998999
-> Bitmap Index Scan on t1_i_idx (cost=0.00..1.00 rows=125001 width=0) (actual time=65.322..65.322 rows=291 loops=1)
Index Cond: ((i >= 10000000) AND (i <= 10001000))
Total runtime: 4466.003 ms
(6 rows)
Time: 4468.943 ms
set enable_bitmapscan=0; explain analyze select i from t1 where i between 10000000 and 10001000;
Time: 0.146 ms
QUERY PLAN
---------------------------------------------------------------------------------------------------------------
Seq Scan on t1 (cost=0.00..485621.80 rows=125001 width=4) (actual time=1158.065..3332.925 rows=1001 loops=1)
Filter: ((i >= 10000000) AND (i <= 10001000))
Rows Removed by Filter: 24998999
Total runtime: 3333.038 ms
(4 rows)