Re: WIP: Upper planner pathification

From: Teodor Sigaev <teodor(at)sigaev(dot)ru>
To: Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us>, pgsql-hackers(at)postgreSQL(dot)org
Subject: Re: WIP: Upper planner pathification
Date: 2016-03-01 12:11:50
Message-ID: 56D58706.3010203@sigaev.ru
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-hackers

> The basic point of this patch is to apply the generate-and-compare-Paths
> paradigm to the planning steps after query_planner(), which only covers
...
> The present patch addresses this problem by inventing Path nodes to
> represent every post-scan/join step

I'm really glad to see that. Separating path nodes for later steps opens a new
ways to optimize queries. For first glance, consider
select * from a left outer join b on a.i = b.i limit 1;
Limit node could be pushed down to scan over 'a' table if b.i is unique.

I tried to look into patch and I had a question (one for now): why LimitPath
doesn't contain actual limit/offset value? I saw a lot of subqueries with LIMIT
1 which could be transformed into EXISTS subquery.

> So I'd really like to get this into 9.6.
Me too. I applied the patch and can confirm that 'make test' doesn't fail on
FreeBSD 10.2. Now I will try to run kind of TPC-H with and without patch.

--
Teodor Sigaev E-mail: teodor(at)sigaev(dot)ru
WWW: http://www.sigaev.ru/

In response to

Responses

Browse pgsql-hackers by date

  From Date Subject
Next Message Michael Paquier 2016-03-01 12:45:59 Re: Re: In-core regression tests for replication, cascading, archiving, PITR, etc.
Previous Message Julien Rouhaud 2016-03-01 11:44:30 Re: Publish autovacuum informations