[ https://issues.apache.org/jira/browse/PIG-3418?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13737005#comment-13737005 ]
Xuefu Zhang commented on PIG-3418: ---------------------------------- You may use \u followed by the unicode of any char. > ; in constant breaks parsing > ---------------------------- > > Key: PIG-3418 > URL: https://issues.apache.org/jira/browse/PIG-3418 > Project: Pig > Issue Type: Bug > Components: parser > Reporter: Sergey > Priority: Blocker > Fix For: 0.11 > > > Hi. > 1. If you use ; in pig script it breaks parsing > 2. It's impossible to pass ; as a value for parameter. Pig starts grunt and > doesn't start script. > Here is example: > {code} > A = LOAD 'myFile'; > B = FOREACH A GENERATE ( host == ';' ? 1 : 0); --line #5 > {code} > Here is stacktrace: > {code} > Pig Stack Trace > --------------- > ERROR 1200: <file test.pig, line 5, column 0> mismatched character '<EOF>' > expecting ''' > org.apache.pig.impl.logicalLayer.FrontendException: ERROR 1000: Error during > parsing. <file test.pig, line 5, column 0> mismatched character '<EOF>' > expecting ''' > at org.apache.pig.PigServer$Graph.parseQuery(PigServer.java:1608) > at org.apache.pig.PigServer$Graph.registerQuery(PigServer.java:1547) > at org.apache.pig.PigServer.registerQuery(PigServer.java:518) > at > org.apache.pig.tools.grunt.GruntParser.processPig(GruntParser.java:991) > at > org.apache.pig.tools.pigscript.parser.PigScriptParser.parse(PigScriptParser.java:412) > at org.apache.pig.tools.grunt.GruntParser.parseStopOnError(GruntParser.j > ava:194) > at > org.apache.pig.tools.grunt.GruntParser.parseStopOnError(GruntParser.java:170) > at org.apache.pig.tools.grunt.Grunt.exec(Grunt.java:84) > at org.apache.pig.Main.run(Main.java:604) > at org.apache.pig.Main.main(Main.java:157) > at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) > at > sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57) > at > sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) > at java.lang.reflect.Method.invoke(Method.java:616) > at org.apache.hadoop.util.RunJar.main(RunJar.java:208) > Caused by: Failed to parse: <file test.pig, line 5, column 0> mismatched > character '<EOF>' expecting ''' > at > org.apache.pig.parser.QueryParserDriver.parse(QueryParserDriver.java:237) > at > org.apache.pig.parser.QueryParserDriver.parse(QueryParserDriver.java:177) > at org.apache.pig.PigServer$Graph.parseQuery(PigServer.java:1600) > ... 14 more > {code} > This also would not run. > {code} > pig -p param=; some_pig_script.pig > {code} > grunt would be launched. -- This message is automatically generated by JIRA. If you think it was sent incorrectly, please contact your JIRA administrators For more information on JIRA, see: http://www.atlassian.com/software/jira