Re: inherit support for foreign tables

From: Kyotaro HORIGUCHI <horiguchi(dot)kyotaro(at)lab(dot)ntt(dot)co(dot)jp>
To: fujita(dot)etsuro(at)lab(dot)ntt(dot)co(dot)jp
Cc: hlinnakangas(at)vmware(dot)com, noah(at)leadboat(dot)com, shigeru(dot)hanada(at)gmail(dot)com, pgsql-hackers(at)postgresql(dot)org
Subject: Re: inherit support for foreign tables
Date: 2014-11-07 05:57:13
Message-ID: 20141107.145713.169337282.horiguchi.kyotaro@lab.ntt.co.jp
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-hackers

Hello, I don't fully catch up this topic but tried this one.

> >> Here are separated patches.
> >>
> >> fdw-chk.patch - CHECK constraints on foreign tables
> >> fdw-inh.patch - table inheritance with foreign tables
> >>
> >> The latter has been created on top of [1].
> >
> >> [1]
> >> http://www.postgresql.org/message-id/540DA168.3040407@lab.ntt.co.jp
>
> > To be exact, it has been created on top of [1] and fdw-chk.patch.

I tried both patches on the current head, the newly added
parameter to analyze_rel() hampered them from applying but it is
easy to fix seemingly and almost all the other part was applied
cleanly.

By the way, are these the result of simply splitting of your last
patch, foreign_inherit-v15.patch?

http://www.postgresql.org/message-id/53FEEF94.6040101@lab.ntt.co.jp

The result of apllying whole-in-one version and this splitted
version seem to have many differences. Did you added even other
changes? Or do I understand this patch wrongly?

git diff --numstat 0_foreign_inherit_one 0_foreign_inherit_two
5 51 contrib/file_fdw/file_fdw.c
10 19 contrib/file_fdw/input/file_fdw.source
18 71 contrib/file_fdw/output/file_fdw.source
19 70 contrib/postgres_fdw/expected/postgres_fdw.out
9 66 contrib/postgres_fdw/postgres_fdw.c
12 35 contrib/postgres_fdw/sql/postgres_fdw.sql
13 48 doc/src/sgml/fdwhandler.sgml
39 39 doc/src/sgml/ref/alter_foreign_table.sgml
4 3 doc/src/sgml/ref/create_foreign_table.sgml
8 0 src/backend/catalog/heap.c
7 3 src/backend/commands/analyze.c
0 7 src/backend/commands/tablecmds.c
1 22 src/backend/optimizer/plan/createplan.c
7 7 src/backend/optimizer/prep/prepunion.c
0 26 src/backend/optimizer/util/pathnode.c
1 1 src/include/commands/vacuum.h
0 7 src/include/foreign/fdwapi.h
19 1 src/test/regress/expected/foreign_data.out
9 2 src/test/regress/sql/foreign_data.sql

> > I noticed that the latter disallows TRUNCATE on inheritance trees that
> > contain at least one child foreign table. But I think it would be
> > better to allow it, with the semantics that we quietly ignore the
> > child
> > foreign tables and apply the operation to the child plain tables,
> > which
> > is the same semantics as ALTER COLUMN SET STORAGE on such inheritance
> > trees. Comments welcome.
>
> Done. And I've also a bit revised regression tests for both
> patches. Patches attached.

regards,

--
Kyotaro Horiguchi
NTT Open Source Software Center

In response to

Responses

Browse pgsql-hackers by date

  From Date Subject
Next Message Fujii Masao 2014-11-07 06:19:14 Re: Add generate_series(numeric, numeric)
Previous Message Amit Kapila 2014-11-07 05:08:04 Re: What exactly is our CRC algorithm?