[ 
https://issues.apache.org/jira/browse/CALCITE-2314?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16488907#comment-16488907
 ] 

Zoltan Haindrich commented on CALCITE-2314:
-------------------------------------------

[~julianhyde] I've fixed the remaining tests, and opened a PR for your dev 
branch https://github.com/julianhyde/calcite/pull/12

> Verify RexNode transformations by evaluating before and after expressions 
> against sample values
> -----------------------------------------------------------------------------------------------
>
>                 Key: CALCITE-2314
>                 URL: https://issues.apache.org/jira/browse/CALCITE-2314
>             Project: Calcite
>          Issue Type: Bug
>            Reporter: Julian Hyde
>            Assignee: Julian Hyde
>            Priority: Major
>
> Verify transformations of {{RexNode}} expressions (such as simplification, 
> see {{class RexSimplify}}) by evaluating before and after expressions against 
> sample values.
> Given an expression, say {{($0 < $1) IS NOT NULL}} we can bind $0 and $1 to 
> values (0, 1, null) and evaluate the 9 combinations. We can also evaluate the 
> simplified expression {{$0 IS NOT NULL AND $1 IS NOT NULL}} and see whether 
> it gives the same value for each of the combinations.
> We can add this checking to existing tests with little effort. It will 
> improve confidence that we handle 3-valued logic correctly.
> As part of this task, we will create an interpreter {{class RexInterpreter}} 
> that evaluates RexNode expressions for common operators without generating 
> code. It is not very efficient and does not cover very many types, functions 
> and operators, but should be easy for people to extend to add a few more.



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)

Reply via email to