You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@calcite.apache.org by "Enrico Olivelli (JIRA)" <ji...@apache.org> on 2017/11/22 15:32:00 UTC
[jira] [Comment Edited] (CALCITE-2061) Support for dynamic
parameters in offset/fetch (limit)
[ https://issues.apache.org/jira/browse/CALCITE-2061?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16262796#comment-16262796 ]
Enrico Olivelli edited comment on CALCITE-2061 at 11/22/17 3:31 PM:
--------------------------------------------------------------------
I have integrated your changes [~julianhyde]
I can't find how to resolve the value for RexNode which is not a literal
this is an example of error
can you point me the correct way to do it ?
{code}
java.lang.AssertionError: not a literal: ?0
at org.apache.calcite.rex.RexLiteral.findValue(RexLiteral.java:960)
at org.apache.calcite.rex.RexLiteral.intValue(RexLiteral.java:935)
at org.apache.calcite.adapter.enumerable.EnumerableLimit.implement(EnumerableLimit.java:120)
at org.apache.calcite.adapter.enumerable.EnumerableRelImplementor.visitChild(EnumerableRelImplementor.java:103)
at org.apache.calcite.adapter.enumerable.EnumerableCalc.implement(EnumerableCalc.java:124)
at org.apache.calcite.adapter.enumerable.EnumerableRelImplementor.implementRoot(EnumerableRelImplementor.java:108)
at org.apache.calcite.adapter.enumerable.EnumerableInterpretable.toBindable(EnumerableInterpretable.java:92)
at org.apache.calcite.prepare.CalcitePrepareImpl$CalcitePreparingStmt.implement(CalcitePrepareImpl.java:1261)
at org.apache.calcite.prepare.Prepare.prepareSql(Prepare.java:330)
at org.apache.calcite.prepare.Prepare.prepareSql(Prepare.java:229)
{core}
was (Author: eolivelli):
I have integrated your changes [~julianhyde]
I can't find how to resolve the value for RexNode which is not a literal
this is an example of error
can you point me the correct way to do it ?
{code}
java.lang.AssertionError: not a literal: ?0
at org.apache.calcite.rex.RexLiteral.findValue(RexLiteral.java:960)
at org.apache.calcite.rex.RexLiteral.intValue(RexLiteral.java:935)
at org.apache.calcite.adapter.enumerable.EnumerableLimit.implement(EnumerableLimit.java:120)
at org.apache.calcite.adapter.enumerable.EnumerableRelImplementor.visitChild(EnumerableRelImplementor.java:103)
at org.apache.calcite.adapter.enumerable.EnumerableCalc.implement(EnumerableCalc.java:124)
at org.apache.calcite.adapter.enumerable.EnumerableRelImplementor.implementRoot(EnumerableRelImplementor.java:108)
at org.apache.calcite.adapter.enumerable.EnumerableInterpretable.toBindable(EnumerableInterpretable.java:92)
at org.apache.calcite.prepare.CalcitePrepareImpl$CalcitePreparingStmt.implement(CalcitePrepareImpl.java:1261)
at org.apache.calcite.prepare.Prepare.prepareSql(Prepare.java:330)
at org.apache.calcite.prepare.Prepare.prepareSql(Prepare.java:229)
{core}
> Support for dynamic parameters in offset/fetch (limit)
> ------------------------------------------------------
>
> Key: CALCITE-2061
> URL: https://issues.apache.org/jira/browse/CALCITE-2061
> Project: Calcite
> Issue Type: Improvement
> Components: core
> Affects Versions: 1.15.0
> Reporter: Enrico Olivelli
> Assignee: Julian Hyde
> Priority: Critical
>
> Fetch/Offset already support RexNode, it will be useful to support Dynamic parameters as well.
> This implementation is needed to be able to run Yahoo YCSB JDBC benchmarks which does large use of this syntax
> select .... LIMIT ?
--
This message was sent by Atlassian JIRA
(v6.4.14#64029)