Bug #103236 Duplicate empty values after left join
Submitted: 7 Apr 2021 13:47 Modified: 10 Apr 2021 7:04
Reporter: sky sky Email Updates:
Status: Verified Impact on me:
None 
Category:MySQL Server: DML Severity:S1 (Critical)
Version:8.0.20-8.0.23 OS:CentOS (centos7)
Assigned to: CPU Architecture:x86

[7 Apr 2021 13:47] sky sky
Description:
I used this statement to query between versions 8.0.20-8.0.23 and found that there would be duplicate empty values in the results. Before version 8.0.19, the results were normal

How to repeat:
SELECT *
        FROM
        (
            SELECT  *  FROM dsfa_rm WHERE  `dsfa_rm`.`ds_deleted` = '0' AND `dsfa_rm`.`Type_value` IN (0,8)
        ) AS `dsfa_rm`
        LEFT JOIN  (
            SELECT  *  FROM dsfa_mm WHERE  `dsfa_mm`.`ds_deleted` = '0'
        ) AS `dsfa_mm`  ON `dsfa_rm`.`ID` = `dsfa_mm`.`at` AND `dsfa_rm`.`Type_value` = 8
        LEFT JOIN  (
            SELECT  *  FROM dsfa_mm_valueattributes WHERE  `dsfa_mm_valueattributes`.`ds_deleted` = '0'
        ) AS  `dsfa_mm_valueattributes` ON `dsfa_mm`.dsfa_mm_id = `dsfa_mm_valueattributes`.dsfa_mm_id
[8 Apr 2021 13:16] MySQL Verification Team
Thank you for the bug report and test case.
[9 Apr 2021 2:16] sky sky
Is this problem found elsewhere? Was it an accident or a bug?
[9 Apr 2021 13:20] MySQL Verification Team
Hi Mr. sky,

It is a true bug.

Thank you for your contribution.
[10 Apr 2021 7:04] sky sky
Okay, is this bug going to be resolved in the new version? And when will it be available? 
Is there any other way to temporarily avoid this bug?
[12 Apr 2021 12:47] MySQL Verification Team
Hi Mr. sky,

We do not have answer to your questions.

So far, no viable workaround is available. Also, our bug scheduling process is quite complex and long.