You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@doris.apache.org by GitBox <gi...@apache.org> on 2022/10/12 05:34:54 UTC

[GitHub] [doris] BiteTheDDDDt opened a new issue, #13313: [Bug](function) core dump on case when have 1000 condition

BiteTheDDDDt opened a new issue, #13313:
URL: https://github.com/apache/doris/issues/13313

   ### Search before asking
   
   - [X] I had searched in the [issues](https://github.com/apache/incubator-doris/issues?q=is%3Aissue) and found no similar issues.
   
   
   ### Version
   
   master
   
   ### What's Wrong?
   
   ```sql
   select 'number', count(*) from baseall group by
                  case
                  when k1=10 then 'zero'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1>10 then '+'
                  when k1<10 then '-' end order by 1, 2
   ```
   
   ```cpp
   terminate called after throwing an instance of 'std::bad_optional_access'
     what():  bad optional access
   *** Query id: 3a426f9b998243bb-b42f45f4a4348e85 ***
   *** Aborted at 1665552720 (unix time) try "date -d @1665552720" if you are using GNU date ***
   *** Current BE git commitID: 239e5b994 ***
   *** SIGABRT unkown detail explain (@0x41000008770) received by PID 34672 (TID 0x7f362f8dd700) from PID 34672; stack trace: ***
    0# doris::signal::(anonymous namespace)::FailureSignalHandler(int, siginfo_t*, void*) at /mnt/disk1/pxl/doris/be/src/common/signal_handler.h:420
    1# 0x00007F36C254D400 in /lib64/libc.so.6
    2# gsignal in /lib64/libc.so.6
    3# abort in /lib64/libc.so.6
    4# __gnu_cxx::__verbose_terminate_handler() [clone .cold] in /mnt/disk1/pxl/doris/output/be/lib/doris_be
    5# __cxxabiv1::__terminate(void (*)()) in /mnt/disk1/pxl/doris/output/be/lib/doris_be
    6# 0x000055E17236E3E1 in /mnt/disk1/pxl/doris/output/be/lib/doris_be
    7# 0x000055E17236E535 in /mnt/disk1/pxl/doris/output/be/lib/doris_be
    8# 0x000055E16E8091FE in /mnt/disk1/pxl/doris/output/be/lib/doris_be
    9# doris::Status doris::vectorized::FunctionCase<false, false>::execute_impl<doris::vectorized::ColumnString, true, true>(std::shared_ptr<doris::vectorized::IDataType const> const&, doris::vectorized::Block&, unsigned long, doris::vectorized::CaseWhenColumnHolder) in /mnt/disk1/pxl/doris/output/be/lib/doris_be
   10# doris::Status doris::vectorized::FunctionCase<false, false>::execute_get_then_null<doris::vectorized::ColumnString, true>(std::shared_ptr<doris::vectorized::IDataType const> const&, doris::vectorized::Block&, std::vector<unsigned long, std::allocator<unsigned long> > const&, unsigned long, unsigned long) at /mnt/disk1/pxl/doris/be/src/vec/functions/function_case.h:276
   11# doris::Status doris::vectorized::FunctionCase<false, false>::execute_get_when_null<doris::vectorized::ColumnString>(std::shared_ptr<doris::vectorized::IDataType const> const&, doris::vectorized::Block&, std::vector<unsigned long, std::allocator<unsigned long> > const&, unsigned long, unsigned long) at /mnt/disk1/pxl/doris/be/src/vec/functions/function_case.h:309
   12# doris::vectorized::FunctionCase<false, false>::execute_get_type(std::shared_ptr<doris::vectorized::IDataType const> const&, doris::vectorized::Block&, std::vector<unsigned long, std::allocator<unsigned long> > const&, unsigned long, unsigned long) in /mnt/disk1/pxl/doris/output/be/lib/doris_be
   13# doris::vectorized::FunctionCase<false, false>::execute_impl(doris_udf::FunctionContext*, doris::vectorized::Block&, std::vector<unsigned long, std::allocator<unsigned long> > const&, unsigned long, unsigned long) at /mnt/disk1/pxl/doris/be/src/vec/functions/function_case.h:334
   14# doris::vectorized::DefaultExecutable::execute_impl(doris_udf::FunctionContext*, doris::vectorized::Block&, std::vector<unsigned long, std::allocator<unsigned long> > const&, unsigned long, unsigned long) at /mnt/disk1/pxl/doris/be/src/vec/functions/function.h:465
   15# doris::vectorized::PreparedFunctionImpl::execute_without_low_cardinality_columns(doris_udf::FunctionContext*, doris::vectorized::Block&, std::vector<unsigned long, std::allocator<unsigned long> > const&, unsigned long, unsigned long, bool) in /mnt/disk1/pxl/doris/output/be/lib/doris_be
   16# doris::vectorized::PreparedFunctionImpl::execute(doris_udf::FunctionContext*, doris::vectorized::Block&, std::vector<unsigned long, std::allocator<unsigned long> > const&, unsigned long, unsigned long, bool) at /mnt/disk1/pxl/doris/be/src/vec/functions/function.cpp:272
   17# doris::vectorized::IFunctionBase::execute(doris_udf::FunctionContext*, doris::vectorized::Block&, std::vector<unsigned long, std::allocator<unsigned long> > const&, unsigned long, unsigned long, bool) at /mnt/disk1/pxl/doris/be/src/vec/functions/function.h:136
   18# doris::vectorized::VCaseExpr::execute(doris::vectorized::VExprContext*, doris::vectorized::Block*, int*) at /mnt/disk1/pxl/doris/be/src/vec/exprs/vcase_expr.cpp:102
   19# doris::vectorized::VExprContext::execute(doris::vectorized::Block*, int*) at /mnt/disk1/pxl/doris/be/src/vec/exprs/vexpr_context.cpp:44
   20# doris::vectorized::AggregationNode::_pre_agg_with_serialized_key(doris::vectorized::Block*, doris::vectorized::Block*) at /mnt/disk1/pxl/doris/be/src/vec/exec/vaggregation_node.cpp:938
   21# std::_Function_handler<doris::Status (doris::vectorized::Block*, doris::vectorized::Block*), std::_Bind_result<doris::Status, doris::Status (doris::vectorized::AggregationNode::*(doris::vectorized::AggregationNode*, std::_Placeholder<1>, std::_Placeholder<2>))(doris::vectorized::Block*, doris::vectorized::Block*)> >::_M_invoke(std::_Any_data const&, doris::vectorized::Block*&&, doris::vectorized::Block*&&) at /mnt/disk1/pxl/ldb/ldb_toolchain/bin/../lib/gcc/x86_64-linux-gnu/11/../../../../include/c++/11/bits/std_function.h:291
   22# doris::vectorized::AggregationNode::get_next(doris::RuntimeState*, doris::vectorized::Block*, bool*) at /mnt/disk1/pxl/doris/be/src/vec/exec/vaggregation_node.cpp:501
   23# doris::ExecNode::get_next_after_projects(doris::RuntimeState*, doris::vectorized::Block*, bool*) at /mnt/disk1/pxl/doris/be/src/exec/exec_node.cpp:864
   24# doris::PlanFragmentExecutor::get_vectorized_internal(doris::vectorized::Block**) at /mnt/disk1/pxl/doris/be/src/runtime/plan_fragment_executor.cpp:349
   25# doris::PlanFragmentExecutor::open_vectorized_internal() at /mnt/disk1/pxl/doris/be/src/runtime/plan_fragment_executor.cpp:297
   26# doris::PlanFragmentExecutor::open() in /mnt/disk1/pxl/doris/output/be/lib/doris_be
   27# doris::FragmentExecState::execute() at /mnt/disk1/pxl/doris/be/src/runtime/fragment_mgr.cpp:253
   28# doris::FragmentMgr::_exec_actual(std::shared_ptr<doris::FragmentExecState>, std::function<void (doris::PlanFragmentExecutor*)>) at /mnt/disk1/pxl/doris/be/src/runtime/fragment_mgr.cpp:499
   29# std::_Function_handler<void (), doris::FragmentMgr::exec_plan_fragment(doris::TExecPlanFragmentParams const&, std::function<void (doris::PlanFragmentExecutor*)>)::$_3>::_M_invoke(std::_Any_data const&) at /mnt/disk1/pxl/ldb/ldb_toolchain/bin/../lib/gcc/x86_64-linux-gnu/11/../../../../include/c++/11/bits/std_function.h:291
   30# doris::ThreadPool::dispatch_thread() in /mnt/disk1/pxl/doris/output/be/lib/doris_be
   31# doris::Thread::supervise_thread(void*) at /mnt/disk1/pxl/doris/be/src/util/thread.cpp:426
   32# start_thread in /lib64/libpthread.so.0
   33# clone in /lib64/libc.so.6
   
   ```
   
   ### What You Expected?
   
   fix
   
   ### How to Reproduce?
   
   _No response_
   
   ### Anything Else?
   
   _No response_
   
   ### Are you willing to submit PR?
   
   - [X] Yes I am willing to submit a PR!
   
   ### Code of Conduct
   
   - [X] I agree to follow this project's [Code of Conduct](https://www.apache.org/foundation/policies/conduct)
   


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: commits-unsubscribe@doris.apache.org.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org


---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@doris.apache.org
For additional commands, e-mail: commits-help@doris.apache.org


[GitHub] [doris] yiguolei closed issue #13313: [Bug](function) core dump on case when have 1000 condition

Posted by GitBox <gi...@apache.org>.
yiguolei closed issue #13313: [Bug](function) core dump on case when have 1000 condition
URL: https://github.com/apache/doris/issues/13313


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: commits-unsubscribe@doris.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org


---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@doris.apache.org
For additional commands, e-mail: commits-help@doris.apache.org