← Back to team overview

maria-discuss team mailing list archive

Re: Query failure after minor upgrade 10.1.38 to 10.1.41

 

Hi, Benoit!

This looks like https://jira.mariadb.org/browse/MDEV-20265
Fixed in 10.1.42

On Sep 20, Benoit Plessis wrote:
> Hi Guys,
> 
> We are experiencing a break in backward compatibility with the lastest
> 10.1 release which got publied on the debian/stretch release.
> 
> Queries that worked before suddenly spit errors about unknown column.
> 
> It seems to be related to the use of "inner join" without on/using
> clause and left join and 'extra table':
> 
>     SELECT * FROM t1, t2 INNER JOIN t3 LEFT JOIN t4 ON t4.id = t3.id_t5
> WHERE t3.id = t2.id_t3 AND t1.id = X
> 
> will give: ERROR 1054 (42S22): Unknown column 't1.id' in 'where clause'
> 
> 
> Adding parenthesis around the join:
> 
>     SELECT * FROM t1, ( t2 INNER JOIN t3 LEFT JOIN t4 ON t4.id =
> t3.id_t5 ) WHERE t3.id = t2.id_t3 AND t1.id = X
> 
> or adding an "on" clause on the inner join seem to fix the issue
> 
>     SELECT * FROM t1, t2 INNER JOIN ON t3.id = t2.id_t3 t3 LEFT JOIN t4
> ON t4.id = t3.id_t5 WHERE t1.id = X
> 
> 
> Weirdly enough it's impossible to have a Left join without on/using
> clause, while the parser let us write an inner join without.
> 
> 
> I cannot find a related note in the changelogs ..
> 
Regards,
Sergei
VP of MariaDB Server Engineering
and security@xxxxxxxxxxx


References