From: Tom Lane <tgl@sss.pgh.pa.us>
To: Ilya Anfimov <ilan@tzirechnoy.com>
Cc: pgsql-bugs@lists.postgresql.org
Subject: Re: BUG #17646: create rule named "_RETURN" will cause pg core
Date: Mon, 17 Oct 2022 10:41:35 -0400
Message-ID: <2173460.1666017695@sss.pgh.pa.us> (raw)
In-Reply-To: <20221017143338.GA3864491@azor.tzirechnoy.ru>
References: <17646-70c93cfa40365776@postgresql.org>
<2164336.1666016275@sss.pgh.pa.us>
<20221017143338.GA3864491@azor.tzirechnoy.ru>
Ilya Anfimov <ilan@tzirechnoy.com> writes:
> On Mon, Oct 17, 2022 at 10:17:55AM -0400, Tom Lane wrote:
>> (Although the core dump is also not great --- something should've noticed
>> the bogosity of the plan earlier than this.)
> Id doesn't look much of a plan bogosity,
> but rather implicit deletion of the "_RETURN" on select rule.
Right, but then since there's no applicable rule, we end up generating
a plan that tries to do a seqscan directly on the view relation,
which of course lacks storage. Something should notice that a little
sooner than segfaulting because of rel->rd_tableam being NULL --- it's
not like we don't have hundreds of other sanity checks for not-really-
supposed-to-happen catalog corruption.
In versions before v12, I get something like
regression=# select * from v1;
ERROR: could not open file "base/16384/49209": No such file or directory
which is a shade less bad, but still not great.
regards, tom lane
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Reply to all the recipients using the --to and --cc options:
reply via email
To: pgsql-bugs@postgresql.org
Cc: tgl@sss.pgh.pa.us, ilan@tzirechnoy.com, pgsql-bugs@lists.postgresql.org
Subject: Re: BUG #17646: create rule named "_RETURN" will cause pg core
In-Reply-To: <2173460.1666017695@sss.pgh.pa.us>
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
This inbox is served by DDX for PostgreSQL; see mirroring instructions
for how to clone and mirror all data and code used for this inbox