Re: [HACKERS] Macros bundling RELKIND_* conditions - Mailing list pgsql-hackers

From Alvaro Herrera
Subject Re: [HACKERS] Macros bundling RELKIND_* conditions
Date
Msg-id 20181219180731.4hgyde3cq6quhmk6@alvherre.pgsql
Whole thread Raw
In response to Re: [HACKERS] Macros bundling RELKIND_* conditions  (Tom Lane <tgl@sss.pgh.pa.us>)
Responses Re: [HACKERS] Macros bundling RELKIND_* conditions  (Tom Lane <tgl@sss.pgh.pa.us>)
Re: [HACKERS] Macros bundling RELKIND_* conditions  (Ashutosh Bapat <ashutosh.bapat.oss@gmail.com>)
List pgsql-hackers
On 2017-Aug-02, Tom Lane wrote:

> I think Peter's got the error and the detail backwards.  It should be
> more like
> 
> ERROR: "someview" cannot have constraints
> DETAIL: "someview" is a view.
> 
> If we do it like that, we need one ERROR message per error reason,
> and one DETAIL per relkind, which should be manageable.

I support this idea.  Here's a proof-of-concept patch that corresponds
to one of the cases that Ashutosh was on about (specifically, the one
that uses the RELKIND_CAN_HAVE_STORAGE macro I just added).  If there
are no objections to this approach, I'm going to complete it along these
lines.

I put the new function at the bottom of heapam.c but I think it probably
needs a better place.

BTW are there other opinions on the RELKIND_HAS_STORAGE vs.
RELKIND_CAN_HAVE_STORAGE debate?  I'm inclined to change it to the
former.

-- 
Álvaro Herrera                https://www.2ndQuadrant.com/
PostgreSQL Development, 24x7 Support, Remote DBA, Training & Services

Attachment

pgsql-hackers by date:

Previous
From: Pavel Stehule
Date:
Subject: Re: single user mode -P option is ignored
Next
From: Tom Lane
Date:
Subject: Re: [HACKERS] Macros bundling RELKIND_* conditions