squash! added a stateless test to check if an analyser bug described in https://github.com/ClickHouse/ClickHouse/issues/66333 is still happening

This commit is contained in:
maxvostrikov 2024-07-12 12:49:38 +02:00
parent 2e0f553ce7
commit 64764a531f
2 changed files with 14 additions and 4 deletions

View File

@ -2,3 +2,5 @@ this query used to be broken in old analyser:
c1 c2 yes true
this query worked:
yes true
experimental analyzer:
c1 c2 yes true

View File

@ -7,8 +7,8 @@ AS SELECT
select 'this query used to be broken in old analyser:';
SELECT *,
multiIf(column_b IN (SELECT 'c2' as someproduct), 'yes', 'no') AS condition_1,
multiIf(column_b = 'c2', 'true', 'false') AS condition_2
multiIf(column_b IN (SELECT 'c2' as someproduct), 'yes', 'no') AS condition_1,
multiIf(column_b = 'c2', 'true', 'false') AS condition_2
FROM (SELECT column_a, column_b FROM bugcheck1)
WHERE (condition_1 IN ('yes')) AND (condition_2 in ('true'))
settings allow_experimental_analyzer=0;
@ -16,8 +16,16 @@ settings allow_experimental_analyzer=0;
select 'this query worked:';
SELECT
multiIf(column_b IN (SELECT 'c2' as someproduct), 'yes', 'no') AS condition_1,
multiIf(column_b = 'c2', 'true', 'false') AS condition_2
multiIf(column_b IN (SELECT 'c2' as someproduct), 'yes', 'no') AS condition_1,
multiIf(column_b = 'c2', 'true', 'false') AS condition_2
FROM (SELECT column_a, column_b FROM bugcheck1)
WHERE (condition_1 IN ('yes')) AND (condition_2 in ('true'))
settings allow_experimental_analyzer=0;
select 'experimental analyzer:';
SELECT *,
multiIf(column_b IN (SELECT 'c2' as someproduct), 'yes', 'no') AS condition_1,
multiIf(column_b = 'c2', 'true', 'false') AS condition_2
FROM (SELECT column_a, column_b FROM bugcheck1)
WHERE (condition_1 IN ('yes')) AND (condition_2 in ('true'))
settings allow_experimental_analyzer=1;