> On Oct 26, 2026, at 19:39, Kirill Reshke <[email protected]> wrote:
> 
> On Mon, 26 Oct 2026 at 09:29, David G. Johnston
> <[email protected]> wrote:
>> 
>> On Sunday, October 25, 2026, Kirill Reshke <[email protected]> wrote:
>>> 
>>> Suggested fix:
>>> 
>>> diff --git a/doc/src/sgml/event-trigger.sgml 
>>> b/doc/src/sgml/event-trigger.sgml
>>> --- a/doc/src/sgml/event-trigger.sgml
>>> +++ b/doc/src/sgml/event-trigger.sgml
>>> @@ -150,7 +150,8 @@
>>>    <para>
>>>     The <literal>table_rewrite</literal> event occurs just before a table is
>>> -    rewritten by some actions of the commands <literal>ALTER 
>>> TABLE</literal>
>>> -    and <literal>ALTER TYPE</literal>.  While other
>>> +    rewritten by some actions of the commands <literal>ALTER 
>>> TABLE</literal>,
>>> +    <literal>ALTER MATERIALIZED VIEW</literal> and <literal>ALTER
>>> TYPE</literal>.
>>> +    While other
>>> 
> 
> 
> Hi, thats for looking.
> 
>> Probably should also edit:  …just before a table [or materialized view] is 
>> rewritten…
>> 
>> This seems like it should be back-patched thru v15.
>> 
>> I’d be a bit more wordy here to connect the unexpected alter type action to 
>> typed tables explicitly.
> 
> Did that, PFA my version of wording. Applicable from master down to v18.
> 
>> David J.
>> 
> 
> 
> -- 
> Best regards,
> Kirill Reshke
> <v2-master-18-19-table-rewrite.diff>

While verifying the behaviors that this patch describes, I noticed an existing 
test case:
```
-- matview rewrite when changing access method
CREATE MATERIALIZED VIEW heapmv USING heap AS SELECT 1 AS a;
ALTER MATERIALIZED VIEW heapmv SET ACCESS METHOD heap2;
NOTICE:  Table 'heapmv' is being rewritten (reason = 8)
```

The NOTICE is generated by a test function:
```
-- test with more than one reason to rewrite a single table
CREATE OR REPLACE FUNCTION test_evtrig_no_rewrite() RETURNS event_trigger
LANGUAGE plpgsql AS $$
BEGIN
  RAISE NOTICE 'Table ''%'' is being rewritten (reason = %)',
               pg_event_trigger_table_rewrite_oid()::regclass,
               pg_event_trigger_table_rewrite_reason();
END;
$$;
```

As you have replaced “table” with “relation” in the doc, maybe also update this 
NOTICE message?

Best regards,
--
Chao Li (Evan)
HighGo Software Co., Ltd.
https://www.highgo.com/






Reply via email to