Re: New error code to track unsupported contexts - Mailing list pgsql-hackers

From Michael Paquier
Subject Re: New error code to track unsupported contexts
Date
Msg-id CAB7nPqQ80F-t4W2jRCNOXxMk4zgZ7K0rDcvx+eNNFojWEDDhBA@mail.gmail.com
Whole thread Raw
In response to Re: New error code to track unsupported contexts  (Alvaro Herrera <alvherre@2ndquadrant.com>)
Responses Re: New error code to track unsupported contexts
List pgsql-hackers
On Wed, Apr 8, 2015 at 10:21 AM, Alvaro Herrera
<alvherre@2ndquadrant.com> wrote:
> Jim Nasby wrote:
>> On 11/28/14 11:41 PM, Michael Paquier wrote:
>> >Hi all,
>> >
>> >When pg_event_trigger_dropped_objects is run in a context that is not
>> >the one of an event trigger, currently the error code
>> >ERRCODE_FEATURE_NOT_SUPPORTED is returned. Wouldn't it be better to
>> >have an error to define an out-of-context instead? It seems that it
>> >would be a good thing to have more error verbosity for situations like
>> >the case above. Note that this idea has been mentioned on this ML a
>> >couple of weeks back. In any case, attached is a patch showing the
>> >idea.
>> >
>> >Opinions? Is that worth having?
>>
>> Anything ever happen with this? (FWIW, I'm in favor of it. Reporting the
>> feature isn't supported is confusing...)

This got lost in translation..

> Not opposed to the idea.
>
> Maybe it should be in class 39 'External Routine Invocation Exception'
> instead, like ERRCODE_E_R_I_E_TRIGGER_PROTOCOL_VIOLATED is used by
> various trigger functions.  We could invent
> ERRCODE_E_R_I_E_EVENT_TRIGGER_PROTOCOL_VIOLATED with value 39P03, for
> example.

This looks fine to me, in the spirit of
ERRCODE_E_R_I_E_TRIGGER_PROTOCOL_VIOLATED. A refreshed patch gives the
attached, taking into account the event table_rewrite.
Regards,
--
Michael

Attachment

pgsql-hackers by date:

Previous
From: Jim Nasby
Date:
Subject: Re: Re: File count restriction of directory limits number of relations inside a database.
Next
From: Peter Geoghegan
Date:
Subject: Re: INSERT ... ON CONFLICT IGNORE (and UPDATE) 3.0