[JBoss JIRA] (TEIID-5276) ClassCastException with OData4 translator when using COUNT function without GROUP BY clause
by Steven Hawkins (JIRA)
[ https://issues.jboss.org/browse/TEIID-5276?page=com.atlassian.jira.plugin... ]
Steven Hawkins commented on TEIID-5276:
---------------------------------------
I'm getting a different error on master, but this appears to still be a problem.
> ClassCastException with OData4 translator when using COUNT function without GROUP BY clause
> -------------------------------------------------------------------------------------------
>
> Key: TEIID-5276
> URL: https://issues.jboss.org/browse/TEIID-5276
> Project: Teiid
> Issue Type: Bug
> Components: OData
> Affects Versions: 8.12.11.6_4
> Reporter: Jan Martiska
> Assignee: Steven Hawkins
>
> Given that {{BQT1.SmallA}} is backed by OData4 translator, I'm unable to run any queries including the {{COUNT}} aggregation function unless I'm also including a GROUP BY clause (if I include any GROUP BY, it seems to work).
> Example:
> {noformat}
> SELECT COUNT(*) FROM BQT1.SmallA
> {noformat}
> Full exception:
> {noformat}
> 10:30:22,795 WARN [org.teiid.PROCESSOR] (Worker0_QueryProcessorQueue140) TEIID30020 Processing exception for request nIb4rK3XZNgv.18 'TEIID30504 odata4: com.fasterxml.jackson.databind.node.IntNode cannot be cast to com.fasterxml.jackson.databind.node.ObjectNode'. Originally TeiidProcessingException JsonEntitySetDeserializer.java:53.: org.teiid.core.TeiidProcessingException: TEIID30504 odata4: com.fasterxml.jackson.databind.node.IntNode cannot be cast to com.fasterxml.jackson.databind.node.ObjectNode
> at org.teiid.dqp.internal.process.DataTierTupleSource.exceptionOccurred(DataTierTupleSource.java:401) [teiid-engine-8.12.11.6_4-redhat-64-12.jar:8.12.11.6_4-redhat-64-12]
> at org.teiid.dqp.internal.process.DataTierTupleSource.nextTuple(DataTierTupleSource.java:161) [teiid-engine-8.12.11.6_4-redhat-64-12.jar:8.12.11.6_4-redhat-64-12]
> at org.teiid.query.processor.relational.AccessNode.nextBatchDirect(AccessNode.java:391) [teiid-engine-8.12.11.6_4-redhat-64-12.jar:8.12.11.6_4-redhat-64-12]
> at org.teiid.query.processor.relational.RelationalNode.nextBatch(RelationalNode.java:281) [teiid-engine-8.12.11.6_4-redhat-64-12.jar:8.12.11.6_4-redhat-64-12]
> at org.teiid.query.processor.relational.LimitNode.nextBatchDirect(LimitNode.java:102) [teiid-engine-8.12.11.6_4-redhat-64-12.jar:8.12.11.6_4-redhat-64-12]
> at org.teiid.query.processor.relational.RelationalNode.nextBatch(RelationalNode.java:281) [teiid-engine-8.12.11.6_4-redhat-64-12.jar:8.12.11.6_4-redhat-64-12]
> at org.teiid.query.processor.relational.RelationalPlan.nextBatch(RelationalPlan.java:145) [teiid-engine-8.12.11.6_4-redhat-64-12.jar:8.12.11.6_4-redhat-64-12]
> at org.teiid.query.processor.QueryProcessor.nextBatchDirect(QueryProcessor.java:151) [teiid-engine-8.12.11.6_4-redhat-64-12.jar:8.12.11.6_4-redhat-64-12]
> at org.teiid.query.processor.QueryProcessor.nextBatch(QueryProcessor.java:114) [teiid-engine-8.12.11.6_4-redhat-64-12.jar:8.12.11.6_4-redhat-64-12]
> at org.teiid.query.processor.BatchCollector.collectTuples(BatchCollector.java:164) [teiid-engine-8.12.11.6_4-redhat-64-12.jar:8.12.11.6_4-redhat-64-12]
> at org.teiid.query.processor.BatchCollector.collectTuples(BatchCollector.java:146) [teiid-engine-8.12.11.6_4-redhat-64-12.jar:8.12.11.6_4-redhat-64-12]
> at org.teiid.dqp.internal.process.RequestWorkItem.processMore(RequestWorkItem.java:472) [teiid-engine-8.12.11.6_4-redhat-64-12.jar:8.12.11.6_4-redhat-64-12]
> at org.teiid.dqp.internal.process.RequestWorkItem.process(RequestWorkItem.java:348) [teiid-engine-8.12.11.6_4-redhat-64-12.jar:8.12.11.6_4-redhat-64-12]
> at org.teiid.dqp.internal.process.AbstractWorkItem.run(AbstractWorkItem.java:51) [teiid-engine-8.12.11.6_4-redhat-64-12.jar:8.12.11.6_4-redhat-64-12]
> at org.teiid.dqp.internal.process.RequestWorkItem.run(RequestWorkItem.java:274) [teiid-engine-8.12.11.6_4-redhat-64-12.jar:8.12.11.6_4-redhat-64-12]
> at org.teiid.dqp.internal.process.DQPWorkContext.runInContext(DQPWorkContext.java:284) [teiid-engine-8.12.11.6_4-redhat-64-12.jar:8.12.11.6_4-redhat-64-12]
> at org.teiid.dqp.internal.process.ThreadReuseExecutor$RunnableWrapper.run(ThreadReuseExecutor.java:119) [teiid-engine-8.12.11.6_4-redhat-64-12.jar:8.12.11.6_4-redhat-64-12]
> at org.teiid.dqp.internal.process.ThreadReuseExecutor$3.run(ThreadReuseExecutor.java:210) [teiid-engine-8.12.11.6_4-redhat-64-12.jar:8.12.11.6_4-redhat-64-12]
> at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149) [rt.jar:1.8.0_151]
> at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624) [rt.jar:1.8.0_151]
> at java.lang.Thread.run(Thread.java:748) [rt.jar:1.8.0_151]
> Caused by: org.teiid.translator.TranslatorException: com.fasterxml.jackson.databind.node.IntNode cannot be cast to com.fasterxml.jackson.databind.node.ObjectNode
> at org.teiid.dqp.internal.datamgr.ConnectorWorkItem.handleError(ConnectorWorkItem.java:305) [teiid-engine-8.12.11.6_4-redhat-64-12.jar:8.12.11.6_4-redhat-64-12]
> at org.teiid.dqp.internal.datamgr.ConnectorWorkItem.execute(ConnectorWorkItem.java:364) [teiid-engine-8.12.11.6_4-redhat-64-12.jar:8.12.11.6_4-redhat-64-12]
> at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) [rt.jar:1.8.0_151]
> at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) [rt.jar:1.8.0_151]
> at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) [rt.jar:1.8.0_151]
> at java.lang.reflect.Method.invoke(Method.java:498) [rt.jar:1.8.0_151]
> at org.teiid.dqp.internal.datamgr.ConnectorManager$1.invoke(ConnectorManager.java:211) [teiid-engine-8.12.11.6_4-redhat-64-12.jar:8.12.11.6_4-redhat-64-12]
> at com.sun.proxy.$Proxy91.execute(Unknown Source)
> at org.teiid.dqp.internal.process.DataTierTupleSource.getResults(DataTierTupleSource.java:306) [teiid-engine-8.12.11.6_4-redhat-64-12.jar:8.12.11.6_4-redhat-64-12]
> at org.teiid.dqp.internal.process.DataTierTupleSource$1.call(DataTierTupleSource.java:112) [teiid-engine-8.12.11.6_4-redhat-64-12.jar:8.12.11.6_4-redhat-64-12]
> at org.teiid.dqp.internal.process.DataTierTupleSource$1.call(DataTierTupleSource.java:108) [teiid-engine-8.12.11.6_4-redhat-64-12.jar:8.12.11.6_4-redhat-64-12]
> at java.util.concurrent.FutureTask.run(FutureTask.java:266) [rt.jar:1.8.0_151]
> at org.teiid.dqp.internal.process.FutureWork.run(FutureWork.java:65) [teiid-engine-8.12.11.6_4-redhat-64-12.jar:8.12.11.6_4-redhat-64-12]
> ... 6 more
> Caused by: java.lang.ClassCastException: com.fasterxml.jackson.databind.node.IntNode cannot be cast to com.fasterxml.jackson.databind.node.ObjectNode
> at org.apache.olingo.client.core.serialization.JsonEntitySetDeserializer.doDeserialize(JsonEntitySetDeserializer.java:53)
> at org.apache.olingo.client.core.serialization.JsonDeserializer.toEntitySet(JsonDeserializer.java:410)
> at org.teiid.translator.odata4.ODataResponse.parsePayload(ODataResponse.java:65)
> at org.teiid.translator.odata4.ODataResponse.<init>(ODataResponse.java:54)
> at org.teiid.translator.odata4.ODataQueryExecution$1.<init>(ODataQueryExecution.java:96)
> at org.teiid.translator.odata4.ODataQueryExecution.execute(ODataQueryExecution.java:95)
> at org.teiid.dqp.internal.datamgr.ConnectorWorkItem.execute(ConnectorWorkItem.java:361) [teiid-engine-8.12.11.6_4-redhat-64-12.jar:8.12.11.6_4-redhat-64-12]
> ... 17 more
> {noformat}
--
This message was sent by Atlassian JIRA
(v7.5.0#75005)
7 years
[JBoss JIRA] (TEIID-5280) OData4 translator: disappearing negation when using 'in' predicate
by Jan Martiska (JIRA)
Jan Martiska created TEIID-5280:
-----------------------------------
Summary: OData4 translator: disappearing negation when using 'in' predicate
Key: TEIID-5280
URL: https://issues.jboss.org/browse/TEIID-5280
Project: Teiid
Issue Type: Bug
Components: OData
Affects Versions: 8.12.11.6_4
Reporter: Jan Martiska
Assignee: Steven Hawkins
Suppose this query against an OData4-backed view:
{noformat}
SELECT intkey FROM bqt1.smalla WHERE NOT (intkey IN (1, 2, 3))
{noformat}
This is translated to a filter:
{noformat}
filter=intkey eq 1 or intkey eq 2 or intkey eq 3
{noformat}
The NOT operator disappeared and this will return rows where intkey is equal to 1, 2 or 3.
--
This message was sent by Atlassian JIRA
(v7.5.0#75005)
7 years
[JBoss JIRA] (TEIID-5278) Wrong indexing with SUBSTRING function and OData4 translator
by Jan Martiska (JIRA)
Jan Martiska created TEIID-5278:
-----------------------------------
Summary: Wrong indexing with SUBSTRING function and OData4 translator
Key: TEIID-5278
URL: https://issues.jboss.org/browse/TEIID-5278
Project: Teiid
Issue Type: Bug
Components: OData
Affects Versions: 8.12.11.6_4
Reporter: Jan Martiska
Assignee: Steven Hawkins
SQL {{SUBSTRING}} function indexes strings from 1, but OData {{substring}} filtering function indexes from zero. This needs to be taken into account.
Currently a query containing {{WHERE SUBSTRING(stringkey, 1, 1) = 'x'}} will return items where the second character is x, but it should return rows where the first character is x.
--
This message was sent by Atlassian JIRA
(v7.5.0#75005)
7 years
[JBoss JIRA] (TEIID-5277) OData4 translator doesn't correctly translate LOCATE function to INDEXOF
by Jan Martiska (JIRA)
Jan Martiska created TEIID-5277:
-----------------------------------
Summary: OData4 translator doesn't correctly translate LOCATE function to INDEXOF
Key: TEIID-5277
URL: https://issues.jboss.org/browse/TEIID-5277
Project: Teiid
Issue Type: Bug
Components: OData
Affects Versions: 8.12.11.6_4
Reporter: Jan Martiska
Assignee: Steven Hawkins
Suppose this query against an OData4-backed view:
{noformat}
SELECT STRINGKEY FROM BQT1.SmallA WHERE LOCATE('1', stringkey) = 1
{noformat}
The WHERE clause gets translated into
{noformat}
filter=indexof('1',stringkey) eq 1
{noformat}
There are two issues with this:
- the arguments of the {{indexof}} function should be in the opposite order (the sought-after string goes second)
- {{indexof}} function indexes characters in strings from 0 whereas {{LOCATE}} from 1, this needs to be taken into account
The correct filter in this case should be:
{noformat}
filter=indexof(stringkey,'1') eq 0
{noformat}
See http://docs.oasis-open.org/odata/odata/v4.0/odata-v4.0-part2-url-conventi...
--
This message was sent by Atlassian JIRA
(v7.5.0#75005)
7 years
[JBoss JIRA] (TEIID-5276) ClassCastException with OData4 translator when using COUNT function without GROUP BY clause
by Jan Martiska (JIRA)
Jan Martiska created TEIID-5276:
-----------------------------------
Summary: ClassCastException with OData4 translator when using COUNT function without GROUP BY clause
Key: TEIID-5276
URL: https://issues.jboss.org/browse/TEIID-5276
Project: Teiid
Issue Type: Bug
Components: OData
Affects Versions: 8.12.11.6_4
Reporter: Jan Martiska
Assignee: Steven Hawkins
Given that {{BQT1.SmallA}} is backed by OData4 translator, I'm unable to run any queries including the {{COUNT}} aggregation function unless I'm also including a GROUP BY clause (if I include any GROUP BY, it seems to work).
Example:
{noformat}
SELECT COUNT(*) FROM BQT1.SmallA
{noformat}
Full exception:
{noformat}
10:30:22,795 WARN [org.teiid.PROCESSOR] (Worker0_QueryProcessorQueue140) TEIID30020 Processing exception for request nIb4rK3XZNgv.18 'TEIID30504 odata4: com.fasterxml.jackson.databind.node.IntNode cannot be cast to com.fasterxml.jackson.databind.node.ObjectNode'. Originally TeiidProcessingException JsonEntitySetDeserializer.java:53.: org.teiid.core.TeiidProcessingException: TEIID30504 odata4: com.fasterxml.jackson.databind.node.IntNode cannot be cast to com.fasterxml.jackson.databind.node.ObjectNode
at org.teiid.dqp.internal.process.DataTierTupleSource.exceptionOccurred(DataTierTupleSource.java:401) [teiid-engine-8.12.11.6_4-redhat-64-12.jar:8.12.11.6_4-redhat-64-12]
at org.teiid.dqp.internal.process.DataTierTupleSource.nextTuple(DataTierTupleSource.java:161) [teiid-engine-8.12.11.6_4-redhat-64-12.jar:8.12.11.6_4-redhat-64-12]
at org.teiid.query.processor.relational.AccessNode.nextBatchDirect(AccessNode.java:391) [teiid-engine-8.12.11.6_4-redhat-64-12.jar:8.12.11.6_4-redhat-64-12]
at org.teiid.query.processor.relational.RelationalNode.nextBatch(RelationalNode.java:281) [teiid-engine-8.12.11.6_4-redhat-64-12.jar:8.12.11.6_4-redhat-64-12]
at org.teiid.query.processor.relational.LimitNode.nextBatchDirect(LimitNode.java:102) [teiid-engine-8.12.11.6_4-redhat-64-12.jar:8.12.11.6_4-redhat-64-12]
at org.teiid.query.processor.relational.RelationalNode.nextBatch(RelationalNode.java:281) [teiid-engine-8.12.11.6_4-redhat-64-12.jar:8.12.11.6_4-redhat-64-12]
at org.teiid.query.processor.relational.RelationalPlan.nextBatch(RelationalPlan.java:145) [teiid-engine-8.12.11.6_4-redhat-64-12.jar:8.12.11.6_4-redhat-64-12]
at org.teiid.query.processor.QueryProcessor.nextBatchDirect(QueryProcessor.java:151) [teiid-engine-8.12.11.6_4-redhat-64-12.jar:8.12.11.6_4-redhat-64-12]
at org.teiid.query.processor.QueryProcessor.nextBatch(QueryProcessor.java:114) [teiid-engine-8.12.11.6_4-redhat-64-12.jar:8.12.11.6_4-redhat-64-12]
at org.teiid.query.processor.BatchCollector.collectTuples(BatchCollector.java:164) [teiid-engine-8.12.11.6_4-redhat-64-12.jar:8.12.11.6_4-redhat-64-12]
at org.teiid.query.processor.BatchCollector.collectTuples(BatchCollector.java:146) [teiid-engine-8.12.11.6_4-redhat-64-12.jar:8.12.11.6_4-redhat-64-12]
at org.teiid.dqp.internal.process.RequestWorkItem.processMore(RequestWorkItem.java:472) [teiid-engine-8.12.11.6_4-redhat-64-12.jar:8.12.11.6_4-redhat-64-12]
at org.teiid.dqp.internal.process.RequestWorkItem.process(RequestWorkItem.java:348) [teiid-engine-8.12.11.6_4-redhat-64-12.jar:8.12.11.6_4-redhat-64-12]
at org.teiid.dqp.internal.process.AbstractWorkItem.run(AbstractWorkItem.java:51) [teiid-engine-8.12.11.6_4-redhat-64-12.jar:8.12.11.6_4-redhat-64-12]
at org.teiid.dqp.internal.process.RequestWorkItem.run(RequestWorkItem.java:274) [teiid-engine-8.12.11.6_4-redhat-64-12.jar:8.12.11.6_4-redhat-64-12]
at org.teiid.dqp.internal.process.DQPWorkContext.runInContext(DQPWorkContext.java:284) [teiid-engine-8.12.11.6_4-redhat-64-12.jar:8.12.11.6_4-redhat-64-12]
at org.teiid.dqp.internal.process.ThreadReuseExecutor$RunnableWrapper.run(ThreadReuseExecutor.java:119) [teiid-engine-8.12.11.6_4-redhat-64-12.jar:8.12.11.6_4-redhat-64-12]
at org.teiid.dqp.internal.process.ThreadReuseExecutor$3.run(ThreadReuseExecutor.java:210) [teiid-engine-8.12.11.6_4-redhat-64-12.jar:8.12.11.6_4-redhat-64-12]
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149) [rt.jar:1.8.0_151]
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624) [rt.jar:1.8.0_151]
at java.lang.Thread.run(Thread.java:748) [rt.jar:1.8.0_151]
Caused by: org.teiid.translator.TranslatorException: com.fasterxml.jackson.databind.node.IntNode cannot be cast to com.fasterxml.jackson.databind.node.ObjectNode
at org.teiid.dqp.internal.datamgr.ConnectorWorkItem.handleError(ConnectorWorkItem.java:305) [teiid-engine-8.12.11.6_4-redhat-64-12.jar:8.12.11.6_4-redhat-64-12]
at org.teiid.dqp.internal.datamgr.ConnectorWorkItem.execute(ConnectorWorkItem.java:364) [teiid-engine-8.12.11.6_4-redhat-64-12.jar:8.12.11.6_4-redhat-64-12]
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) [rt.jar:1.8.0_151]
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) [rt.jar:1.8.0_151]
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) [rt.jar:1.8.0_151]
at java.lang.reflect.Method.invoke(Method.java:498) [rt.jar:1.8.0_151]
at org.teiid.dqp.internal.datamgr.ConnectorManager$1.invoke(ConnectorManager.java:211) [teiid-engine-8.12.11.6_4-redhat-64-12.jar:8.12.11.6_4-redhat-64-12]
at com.sun.proxy.$Proxy91.execute(Unknown Source)
at org.teiid.dqp.internal.process.DataTierTupleSource.getResults(DataTierTupleSource.java:306) [teiid-engine-8.12.11.6_4-redhat-64-12.jar:8.12.11.6_4-redhat-64-12]
at org.teiid.dqp.internal.process.DataTierTupleSource$1.call(DataTierTupleSource.java:112) [teiid-engine-8.12.11.6_4-redhat-64-12.jar:8.12.11.6_4-redhat-64-12]
at org.teiid.dqp.internal.process.DataTierTupleSource$1.call(DataTierTupleSource.java:108) [teiid-engine-8.12.11.6_4-redhat-64-12.jar:8.12.11.6_4-redhat-64-12]
at java.util.concurrent.FutureTask.run(FutureTask.java:266) [rt.jar:1.8.0_151]
at org.teiid.dqp.internal.process.FutureWork.run(FutureWork.java:65) [teiid-engine-8.12.11.6_4-redhat-64-12.jar:8.12.11.6_4-redhat-64-12]
... 6 more
Caused by: java.lang.ClassCastException: com.fasterxml.jackson.databind.node.IntNode cannot be cast to com.fasterxml.jackson.databind.node.ObjectNode
at org.apache.olingo.client.core.serialization.JsonEntitySetDeserializer.doDeserialize(JsonEntitySetDeserializer.java:53)
at org.apache.olingo.client.core.serialization.JsonDeserializer.toEntitySet(JsonDeserializer.java:410)
at org.teiid.translator.odata4.ODataResponse.parsePayload(ODataResponse.java:65)
at org.teiid.translator.odata4.ODataResponse.<init>(ODataResponse.java:54)
at org.teiid.translator.odata4.ODataQueryExecution$1.<init>(ODataQueryExecution.java:96)
at org.teiid.translator.odata4.ODataQueryExecution.execute(ODataQueryExecution.java:95)
at org.teiid.dqp.internal.datamgr.ConnectorWorkItem.execute(ConnectorWorkItem.java:361) [teiid-engine-8.12.11.6_4-redhat-64-12.jar:8.12.11.6_4-redhat-64-12]
... 17 more
{noformat}
--
This message was sent by Atlassian JIRA
(v7.5.0#75005)
7 years
[JBoss JIRA] (TEIID-5272) Improve error message when using LATERAL reference in RIGHT or FULL joins
by Steven Hawkins (JIRA)
[ https://issues.jboss.org/browse/TEIID-5272?page=com.atlassian.jira.plugin... ]
Steven Hawkins commented on TEIID-5272:
---------------------------------------
[~dalex005] A refinement has been committed.
> Improve error message when using LATERAL reference in RIGHT or FULL joins
> -------------------------------------------------------------------------
>
> Key: TEIID-5272
> URL: https://issues.jboss.org/browse/TEIID-5272
> Project: Teiid
> Issue Type: Quality Risk
> Components: Query Engine
> Affects Versions: 10.1
> Environment: teiid-10.1.0 on WildFly Full 11.0.0.Final (WildFly Core 3.0.8.Final)
> Reporter: dalex dalex
> Assignee: Steven Hawkins
> Fix For: 10.2
>
>
> All table functions cause errors in queries containing RIGHT or FULL JOINs. For example, such query:
> {code:sql}
> select * from views.v x1 right join table(select x1.b a) x2 on x1.a=x2.a ;;
> {code}
> causes such error:
> {code:noformat}
> 2018-03-05 10:25:02,356 WARN [org.teiid.PROCESSOR] (Worker3_QueryProcessorQueue31) /oCxMs2/Zs22 TEIID30020 Processing exception for request /oCxMs2/Zs22.26 'TEIID31119 Symbol x1.b i
> s specified with an unknown group context'. Originally QueryResolverException ResolverVisitor.java:102.: org.teiid.api.exception.query.QueryResolverException: TEIID31119 Symbol x1.b
> is specified with an unknown group context
> at org.teiid.query.resolver.util.ResolverVisitor.handleUnresolvedElement(ResolverVisitor.java:102)
> at org.teiid.query.resolver.util.ResolverVisitor.internalResolveElementSymbol(ResolverVisitor.java:199)
> at org.teiid.query.resolver.util.ResolverVisitor.resolveElementSymbol(ResolverVisitor.java:135)
> at org.teiid.query.resolver.util.ResolverVisitor.visit(ResolverVisitor.java:90)
> at org.teiid.query.sql.symbol.ElementSymbol.acceptVisitor(ElementSymbol.java:223)
> at org.teiid.query.sql.navigator.AbstractNavigator.visitVisitor(AbstractNavigator.java:50)
> at org.teiid.query.sql.navigator.PreOrPostOrderNavigator.postVisitVisitor(PreOrPostOrderNavigator.java:57)
> at org.teiid.query.resolver.command.SimpleQueryResolver$QueryResolverVisitor.postVisitVisitor(SimpleQueryResolver.java:219)
> at org.teiid.query.sql.navigator.PreOrPostOrderNavigator.visit(PreOrPostOrderNavigator.java:167)
> at org.teiid.query.sql.symbol.ElementSymbol.acceptVisitor(ElementSymbol.java:223)
> at org.teiid.query.sql.navigator.AbstractNavigator.visitNode(AbstractNavigator.java:59)
> at org.teiid.query.sql.navigator.PreOrPostOrderNavigator.visit(PreOrPostOrderNavigator.java:75)
> at org.teiid.query.sql.symbol.AliasSymbol.acceptVisitor(AliasSymbol.java:86)
> at org.teiid.query.sql.navigator.AbstractNavigator.visitNode(AbstractNavigator.java:59)
> at org.teiid.query.sql.navigator.AbstractNavigator.visitNodes(AbstractNavigator.java:72)
> at org.teiid.query.sql.navigator.PreOrPostOrderNavigator.visit(PreOrPostOrderNavigator.java:338)
> at org.teiid.query.sql.lang.Select.acceptVisitor(Select.java:164)
> at org.teiid.query.sql.navigator.AbstractNavigator.visitNode(AbstractNavigator.java:59)
> at org.teiid.query.resolver.command.SimpleQueryResolver$QueryResolverVisitor.visit(SimpleQueryResolver.java:237)
> at org.teiid.query.resolver.command.SimpleQueryResolver.resolveCommand(SimpleQueryResolver.java:66)
> at org.teiid.query.resolver.QueryResolver.resolveCommand(QueryResolver.java:282)
> at org.teiid.query.resolver.command.SimpleQueryResolver$QueryResolverVisitor.resolveSubQuery(SimpleQueryResolver.java:283)
> at org.teiid.query.resolver.command.SimpleQueryResolver$QueryResolverVisitor.visit(SimpleQueryResolver.java:463)
> at org.teiid.query.sql.lang.SubqueryFromClause.acceptVisitor(SubqueryFromClause.java:123)
> at org.teiid.query.sql.navigator.AbstractNavigator.visitNode(AbstractNavigator.java:59)
> at org.teiid.query.resolver.command.SimpleQueryResolver$QueryResolverVisitor.visit(SimpleQueryResolver.java:593)
> at org.teiid.query.sql.lang.JoinPredicate.acceptVisitor(JoinPredicate.java:175)
> at org.teiid.query.sql.navigator.AbstractNavigator.visitNode(AbstractNavigator.java:59)
> at org.teiid.query.sql.navigator.AbstractNavigator.visitNodes(AbstractNavigator.java:72)
> at org.teiid.query.sql.navigator.PreOrPostOrderNavigator.visit(PreOrPostOrderNavigator.java:183)
> at org.teiid.query.resolver.command.SimpleQueryResolver$QueryResolverVisitor.visit(SimpleQueryResolver.java:619)
> at org.teiid.query.sql.lang.From.acceptVisitor(From.java:142)
> at org.teiid.query.sql.navigator.AbstractNavigator.visitNode(AbstractNavigator.java:59)
> at org.teiid.query.resolver.command.SimpleQueryResolver$QueryResolverVisitor.visit(SimpleQueryResolver.java:233)
> at org.teiid.query.resolver.command.SimpleQueryResolver.resolveCommand(SimpleQueryResolver.java:66)
> at org.teiid.query.resolver.QueryResolver.resolveCommand(QueryResolver.java:282)
> at org.teiid.query.resolver.QueryResolver.resolveCommand(QueryResolver.java:128)
> at org.teiid.dqp.internal.process.Request.resolveCommand(Request.java:282)
> at org.teiid.dqp.internal.process.Request.generatePlan(Request.java:418)
> at org.teiid.dqp.internal.process.Request.processRequest(Request.java:486)
> at org.teiid.dqp.internal.process.RequestWorkItem.processNew(RequestWorkItem.java:660)
> at org.teiid.dqp.internal.process.RequestWorkItem.process(RequestWorkItem.java:339)
> at org.teiid.dqp.internal.process.AbstractWorkItem.run(AbstractWorkItem.java:47)
> at org.teiid.dqp.internal.process.RequestWorkItem.run(RequestWorkItem.java:276)
> at org.teiid.dqp.internal.process.DQPWorkContext.runInContext(DQPWorkContext.java:280)
> at org.teiid.dqp.internal.process.ThreadReuseExecutor$RunnableWrapper.run(ThreadReuseExecutor.java:115)
> at org.teiid.dqp.internal.process.ThreadReuseExecutor$3.run(ThreadReuseExecutor.java:206)
> at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
> at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
> at java.lang.Thread.run(Thread.java:745)
> {code}
> The behavior is expected. Lateral is expected to work left to right - thus only with inner/left joins. The error message should be improved. On pgsql it is "The combining JOIN type must be INNER or LEFT for a LATERAL reference".
--
This message was sent by Atlassian JIRA
(v7.5.0#75005)
7 years
[JBoss JIRA] (TEIID-3977) Add support for EnableDependentJoins for Impala data sources
by Steven Hawkins (JIRA)
[ https://issues.jboss.org/browse/TEIID-3977?page=com.atlassian.jira.plugin... ]
Steven Hawkins commented on TEIID-3977:
---------------------------------------
Hive supports temporary tables, but Impala still does not. The best that we could do is create a uniquely named internal table for Impala, I don't think we should go down that route though. [~asaji] what are your thoughts?
> Add support for EnableDependentJoins for Impala data sources
> -------------------------------------------------------------
>
> Key: TEIID-3977
> URL: https://issues.jboss.org/browse/TEIID-3977
> Project: Teiid
> Issue Type: Feature Request
> Components: JDBC Connector
> Affects Versions: 8.7, 8.12
> Reporter: Anu Saji
> Assignee: Steven Hawkins
> Fix For: 10.2
>
>
> Hi,
> Request to Add support for EnableDependentJoins for Impala data sources. Current docs only suggest [0] [1] Table 13.8
> [0]
> For sources that support temporary tables (DB2, Derby, H2, HSQL 2.0+, MySQL 5.0+, Oracle, PostgreSQL, SQLServer, Sybase) allow dependent join pushdown.
> [1]
> https://access.redhat.com/documentation/en-US/Red_Hat_JBoss_Data_Virtuali...
> Thanks
--
This message was sent by Atlassian JIRA
(v7.5.0#75005)
7 years
[JBoss JIRA] (TEIID-3977) Add support for EnableDependentJoins for Impala data sources
by Steven Hawkins (JIRA)
[ https://issues.jboss.org/browse/TEIID-3977?page=com.atlassian.jira.plugin... ]
Work on TEIID-3977 started by Steven Hawkins.
---------------------------------------------
> Add support for EnableDependentJoins for Impala data sources
> -------------------------------------------------------------
>
> Key: TEIID-3977
> URL: https://issues.jboss.org/browse/TEIID-3977
> Project: Teiid
> Issue Type: Feature Request
> Components: JDBC Connector
> Affects Versions: 8.7, 8.12
> Reporter: Anu Saji
> Assignee: Steven Hawkins
> Fix For: 10.2
>
>
> Hi,
> Request to Add support for EnableDependentJoins for Impala data sources. Current docs only suggest [0] [1] Table 13.8
> [0]
> For sources that support temporary tables (DB2, Derby, H2, HSQL 2.0+, MySQL 5.0+, Oracle, PostgreSQL, SQLServer, Sybase) allow dependent join pushdown.
> [1]
> https://access.redhat.com/documentation/en-US/Red_Hat_JBoss_Data_Virtuali...
> Thanks
--
This message was sent by Atlassian JIRA
(v7.5.0#75005)
7 years