Re: Assert failure of the cross-check for nullingrels

Richard Guo <guofenglinux@gmail.com>

From: Richard Guo <guofenglinux@gmail.com>
To: PostgreSQL-development <pgsql-hackers@postgresql.org>
Date: 2023-03-13T09:44:18Z
Lists: pgsql-hackers

Attachments

On Mon, Mar 13, 2023 at 5:03 PM Richard Guo <guofenglinux@gmail.com> wrote:

> Back to the original issue, if a join has more than one quals, actually
> we treat them as a whole when we check if identity 3 applies as well as
> when we adjust them to be suitable for commutation according to identity
> 3.  So when we check if a qual is computable at a given level, I think
> we should also consider the join's quals as a whole.  I'm thinking that
> we use a 'group' notion for RestrictInfos and then use the clause_relids
> of the 'group' in clause_is_computable_at.  Does this make sense?
>

I'm imagining something like attached (no comments and test cases yet).

Thanks
Richard

Commits

  1. In clause_is_computable_at(), test required_relids for clone clauses.

  2. Tweak API of new function clause_is_computable_at().