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