Re: BUG #17066: Cache lookup failed when null (unknown) is passed as anycompatiblemultirange
Alexander Korotkov <aekorotkov@gmail.com>
From: Alexander Korotkov <aekorotkov@gmail.com>
To: Tom Lane <tgl@sss.pgh.pa.us>
Cc: Alvaro Herrera <alvherre@2ndquadrant.com>,
Neil Chen <carpenter.nail.cz@gmail.com>, Alexander Law <exclusion@gmail.com>, PostgreSQL mailing lists <pgsql-bugs@lists.postgresql.org>, Paul A Jungwirth <pj@illuminatedcomputing.com>
Date: 2021-07-27T15:34:10Z
Lists: pgsql-bugs
On Wed, Jul 21, 2021 at 12:54 AM Tom Lane <tgl@sss.pgh.pa.us> wrote: > Alexander Korotkov <aekorotkov@gmail.com> writes: > > Do I understand correctly that enforce_generic_type_consistency() is > > called only after check_generic_type_consistency() returned true? > > If so, that means some of the checks are redundant. Therefore, we can > > replace ereport()'s with Assert()'s. > > They are not redundant, IIRC. I forget the exact mechanism for > reaching them, but it likely has something to do with aggregates > or variadic functions. > > In any case, apologies for taking so long to get back to this. Here's > a proposed patch (based in part on Neil's earlier patch). This patch looks good to me. Besides fixing the particular bug report, it seems that the situation of mismatching range and multirange types in arguments is now handled correctly. ------ Regards, Alexander Korotkov
Commits
-
Fix bugs in polymorphic-argument resolution for multiranges.
- b7ea0e8c41f1 14.0 landed
- 336ea6e6ff11 15.0 landed
-
Fixes for multirange selectivity estimation
- 322e82b77ef4 14.0 landed
- 178ec460db0a 15.0 landed