Обсуждение: [HACKERS] Misplacement of function declaration incontrib/postgres_fdw/postgres_fdw.h

Поиск
Список
Период
Сортировка

[HACKERS] Misplacement of function declaration incontrib/postgres_fdw/postgres_fdw.h

От
Etsuro Fujita
Дата:
Hi,

While working on pushing down more joins/updates to the remote, I  
noticed that in contrib/postgres_fdw/postgres_fdw.h the declaration of  
get_jointype_name is misplaced in the section of shippable.c.  Since  
that function is defined in contrib/postgres_fdw/deparse.c, we should  
put that declaration in the section of deparse.c in the header file.  
Attached is a patch for that.

Best regards,
Etsuro Fujita

-- 
Sent via pgsql-hackers mailing list (pgsql-hackers@postgresql.org)
To make changes to your subscription:
http://www.postgresql.org/mailpref/pgsql-hackers

Вложения

Re: [HACKERS] Misplacement of function declaration in contrib/postgres_fdw/postgres_fdw.h

От
Ashutosh Bapat
Дата:
On Thu, Jan 12, 2017 at 8:49 AM, Etsuro Fujita
<fujita.etsuro@lab.ntt.co.jp> wrote:
> Hi,
>
> While working on pushing down more joins/updates to the remote, I noticed
> that in contrib/postgres_fdw/postgres_fdw.h the declaration of
> get_jointype_name is misplaced in the section of shippable.c.  Since that
> function is defined in contrib/postgres_fdw/deparse.c, we should put that
> declaration in the section of deparse.c in the header file. Attached is a
> patch for that.
>

I think, initially (probably in a never committed patch) the function
was used to check whether a join type is shippable and if so return
the name to be used in the query. That may be the reason why it ended
up in shippability.c. But later the shippability test was separated
from the code which required the string representation. Thanks for
pointing out the descripancy. The patch looks good. As a side change,
should we include "JOIN" in the string returned by this fuction? The
two places where this function is called, append "JOIN" to the string
returned by this function. Although, even without that change, the
patch looks good.

-- 
Best Wishes,
Ashutosh Bapat
EnterpriseDB Corporation
The Postgres Database Company



Re: [HACKERS] Misplacement of function declaration incontrib/postgres_fdw/postgres_fdw.h

От
Etsuro Fujita
Дата:
On 2017/01/12 13:52, Ashutosh Bapat wrote:
> On Thu, Jan 12, 2017 at 8:49 AM, Etsuro Fujita
> <fujita.etsuro@lab.ntt.co.jp> wrote:
>> While working on pushing down more joins/updates to the remote, I noticed
>> that in contrib/postgres_fdw/postgres_fdw.h the declaration of
>> get_jointype_name is misplaced in the section of shippable.c.  Since that
>> function is defined in contrib/postgres_fdw/deparse.c, we should put that
>> declaration in the section of deparse.c in the header file. Attached is a
>> patch for that.

> I think, initially (probably in a never committed patch) the function
> was used to check whether a join type is shippable and if so return
> the name to be used in the query. That may be the reason why it ended
> up in shippability.c. But later the shippability test was separated
> from the code which required the string representation.

Thanks for the explanation!

> Thanks for
> pointing out the descripancy. The patch looks good. As a side change,
> should we include "JOIN" in the string returned by this fuction? The
> two places where this function is called, append "JOIN" to the string
> returned by this function.

I was thinking that, so +1.

> Although, even without that change, the
> patch looks good.

Thanks again.

Best regards,
Etsuro Fujita





Re: [HACKERS] Misplacement of function declaration in contrib/postgres_fdw/postgres_fdw.h

От
Robert Haas
Дата:
On Wed, Jan 11, 2017 at 10:19 PM, Etsuro Fujita
<fujita.etsuro@lab.ntt.co.jp> wrote:
> While working on pushing down more joins/updates to the remote, I noticed
> that in contrib/postgres_fdw/postgres_fdw.h the declaration of
> get_jointype_name is misplaced in the section of shippable.c.  Since that
> function is defined in contrib/postgres_fdw/deparse.c, we should put that
> declaration in the section of deparse.c in the header file. Attached is a
> patch for that.

Committed.

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