On Mon, Feb 13, 2017 at 5:57 AM, Amit Langote
<langote_amit...@lab.ntt.co.jp> wrote:
> On 2017/02/13 14:21, Amit Langote wrote:
>> On 2017/02/10 19:19, Simon Riggs wrote:
>>> * The OID inheritance needs work - you shouldn't need to specify a
>>> partition needs OIDS if the parent has it already.
>> That sounds right.  It's better to keep the behavior same as for regular
>> inheritance.  Will post a patch to get rid of the unnecessary check.
>> FWIW, the check was added to prevent the command from succeeding in the
>> case where WITHOUT OIDS has been specified for a partition and the parent
>> partitioned table has the OID column.  Regular inheritance simply
>> *overrides* the WITHOUT OIDS specification, which might be seen as 
>> surprising.
> 0001 of the attached patches takes care of this.

I think 0001 needs to remove this hunk of documentation:

        If the partitioned table specified <literal>WITH OIDS</literal> then
        each partition must also specify <literal>WITH OIDS</literal>. Oids
        are not automatically inherited by partitions.

I think 0001 is better than the status quo, but I'm wondering whether
we should try to do something slightly different.  Maybe it should
always work for the child table to specify neither WITH OIDS nor
WITHOUT OIDS, but if you do specify one of them then it has to be the
one that matches the parent partitioned table?  With this patch, IIUC,
WITH OIDS is allowed only if the parent has the same, but WITHOUT OIDS
is allowed (but ignored) regardless of the parent setting.

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

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

Reply via email to