On Wed, Jul 10, 2019 at 04:57:54PM -0400, Tom Lane wrote:
Andreas Seltenreich <[email protected]> writes:running sqlsmith on the regression database of REL_12_STABLE at ff597b656f yielded a crash in mcv_get_match_bitmap. I can reproduce it with the following query on the regression database: select filler1 from mcv_lists where a is not null and (select 42) <= c;Seems to be the same problem I just complained of in the other thread: mcv_get_match_bitmap has an untenable assumption that "is a pseudoconstant" means "is a Const".
Yeah, that's a bug. Will fix (not sure how yet). BTW which other thread? I don't see any other threads mentioning this function.
I notice it's also assuming that the Const must be non-null. It's not really easy to crash it that way, because if you just write "null <= c" that'll get reduced to constant-NULL earlier. But I bet there's a way.
Hmmm, I did not think of that. regards -- Tomas Vondra http://www.2ndQuadrant.com PostgreSQL Development, 24x7 Support, Remote DBA, Training & Services
