From: | Richard Guo <guofenglinux(at)gmail(dot)com> |
---|---|
To: | David Rowley <dgrowleyml(at)gmail(dot)com> |
Cc: | Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us>, jian he <jian(dot)universality(at)gmail(dot)com>, PostgreSQL Hackers <pgsql-hackers(at)lists(dot)postgresql(dot)org> |
Subject: | Re: Revert: Remove useless self-joins *and* -DREALLOCATE_BITMAPSETS make server crash, regress test fail. |
Date: | 2024-05-07 10:18:54 |
Message-ID: | CAMbWs49skj4LBP4QQe5Pt31JadC4Z1p38s=GySkO+Jdn6PYWnQ@mail.gmail.com |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-hackers |
On Tue, May 7, 2024 at 1:46 PM David Rowley <dgrowleyml(at)gmail(dot)com> wrote:
> On Tue, 7 May 2024 at 17:28, Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us> wrote:
> > What I'm trying to figure out here is whether we have a live bug
> > in this area in released branches; and if so, why we've not seen
> > reports of that.
>
> We could check what portions of REALLOCATE_BITMAPSETS are
> backpatchable. It may not be applicable very far back because of v16's
> 00b41463c. The bms_del_member() would have left a zero set rather than
> doing bms_free() prior to that commit. There could be a bug in v16.
I also think there might be a bug in v16, as long as
'sjinfo->syn_lefthand' and 'rinfo->outer_relids' are referencing the
same bitmapset and the content of this bitmapset is altered through
'sjinfo->syn_lefthand' without 'rinfo->outer_relids' being aware of
these changes. I tried to compose a query that can trigger this bug but
failed though.
Another thing that comes to my mind is that this issue shows that
RestrictInfo.outer_relids could contain references to removed rels and
joins, and RestrictInfo.outer_relids could be referenced after the
removal of useless left joins. Currently we do not have a mechanism to
clean out the bits in outer_relids during outer join removal. That is
to say, RestrictInfo.outer_relids might be referenced while including
rels that should have been removed. I'm not sure if this is a problem.
Thanks
Richard
From | Date | Subject | |
---|---|---|---|
Next Message | Daniel Gustafsson | 2024-05-07 10:36:24 | Re: Cutting support for OpenSSL 1.0.1 and 1.0.2 in 17~? |
Previous Message | Richard Guo | 2024-05-07 10:05:03 | Re: Revert: Remove useless self-joins *and* -DREALLOCATE_BITMAPSETS make server crash, regress test fail. |