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

Sergey Kalashnikov edited comment on IGNITE-6276 at 11/8/17 3:15 PM:
---------------------------------------------------------------------

We have identified several shortcomings with the generated parser approach.
- Error messages generated by parser are not customizable enough to the point 
when user may easily understand them. I doubt a user will understand messages 
like 'no viable alternative'.
- The ANTLR lexer cannot be controlled by parser making many useful things 
impossible.
- The performance assesment results aren't really great in terms of scalability.

I have attached a patch for history purposes.


was (Author: skalashnikov):
We have identified several shortcomings with the generated parser approach.
- Error messages generated by parser are not customizable enough to the point 
when user may easily understand them. I doubt a user will understand messages 
like 'no viable alternative'.
- The ANTLR lexer cannot be controlled by parser making many useful things 
impossible.
- The performance assesment results aren't really great in terms of scalability.

> SQL: Investigate parser generators
> ----------------------------------
>
>                 Key: IGNITE-6276
>                 URL: https://issues.apache.org/jira/browse/IGNITE-6276
>             Project: Ignite
>          Issue Type: Improvement
>          Components: sql
>            Reporter: Sergey Kalashnikov
>            Assignee: Sergey Kalashnikov
>             Fix For: 2.4
>
>         Attachments: IGNITE-6276.patch, antlr4-ignite.zip
>
>
> Now ignite relies on H2 for SQL processing. It has been discussed many times 
> on dev list that we must start introducing our own SQL core in small 
> incremental steps. 
> Let's start with analyzing the options for implementing the parser part.
> We may begin with http://www.antlr.org/ and create a simple separate project 
> that would generate the parser for some simple DDL commands like DROP INDEX.
> This will give us a hint on the complexity and limitations of the approach.
> 1) Set up Maven/ANTLR.
> 2) Prepare lexer/parser.
> 3) Generate.
> 4) Write a test.



--
This message was sent by Atlassian JIRA
(v6.4.14#64029)

Reply via email to