aboutsummaryrefslogtreecommitdiff
path: root/contrib/btree_gist
diff options
context:
space:
mode:
authorTom Lane <tgl@sss.pgh.pa.us>2018-10-16 12:01:19 -0400
committerTom Lane <tgl@sss.pgh.pa.us>2018-10-16 12:01:19 -0400
commit4f6a77e46af26eeeecfd75d50eabd090eb99f3c8 (patch)
tree8906fa01f4061be87ed95a987b5877e5a19c5ab6 /contrib/btree_gist
parent18c725413fad42e6edbead22751382ee45c01166 (diff)
downloadpostgresql-4f6a77e46af26eeeecfd75d50eabd090eb99f3c8.tar.gz
postgresql-4f6a77e46af26eeeecfd75d50eabd090eb99f3c8.zip
Improve stability of recently-added regression test case.
Commit b5febc1d1 added a contrib/btree_gist test case that has been observed to fail in the buildfarm as a result of background auto-analyze updating stats and changing the selected plan. Forestall that by forcibly analyzing in foreground, instead. The new plan choice is just as good for our purposes, since we really only care that an index-only plan does not get selected. Back-patch to 9.5, like the previous patch. Discussion: https://postgr.es/m/14643.1539629304@sss.pgh.pa.us
Diffstat (limited to 'contrib/btree_gist')
-rw-r--r--contrib/btree_gist/expected/inet.out26
-rw-r--r--contrib/btree_gist/sql/inet.sql2
2 files changed, 12 insertions, 16 deletions
diff --git a/contrib/btree_gist/expected/inet.out b/contrib/btree_gist/expected/inet.out
index 905f55d740b..c323d903da4 100644
--- a/contrib/btree_gist/expected/inet.out
+++ b/contrib/btree_gist/expected/inet.out
@@ -64,18 +64,16 @@ SELECT count(*) FROM inettmp WHERE a > '89.225.196.191'::inet;
386
(1 row)
-VACUUM inettmp;
+VACUUM ANALYZE inettmp;
-- gist_inet_ops lacks a fetch function, so this should not be index-only scan
EXPLAIN (COSTS OFF)
SELECT count(*) FROM inettmp WHERE a = '89.225.196.191'::inet;
- QUERY PLAN
---------------------------------------------------------
+ QUERY PLAN
+--------------------------------------------------
Aggregate
- -> Bitmap Heap Scan on inettmp
- Recheck Cond: (a = '89.225.196.191'::inet)
- -> Bitmap Index Scan on inetidx
- Index Cond: (a = '89.225.196.191'::inet)
-(5 rows)
+ -> Index Scan using inetidx on inettmp
+ Index Cond: (a = '89.225.196.191'::inet)
+(3 rows)
SELECT count(*) FROM inettmp WHERE a = '89.225.196.191'::inet;
count
@@ -88,14 +86,12 @@ CREATE INDEX ON inettmp USING gist (a gist_inet_ops, a inet_ops);
-- likewise here (checks for core planner bug)
EXPLAIN (COSTS OFF)
SELECT count(*) FROM inettmp WHERE a = '89.225.196.191'::inet;
- QUERY PLAN
---------------------------------------------------------
+ QUERY PLAN
+----------------------------------------------------
Aggregate
- -> Bitmap Heap Scan on inettmp
- Recheck Cond: (a = '89.225.196.191'::inet)
- -> Bitmap Index Scan on inettmp_a_a1_idx
- Index Cond: (a = '89.225.196.191'::inet)
-(5 rows)
+ -> Index Scan using inettmp_a_a1_idx on inettmp
+ Index Cond: (a = '89.225.196.191'::inet)
+(3 rows)
SELECT count(*) FROM inettmp WHERE a = '89.225.196.191'::inet;
count
diff --git a/contrib/btree_gist/sql/inet.sql b/contrib/btree_gist/sql/inet.sql
index 08952f2c449..4b8d354b00e 100644
--- a/contrib/btree_gist/sql/inet.sql
+++ b/contrib/btree_gist/sql/inet.sql
@@ -30,7 +30,7 @@ SELECT count(*) FROM inettmp WHERE a >= '89.225.196.191'::inet;
SELECT count(*) FROM inettmp WHERE a > '89.225.196.191'::inet;
-VACUUM inettmp;
+VACUUM ANALYZE inettmp;
-- gist_inet_ops lacks a fetch function, so this should not be index-only scan
EXPLAIN (COSTS OFF)