Re: pgsql: postgres_fdw: Add ORDER BY to some remote SQL queries.

From: Robert Haas <robertmhaas(at)gmail(dot)com>
To: Bruce Momjian <bruce(at)momjian(dot)us>
Cc: pgsql-committers <pgsql-committers(at)postgresql(dot)org>
Subject: Re: pgsql: postgres_fdw: Add ORDER BY to some remote SQL queries.
Date: 2015-12-01 16:56:17
Message-ID: CA+Tgmob7vuuW5rZ2dffN7K8ZxO+U4rRDeUuc3A+upn-PDD2a0w@mail.gmail.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-committers

On Tue, Dec 1, 2015 at 11:30 AM, Bruce Momjian <bruce(at)momjian(dot)us> wrote:
> On Tue, Nov 3, 2015 at 06:05:11PM +0000, Robert Haas wrote:
>> postgres_fdw: Add ORDER BY to some remote SQL queries.
>>
>> If the join problem's entire ORDER BY clause can be pushed to the
>> remote server, consider a path that adds this ORDER BY clause. If
>> use_remote_estimate is on, we cost this path using an additional
>> remote EXPLAIN. If not, we just estimate that the path costs 20%
>> more, which is intended to be large enough that we won't request a
>> remote sort when it's not helpful, but small enough that we'll have
>> the remote side do the sort when in doubt. In some cases, the remote
>> sort might actually be free, because the remote query plan might
>> happen to produce output that is ordered the way we need, but without
>> remote estimates we have no way of knowing that.
>>
>> It might also be useful to request sorted output from the remote side
>> if it enables an efficient merge join, but this patch doesn't attempt
>> to handle that case.
>
> Does this complete FDW join pushdown?

It's the most important part, but we may want to do other things. See

http://www.postgresql.org/message-id/CAFjFpRfeKHiCmwJ72p4=ZvuZRQsaU9tbfyW7vwr-5PPvrCbcQQ@mail.gmail.com

--
Robert Haas
EnterpriseDB: http://www.enterprisedb.com
The Enterprise PostgreSQL Company

In response to

Browse pgsql-committers by date

  From Date Subject
Next Message Tom Lane 2015-12-01 19:47:37 pgsql: Further tweaking of print_aligned_vertical().
Previous Message Tom Lane 2015-12-01 16:43:14 pgsql: Use "g" not "f" format in ecpg's PGTYPESnumeric_from_double().