[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)
7 years, 1 month
[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)
7 years, 1 month
[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)
7 years, 1 month
[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)
7 years, 1 month
[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)
7 years, 1 month
[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)
7 years, 1 month
[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)
7 years, 1 month
[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)
7 years, 1 month
[JBoss JIRA] (TEIID-5147) ODBC server serving unrelated results
by Steven Hawkins (JIRA)
[ https://issues.jboss.org/browse/TEIID-5147?page=com.atlassian.jira.plugin... ]
Steven Hawkins commented on TEIID-5147:
---------------------------------------
> On what level should I log the traffic? Can I do it by configuring the Teiid/JBoss AS server?
Yes, set the org.teiid.ODBC context to trace. That will show each client/server message.
> I agree, I just want to mention, that on 8.12.12.6_3 version it behaves correctly.
Is there a client change in the testing?
> ODBC server serving unrelated results
> -------------------------------------
>
> Key: TEIID-5147
> URL: https://issues.jboss.org/browse/TEIID-5147
> Project: Teiid
> Issue Type: Bug
> Components: ODBC
> Affects Versions: 8.12.x-6.4
> Reporter: Jan Stastny
> Assignee: Steven Hawkins
> Priority: Blocker
>
> There is blocking issue with ODBC server. The results are corrupt due to interleaving queries running on the server.
> For a query:
> {code:sql}
> SELECT BQT1.SmallA.StringKey FROM BQT1.SmallA WHERE BQT1.SmallA.StringKey >= 47
> {code}
> I get following result:
> ||relname||nspname||relkind||
> |HugeA|BQT1|v|
> |HugeB|BQT1|v|
> |LargeA|BQT1|v|
> |LargeB|BQT1|v|
> |MediumA|BQT1|v|
> |MediumB|BQT1|v|
> |SmallA|BQT1|v|
> |SmallB|BQT1|v|
> |HugeA|BQT2|v|
> |HugeB|BQT2|v|
> |LargeA|BQT2|v|
> |LargeB|BQT2|v|
> |MediumA|BQT2|v|
> |MediumB|BQT2|v|
> |SmallA|BQT2|v|
> |SmallB|BQT2|v|
> |dv_odbc_test|OdbcTest|r|
> |Columns|SYS|r|
> |DataTypes|SYS|r|
> |FunctionParams|SYS|r|
> |Functions|SYS|r|
> |GEOMETRY_COLUMNS|SYS|v|
> |KeyColumns|SYS|r|
> |Keys|SYS|r|
> |ProcedureParams|SYS|r|
> |Procedures|SYS|r|
> |Properties|SYS|r|
> |ReferenceKeyColumns|SYS|r|
> |Schemas|SYS|r|
> |Tables|SYS|r|
> |VirtualDatabases|SYS|r|
> |spatial_ref_sys|SYS|v|
> |MatViews|SYSADMIN|r|
> |StoredProcedures|SYSADMIN|r|
> |Triggers|SYSADMIN|r|
> |Usage|SYSADMIN|r|
> |VDBResources|SYSADMIN|r|
> |Views|SYSADMIN|r|
> |hugea|Source|r|
> |hugeb|Source|r|
> |largea|Source|r|
> |largeb|Source|r|
> |mediuma|Source|r|
> |mediumb|Source|r|
> |smalla|Source|r|
> |smallb|Source|r|
> which is a result to an internal query performed by the engine.
> See the following command log.
> Notice, that
> * j2lxLVGEBuHy.195 is the request I actually got results for
> * j2lxLVGEBuHy.200 is the requestId of my query
> {code}
> 23:33:09,507 INFO [org.teiid.COMMAND_LOG] (Worker1_QueryProcessorQueue68) j2lxLVGEBuHy START USER COMMAND: startTime=2017-11-11 23:33:09.507 requestID=j2lxLVGEBuHy.195 txID=null sessionID=j2lxLVGEBuHy applicationName=ODBC principal=user@teiid-security vdbName=Postgres92 vdbVersion=1 sql=select relname, nspname, relkind from pg_catalog.pg_class c, pg_catalog.pg_namespace n where relkind in ('r', 'v') and nspname not in ('pg_catalog', 'information_schema', 'pg_toast', 'pg_temp_1') and n.oid = relnamespace order by nspname, relname
> 23:33:09,508 INFO [org.teiid.COMMAND_LOG] (Worker1_QueryProcessorQueue68) j2lxLVGEBuHy END USER COMMAND: endTime=2017-11-11 23:33:09.508 requestID=j2lxLVGEBuHy.194 txID=TransactionImple < ac, BasicAction: 0:ffff7f000001:-71f7cd09:5a077a80:e status: ActionStatus.RUNNING > sessionID=j2lxLVGEBuHy principal=user@teiid-security vdbName=Postgres92 vdbVersion=1 finalRowCount=1
> 23:33:09,521 INFO [org.teiid.COMMAND_LOG] (Worker3_QueryProcessorQueue69) j2lxLVGEBuHy START USER COMMAND: startTime=2017-11-11 23:33:09.521 requestID=j2lxLVGEBuHy.196 txID=null sessionID=j2lxLVGEBuHy applicationName=ODBC principal=user@teiid-security vdbName=Postgres92 vdbVersion=1 sql=select attrelid, attnum, typoid from pg_catalog.matpg_relatt where attname = ? and relname = ? and nspname = ?
> 23:33:09,523 INFO [org.teiid.COMMAND_LOG] (Worker3_QueryProcessorQueue69) j2lxLVGEBuHy END USER COMMAND: endTime=2017-11-11 23:33:09.523 requestID=j2lxLVGEBuHy.196 txID=TransactionImple < ac, BasicAction: 0:ffff7f000001:-71f7cd09:5a077a80:e status: ActionStatus.RUNNING > sessionID=j2lxLVGEBuHy principal=user@teiid-security vdbName=Postgres92 vdbVersion=1 finalRowCount=1
> 23:33:09,524 INFO [org.teiid.COMMAND_LOG] (Worker3_QueryProcessorQueue69) j2lxLVGEBuHy START USER COMMAND: startTime=2017-11-11 23:33:09.524 requestID=j2lxLVGEBuHy.197 txID=null sessionID=j2lxLVGEBuHy applicationName=ODBC principal=user@teiid-security vdbName=Postgres92 vdbVersion=1 sql=select attrelid, attnum, typoid from pg_catalog.matpg_relatt where attname = ? and relname = ? and nspname = ?
> 23:33:09,527 INFO [org.teiid.COMMAND_LOG] (Worker3_QueryProcessorQueue69) j2lxLVGEBuHy END USER COMMAND: endTime=2017-11-11 23:33:09.527 requestID=j2lxLVGEBuHy.197 txID=TransactionImple < ac, BasicAction: 0:ffff7f000001:-71f7cd09:5a077a80:e status: ActionStatus.RUNNING > sessionID=j2lxLVGEBuHy principal=user@teiid-security vdbName=Postgres92 vdbVersion=1 finalRowCount=1
> 23:33:09,528 INFO [org.teiid.COMMAND_LOG] (Worker3_QueryProcessorQueue69) j2lxLVGEBuHy START USER COMMAND: startTime=2017-11-11 23:33:09.528 requestID=j2lxLVGEBuHy.198 txID=null sessionID=j2lxLVGEBuHy applicationName=ODBC principal=user@teiid-security vdbName=Postgres92 vdbVersion=1 sql=select attrelid, attnum, typoid from pg_catalog.matpg_relatt where attname = ? and relname = ? and nspname = ?
> 23:33:09,530 INFO [org.teiid.COMMAND_LOG] (Worker3_QueryProcessorQueue69) j2lxLVGEBuHy END USER COMMAND: endTime=2017-11-11 23:33:09.53 requestID=j2lxLVGEBuHy.198 txID=TransactionImple < ac, BasicAction: 0:ffff7f000001:-71f7cd09:5a077a80:e status: ActionStatus.RUNNING > sessionID=j2lxLVGEBuHy principal=user@teiid-security vdbName=Postgres92 vdbVersion=1 finalRowCount=1
> 23:33:09,533 INFO [org.teiid.COMMAND_LOG] (Worker3_QueryProcessorQueue69) j2lxLVGEBuHy START USER COMMAND: startTime=2017-11-11 23:33:09.533 requestID=j2lxLVGEBuHy.199 txID=null sessionID=j2lxLVGEBuHy applicationName=ODBC principal=user@teiid-security vdbName=Postgres92 vdbVersion=1 sql=SELECT 0
> 23:33:09,537 INFO [org.teiid.COMMAND_LOG] (Worker3_QueryProcessorQueue69) j2lxLVGEBuHy START USER COMMAND: startTime=2017-11-11 23:33:09.536 requestID=j2lxLVGEBuHy.200 txID=null sessionID=j2lxLVGEBuHy applicationName=ODBC principal=user@teiid-security vdbName=Postgres92 vdbVersion=1 sql=SELECT BQT1.SmallA.StringKey FROM BQT1.SmallA WHERE BQT1.SmallA.StringKey >= 47
> 23:33:09,542 INFO [org.teiid.COMMAND_LOG] (Worker2_QueryProcessorQueue72) j2lxLVGEBuHy END USER COMMAND: endTime=2017-11-11 23:33:09.542 requestID=j2lxLVGEBuHy.199 txID=TransactionImple < ac, BasicAction: 0:ffff7f000001:-71f7cd09:5a077a80:e status: ActionStatus.RUNNING > sessionID=j2lxLVGEBuHy principal=user@teiid-security vdbName=Postgres92 vdbVersion=1 finalRowCount=1
> 23:33:09,543 DEBUG [org.teiid.COMMAND_LOG] (Worker1_QueryProcessorQueue71) j2lxLVGEBuHy START DATA SRC COMMAND: startTime=2017-11-11 23:33:09.543 requestID=j2lxLVGEBuHy.200 sourceCommandID=0 executionID=9 txID=TransactionImple < ac, BasicAction: 0:ffff7f000001:-71f7cd09:5a077a80:e status: ActionStatus.RUNNING > modelName=Source translatorName=postgresql sessionID=j2lxLVGEBuHy principal=user@teiid-security sql=SELECT g_0.stringkey FROM Source.smalla AS g_0 WHERE g_0.stringkey >= '47'
> 23:33:09,544 DEBUG [org.teiid.COMMAND_LOG] (Worker1_QueryProcessorQueue71) j2lxLVGEBuHy SOURCE SRC COMMAND: endTime=2017-11-11 23:33:09.544 requestID=j2lxLVGEBuHy.200 sourceCommandID=0 executionID=9 txID=TransactionImple < ac, BasicAction: 0:ffff7f000001:-71f7cd09:5a077a80:e status: ActionStatus.RUNNING > modelName=Source translatorName=postgresql sessionID=j2lxLVGEBuHy principal=user@teiid-security sourceCommand=[SELECT g_0."stringkey" FROM "smalla" AS g_0 WHERE g_0."stringkey" >= '47']
> 23:33:09,553 INFO [org.teiid.COMMAND_LOG] (Worker3_QueryProcessorQueue69) j2lxLVGEBuHy END USER COMMAND: endTime=2017-11-11 23:33:09.553 requestID=j2lxLVGEBuHy.195 txID=TransactionImple < ac, BasicAction: 0:ffff7f000001:-71f7cd09:5a077a80:e status: ActionStatus.RUNNING > sessionID=j2lxLVGEBuHy principal=user@teiid-security vdbName=Postgres92 vdbVersion=1 finalRowCount=46
> 23:33:10,012 DEBUG [org.teiid.COMMAND_LOG] (Worker1_QueryProcessorQueue71) j2lxLVGEBuHy END SRC COMMAND: endTime=2017-11-11 23:33:10.012 requestID=j2lxLVGEBuHy.200 sourceCommandID=0 executionID=9 txID=TransactionImple < ac, BasicAction: 0:ffff7f000001:-71f7cd09:5a077a80:e status: ActionStatus.RUNNING > modelName=Source translatorName=postgresql sessionID=j2lxLVGEBuHy principal=user@teiid-security finalRowCount=8 cpuTime(ns)=3924366
> 23:33:10,013 INFO [org.teiid.COMMAND_LOG] (Worker1_QueryProcessorQueue71) j2lxLVGEBuHy START USER COMMAND: startTime=2017-11-11 23:33:10.013 requestID=j2lxLVGEBuHy.201 txID=null sessionID=j2lxLVGEBuHy applicationName=ODBC principal=user@teiid-security vdbName=Postgres92 vdbVersion=1 sql=select attrelid, attnum, typoid from pg_catalog.matpg_relatt where attname = ? and relname = ? and nspname = ?
> 23:33:10,016 INFO [org.teiid.COMMAND_LOG] (Worker1_QueryProcessorQueue71) j2lxLVGEBuHy END USER COMMAND: endTime=2017-11-11 23:33:10.016 requestID=j2lxLVGEBuHy.201 txID=TransactionImple < ac, BasicAction: 0:ffff7f000001:-71f7cd09:5a077a80:e status: ActionStatus.RUNNING > sessionID=j2lxLVGEBuHy principal=user@teiid-security vdbName=Postgres92 vdbVersion=1 finalRowCount=1
> 23:33:10,019 INFO [org.teiid.COMMAND_LOG] (Worker1_QueryProcessorQueue71) j2lxLVGEBuHy START USER COMMAND: startTime=2017-11-11 23:33:10.019 requestID=j2lxLVGEBuHy.202 txID=null sessionID=j2lxLVGEBuHy applicationName=ODBC principal=user@teiid-security vdbName=Postgres92 vdbVersion=1 sql=SELECT 0
> 23:33:10,020 INFO [org.teiid.COMMAND_LOG] (Worker1_QueryProcessorQueue71) j2lxLVGEBuHy END USER COMMAND: endTime=2017-11-11 23:33:10.02 requestID=j2lxLVGEBuHy.200 txID=TransactionImple < ac, BasicAction: 0:ffff7f000001:-71f7cd09:5a077a80:e status: ActionStatus.RUNNING > sessionID=j2lxLVGEBuHy principal=user@teiid-security vdbName=Postgres92 vdbVersion=1 finalRowCount=8
> {code}
--
This message was sent by Atlassian JIRA
(v7.5.0#75005)
7 years, 1 month