[
https://issues.apache.org/jira/browse/CALCITE-4705?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
jibiyr updated CALCITE-4705:
----------------------------
Description:
Dear community,
calcite parse support hint now,but it can not parse hint like follow,
_*select /*+ skewjoin(a(c0, c1)) */ * from T0 a join T1 b on a.c0 = b.c0,*_
this is the bnf which is calcite supported now,
{code:java}
//
hint:
hintName
| hintName '(' hintOptions ')'
hintOptions:
hintKVOption [, hintKVOption ]*
| optionName [, optionName ]*
| optionValue [, optionValue ]*
hintKVOption:
optionName '=' stringLiteral
| stringLiteral '=' stringLiteral
optionValue:
stringLiteral
| numericLiteral
{code}
I think the hintOptions should support the function call pattern,like a(c0,c1).
And this pattern can be parsed by spark/presto now.
was:
Dear community,
calcite parse support hint now,but it can not parse hint like follew,
_*select /*+ skewjoin(a(c0, c1)) */ * from T0 a join T1 b on a.c0 = b.c0,*_
this is the bnf which is calcite supported now,
{code:java}
//
hint:
hintName
| hintName '(' hintOptions ')'
hintOptions:
hintKVOption [, hintKVOption ]*
| optionName [, optionName ]*
| optionValue [, optionValue ]*
hintKVOption:
optionName '=' stringLiteral
| stringLiteral '=' stringLiteral
optionValue:
stringLiteral
| numericLiteral
{code}
I think the hintOptions should support the function call pattern,like a(c0,c1).
and this pattern can be parsed by spark/presto now.
> calcite should support hint like /*+ skewjoin(a(c0, c1)) */
> -----------------------------------------------------------
>
> Key: CALCITE-4705
> URL: https://issues.apache.org/jira/browse/CALCITE-4705
> Project: Calcite
> Issue Type: Improvement
> Components: core
> Affects Versions: 1.27.0
> Reporter: jibiyr
> Assignee: jibiyr
> Priority: Minor
> Fix For: 1.28.0
>
>
> Dear community,
> calcite parse support hint now,but it can not parse hint like follow,
> _*select /*+ skewjoin(a(c0, c1)) */ * from T0 a join T1 b on a.c0 = b.c0,*_
> this is the bnf which is calcite supported now,
> {code:java}
> //
> hint:
> hintName
> | hintName '(' hintOptions ')'
> hintOptions:
> hintKVOption [, hintKVOption ]*
> | optionName [, optionName ]*
> | optionValue [, optionValue ]*
> hintKVOption:
> optionName '=' stringLiteral
> | stringLiteral '=' stringLiteral
> optionValue:
> stringLiteral
> | numericLiteral
> {code}
> I think the hintOptions should support the function call pattern,like
> a(c0,c1). And this pattern can be parsed by spark/presto now.
--
This message was sent by Atlassian Jira
(v8.3.4#803005)