Details
-
Sub-task
-
Status: Closed
-
Major
-
Resolution: Fixed
-
0.10.0
-
None
-
None
Description
To reproduce the failure, please run
ant -Dhadoopversion=20 ... -Dtest-e2e-deploy-local
ant -Dhadoopversion=20 ... -Dtest-e2e-local -Dtests.to.run="-t FilterBoolean_23"
This is a regression from PIG-1314.
PIG-1314 reverted the following change made by PIG-2593 that had made it possible to filter by a boolean value.
--- src/org/apache/pig/parser/QueryParser.g +++ src/org/apache/pig/parser/QueryParser.g @@ -391,13 +391,16 @@ or_cond : and_cond ( OR^ and_cond )* and_cond : unary_cond ( AND^ unary_cond )* ; -unary_cond : LEFT_PAREN! cond RIGHT_PAREN! - | not_cond - | expr rel_op^ expr +unary_cond : expr rel_op^ expr + | LEFT_PAREN! cond RIGHT_PAREN! + | not_cond | func_eval | null_check_cond + | bool_cond ; +bool_cond: expr -> ^(BOOL_COND expr); + not_cond : NOT^ unary_cond ; @@ -784,6 +787,7 @@ eid : rel_str_op | TRUE | FALSE | REALIAS + | BOOL_COND ;
This makes FilterBoolean_23/24 in e2e test fail.
If this change is intended, we should disable FilterBoolean_23/24.
If not, we should put the reverted change back to the grammar.
Thanks!