You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@calcite.apache.org by "Piotr Bojko (JIRA)" <ji...@apache.org> on 2018/04/18 14:46:00 UTC
[jira] [Created] (CALCITE-2264) User defined function in json
schema pushed to jdbc subschema.
Piotr Bojko created CALCITE-2264:
------------------------------------
Summary: User defined function in json schema pushed to jdbc subschema.
Key: CALCITE-2264
URL: https://issues.apache.org/jira/browse/CALCITE-2264
Project: Calcite
Issue Type: Bug
Reporter: Piotr Bojko
Assignee: Julian Hyde
Considering chinook tests, having following schema:
{code:json}
{
"version": "1.0",
"defaultSchema": "ENHANCED",
"schemas": [
{
"name": "CHINOOK",
"type": "jdbc",
"jdbcDriver": "org.hsqldb.jdbc.JDBCDriver",
"jdbcUrl": "jdbc:hsqldb:res:chinook",
"jdbcUser": "sa",
"jdbcPassword": ""
},
{
"name": "ENHANCED",
"type": "custom",
"factory": "org.apache.calcite.schema.impl.AbstractSchema$Factory",
"operand": {},
"tables": [
...
{
"name" : "SIMPLE_CUSTOMER",
"type" : "view",
"sql" : [
"SELECT c.firstname, c.lastname, c.email ",
"FROM chinook.customer AS c"
]
...
],
"functions": [
{
"name": "ASCONCATOFPARAMS",
"className": "org.apache.calcite.chinook.StringConcatFunction"
}
]
}
]
{code}
Following query produces error:
{code:sql}
SELECT email, ASCONCATOFPARAMS(firstname, lastname) AS joined FROM SIMPLE_CUSTOMER limit 3
{code}
Exception:
{code}
> Caused by: java.lang.RuntimeException: while executing SQL [SELECT "EMAIL" AS "email", "ASCONCATOFPARAMS"("FIRSTNAME", "LASTNAME") AS "joined"
> FROM (SELECT *
> FROM "CUSTOMER"
> LIMIT 3) AS "t"]
> at org.apache.calcite.runtime.ResultSetEnumerable.enumerator(ResultSetEnumerable.java:153)
> at org.apache.calcite.linq4j.AbstractEnumerable.iterator(AbstractEnumerable.java:33)
> at org.apache.calcite.avatica.MetaImpl.createCursor(MetaImpl.java:90)
> at org.apache.calcite.avatica.AvaticaResultSet.execute(AvaticaResultSet.java:174)
> at org.apache.calcite.jdbc.CalciteResultSet.execute(CalciteResultSet.java:67)
> at org.apache.calcite.jdbc.CalciteResultSet.execute(CalciteResultSet.java:44)
> at org.apache.calcite.avatica.AvaticaConnection$1.execute(AvaticaConnection.java:630)
> at org.apache.calcite.jdbc.CalciteMetaImpl.prepareAndExecute(CalciteMetaImpl.java:619)
> at org.apache.calcite.avatica.AvaticaConnection.prepareAndExecuteInternal(AvaticaConnection.java:638)
> at org.apache.calcite.avatica.AvaticaStatement.executeInternal(AvaticaStatement.java:149)
> ... 24 more
> Caused by: java.sql.SQLSyntaxErrorException: user lacks privilege or object not found: ASCONCATOFPARAMS
> at org.hsqldb.jdbc.JDBCUtil.sqlException(Unknown Source)
> at org.hsqldb.jdbc.JDBCUtil.sqlException(Unknown Source)
> at org.hsqldb.jdbc.JDBCStatement.fetchResult(Unknown Source)
> at org.hsqldb.jdbc.JDBCStatement.execute(Unknown Source)
> at org.apache.commons.dbcp.DelegatingStatement.execute(DelegatingStatement.java:264)
> at org.apache.commons.dbcp.DelegatingStatement.execute(DelegatingStatement.java:264)
> at org.apache.calcite.runtime.ResultSetEnumerable.enumerator(ResultSetEnumerable.java:143)
> ... 33 more
> Caused by: org.hsqldb.HsqlException: user lacks privilege or object not found: ASCONCATOFPARAMS
> at org.hsqldb.error.Error.error(Unknown Source)
> at org.hsqldb.error.Error.error(Unknown Source)
> at org.hsqldb.Routine.getMethods(Unknown Source)
> at org.hsqldb.Routine.createRoutines(Unknown Source)
> at org.hsqldb.ParserDQL.readColumnOrFunctionExpression(Unknown Source)
> at org.hsqldb.ParserDQL.XreadSimpleValueExpressionPrimary(Unknown Source)
> at org.hsqldb.ParserDQL.XreadAllTypesValueExpressionPrimary(Unknown Source)
> at org.hsqldb.ParserDQL.XreadAllTypesPrimary(Unknown Source)
> at org.hsqldb.ParserDQL.XreadAllTypesFactor(Unknown Source)
> at org.hsqldb.ParserDQL.XreadAllTypesTerm(Unknown Source)
> at org.hsqldb.ParserDQL.XreadAllTypesCommonValueExpression(Unknown Source)
> at org.hsqldb.ParserDQL.XreadValueExpression(Unknown Source)
> at org.hsqldb.ParserDQL.XreadSelect(Unknown Source)
> at org.hsqldb.ParserDQL.XreadQuerySpecification(Unknown Source)
> at org.hsqldb.ParserDQL.XreadSimpleTable(Unknown Source)
> at org.hsqldb.ParserDQL.XreadQueryPrimary(Unknown Source)
> at org.hsqldb.ParserDQL.XreadQueryTerm(Unknown Source)
> at org.hsqldb.ParserDQL.XreadQueryExpressionBody(Unknown Source)
> at org.hsqldb.ParserDQL.XreadQueryExpression(Unknown Source)
> at org.hsqldb.ParserDQL.compileCursorSpecification(Unknown Source)
> at org.hsqldb.ParserCommand.compilePart(Unknown Source)
> at org.hsqldb.ParserCommand.compileStatements(Unknown Source)
> at org.hsqldb.Session.executeDirectStatement(Unknown Source)
> at org.hsqldb.Session.execute(Unknown Source)
> ... 38 more
{code}
--
This message was sent by Atlassian JIRA
(v7.6.3#76005)