I attached the previous version in that letter by mistake, so v10 is
actual now with included tests and some more comments about queries in
regression test.
On 30.09.2026 12:42, Alena Rybakina wrote:
> Hi! Thank you for the review!
>
> On 28.09.2026 18:56, Ilia Evdokimov wrote:
>> Hi Alena,
>>
>> Thanks for v8. The walker is much easier to follow now, and all of
>> Peter's points look addressed to me.
>>
>> I compared the results of random EXISTS/NOT EXISTS queries with and
>> without the pull-up (adding OFFSET 0 to the sub-select blocks it).
>> The queries had nested inner and outer joins in the sub-select,
>> correlated and uncorrelated quals in the ON clauses, and NULLs in the
>> data. About 13.5k queries ran, and about 1250 of them go through the
>> new code path. I found no wrong results and no assertion failures, so
>> the approach looks correct to me.
> Thank you for testing! I haven't found any issues either during
> Smith's test or in a one-hour SQLancer run.
>>
>> My main comment is about the regression tests. A few things are
>> missing in the regression tests:
>>
>> 1. anti join cases
>> 2. query results not only EXPLAIN output
>> 3. An EXISTS sublink in the ON clause of an outer join in the parent
>> query, where the moved qual interacts with the available_rels check.
>>
> Agreed and added tests. Thanks!
>