From: | David Rowley <dgrowleyml(at)gmail(dot)com> |
---|---|
To: | Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us> |
Cc: | David Rowley <drowley(at)postgresql(dot)org>, Jaime Casanova <jcasanov(at)systemguards(dot)com(dot)ec>, PostgreSQL-development <pgsql-hackers(at)postgresql(dot)org> |
Subject: | Re: jsonb crash |
Date: | 2021-09-29 21:17:19 |
Message-ID: | CAApHDvozNHQfqUCfcZ2+J4jJWXHG8AHUU+VD94-ZLda25fWFxA@mail.gmail.com |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-hackers |
On Thu, 30 Sept 2021 at 10:09, Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us> wrote:
>
> David Rowley <dgrowleyml(at)gmail(dot)com> writes:
> > Maybe we can cache the left and the right type's hash function and use
> > the correct one in paraminfo_get_equal_hashops().
>
> Um ... it seems to have correctly identified the cache key expressions,
> so why isn't it just doing exprType on those? The jsonb_exists operator
> seems entirely irrelevant here.
This is down to the caching stuff I added to RestrictInfo to minimise
the amount of work done during the join search. I cached the hash
equal function in RestrictInfo so I didn't have to check what that was
each time we consider a join. The problem is, that I did a bad job of
taking inspiration from check_hashjoinable() which just looks at the
left type.
David
From | Date | Subject | |
---|---|---|---|
Next Message | Tom Lane | 2021-09-29 21:20:09 | Re: jsonb crash |
Previous Message | Tom Lane | 2021-09-29 21:12:45 | Re: when the startup process doesn't (logging startup delays) |