pig-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Jie Li (JIRA)" <j...@apache.org>
Subject [jira] [Commented] (PIG-2593) Filter by a boolean value does not work
Date Fri, 01 Jun 2012 18:50:23 GMT

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

Jie Li commented on PIG-2593:
-----------------------------

I got slightly different results:

||Case||Description||Query||Result||
|1|declare as boolean and filter as boolean|a = load 'allscalar10k' as (name, age, gpa, instate:boolean);
b = filter a by instate==TRUE;
dump b;|successful|
|2|explicitly cast to boolean|a = load 'allscalar10k' as (name, age, gpa, instate);
b = filter a by (boolean) instate == TRUE;
dump b;|successful|
|3|implicitly conversion to string|a = load 'allscalar10k' as (name, age, gpa, instate);
b = filter a by instate == 'true';
dump b;|successful|
|4|implicitly conversion to boolean|a = load 'allscalar10k' as (name, age, gpa, instate);
b = filter a by instate==TRUE;
dump b;|Error:In alias b, incompatible types in Equal Operator left hand side:bytearray right
hand side:boolean|
|5|declare as boolean and filter| a = load 'allscalar10k' as (name, age, gpa, instate:boolean);
b = filter a by instate;
dump b;|Error: <file 2.pig, line 2, column 23>  mismatched input ';' expecting IS|

So we have two cases not working here. We want to make Case 4 work by supporting implicit
conversion of boolean, as we've already supported implicit conversion of chararray in Case
3.  Also it makes sense that Case 5 should work as boolean is a valid conditional expression.
                
> Filter by a boolean value does not work
> ---------------------------------------
>
>                 Key: PIG-2593
>                 URL: https://issues.apache.org/jira/browse/PIG-2593
>             Project: Pig
>          Issue Type: Bug
>          Components: build
>            Reporter: Daniel Dai
>
> The following script does not work:
> {code}
> a = load 'allscalar10k' as (name, age, gpa, instate);
> b = filter a by instate;
> explain b;
> {code}
> Exception:
> ERROR 1200: <file 18.pig, line 2, column 23>  mismatched input ';' expecting IS
> org.apache.pig.impl.logicalLayer.FrontendException: ERROR 1000: Error during parsing.
<file 18.pig, line 2, column 23>  mismatched input ';' expecting IS
>         at org.apache.pig.PigServer$Graph.parseQuery(PigServer.java:1598)
>         at org.apache.pig.PigServer$Graph.registerQuery(PigServer.java:1541)
>         at org.apache.pig.PigServer.registerQuery(PigServer.java:541)
>         at org.apache.pig.tools.grunt.GruntParser.processPig(GruntParser.java:945)
>         at org.apache.pig.tools.pigscript.parser.PigScriptParser.parse(PigScriptParser.java:392)
>         at org.apache.pig.tools.grunt.GruntParser.parseStopOnError(GruntParser.java:190)
>         at org.apache.pig.tools.grunt.GruntParser.parseStopOnError(GruntParser.java:166)
>         at org.apache.pig.tools.grunt.Grunt.exec(Grunt.java:84)
>         at org.apache.pig.Main.run(Main.java:599)
>         at org.apache.pig.Main.main(Main.java:153)
> Caused by: Failed to parse: <file 18.pig, line 2, column 23>  mismatched input
';' expecting IS
>         at org.apache.pig.parser.QueryParserDriver.parse(QueryParserDriver.java:222)
>         at org.apache.pig.parser.QueryParserDriver.parse(QueryParserDriver.java:164)
>         at org.apache.pig.PigServer$Graph.parseQuery(PigServer.java:1590)
>         ... 9 more
> It works if we change the script into:
> {code}
> a = load 'allscalar10k' as (name, age, gpa, instate);
> b = filter a by instate==TRUE;
> explain b;
> {code}

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

Mime
View raw message