You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@ignite.apache.org by "Vladislav Pyatkov (Jira)" <ji...@apache.org> on 2026/08/19 16:06:00 UTC
[jira] [Created] (IGNITE-28999) Plugable SQL grama for Calcite SQL engine
Vladislav Pyatkov created IGNITE-28999:
------------------------------------------
Summary: Plugable SQL grama for Calcite SQL engine
Key: IGNITE-28999
URL: https://issues.apache.org/jira/browse/IGNITE-28999
Project: Ignite
Issue Type: Improvement
Reporter: Vladislav Pyatkov
h3.Motivation
SQL syntax varies across database systems. In some cases, Ignite needs to support non-ANSI SQL syntax or database-specific extensions.
Apache Calcite allows a custom SQL parser to be generated from an extended grammar. A similar approach can be used in Ignite so that plugins can introduce additional SQL statements or clauses while retaining the standard Calcite syntax and all Ignite-specific SQL extensions.
h3.Implementation Notes
Add the ability for an Ignite plugin to provide a custom SQL parser.
The Ignite-specific grammar files (`config.fmpp` and `parserImpls.ftl`) must be included as resources in the `ignite-calcite` artifact. A plugin can combine these resources with the base Calcite grammar, Ignite grammar, and its own grammar extensions to generate a custom parser at build time.
The generated parser can then be registered through the plugin-provided Calcite `FrameworkConfig`.
h3.Definition of Done
* Plugins can extend the Ignite SQL grammar with additional statements or clauses.
* A plugin-generated parser retains the standard Calcite and Ignite-specific SQL syntax.
* The default Ignite SQL parser remains unchanged when no grammar plugin is installed.
--
This message was sent by Atlassian Jira
(v8.20.10#820010)