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

Zheng Shao updated HIVE-416:
----------------------------

    Attachment: HIVE-416.1.patch

This patch changed Hive.g to disable backtrack.

All ambiguity are resolved except an unresolvable one: "Identifier DOT 
Identifier". This one will require some work in the SemanticAnalyzer as well.

We had to add a little restriction to the grammar:
1. "SELECT TRANSFORM" will have to have brackets around all expression List 
after it. Originally the brackets are optional;
2. "MAP" and "REDUCE" cannot have brackets around all expression list after it 
(just like SELECT). Originally we allow optional brackets.
Both changes are required if we want to disable backtrack.


> Get rid of backtrack in Hive.g
> ------------------------------
>
>                 Key: HIVE-416
>                 URL: https://issues.apache.org/jira/browse/HIVE-416
>             Project: Hadoop Hive
>          Issue Type: Improvement
>          Components: Query Processor
>    Affects Versions: 0.4.0
>            Reporter: Zheng Shao
>            Assignee: Zheng Shao
>             Fix For: 0.4.0
>
>         Attachments: HIVE-416.1.patch
>
>
> Hive.g now still uses "backtrack=true". "backtrack" not only slows down the 
> parsing in case of error, it can also produce wrong syntax error messages 
> (usually based on the last try of the backtracking).
> We should follow 
> http://www.antlr.org/wiki/display/ANTLR3/How+to+remove+global+backtracking+from+your+grammar
>  to remove the need of doing backtrack.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.

Reply via email to