ignite-issues mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Sergey Kalashnikov (JIRA)" <j...@apache.org>
Subject [jira] [Comment Edited] (IGNITE-6276) SQL: Investigate parser generators
Date Wed, 08 Nov 2017 15:16:00 GMT

    [ 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)

Mime
View raw message