Re: inherit support for foreign tables - Mailing list pgsql-hackers

From Kyotaro HORIGUCHI
Subject Re: inherit support for foreign tables
Date
Msg-id 20141107.145713.169337282.horiguchi.kyotaro@lab.ntt.co.jp
Whole thread Raw
In response to Re: inherit support for foreign tables  (Etsuro Fujita <fujita.etsuro@lab.ntt.co.jp>)
Responses Re: inherit support for foreign tables  (Etsuro Fujita <fujita.etsuro@lab.ntt.co.jp>)
List 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




pgsql-hackers by date:

Previous
From: Amit Kapila
Date:
Subject: Re: What exactly is our CRC algorithm?
Next
From: Fujii Masao
Date:
Subject: Re: Add generate_series(numeric, numeric)