Bug #110590 Lateral join assertion error
Submitted: 3 Apr 2023 9:11 Modified: 3 Apr 2023 9:21
Reporter: Pedro Ferreira Email Updates:
Status: Verified Impact on me:
None 
Category:MySQL Server: Optimizer Severity:S6 (Debug Builds)
Version:8.0.32 OS:Ubuntu (22.04)
Assigned to: CPU Architecture:x86 (x86_64)
Tags: having, LATERAL, where

[3 Apr 2023 9:11] Pedro Ferreira
Description:
Run these statements:

CREATE TABLE t3 (c0 INT);
SELECT 1 FROM (SELECT 1) x(x) JOIN LATERAL (SELECT locate(x.x, 'a', t3.c0) FROM t3 HAVING (SELECT 1) = (SELECT 1)) y(y) ON TRUE WHERE y.y;

The SELECT query will trigger an assertion error at sql/sql_derived.cc:517:
assert(depended_from == nullptr ||
       depended_from == ident->depended_from ||
       depended_from == ident->context->query_block);

The compilation parameters are the same as issue 108148:

-DWITH_DEBUG=1 -DWITH_ASAN=ON -DWITH_UBSAN=ON and boost library version 1.77

How to repeat:
Run the statements above.
[3 Apr 2023 9:21] MySQL Verification Team
Hello Pedro Ferreira,

Thank you for the report and feedback.
Observed that 8.0.32 debug build is affected.

regards,
Umesh