Re: [BUG v13] Crash with event trigger in extension
Jehan-Guillaume de Rorthais <jgdr@dalibo.com>
From: Jehan-Guillaume de Rorthais <jgdr@dalibo.com>
To: Michael Paquier <michael@paquier.xyz>
Cc: Alvaro Herrera <alvherre@2ndquadrant.com>,
pgsql-bugs@lists.postgresql.org
Date: 2020-09-04T09:37:28Z
Lists: pgsql-bugs
On Fri, 4 Sep 2020 10:20:13 +0900
Michael Paquier <michael@paquier.xyz> wrote:
> On Thu, Sep 03, 2020 at 07:41:14PM +0200, Jehan-Guillaume de Rorthais wrote:
> > +$node->safe_psql('postgres',
> > + q{CREATE EXTENSION test_event_trigger VERSION '1.0'});
> > +$node->safe_psql('postgres',
> > + q{ALTER EXTENSION test_event_trigger UPDATE TO '2.0'});
> > +
> > +my $ans = $node->safe_psql('postgres', q{
> > + SELECT extversion
> > + FROM pg_catalog.pg_extension
> > + WHERE extname='test_event_trigger'
> > +});
> > +
> > +is($ans, '2.0', 'Extension test_event_trigger upgraded');
>
> I may be missing something of course, but if this just tests a
> sequence of SQL commands, why don't you just include a SQL test in
> text_extensions/sql/? That would be much cheaper than having to
> create a full scenario with a TAP script.
Indeed, it's much more simple and cheaper. However, the result is a bit
confusing as it's not a wrong SQL result, but the backend that actually crash.
The crash message itself appears in results/test_extensions.out, but no other
tests are run. Neither from the same SQL file or from other ones. That Means
the diff is quite large, but the error appears close from the top.
I don't know if some other crash regression tests has been included that way in
the past. But if this is OK, I can append the test to sql/test_extensions.sql
and remove the TAP. Let me know what you think.
Regards,
Commits
-
Fix use-after-free bug with event triggers and ALTER TABLE.
- cc623ed2f4ac 9.6.20 landed
- 93f726c04fb1 12.5 landed
- 7978ad025478 9.5.24 landed
- 66c036b4f143 11.10 landed
- 41c742a43242 10.15 landed
-
Fix use-after-free bug with event triggers in an extension script
- ced138e8cbac 14.0 landed
- 873cb8fca9b1 13.0 landed