contrib/plantuner - enable PostgreSQL planner hints

From: Oleg Bartunov <oleg(at)sai(dot)msu(dot)su>
To: pgsql-general(at)postgresql(dot)org
Cc: Pgsql Hackers <pgsql-hackers(at)postgresql(dot)org>
Subject: contrib/plantuner - enable PostgreSQL planner hints
Date: 2009-10-06 19:57:38
Message-ID: Pine.LNX.4.64.0910062354510.6801@sn.sai.msu.ru
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-general pgsql-hackers

Hi there,

this is an announcement of our new contribution module for PostgreSQL -
Plantuner - enable planner hints
(http://www.sai.msu.su/~megera/wiki/plantuner).

Example:

=# LOAD 'plantuner';
=# create table test(id int);
=# create index id_idx on test(id);
=# create index id_idx2 on test(id);
=# \d test
Table "public.test"
Column | Type | Modifiers
--------+---------+-----------
id | integer |
Indexes:
"id_idx" btree (id)
"id_idx2" btree (id)
=# explain select id from test where id=1;
QUERY PLAN
-----------------------------------------------------------------------
Bitmap Heap Scan on test (cost=4.34..15.03 rows=12 width=4)
Recheck Cond: (id = 1)
-> Bitmap Index Scan on id_idx2 (cost=0.00..4.34 rows=12 width=0)
Index Cond: (id = 1)
(4 rows)
=# set enable_seqscan=off;
=# set plantuner.forbid_index='id_idx2';
=# explain select id from test where id=1;
QUERY PLAN
----------------------------------------------------------------------
Bitmap Heap Scan on test (cost=4.34..15.03 rows=12 width=4)
Recheck Cond: (id = 1)
-> Bitmap Index Scan on id_idx (cost=0.00..4.34 rows=12 width=0)
Index Cond: (id = 1)
(4 rows)
=# set plantuner.forbid_index='id_idx2,id_idx';
=# explain select id from test where id=1;
QUERY PLAN
-------------------------------------------------------------------------
Seq Scan on test (cost=10000000000.00..10000000040.00 rows=12 width=4)
Filter: (id = 1)
(2 rows)

Regards,
Oleg
_____________________________________________________________
Oleg Bartunov, Research Scientist, Head of AstroNet (www.astronet.ru),
Sternberg Astronomical Institute, Moscow University, Russia
Internet: oleg(at)sai(dot)msu(dot)su, http://www.sai.msu.su/~megera/
phone: +007(495)939-16-83, +007(495)939-23-83

Responses

Browse pgsql-general by date

  From Date Subject
Next Message Alvaro Herrera 2009-10-06 20:09:18 Re: attempted to lock invisible tuple - PG 8.4.1
Previous Message Scott Mead 2009-10-06 19:54:30 Re: initdb failing

Browse pgsql-hackers by date

  From Date Subject
Next Message Peter Eisentraut 2009-10-06 20:00:50 Re: doc/src/sgml/Makefile versus VPATH
Previous Message Peter Eisentraut 2009-10-06 19:44:24 Re: doc/src/sgml/Makefile versus VPATH