[JBoss JIRA] (TEIID-5144) Infinispan hotrod translator doesn't overcome error in unrelated proto-schema
by Ramesh Reddy (JIRA)
[ https://issues.jboss.org/browse/TEIID-5144?page=com.atlassian.jira.plugin... ]
Ramesh Reddy commented on TEIID-5144:
-------------------------------------
[~jstastny] I do not think there is a way to check for errors specifically for a given .proto file, unless you know something. Now I am not sure what you asking me to do.
> Infinispan hotrod translator doesn't overcome error in unrelated proto-schema
> -----------------------------------------------------------------------------
>
> Key: TEIID-5144
> URL: https://issues.jboss.org/browse/TEIID-5144
> Project: Teiid
> Issue Type: Bug
> Components: JDG Connector, Misc. Connectors
> Affects Versions: 8.12.x-6.4
> Reporter: Jan Stastny
> Assignee: Ramesh Reddy
>
> Infinispan Hotrod translator can't overcome an error in any proto-schema on the JDG server.
> It ends with a message, that there's an issue with a proto-schema. Doesn't say which.
> Note, that this can be completely unrelated proto-schema to Teiid. Then the only solution is to reload JDG, or possibly clear proto-schema cache.
> If Teiid is checking for errors in .errors cache, it should be selective and look only for the newly added proto-schema.
--
This message was sent by Atlassian JIRA
(v7.5.0#75005)
8 years, 4 months
[JBoss JIRA] (TEIID-5143) Infinispan hotrod translator proto-schema registered as ProtoFilePath
by Van Halbert (JIRA)
[ https://issues.jboss.org/browse/TEIID-5143?page=com.atlassian.jira.plugin... ]
Van Halbert updated TEIID-5143:
-------------------------------
Fix Version/s: 8.12.x-6.4
> Infinispan hotrod translator proto-schema registered as ProtoFilePath
> ---------------------------------------------------------------------
>
> Key: TEIID-5143
> URL: https://issues.jboss.org/browse/TEIID-5143
> Project: Teiid
> Issue Type: Bug
> Components: JDG Connector, Misc. Connectors
> Affects Versions: 8.12.x-6.4
> Reporter: Jan Stastny
> Assignee: Ramesh Reddy
> Fix For: 8.12.x-6.4, 10.1
>
>
> When using an existing protobuf file to configure source metadata and providing full path via ProtoFilePath, there are issues with how the proto-schema is being registered in JDG.
> When using ProtoFilePath, the proto-schema is being registered under the exact value of this property. This is unexpected and source of many issues. Rather the proto-schema should be registered under the package context.
> This leads to a situation, when using the same file on various machines, or when the file is moved, then the proto-schema is being registered twice with different keys in JDG proto-schema cache, this leads to an exception on JDG's side and non-deployed VDB.
> I expect the ProtobufName to be a complementary to ProtoFilePath:
> # I register a proto-schema using ProtoFilePath property
> # I use that schema in different VDB using ProtobufName property
> Then the ProtobufName used in second case needs to contain exactly the same value as ProtoFilePath in the first case. This is hard to understand.
> Could the change be to:
> # Set both ProtoFilePath and ProtobufName properties (ProtobufName is our logical descriptor) when a user want to register new protobuf file. This way the contents of a file denoted by ProtoFilePath is registered in JDG under ProtobufName key.
> # Using only ProtobufName when an already registered proto-schema is to be used.
--
This message was sent by Atlassian JIRA
(v7.5.0#75005)
8 years, 4 months
[JBoss JIRA] (TEIID-5141) Osisoft translator - ANY and SOME expressions cause syntax errors on datasource
by RH Bugzilla Integration (JIRA)
[ https://issues.jboss.org/browse/TEIID-5141?page=com.atlassian.jira.plugin... ]
RH Bugzilla Integration commented on TEIID-5141:
------------------------------------------------
Van Halbert <vhalbert(a)redhat.com> changed the Status of [bug 1511490|https://bugzilla.redhat.com/show_bug.cgi?id=1511490] from NEW to MODIFIED
> Osisoft translator - ANY and SOME expressions cause syntax errors on datasource
> -------------------------------------------------------------------------------
>
> Key: TEIID-5141
> URL: https://issues.jboss.org/browse/TEIID-5141
> Project: Teiid
> Issue Type: Bug
> Components: JDBC Connector
> Affects Versions: 8.12.x-6.4
> Reporter: Andrej Šmigala
> Assignee: Ramesh Reddy
> Fix For: 8.12.x-6.4
>
>
> Running a query such as
> {code:sql}
> SELECT INTKEY, STRINGKEY, FLOATNUM FROM BQT1.SMALLA WHERE FLOATNUM <> SOME (SELECT FLOATNUM FROM BQT1.SMALLA WHERE STRINGKEY = 10)
> {code}
> gets translated as
> {code:sql}
> SELECT g_0.IntKey, g_0.StringKey, g_0.FloatNum FROM dvqe..SmallA AS g_0 WHERE g_0.FloatNum <> SOME (SELECT g_1.FloatNum FROM dvqe..SmallA AS g_1 WHERE g_1.StringKey = '10')
> {code}
> and fails with
> {noformat}
> com.osisoft.rdsa.RdsaException: [PIOLEDBENT] [SQL Parser] [Line 1:100] Missing ) at 'SELECT'
> [Line 1:171] Extraneous ')'
> {noformat}
> Same thing when the SOME keyword is replaced with ANY (as in, ANY is translated to the exact same query, with 'SOME', which is understandable, since they _should_ be equivalent).
> This appears to be a bug in Osisoft PI, since issuing the same query with ANY against the datasource (without teiid involvement) works, so I suggest translating SOME as ANY as a workaround.
--
This message was sent by Atlassian JIRA
(v7.5.0#75005)
8 years, 4 months
[JBoss JIRA] (TEIID-5141) Osisoft translator - ANY and SOME expressions cause syntax errors on datasource
by Van Halbert (JIRA)
[ https://issues.jboss.org/browse/TEIID-5141?page=com.atlassian.jira.plugin... ]
Van Halbert updated TEIID-5141:
-------------------------------
Fix Version/s: 8.12.x-6.4
> Osisoft translator - ANY and SOME expressions cause syntax errors on datasource
> -------------------------------------------------------------------------------
>
> Key: TEIID-5141
> URL: https://issues.jboss.org/browse/TEIID-5141
> Project: Teiid
> Issue Type: Bug
> Components: JDBC Connector
> Affects Versions: 8.12.x-6.4
> Reporter: Andrej Šmigala
> Assignee: Ramesh Reddy
> Fix For: 8.12.x-6.4
>
>
> Running a query such as
> {code:sql}
> SELECT INTKEY, STRINGKEY, FLOATNUM FROM BQT1.SMALLA WHERE FLOATNUM <> SOME (SELECT FLOATNUM FROM BQT1.SMALLA WHERE STRINGKEY = 10)
> {code}
> gets translated as
> {code:sql}
> SELECT g_0.IntKey, g_0.StringKey, g_0.FloatNum FROM dvqe..SmallA AS g_0 WHERE g_0.FloatNum <> SOME (SELECT g_1.FloatNum FROM dvqe..SmallA AS g_1 WHERE g_1.StringKey = '10')
> {code}
> and fails with
> {noformat}
> com.osisoft.rdsa.RdsaException: [PIOLEDBENT] [SQL Parser] [Line 1:100] Missing ) at 'SELECT'
> [Line 1:171] Extraneous ')'
> {noformat}
> Same thing when the SOME keyword is replaced with ANY (as in, ANY is translated to the exact same query, with 'SOME', which is understandable, since they _should_ be equivalent).
> This appears to be a bug in Osisoft PI, since issuing the same query with ANY against the datasource (without teiid involvement) works, so I suggest translating SOME as ANY as a workaround.
--
This message was sent by Atlassian JIRA
(v7.5.0#75005)
8 years, 4 months
[JBoss JIRA] (TEIID-5124) Osisoft translator - Syntax error on datasource for queries with LOCATE
by Van Halbert (JIRA)
[ https://issues.jboss.org/browse/TEIID-5124?page=com.atlassian.jira.plugin... ]
Van Halbert updated TEIID-5124:
-------------------------------
Fix Version/s: 8.12.x-6.4
> Osisoft translator - Syntax error on datasource for queries with LOCATE
> -----------------------------------------------------------------------
>
> Key: TEIID-5124
> URL: https://issues.jboss.org/browse/TEIID-5124
> Project: Teiid
> Issue Type: Bug
> Components: JDBC Driver
> Affects Versions: 8.12.x-6.4
> Reporter: Andrej Šmigala
> Assignee: Ramesh Reddy
> Fix For: 8.12.x-6.4, 10.1
>
>
> Running a query with LOCATE function causes a syntax error on the PI server:
> {code:sql}
> SELECT INTKEY FROM BQT1.SmallA WHERE LOCATE(2, INTKEY, 1) = 1
> {code}
> is pushed as
> {code:sql}
> SELECT g_0.IntKey AS c_0 FROM dvqe..SmallA AS g_0 WHERE cast(g_0.IntKey AS String)'2'1 = 1
> {code}
> and fails with
> {noformat}
> org.teiid.translator.jdbc.JDBCExecutionException: 0 TEIID11008:TEIID11004 Error executing statement(s): [SQL: SELECT TOP 100 g_0.IntKey AS c_0 FROM dvqe..SmallA AS g_0 WHERE cast(g_0.IntKey AS String)'2'1 = 1]
> at org.teiid.translator.jdbc.JDBCQueryExecution.execute(JDBCQueryExecution.java:131) [translator-jdbc-8.12.11.6_4-redhat-64-6.jar:8.12.11.6_4-redhat-64-6]
> at org.teiid.dqp.internal.datamgr.ConnectorWorkItem.execute(ConnectorWorkItem.java:363)
> at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) [rt.jar:1.8.0_141]
> at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) [rt.jar:1.8.0_141]
> at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) [rt.jar:1.8.0_141]
> at java.lang.reflect.Method.invoke(Method.java:498) [rt.jar:1.8.0_141]
> at org.teiid.dqp.internal.datamgr.ConnectorManager$1.invoke(ConnectorManager.java:211)
> at com.sun.proxy.$Proxy79.execute(Unknown Source)
> at org.teiid.dqp.internal.process.DataTierTupleSource.getResults(DataTierTupleSource.java:306)
> at org.teiid.dqp.internal.process.DataTierTupleSource$1.call(DataTierTupleSource.java:112)
> at org.teiid.dqp.internal.process.DataTierTupleSource$1.call(DataTierTupleSource.java:108)
> at java.util.concurrent.FutureTask.run(FutureTask.java:266) [rt.jar:1.8.0_141]
> at org.teiid.dqp.internal.process.FutureWork.run(FutureWork.java:65)
> at org.teiid.dqp.internal.process.DQPWorkContext.runInContext(DQPWorkContext.java:280)
> at org.teiid.dqp.internal.process.ThreadReuseExecutor$RunnableWrapper.run(ThreadReuseExecutor.java:119)
> at org.teiid.dqp.internal.process.ThreadReuseExecutor$3.run(ThreadReuseExecutor.java:210)
> at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149) [rt.jar:1.8.0_141]
> at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624) [rt.jar:1.8.0_141]
> at java.lang.Thread.run(Thread.java:748) [rt.jar:1.8.0_141]
> Caused by: java.sql.SQLException: [PIOLEDBENT] [SQL Parser] [Line 1:90] Syntax error near '2'
> at com.osisoft.jdbc.StatementImpl.executeQuery(StatementImpl.java:360)
> at org.jboss.jca.adapters.jdbc.WrappedStatement.executeQuery(WrappedStatement.java:344)
> at org.teiid.translator.jdbc.JDBCQueryExecution.execute(JDBCQueryExecution.java:119) [translator-jdbc-8.12.11.6_4-redhat-64-6.jar:8.12.11.6_4-redhat-64-6]
> ... 18 more
> Caused by: com.osisoft.rdsa.RdsaException: [PIOLEDBENT] [SQL Parser] [Line 1:90] Syntax error near '2'
> at com.osisoft.rdsa.Command.ExecuteReader(Native Method)
> at com.osisoft.rdsa.Command.executeReader(Command.java:79)
> at com.osisoft.jdbc.StatementImpl.executeQuery(StatementImpl.java:356)
> ... 20 more
> {noformat}
> Furthermore, query such as
> {code:sql}
> SELECT INTKEY, LOCATE(1, STRINGNUM) FROM BQT1.SmallA
> {code}
> fails on teiid (before push down) with
> {noformat}
> java.lang.IndexOutOfBoundsException: Index: 2, Size: 2
> at java.util.ArrayList.rangeCheck(ArrayList.java:653) [rt.jar:1.8.0_141]
> at java.util.ArrayList.get(ArrayList.java:429) [rt.jar:1.8.0_141]
> at org.teiid.translator.jdbc.pi.PIExecutionFactory$1.translate(PIExecutionFactory.java:89) [translator-jdbc-8.12.11.6_4-redhat-64-6.jar:8.12.11.6_4-redhat-64-6]
> at org.teiid.translator.jdbc.JDBCExecutionFactory.translate(JDBCExecutionFactory.java:539) [translator-jdbc-8.12.11.6_4-redhat-64-6.jar:8.12.11.6_4-redhat-64-6]
> at org.teiid.translator.jdbc.pi.PIExecutionFactory.translate(PIExecutionFactory.java:260) [translator-jdbc-8.12.11.6_4-redhat-64-6.jar:8.12.11.6_4-redhat-64-6]
> at org.teiid.translator.jdbc.SQLConversionVisitor.append(SQLConversionVisitor.java:111) [translator-jdbc-8.12.11.6_4-redhat-64-6.jar:8.12.11.6_4-redhat-64-6]
> at org.teiid.language.visitor.SQLStringVisitor.visit(SQLStringVisitor.java:834) [teiid-api-8.12.11.6_4-redhat-64-6.jar:8.12.11.6_4-redhat-64-6]
> at org.teiid.translator.jdbc.SQLConversionVisitor.visit(SQLConversionVisitor.java:306) [translator-jdbc-8.12.11.6_4-redhat-64-6.jar:8.12.11.6_4-redhat-64-6]
> at org.teiid.language.DerivedColumn.acceptVisitor(DerivedColumn.java:47) [teiid-api-8.12.11.6_4-redhat-64-6.jar:8.12.11.6_4-redhat-64-6]
> at org.teiid.language.visitor.AbstractLanguageVisitor.visitNode(AbstractLanguageVisitor.java:51) [teiid-api-8.12.11.6_4-redhat-64-6.jar:8.12.11.6_4-redhat-64-6]
> at org.teiid.language.visitor.SQLStringVisitor.append(SQLStringVisitor.java:91) [teiid-api-8.12.11.6_4-redhat-64-6.jar:8.12.11.6_4-redhat-64-6]
> at org.teiid.translator.jdbc.SQLConversionVisitor.append(SQLConversionVisitor.java:130) [translator-jdbc-8.12.11.6_4-redhat-64-6.jar:8.12.11.6_4-redhat-64-6]
> at org.teiid.language.visitor.SQLStringVisitor.append(SQLStringVisitor.java:106) [teiid-api-8.12.11.6_4-redhat-64-6.jar:8.12.11.6_4-redhat-64-6]
> at org.teiid.language.visitor.SQLStringVisitor.visit(SQLStringVisitor.java:767) [teiid-api-8.12.11.6_4-redhat-64-6.jar:8.12.11.6_4-redhat-64-6]
> at org.teiid.language.Select.acceptVisitor(Select.java:110) [teiid-api-8.12.11.6_4-redhat-64-6.jar:8.12.11.6_4-redhat-64-6]
> at org.teiid.language.visitor.AbstractLanguageVisitor.visitNode(AbstractLanguageVisitor.java:51) [teiid-api-8.12.11.6_4-redhat-64-6.jar:8.12.11.6_4-redhat-64-6]
> at org.teiid.language.visitor.SQLStringVisitor.append(SQLStringVisitor.java:91) [teiid-api-8.12.11.6_4-redhat-64-6.jar:8.12.11.6_4-redhat-64-6]
> at org.teiid.translator.jdbc.SQLConversionVisitor.append(SQLConversionVisitor.java:130) [translator-jdbc-8.12.11.6_4-redhat-64-6.jar:8.12.11.6_4-redhat-64-6]
> at org.teiid.translator.jdbc.TranslatedCommand.translateCommand(TranslatedCommand.java:76) [translator-jdbc-8.12.11.6_4-redhat-64-6.jar:8.12.11.6_4-redhat-64-6]
> at org.teiid.translator.jdbc.JDBCBaseExecution.translateCommand(JDBCBaseExecution.java:120) [translator-jdbc-8.12.11.6_4-redhat-64-6.jar:8.12.11.6_4-redhat-64-6]
> at org.teiid.translator.jdbc.JDBCQueryExecution.execute(JDBCQueryExecution.java:114) [translator-jdbc-8.12.11.6_4-redhat-64-6.jar:8.12.11.6_4-redhat-64-6]
> at org.teiid.dqp.internal.datamgr.ConnectorWorkItem.execute(ConnectorWorkItem.java:363)
> at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) [rt.jar:1.8.0_141]
> at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) [rt.jar:1.8.0_141]
> at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) [rt.jar:1.8.0_141]
> at java.lang.reflect.Method.invoke(Method.java:498) [rt.jar:1.8.0_141]
> at org.teiid.dqp.internal.datamgr.ConnectorManager$1.invoke(ConnectorManager.java:211)
> at com.sun.proxy.$Proxy79.execute(Unknown Source)
> at org.teiid.dqp.internal.process.DataTierTupleSource.getResults(DataTierTupleSource.java:306)
> at org.teiid.dqp.internal.process.DataTierTupleSource$1.call(DataTierTupleSource.java:112)
> at org.teiid.dqp.internal.process.DataTierTupleSource$1.call(DataTierTupleSource.java:108)
> at java.util.concurrent.FutureTask.run(FutureTask.java:266) [rt.jar:1.8.0_141]
> at org.teiid.dqp.internal.process.FutureWork.run(FutureWork.java:65)
> at org.teiid.dqp.internal.process.DQPWorkContext.runInContext(DQPWorkContext.java:280)
> at org.teiid.dqp.internal.process.ThreadReuseExecutor$RunnableWrapper.run(ThreadReuseExecutor.java:119)
> at org.teiid.dqp.internal.process.ThreadReuseExecutor$3.run(ThreadReuseExecutor.java:210)
> at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149) [rt.jar:1.8.0_141]
> at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624) [rt.jar:1.8.0_141]
> at java.lang.Thread.run(Thread.java:748) [rt.jar:1.8.0_141]
> {noformat}
--
This message was sent by Atlassian JIRA
(v7.5.0#75005)
8 years, 4 months
[JBoss JIRA] (TEIID-5127) Osisoft translator - MOD fails with non-integer arguments
by Van Halbert (JIRA)
[ https://issues.jboss.org/browse/TEIID-5127?page=com.atlassian.jira.plugin... ]
Van Halbert updated TEIID-5127:
-------------------------------
Fix Version/s: 8.12.x-6.4
> Osisoft translator - MOD fails with non-integer arguments
> ---------------------------------------------------------
>
> Key: TEIID-5127
> URL: https://issues.jboss.org/browse/TEIID-5127
> Project: Teiid
> Issue Type: Bug
> Components: JDBC Connector
> Affects Versions: 8.12.x-6.4
> Reporter: Andrej Šmigala
> Assignee: Ramesh Reddy
> Fix For: 8.12.x-6.4, 10.1
>
>
> Query such as
> {code:sql}
> SELECT FloatNum, 11, MOD(FloatNum, 11) FROM BQT1.SmallA
> {code}
> fails on the PI server with
> {noformat}
> com.osisoft.rdsa.RdsaException: [PIOLEDBENT] [SQL Analyzer] [Line 1:34] [%] Overload resolution failed for (Single, Single) argument(s).
> {noformat}
> Similarly for Double arguments. It appears that the modulo operator % is only defined when both arguments are integers (contrary to PI OLEDB Enterprise 2016 User Guide, which states that it is defined for all numeric data types)
--
This message was sent by Atlassian JIRA
(v7.5.0#75005)
8 years, 4 months
[JBoss JIRA] (TEIID-5138) JGroups Channel creation in domain mode is invalid
by Steven Hawkins (JIRA)
[ https://issues.jboss.org/browse/TEIID-5138?page=com.atlassian.jira.plugin... ]
Steven Hawkins updated TEIID-5138:
----------------------------------
Fix Version/s: 10.0.1
> JGroups Channel creation in domain mode is invalid
> --------------------------------------------------
>
> Key: TEIID-5138
> URL: https://issues.jboss.org/browse/TEIID-5138
> Project: Teiid
> Issue Type: Bug
> Components: Server
> Affects Versions: 10.0
> Reporter: Ramesh Reddy
> Assignee: Ramesh Reddy
> Priority: Critical
> Fix For: 10.1, 10.0.1
>
>
> In domain mode configuration where the JGroups channel is configured, it is configured to be used as a separate channel where it would require separate protocol stack, which is also discouraged form. The suggested configuration is to create a forked channel as
> {code}
> <channel name="ee" stack="udp" cluster="ejb">
> <fork name="teiid-cluster"/>
> </channel>
> {code}
--
This message was sent by Atlassian JIRA
(v7.5.0#75005)
8 years, 4 months
[JBoss JIRA] (TEIID-5146) UNION of two similar JOIN queries fails with ASSERTION FAILED error if it contains table function of procedural call with arguments
by Steven Hawkins (JIRA)
[ https://issues.jboss.org/browse/TEIID-5146?page=com.atlassian.jira.plugin... ]
Steven Hawkins updated TEIID-5146:
----------------------------------
Fix Version/s: 9.3.5
> UNION of two similar JOIN queries fails with ASSERTION FAILED error if it contains table function of procedural call with arguments
> -----------------------------------------------------------------------------------------------------------------------------------
>
> Key: TEIID-5146
> URL: https://issues.jboss.org/browse/TEIID-5146
> Project: Teiid
> Issue Type: Bug
> Components: Query Engine
> Affects Versions: 9.3.4
> Reporter: El Fuego
> Assignee: Steven Hawkins
> Fix For: 9.3.5, 10.1, 10.0.1
>
>
> UNION of two similar JOINs containing table function of procedural call with arguments, like:
> {code:sql}SELECT d.col_t2 FROM "ds.test_t1", table(CALL views.pr0("arg1" => col_t1)) x
> JOIN "ds.test_t2" d
> ON true
> --
> UNION
> --
> SELECT d.col_t2 FROM "ds.test_t1", table(CALL views.pr0("arg1" => col_t1)) x
> JOIN "ds.test_t2" d
> ON true{code}
> fails with error:
> {code}2017-11-11 16:16:57,158 ERROR [org.teiid.PROCESSOR] (Worker2_QueryProcessorQueue23) wbDLp863MJn9 TEIID30019 Unexpected exception for request wbDLp863MJn9.7: java.lang.AssertionError: ASSERTION FAILED: expected reference to be not null
> at org.teiid.core.util.Assertion.failed(Assertion.java:73)
> at org.teiid.core.util.Assertion.isNotNull(Assertion.java:100)
> at org.teiid.core.util.Assertion.isNotNull(Assertion.java:92)
> at org.teiid.common.buffer.TupleBuffer.getBatch(TupleBuffer.java:287)
> at org.teiid.dqp.internal.process.TupleSourceCache$CopyOnReadTupleSource.nextTuple(TupleSourceCache.java:103)
> at org.teiid.query.processor.relational.AccessNode.nextBatchDirect(AccessNode.java:394)
> at org.teiid.query.processor.relational.RelationalNode.nextBatch(RelationalNode.java:281)
> at org.teiid.query.processor.BatchCollector.collectTuples(BatchCollector.java:164)
> at org.teiid.query.processor.relational.SourceState.prefetch(SourceState.java:211)
> at org.teiid.query.processor.relational.SourceState.rowCountLE(SourceState.java:158)
> at org.teiid.query.processor.relational.JoinNode.nextBatchDirect(JoinNode.java:227)
> at org.teiid.query.processor.relational.RelationalNode.nextBatch(RelationalNode.java:281)
> at org.teiid.query.processor.relational.LimitNode.nextBatchDirect(LimitNode.java:102)
> at org.teiid.query.processor.relational.RelationalNode.nextBatch(RelationalNode.java:281)
> at org.teiid.query.processor.BatchIterator.finalRow(BatchIterator.java:69)
> at org.teiid.common.buffer.AbstractTupleSource.getCurrentTuple(AbstractTupleSource.java:70)
> at org.teiid.query.processor.BatchIterator.getCurrentTuple(BatchIterator.java:84)
> at org.teiid.common.buffer.AbstractTupleSource.hasNext(AbstractTupleSource.java:92)
> at org.teiid.query.processor.relational.NestedTableJoinStrategy.process(NestedTableJoinStrategy.java:119)
> at org.teiid.query.processor.relational.JoinNode.nextBatchDirect(JoinNode.java:235)
> at org.teiid.query.processor.relational.RelationalNode.nextBatch(RelationalNode.java:281)
> at org.teiid.query.processor.relational.LimitNode.nextBatchDirect(LimitNode.java:102)
> at org.teiid.query.processor.relational.RelationalNode.nextBatch(RelationalNode.java:281)
> at org.teiid.query.processor.relational.ProjectNode.nextBatchDirect(ProjectNode.java:150)
> at org.teiid.query.processor.relational.RelationalNode.nextBatch(RelationalNode.java:281)
> at org.teiid.query.processor.relational.UnionAllNode.nextBatchDirect(UnionAllNode.java:147)
> at org.teiid.query.processor.relational.RelationalNode.nextBatch(RelationalNode.java:281)
> at org.teiid.query.processor.relational.LimitNode.nextBatchDirect(LimitNode.java:102)
> at org.teiid.query.processor.relational.RelationalNode.nextBatch(RelationalNode.java:281)
> at org.teiid.query.processor.relational.RelationalPlan.nextBatch(RelationalPlan.java:145)
> at org.teiid.query.processor.QueryProcessor.nextBatchDirect(QueryProcessor.java:152)
> at org.teiid.query.processor.QueryProcessor.nextBatch(QueryProcessor.java:115)
> at org.teiid.query.processor.BatchCollector.collectTuples(BatchCollector.java:164)
> at org.teiid.query.processor.BatchCollector.collectTuples(BatchCollector.java:146)
> at org.teiid.dqp.internal.process.RequestWorkItem.processMore(RequestWorkItem.java:479)
> at org.teiid.dqp.internal.process.RequestWorkItem.process(RequestWorkItem.java:349)
> at org.teiid.dqp.internal.process.AbstractWorkItem.run(AbstractWorkItem.java:51)
> at org.teiid.dqp.internal.process.RequestWorkItem.run(RequestWorkItem.java:275)
> at org.teiid.dqp.internal.process.DQPWorkContext.runInContext(DQPWorkContext.java:284)
> at org.teiid.dqp.internal.process.ThreadReuseExecutor$RunnableWrapper.run(ThreadReuseExecutor.java:119)
> at org.teiid.dqp.internal.process.ThreadReuseExecutor$3.run(ThreadReuseExecutor.java:210)
> 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}
> even if procedure doesn't use that argument at all.
--
This message was sent by Atlassian JIRA
(v7.5.0#75005)
8 years, 4 months
[JBoss JIRA] (TEIID-5146) UNION of two similar JOIN queries fails with ASSERTION FAILED error if it contains table function of procedural call with arguments
by Steven Hawkins (JIRA)
[ https://issues.jboss.org/browse/TEIID-5146?page=com.atlassian.jira.plugin... ]
Steven Hawkins resolved TEIID-5146.
-----------------------------------
Fix Version/s: 10.1
10.0.1
Resolution: Done
Fixed two issues with lateral joins. The first is that correlated reference detection did not work when using a nested explicit cross join where no rows were actually used at the root level join. The other issue causing the exception here was that we should keep reusing a shared query under a lateral join indefinitely as we don't know ahead of time how many readers there will be.
> UNION of two similar JOIN queries fails with ASSERTION FAILED error if it contains table function of procedural call with arguments
> -----------------------------------------------------------------------------------------------------------------------------------
>
> Key: TEIID-5146
> URL: https://issues.jboss.org/browse/TEIID-5146
> Project: Teiid
> Issue Type: Bug
> Components: Query Engine
> Affects Versions: 9.3.4
> Reporter: El Fuego
> Assignee: Steven Hawkins
> Fix For: 10.1, 10.0.1
>
>
> UNION of two similar JOINs containing table function of procedural call with arguments, like:
> {code:sql}SELECT d.col_t2 FROM "ds.test_t1", table(CALL views.pr0("arg1" => col_t1)) x
> JOIN "ds.test_t2" d
> ON true
> --
> UNION
> --
> SELECT d.col_t2 FROM "ds.test_t1", table(CALL views.pr0("arg1" => col_t1)) x
> JOIN "ds.test_t2" d
> ON true{code}
> fails with error:
> {code}2017-11-11 16:16:57,158 ERROR [org.teiid.PROCESSOR] (Worker2_QueryProcessorQueue23) wbDLp863MJn9 TEIID30019 Unexpected exception for request wbDLp863MJn9.7: java.lang.AssertionError: ASSERTION FAILED: expected reference to be not null
> at org.teiid.core.util.Assertion.failed(Assertion.java:73)
> at org.teiid.core.util.Assertion.isNotNull(Assertion.java:100)
> at org.teiid.core.util.Assertion.isNotNull(Assertion.java:92)
> at org.teiid.common.buffer.TupleBuffer.getBatch(TupleBuffer.java:287)
> at org.teiid.dqp.internal.process.TupleSourceCache$CopyOnReadTupleSource.nextTuple(TupleSourceCache.java:103)
> at org.teiid.query.processor.relational.AccessNode.nextBatchDirect(AccessNode.java:394)
> at org.teiid.query.processor.relational.RelationalNode.nextBatch(RelationalNode.java:281)
> at org.teiid.query.processor.BatchCollector.collectTuples(BatchCollector.java:164)
> at org.teiid.query.processor.relational.SourceState.prefetch(SourceState.java:211)
> at org.teiid.query.processor.relational.SourceState.rowCountLE(SourceState.java:158)
> at org.teiid.query.processor.relational.JoinNode.nextBatchDirect(JoinNode.java:227)
> at org.teiid.query.processor.relational.RelationalNode.nextBatch(RelationalNode.java:281)
> at org.teiid.query.processor.relational.LimitNode.nextBatchDirect(LimitNode.java:102)
> at org.teiid.query.processor.relational.RelationalNode.nextBatch(RelationalNode.java:281)
> at org.teiid.query.processor.BatchIterator.finalRow(BatchIterator.java:69)
> at org.teiid.common.buffer.AbstractTupleSource.getCurrentTuple(AbstractTupleSource.java:70)
> at org.teiid.query.processor.BatchIterator.getCurrentTuple(BatchIterator.java:84)
> at org.teiid.common.buffer.AbstractTupleSource.hasNext(AbstractTupleSource.java:92)
> at org.teiid.query.processor.relational.NestedTableJoinStrategy.process(NestedTableJoinStrategy.java:119)
> at org.teiid.query.processor.relational.JoinNode.nextBatchDirect(JoinNode.java:235)
> at org.teiid.query.processor.relational.RelationalNode.nextBatch(RelationalNode.java:281)
> at org.teiid.query.processor.relational.LimitNode.nextBatchDirect(LimitNode.java:102)
> at org.teiid.query.processor.relational.RelationalNode.nextBatch(RelationalNode.java:281)
> at org.teiid.query.processor.relational.ProjectNode.nextBatchDirect(ProjectNode.java:150)
> at org.teiid.query.processor.relational.RelationalNode.nextBatch(RelationalNode.java:281)
> at org.teiid.query.processor.relational.UnionAllNode.nextBatchDirect(UnionAllNode.java:147)
> at org.teiid.query.processor.relational.RelationalNode.nextBatch(RelationalNode.java:281)
> at org.teiid.query.processor.relational.LimitNode.nextBatchDirect(LimitNode.java:102)
> at org.teiid.query.processor.relational.RelationalNode.nextBatch(RelationalNode.java:281)
> at org.teiid.query.processor.relational.RelationalPlan.nextBatch(RelationalPlan.java:145)
> at org.teiid.query.processor.QueryProcessor.nextBatchDirect(QueryProcessor.java:152)
> at org.teiid.query.processor.QueryProcessor.nextBatch(QueryProcessor.java:115)
> at org.teiid.query.processor.BatchCollector.collectTuples(BatchCollector.java:164)
> at org.teiid.query.processor.BatchCollector.collectTuples(BatchCollector.java:146)
> at org.teiid.dqp.internal.process.RequestWorkItem.processMore(RequestWorkItem.java:479)
> at org.teiid.dqp.internal.process.RequestWorkItem.process(RequestWorkItem.java:349)
> at org.teiid.dqp.internal.process.AbstractWorkItem.run(AbstractWorkItem.java:51)
> at org.teiid.dqp.internal.process.RequestWorkItem.run(RequestWorkItem.java:275)
> at org.teiid.dqp.internal.process.DQPWorkContext.runInContext(DQPWorkContext.java:284)
> at org.teiid.dqp.internal.process.ThreadReuseExecutor$RunnableWrapper.run(ThreadReuseExecutor.java:119)
> at org.teiid.dqp.internal.process.ThreadReuseExecutor$3.run(ThreadReuseExecutor.java:210)
> 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}
> even if procedure doesn't use that argument at all.
--
This message was sent by Atlassian JIRA
(v7.5.0#75005)
8 years, 4 months