1
0
mirror of https://github.com/postgres/postgres.git synced 2025-07-05 07:21:24 +03:00

Add index-only scan support to range type GiST opclass.

Andreas Karlsson
This commit is contained in:
Heikki Linnakangas
2015-03-30 13:21:43 +03:00
parent 1c41e2a998
commit 0633a60f4d
7 changed files with 38 additions and 2 deletions

View File

@ -1072,6 +1072,25 @@ select count(*) from test_range_spgist where ir -|- int4range(100,500);
5
(1 row)
-- test index-only scans
explain (costs off)
select ir from test_range_spgist where ir -|- int4range(10,20) order by ir;
QUERY PLAN
------------------------------------------------------------------------
Sort
Sort Key: ir
-> Index Only Scan using test_range_spgist_idx on test_range_spgist
Index Cond: (ir -|- '[10,20)'::int4range)
(4 rows)
select ir from test_range_spgist where ir -|- int4range(10,20) order by ir;
ir
------------
[20,30)
[20,30)
[20,10020)
(3 rows)
RESET enable_seqscan;
RESET enable_indexscan;
RESET enable_bitmapscan;

View File

@ -286,6 +286,11 @@ select count(*) from test_range_spgist where ir &< int4range(100,500);
select count(*) from test_range_spgist where ir &> int4range(100,500);
select count(*) from test_range_spgist where ir -|- int4range(100,500);
-- test index-only scans
explain (costs off)
select ir from test_range_spgist where ir -|- int4range(10,20) order by ir;
select ir from test_range_spgist where ir -|- int4range(10,20) order by ir;
RESET enable_seqscan;
RESET enable_indexscan;
RESET enable_bitmapscan;