You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@drill.apache.org by "Jinfeng Ni (JIRA)" <ji...@apache.org> on 2015/08/24 01:41:45 UTC

[jira] [Resolved] (DRILL-3666) Replace assert uses in Drill's interpreter to catch error when it happens.

     [ https://issues.apache.org/jira/browse/DRILL-3666?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Jinfeng Ni resolved DRILL-3666.
-------------------------------
    Resolution: Fixed

Fixed in commit : 32ee76d2eea21fc0655cd104d0807fcf351334b9

> Replace assert uses in Drill's interpreter to catch error when it happens. 
> ---------------------------------------------------------------------------
>
>                 Key: DRILL-3666
>                 URL: https://issues.apache.org/jira/browse/DRILL-3666
>             Project: Apache Drill
>          Issue Type: Bug
>          Components: Query Planning & Optimization
>    Affects Versions: 1.1.0
>            Reporter: Jinfeng Ni
>            Assignee: Jinfeng Ni
>         Attachments: 0001-DRILL-3666-Replace-assert-check-in-InterpreterEvalua.patch
>
>
> Some code in interpreter uses assert to check certain conditions. However, if  assertion enabled (-ea) is not turned on, such checking would skip. That might cause issues, since the caller may not know an error has happened in the interpreter, and will continue the execution.  This has caused issue in partition pruning recently, when a bug in partition pruning passes an invalid expression to interpreter, yet the assert checking was skipped and end up with incorrect query result. 
> In stead, we should remove assert in interpreter, and make sure throw exception when certain conditions are not met. It's up the caller to decide what to do in the case of exception.
>  



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)