From: Tom Lane [mailto:t...@sss.pgh.pa.us] Sent: Friday, August 24, 2012 7:46 PM Amit Kapila <amit.kap...@huawei.com> writes: > From: pgsql-bugs-ow...@postgresql.org > [mailto:pgsql-bugs-ow...@postgresql.org] On Behalf Of Tom Lane >>> None of the system columns are set at the time check constraints are >>> checked.
>> Is there any problem if set tableOID before calling ExecConstarints()? > Well, possibly we could kluge things to make that particular case work, > but if someone expects that to be valid then why not oid, ctid, xmin, > etc? Initially, I thought of saying like that but the same is done in heap_prepare_insert() So doing it 2 times doesn't make sense and if we move them out then all places from where heap_insert gets called, we have to do it like that. However why I have asked to set tableOID, as for it, already functions CopyFrom and AtRewriteTable does it(set tableOid before Constraints check). > And more to the point, what's the value of examining tableoid in > a check constraint? The constraint is attached to a particular table, > so the tableoid would be a constant for it anyway. Here what you are suggesting if I understood correctly is while defining such constraints make sure its not allowed, because once defined, during execution we might not be able to identify. Please correct me if I have misunderstood? With Regards, Amit Kapila. -- Sent via pgsql-bugs mailing list (pgsql-bugs@postgresql.org) To make changes to your subscription: http://www.postgresql.org/mailpref/pgsql-bugs