[JBoss JIRA] (TEIID-5193) Osisoft translator - correlated subquery on HAVING clause fails
by Ramesh Reddy (JIRA)
[ https://issues.jboss.org/browse/TEIID-5193?page=com.atlassian.jira.plugin... ]
Ramesh Reddy commented on TEIID-5193:
-------------------------------------
I think the error is saying you should use aggregate comparison in Having clause, so I do not think this as a bug.
> Osisoft translator - correlated subquery on HAVING clause fails
> ---------------------------------------------------------------
>
> Key: TEIID-5193
> URL: https://issues.jboss.org/browse/TEIID-5193
> Project: Teiid
> Issue Type: Bug
> Components: JDBC Connector
> Affects Versions: 8.12.x-6.4
> Reporter: Andrej Šmigala
> Assignee: Ramesh Reddy
>
> Running a query with a correlated subquery in a HAVING clause, such as
> {code:sql}
> SELECT INTKEY, STRINGKEY
> FROM BQT1.SMALLA AS A
> WHERE NOT (INTKEY IN (10))
> GROUP BY INTKEY, STRINGKEY
> HAVING INTKEY = (SELECT MIN(STRINGKEY) FROM BQT1.SMALLA AS B WHERE A.INTKEY = B.INTKEY)
> {code}
> fails on the datasource with
> bq. com.osisoft.rdsa.RdsaException: [PIOLEDBENT] HAVING condition cannot be nonaggregate.
> This seems to be an issue on the Osisoft PI datasource side, as running the query directly against the datasource produces the same failure.
--
This message was sent by Atlassian JIRA
(v7.5.0#75005)
8 years, 2 months
[JBoss JIRA] (TEIID-5193) Osisoft translator - correlated subquery on HAVING clause fails
by Ramesh Reddy (JIRA)
[ https://issues.jboss.org/browse/TEIID-5193?page=com.atlassian.jira.plugin... ]
Ramesh Reddy updated TEIID-5193:
--------------------------------
Description:
Running a query with a correlated subquery in a HAVING clause, such as
{code:sql}
SELECT INTKEY, STRINGKEY
FROM BQT1.SMALLA AS A
WHERE NOT (INTKEY IN (10))
GROUP BY INTKEY, STRINGKEY
HAVING INTKEY = (SELECT MIN(STRINGKEY) FROM BQT1.SMALLA AS B WHERE A.INTKEY = B.INTKEY)
{code}
fails on the datasource with
bq. com.osisoft.rdsa.RdsaException: [PIOLEDBENT] HAVING condition cannot be nonaggregate.
This seems to be an issue on the Osisoft PI datasource side, as running the query directly against the datasource produces the same failure.
was:
Running a query with a correlated subquery in a HAVING clause, such as
{code:sql}
SELECT INTKEY, STRINGKEY FROM BQT1.SMALLA AS A WHERE NOT (INTKEY IN (10)) GROUP BY INTKEY, STRINGKEY HAVING INTKEY = (SELECT MIN(STRINGKEY) FROM BQT1.SMALLA AS B WHERE A.INTKEY = B.INTKEY)
{code}
fails on the datasource with
bq. com.osisoft.rdsa.RdsaException: [PIOLEDBENT] HAVING condition cannot be nonaggregate.
This seems to be an issue on the Osisoft PI datasource side, as running the query directly against the datasource produces the same failure.
> Osisoft translator - correlated subquery on HAVING clause fails
> ---------------------------------------------------------------
>
> Key: TEIID-5193
> URL: https://issues.jboss.org/browse/TEIID-5193
> Project: Teiid
> Issue Type: Bug
> Components: JDBC Connector
> Affects Versions: 8.12.x-6.4
> Reporter: Andrej Šmigala
> Assignee: Ramesh Reddy
>
> Running a query with a correlated subquery in a HAVING clause, such as
> {code:sql}
> SELECT INTKEY, STRINGKEY
> FROM BQT1.SMALLA AS A
> WHERE NOT (INTKEY IN (10))
> GROUP BY INTKEY, STRINGKEY
> HAVING INTKEY = (SELECT MIN(STRINGKEY) FROM BQT1.SMALLA AS B WHERE A.INTKEY = B.INTKEY)
> {code}
> fails on the datasource with
> bq. com.osisoft.rdsa.RdsaException: [PIOLEDBENT] HAVING condition cannot be nonaggregate.
> This seems to be an issue on the Osisoft PI datasource side, as running the query directly against the datasource produces the same failure.
--
This message was sent by Atlassian JIRA
(v7.5.0#75005)
8 years, 2 months
[JBoss JIRA] (TEIID-5196) Osisoft Translator - Wrong data returned for some JOIN queries when integer and float columns are compared
by Ramesh Reddy (JIRA)
[ https://issues.jboss.org/browse/TEIID-5196?page=com.atlassian.jira.plugin... ]
Work on TEIID-5196 started by Ramesh Reddy.
-------------------------------------------
> Osisoft Translator - Wrong data returned for some JOIN queries when integer and float columns are compared
> ----------------------------------------------------------------------------------------------------------
>
> Key: TEIID-5196
> URL: https://issues.jboss.org/browse/TEIID-5196
> Project: Teiid
> Issue Type: Bug
> Components: JDBC Connector
> Affects Versions: 8.12.x-6.4
> Reporter: Andrej Šmigala
> Assignee: Ramesh Reddy
>
> When using equality comparison between an integer and float columns in a WHERE or ON clause, Teiid pushes it to Osisoft PI with both columns cast as double.
> There seems to be a bug in Osisoft PI which causes the non-positive float values in the result for such a query to be returned as NULL (or not at all).
> E.g.
> {code:sql|title=Teiid query}
> SELECT BQT1.MediumA.IntNum, BQT1.MediumB.FloatNum
> FROM BQT1.MediumA
> FULL JOIN BQT1.MediumB
> ON BQT1.MediumA.IntNum = BQT1.MediumB.FloatNum
> WHERE
> BQT1.MediumA.IntNum >= -10
> AND BQT1.MediumA.IntNum < 5
> AND (BQT1.MediumB.FloatNum >= -10
> AND BQT1.MediumB.FloatNum < 5)
> {code}
> is translated to
> {code:sql|title=Pushed Osisoft PI query}
> SELECT g_0.IntNum, g_1.FloatNum
> FROM dvqe..MediumA AS g_0, dvqe..MediumB AS g_1
> WHERE
> cast(g_0.IntNum AS Double) = cast(g_1.FloatNum AS Double)
> AND g_0.IntNum < 5
> AND g_1.FloatNum >= -10.0
> AND g_1.FloatNum < 5.0
> AND g_0.IntNum >= -10
> {code}
> which seems to be correct, but returns the wrong result:
> ||IntNum||FloatNum||
> |1|1|
> |2|2|
> |3|3|
> |4|4|
> Note that the only the positive values are returned, even though the criteria match also negative values (which are present in the source table).
> If the cast to double in the source query is removed (or replaced with cast to single), the query returns the expected results.
--
This message was sent by Atlassian JIRA
(v7.5.0#75005)
8 years, 2 months
[JBoss JIRA] (TEIID-5124) Osisoft translator - Syntax error on datasource for queries with LOCATE
by RH Bugzilla Integration (JIRA)
[ https://issues.jboss.org/browse/TEIID-5124?page=com.atlassian.jira.plugin... ]
RH Bugzilla Integration commented on TEIID-5124:
------------------------------------------------
Andrej Smigala <asmigala(a)redhat.com> changed the Status of [bug 1506285|https://bugzilla.redhat.com/show_bug.cgi?id=1506285] from ON_QA to VERIFIED
> 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, 2 months
[JBoss JIRA] (TEIID-5196) Osisoft Translator - Wrong data returned for some JOIN queries when integer and float columns are compared
by Andrej Šmigala (JIRA)
[ https://issues.jboss.org/browse/TEIID-5196?page=com.atlassian.jira.plugin... ]
Andrej Šmigala commented on TEIID-5196:
---------------------------------------
[~rareddy] another option would be removing the cast altogether.
> Osisoft Translator - Wrong data returned for some JOIN queries when integer and float columns are compared
> ----------------------------------------------------------------------------------------------------------
>
> Key: TEIID-5196
> URL: https://issues.jboss.org/browse/TEIID-5196
> Project: Teiid
> Issue Type: Bug
> Components: JDBC Connector
> Affects Versions: 8.12.x-6.4
> Reporter: Andrej Šmigala
> Assignee: Ramesh Reddy
>
> When using equality comparison between an integer and float columns in a WHERE or ON clause, Teiid pushes it to Osisoft PI with both columns cast as double.
> There seems to be a bug in Osisoft PI which causes the non-positive float values in the result for such a query to be returned as NULL (or not at all).
> E.g.
> {code:sql|title=Teiid query}
> SELECT BQT1.MediumA.IntNum, BQT1.MediumB.FloatNum
> FROM BQT1.MediumA
> FULL JOIN BQT1.MediumB
> ON BQT1.MediumA.IntNum = BQT1.MediumB.FloatNum
> WHERE
> BQT1.MediumA.IntNum >= -10
> AND BQT1.MediumA.IntNum < 5
> AND (BQT1.MediumB.FloatNum >= -10
> AND BQT1.MediumB.FloatNum < 5)
> {code}
> is translated to
> {code:sql|title=Pushed Osisoft PI query}
> SELECT g_0.IntNum, g_1.FloatNum
> FROM dvqe..MediumA AS g_0, dvqe..MediumB AS g_1
> WHERE
> cast(g_0.IntNum AS Double) = cast(g_1.FloatNum AS Double)
> AND g_0.IntNum < 5
> AND g_1.FloatNum >= -10.0
> AND g_1.FloatNum < 5.0
> AND g_0.IntNum >= -10
> {code}
> which seems to be correct, but returns the wrong result:
> ||IntNum||FloatNum||
> |1|1|
> |2|2|
> |3|3|
> |4|4|
> Note that the only the positive values are returned, even though the criteria match also negative values (which are present in the source table).
> If the cast to double in the source query is removed (or replaced with cast to single), the query returns the expected results.
--
This message was sent by Atlassian JIRA
(v7.5.0#75005)
8 years, 2 months
[JBoss JIRA] (TEIID-5203) Google Spreadsheet translator NPE thrown on UPDATE
by Steven Hawkins (JIRA)
[ https://issues.jboss.org/browse/TEIID-5203?page=com.atlassian.jira.plugin... ]
Steven Hawkins commented on TEIID-5203:
---------------------------------------
Yes I used the ddl provided and a fresh sheet.
> Google Spreadsheet translator NPE thrown on UPDATE
> --------------------------------------------------
>
> Key: TEIID-5203
> URL: https://issues.jboss.org/browse/TEIID-5203
> Project: Teiid
> Issue Type: Bug
> Components: Misc. Connectors
> Affects Versions: 8.12.x-6.4
> Reporter: Jan Stastny
> Assignee: Steven Hawkins
> Priority: Blocker
>
> There is a NPE thrown with UPDATE when there is a matching row (either no criteria or criteria matching at least one row).
> {code:sql}
> UPDATE SmallA SET IntNum=2
> {code}
> {code}
> 15:50:17,006 ERROR [org.teiid.CONNECTOR] (Worker8_QueryProcessorQueue71) Connector worker process failed for atomic-request=llOgHAYB6Yd3.31.2.96: java.lang.NullPointerException
> at com.google.gdata.data.spreadsheet.CustomElementCollection.getValue(CustomElementCollection.java:106) [gdata-spreadsheet-3.0.jar:]
> at org.teiid.resource.adapter.google.gdata.GDataClientLoginAPI.listFeedUpdate(GDataClientLoginAPI.java:175) [google-api-8.12.11.6_4-redhat-64-10.jar:8.12.11.6_4-redhat-64-10]
> at org.teiid.resource.adapter.google.SpreadsheetConnectionImpl.executeListFeedUpdate(SpreadsheetConnectionImpl.java:114)
> at org.teiid.translator.google.SpreadsheetUpdateExecution.executeUpdate(SpreadsheetUpdateExecution.java:76) [translator-google-8.12.11.6_4-redhat-64-10.jar:8.12.11.6_4-redhat-64-10]
> at org.teiid.translator.google.SpreadsheetUpdateExecution.execute(SpreadsheetUpdateExecution.java:67) [translator-google-8.12.11.6_4-redhat-64-10.jar:8.12.11.6_4-redhat-64-10]
> at org.teiid.dqp.internal.datamgr.ConnectorWorkItem$1.execute(ConnectorWorkItem.java:399)
> at org.teiid.dqp.internal.datamgr.ConnectorWorkItem.execute(ConnectorWorkItem.java:361)
> at sun.reflect.GeneratedMethodAccessor209.invoke(Unknown Source) [: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)
> 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.nextTuple(DataTierTupleSource.java:142)
> at org.teiid.query.processor.relational.AccessNode.nextBatchDirect(AccessNode.java:391)
> 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:151)
> at org.teiid.query.processor.QueryProcessor.nextBatch(QueryProcessor.java:114)
> 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.proc.ProcedurePlan.executePlan(ProcedurePlan.java:616)
> at org.teiid.query.processor.proc.CreateCursorResultSetInstruction.process(CreateCursorResultSetInstruction.java:69)
> at org.teiid.query.processor.proc.ProcedurePlan.processProcedure(ProcedurePlan.java:389)
> at org.teiid.query.processor.proc.ProcedurePlan.nextBatchDirect(ProcedurePlan.java:298)
> at org.teiid.query.processor.proc.ProcedurePlan.nextBatch(ProcedurePlan.java:270)
> at org.teiid.query.processor.QueryProcessor.nextBatchDirect(QueryProcessor.java:151)
> at org.teiid.query.processor.QueryProcessor.nextBatch(QueryProcessor.java:114)
> at org.teiid.query.processor.proc.ForEachRowPlan.nextBatch(ForEachRowPlan.java:147)
> at org.teiid.query.processor.relational.PlanExecutionNode.nextBatchDirect(PlanExecutionNode.java:118)
> 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.RelationalPlan.nextBatch(RelationalPlan.java:145)
> at org.teiid.query.processor.QueryProcessor.nextBatchDirect(QueryProcessor.java:151)
> at org.teiid.query.processor.QueryProcessor.nextBatch(QueryProcessor.java:114)
> 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:472)
> at org.teiid.dqp.internal.process.RequestWorkItem.process(RequestWorkItem.java:348)
> at org.teiid.dqp.internal.process.AbstractWorkItem.run(AbstractWorkItem.java:51)
> at org.teiid.dqp.internal.process.RequestWorkItem.run(RequestWorkItem.java:274)
> 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: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]
> 15:50:17,011 WARN [org.teiid.PROCESSOR] (Worker8_QueryProcessorQueue71) TEIID30020 Processing exception for request llOgHAYB6Yd3.31 'TEIID30504 Source: null'. Originally TeiidProcessingException CustomElementCollection.java:106. Enable more detailed logging to see the entire stacktrace.
> {code}
> COMMAND LOG:
> {code}
> 15:53:50,025 INFO [org.teiid.COMMAND_LOG] (New I/O worker #1) llOgHAYB6Yd3 START USER COMMAND: startTime=2018-01-05 15:53:50.025 requestID=llOgHAYB6Yd3.33 txID=null sessionID=llOgHAYB6Yd3 applicationName=JDBC principal=user@teiid-security vdbName=googlespreadsheetcrud vdbVersion=1 sql=UPDATE SmallA SET IntNum=2
> 15:53:50,033 DEBUG [org.teiid.COMMAND_LOG] (Worker9_QueryProcessorQueue76) llOgHAYB6Yd3 START DATA SRC COMMAND: startTime=2018-01-05 15:53:50.033 requestID=llOgHAYB6Yd3.33 sourceCommandID=1 executionID=98 txID=TransactionImple < ac, BasicAction: 0:ffff7f000001:63850a7c:5a4f89f7:80 status: ActionStatus.RUNNING > modelName=Source translatorName=google-spreadsheet sessionID=llOgHAYB6Yd3 principal=user@teiid-security sql=SELECT Source.smalla.intkey, Source.smalla.stringkey, Source.smalla.intnum, Source.smalla.stringnum, Source.smalla.floatnum, Source.smalla.longnum, Source.smalla.doublenum, Source.smalla.bytenum, Source.smalla.datevalue, Source.smalla.timevalue, Source.smalla.timestampvalue, Source.smalla.booleanvalue, Source.smalla.charvalue, Source.smalla.shortvalue, Source.smalla.bigintegervalue, Source.smalla.bigdecimalvalue, Source.smalla.objectvalue FROM Source.smalla
> 15:53:51,128 DEBUG [org.teiid.COMMAND_LOG] (Worker9_QueryProcessorQueue76) llOgHAYB6Yd3 END SRC COMMAND: endTime=2018-01-05 15:53:51.128 requestID=llOgHAYB6Yd3.33 sourceCommandID=1 executionID=98 txID=TransactionImple < ac, BasicAction: 0:ffff7f000001:63850a7c:5a4f89f7:80 status: ActionStatus.RUNNING > modelName=Source translatorName=google-spreadsheet sessionID=llOgHAYB6Yd3 principal=user@teiid-security finalRowCount=30 cpuTime(ns)=37690048
> 15:53:51,129 DEBUG [org.teiid.COMMAND_LOG] (Worker9_QueryProcessorQueue76) llOgHAYB6Yd3 START DATA SRC COMMAND: startTime=2018-01-05 15:53:51.129 requestID=llOgHAYB6Yd3.33 sourceCommandID=2 executionID=99 txID=TransactionImple < ac, BasicAction: 0:ffff7f000001:63850a7c:5a4f89f7:80 status: ActionStatus.RUNNING > modelName=Source translatorName=google-spreadsheet sessionID=llOgHAYB6Yd3 principal=user@teiid-security sql=UPDATE Source.smalla SET intkey = 2, stringkey = '2', intnum = 2, stringnum = '812376', floatnum = -27810.0, longnum = 9, doublenum = -1349305.33, bytenum = -121, datevalue = {d'2012-01-26'}, timevalue = null, timestampvalue = null, booleanvalue = FALSE, charvalue = '5', shortvalue = 13825, bigintegervalue = 27147783, bigdecimalvalue = 1703662.0300000, objectvalue = '-106.0' WHERE intkey = 2
> 15:53:51,740 DEBUG [org.teiid.COMMAND_LOG] (Worker9_QueryProcessorQueue76) llOgHAYB6Yd3 ERROR SRC COMMAND: endTime=2018-01-05 15:53:51.74 requestID=llOgHAYB6Yd3.33 sourceCommandID=2 executionID=99 txID=TransactionImple < ac, BasicAction: 0:ffff7f000001:63850a7c:5a4f89f7:80 status: ActionStatus.RUNNING > modelName=Source translatorName=google-spreadsheet sessionID=llOgHAYB6Yd3 principal=user@teiid-security
> 15:53:51,746 DEBUG [org.teiid.COMMAND_LOG] (Worker9_QueryProcessorQueue76) llOgHAYB6Yd3 END SRC COMMAND: endTime=2018-01-05 15:53:51.746 requestID=llOgHAYB6Yd3.33 sourceCommandID=2 executionID=99 txID=TransactionImple < ac, BasicAction: 0:ffff7f000001:63850a7c:5a4f89f7:80 status: ActionStatus.RUNNING > modelName=Source translatorName=google-spreadsheet sessionID=llOgHAYB6Yd3 principal=user@teiid-security finalRowCount=0 cpuTime(ns)=13526883
> 15:53:51,746 INFO [org.teiid.COMMAND_LOG] (Worker9_QueryProcessorQueue76) llOgHAYB6Yd3 ERROR USER COMMAND: endTime=2018-01-05 15:53:51.746 requestID=llOgHAYB6Yd3.33 txID=TransactionImple < ac, BasicAction: 0:ffff7f000001:63850a7c:5a4f89f7:80 status: ActionStatus.RUNNING > sessionID=llOgHAYB6Yd3 principal=user@teiid-security vdbName=googlespreadsheetcrud vdbVersion=1 finalRowCount=null
> 15:53:51,747 INFO [org.teiid.COMMAND_LOG] (Worker9_QueryProcessorQueue76) llOgHAYB6Yd3 END USER COMMAND: endTime=2018-01-05 15:53:51.747 requestID=llOgHAYB6Yd3.33 txID=null sessionID=llOgHAYB6Yd3 principal=user@teiid-security vdbName=googlespreadsheetcrud vdbVersion=1 finalRowCount=0
> {code}
--
This message was sent by Atlassian JIRA
(v7.5.0#75005)
8 years, 2 months
[JBoss JIRA] (TEIID-5203) Google Spreadsheet translator NPE thrown on UPDATE
by Jan Stastny (JIRA)
[ https://issues.jboss.org/browse/TEIID-5203?page=com.atlassian.jira.plugin... ]
Jan Stastny edited comment on TEIID-5203 at 1/9/18 10:12 AM:
-------------------------------------------------------------
[~shawkins] I am seeing the same issue also when I built 8.12.x-6.4 myself. I'll try with different sheet and let you know the outcome.
EDIT: Happening also with a fresh copy of the document.
was (Author: jstastny):
[~shawkins] I am seeing the same issue also when I built 8.12.x-6.4 myself. I'll try with different sheet and let you know the outcome.
> Google Spreadsheet translator NPE thrown on UPDATE
> --------------------------------------------------
>
> Key: TEIID-5203
> URL: https://issues.jboss.org/browse/TEIID-5203
> Project: Teiid
> Issue Type: Bug
> Components: Misc. Connectors
> Affects Versions: 8.12.x-6.4
> Reporter: Jan Stastny
> Assignee: Steven Hawkins
> Priority: Blocker
>
> There is a NPE thrown with UPDATE when there is a matching row (either no criteria or criteria matching at least one row).
> {code:sql}
> UPDATE SmallA SET IntNum=2
> {code}
> {code}
> 15:50:17,006 ERROR [org.teiid.CONNECTOR] (Worker8_QueryProcessorQueue71) Connector worker process failed for atomic-request=llOgHAYB6Yd3.31.2.96: java.lang.NullPointerException
> at com.google.gdata.data.spreadsheet.CustomElementCollection.getValue(CustomElementCollection.java:106) [gdata-spreadsheet-3.0.jar:]
> at org.teiid.resource.adapter.google.gdata.GDataClientLoginAPI.listFeedUpdate(GDataClientLoginAPI.java:175) [google-api-8.12.11.6_4-redhat-64-10.jar:8.12.11.6_4-redhat-64-10]
> at org.teiid.resource.adapter.google.SpreadsheetConnectionImpl.executeListFeedUpdate(SpreadsheetConnectionImpl.java:114)
> at org.teiid.translator.google.SpreadsheetUpdateExecution.executeUpdate(SpreadsheetUpdateExecution.java:76) [translator-google-8.12.11.6_4-redhat-64-10.jar:8.12.11.6_4-redhat-64-10]
> at org.teiid.translator.google.SpreadsheetUpdateExecution.execute(SpreadsheetUpdateExecution.java:67) [translator-google-8.12.11.6_4-redhat-64-10.jar:8.12.11.6_4-redhat-64-10]
> at org.teiid.dqp.internal.datamgr.ConnectorWorkItem$1.execute(ConnectorWorkItem.java:399)
> at org.teiid.dqp.internal.datamgr.ConnectorWorkItem.execute(ConnectorWorkItem.java:361)
> at sun.reflect.GeneratedMethodAccessor209.invoke(Unknown Source) [: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)
> 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.nextTuple(DataTierTupleSource.java:142)
> at org.teiid.query.processor.relational.AccessNode.nextBatchDirect(AccessNode.java:391)
> 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:151)
> at org.teiid.query.processor.QueryProcessor.nextBatch(QueryProcessor.java:114)
> 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.proc.ProcedurePlan.executePlan(ProcedurePlan.java:616)
> at org.teiid.query.processor.proc.CreateCursorResultSetInstruction.process(CreateCursorResultSetInstruction.java:69)
> at org.teiid.query.processor.proc.ProcedurePlan.processProcedure(ProcedurePlan.java:389)
> at org.teiid.query.processor.proc.ProcedurePlan.nextBatchDirect(ProcedurePlan.java:298)
> at org.teiid.query.processor.proc.ProcedurePlan.nextBatch(ProcedurePlan.java:270)
> at org.teiid.query.processor.QueryProcessor.nextBatchDirect(QueryProcessor.java:151)
> at org.teiid.query.processor.QueryProcessor.nextBatch(QueryProcessor.java:114)
> at org.teiid.query.processor.proc.ForEachRowPlan.nextBatch(ForEachRowPlan.java:147)
> at org.teiid.query.processor.relational.PlanExecutionNode.nextBatchDirect(PlanExecutionNode.java:118)
> 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.RelationalPlan.nextBatch(RelationalPlan.java:145)
> at org.teiid.query.processor.QueryProcessor.nextBatchDirect(QueryProcessor.java:151)
> at org.teiid.query.processor.QueryProcessor.nextBatch(QueryProcessor.java:114)
> 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:472)
> at org.teiid.dqp.internal.process.RequestWorkItem.process(RequestWorkItem.java:348)
> at org.teiid.dqp.internal.process.AbstractWorkItem.run(AbstractWorkItem.java:51)
> at org.teiid.dqp.internal.process.RequestWorkItem.run(RequestWorkItem.java:274)
> 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: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]
> 15:50:17,011 WARN [org.teiid.PROCESSOR] (Worker8_QueryProcessorQueue71) TEIID30020 Processing exception for request llOgHAYB6Yd3.31 'TEIID30504 Source: null'. Originally TeiidProcessingException CustomElementCollection.java:106. Enable more detailed logging to see the entire stacktrace.
> {code}
> COMMAND LOG:
> {code}
> 15:53:50,025 INFO [org.teiid.COMMAND_LOG] (New I/O worker #1) llOgHAYB6Yd3 START USER COMMAND: startTime=2018-01-05 15:53:50.025 requestID=llOgHAYB6Yd3.33 txID=null sessionID=llOgHAYB6Yd3 applicationName=JDBC principal=user@teiid-security vdbName=googlespreadsheetcrud vdbVersion=1 sql=UPDATE SmallA SET IntNum=2
> 15:53:50,033 DEBUG [org.teiid.COMMAND_LOG] (Worker9_QueryProcessorQueue76) llOgHAYB6Yd3 START DATA SRC COMMAND: startTime=2018-01-05 15:53:50.033 requestID=llOgHAYB6Yd3.33 sourceCommandID=1 executionID=98 txID=TransactionImple < ac, BasicAction: 0:ffff7f000001:63850a7c:5a4f89f7:80 status: ActionStatus.RUNNING > modelName=Source translatorName=google-spreadsheet sessionID=llOgHAYB6Yd3 principal=user@teiid-security sql=SELECT Source.smalla.intkey, Source.smalla.stringkey, Source.smalla.intnum, Source.smalla.stringnum, Source.smalla.floatnum, Source.smalla.longnum, Source.smalla.doublenum, Source.smalla.bytenum, Source.smalla.datevalue, Source.smalla.timevalue, Source.smalla.timestampvalue, Source.smalla.booleanvalue, Source.smalla.charvalue, Source.smalla.shortvalue, Source.smalla.bigintegervalue, Source.smalla.bigdecimalvalue, Source.smalla.objectvalue FROM Source.smalla
> 15:53:51,128 DEBUG [org.teiid.COMMAND_LOG] (Worker9_QueryProcessorQueue76) llOgHAYB6Yd3 END SRC COMMAND: endTime=2018-01-05 15:53:51.128 requestID=llOgHAYB6Yd3.33 sourceCommandID=1 executionID=98 txID=TransactionImple < ac, BasicAction: 0:ffff7f000001:63850a7c:5a4f89f7:80 status: ActionStatus.RUNNING > modelName=Source translatorName=google-spreadsheet sessionID=llOgHAYB6Yd3 principal=user@teiid-security finalRowCount=30 cpuTime(ns)=37690048
> 15:53:51,129 DEBUG [org.teiid.COMMAND_LOG] (Worker9_QueryProcessorQueue76) llOgHAYB6Yd3 START DATA SRC COMMAND: startTime=2018-01-05 15:53:51.129 requestID=llOgHAYB6Yd3.33 sourceCommandID=2 executionID=99 txID=TransactionImple < ac, BasicAction: 0:ffff7f000001:63850a7c:5a4f89f7:80 status: ActionStatus.RUNNING > modelName=Source translatorName=google-spreadsheet sessionID=llOgHAYB6Yd3 principal=user@teiid-security sql=UPDATE Source.smalla SET intkey = 2, stringkey = '2', intnum = 2, stringnum = '812376', floatnum = -27810.0, longnum = 9, doublenum = -1349305.33, bytenum = -121, datevalue = {d'2012-01-26'}, timevalue = null, timestampvalue = null, booleanvalue = FALSE, charvalue = '5', shortvalue = 13825, bigintegervalue = 27147783, bigdecimalvalue = 1703662.0300000, objectvalue = '-106.0' WHERE intkey = 2
> 15:53:51,740 DEBUG [org.teiid.COMMAND_LOG] (Worker9_QueryProcessorQueue76) llOgHAYB6Yd3 ERROR SRC COMMAND: endTime=2018-01-05 15:53:51.74 requestID=llOgHAYB6Yd3.33 sourceCommandID=2 executionID=99 txID=TransactionImple < ac, BasicAction: 0:ffff7f000001:63850a7c:5a4f89f7:80 status: ActionStatus.RUNNING > modelName=Source translatorName=google-spreadsheet sessionID=llOgHAYB6Yd3 principal=user@teiid-security
> 15:53:51,746 DEBUG [org.teiid.COMMAND_LOG] (Worker9_QueryProcessorQueue76) llOgHAYB6Yd3 END SRC COMMAND: endTime=2018-01-05 15:53:51.746 requestID=llOgHAYB6Yd3.33 sourceCommandID=2 executionID=99 txID=TransactionImple < ac, BasicAction: 0:ffff7f000001:63850a7c:5a4f89f7:80 status: ActionStatus.RUNNING > modelName=Source translatorName=google-spreadsheet sessionID=llOgHAYB6Yd3 principal=user@teiid-security finalRowCount=0 cpuTime(ns)=13526883
> 15:53:51,746 INFO [org.teiid.COMMAND_LOG] (Worker9_QueryProcessorQueue76) llOgHAYB6Yd3 ERROR USER COMMAND: endTime=2018-01-05 15:53:51.746 requestID=llOgHAYB6Yd3.33 txID=TransactionImple < ac, BasicAction: 0:ffff7f000001:63850a7c:5a4f89f7:80 status: ActionStatus.RUNNING > sessionID=llOgHAYB6Yd3 principal=user@teiid-security vdbName=googlespreadsheetcrud vdbVersion=1 finalRowCount=null
> 15:53:51,747 INFO [org.teiid.COMMAND_LOG] (Worker9_QueryProcessorQueue76) llOgHAYB6Yd3 END USER COMMAND: endTime=2018-01-05 15:53:51.747 requestID=llOgHAYB6Yd3.33 txID=null sessionID=llOgHAYB6Yd3 principal=user@teiid-security vdbName=googlespreadsheetcrud vdbVersion=1 finalRowCount=0
> {code}
--
This message was sent by Atlassian JIRA
(v7.5.0#75005)
8 years, 2 months
[JBoss JIRA] (TEIID-5203) Google Spreadsheet translator NPE thrown on UPDATE
by Jan Stastny (JIRA)
[ https://issues.jboss.org/browse/TEIID-5203?page=com.atlassian.jira.plugin... ]
Jan Stastny commented on TEIID-5203:
------------------------------------
[~shawkins] did you try with the VDB I provided above? The issue seems to be associated with a datatype mapping between teiid and google spreadsheet. And I am not using native metadata import.
> Google Spreadsheet translator NPE thrown on UPDATE
> --------------------------------------------------
>
> Key: TEIID-5203
> URL: https://issues.jboss.org/browse/TEIID-5203
> Project: Teiid
> Issue Type: Bug
> Components: Misc. Connectors
> Affects Versions: 8.12.x-6.4
> Reporter: Jan Stastny
> Assignee: Steven Hawkins
> Priority: Blocker
>
> There is a NPE thrown with UPDATE when there is a matching row (either no criteria or criteria matching at least one row).
> {code:sql}
> UPDATE SmallA SET IntNum=2
> {code}
> {code}
> 15:50:17,006 ERROR [org.teiid.CONNECTOR] (Worker8_QueryProcessorQueue71) Connector worker process failed for atomic-request=llOgHAYB6Yd3.31.2.96: java.lang.NullPointerException
> at com.google.gdata.data.spreadsheet.CustomElementCollection.getValue(CustomElementCollection.java:106) [gdata-spreadsheet-3.0.jar:]
> at org.teiid.resource.adapter.google.gdata.GDataClientLoginAPI.listFeedUpdate(GDataClientLoginAPI.java:175) [google-api-8.12.11.6_4-redhat-64-10.jar:8.12.11.6_4-redhat-64-10]
> at org.teiid.resource.adapter.google.SpreadsheetConnectionImpl.executeListFeedUpdate(SpreadsheetConnectionImpl.java:114)
> at org.teiid.translator.google.SpreadsheetUpdateExecution.executeUpdate(SpreadsheetUpdateExecution.java:76) [translator-google-8.12.11.6_4-redhat-64-10.jar:8.12.11.6_4-redhat-64-10]
> at org.teiid.translator.google.SpreadsheetUpdateExecution.execute(SpreadsheetUpdateExecution.java:67) [translator-google-8.12.11.6_4-redhat-64-10.jar:8.12.11.6_4-redhat-64-10]
> at org.teiid.dqp.internal.datamgr.ConnectorWorkItem$1.execute(ConnectorWorkItem.java:399)
> at org.teiid.dqp.internal.datamgr.ConnectorWorkItem.execute(ConnectorWorkItem.java:361)
> at sun.reflect.GeneratedMethodAccessor209.invoke(Unknown Source) [: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)
> 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.nextTuple(DataTierTupleSource.java:142)
> at org.teiid.query.processor.relational.AccessNode.nextBatchDirect(AccessNode.java:391)
> 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:151)
> at org.teiid.query.processor.QueryProcessor.nextBatch(QueryProcessor.java:114)
> 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.proc.ProcedurePlan.executePlan(ProcedurePlan.java:616)
> at org.teiid.query.processor.proc.CreateCursorResultSetInstruction.process(CreateCursorResultSetInstruction.java:69)
> at org.teiid.query.processor.proc.ProcedurePlan.processProcedure(ProcedurePlan.java:389)
> at org.teiid.query.processor.proc.ProcedurePlan.nextBatchDirect(ProcedurePlan.java:298)
> at org.teiid.query.processor.proc.ProcedurePlan.nextBatch(ProcedurePlan.java:270)
> at org.teiid.query.processor.QueryProcessor.nextBatchDirect(QueryProcessor.java:151)
> at org.teiid.query.processor.QueryProcessor.nextBatch(QueryProcessor.java:114)
> at org.teiid.query.processor.proc.ForEachRowPlan.nextBatch(ForEachRowPlan.java:147)
> at org.teiid.query.processor.relational.PlanExecutionNode.nextBatchDirect(PlanExecutionNode.java:118)
> 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.RelationalPlan.nextBatch(RelationalPlan.java:145)
> at org.teiid.query.processor.QueryProcessor.nextBatchDirect(QueryProcessor.java:151)
> at org.teiid.query.processor.QueryProcessor.nextBatch(QueryProcessor.java:114)
> 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:472)
> at org.teiid.dqp.internal.process.RequestWorkItem.process(RequestWorkItem.java:348)
> at org.teiid.dqp.internal.process.AbstractWorkItem.run(AbstractWorkItem.java:51)
> at org.teiid.dqp.internal.process.RequestWorkItem.run(RequestWorkItem.java:274)
> 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: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]
> 15:50:17,011 WARN [org.teiid.PROCESSOR] (Worker8_QueryProcessorQueue71) TEIID30020 Processing exception for request llOgHAYB6Yd3.31 'TEIID30504 Source: null'. Originally TeiidProcessingException CustomElementCollection.java:106. Enable more detailed logging to see the entire stacktrace.
> {code}
> COMMAND LOG:
> {code}
> 15:53:50,025 INFO [org.teiid.COMMAND_LOG] (New I/O worker #1) llOgHAYB6Yd3 START USER COMMAND: startTime=2018-01-05 15:53:50.025 requestID=llOgHAYB6Yd3.33 txID=null sessionID=llOgHAYB6Yd3 applicationName=JDBC principal=user@teiid-security vdbName=googlespreadsheetcrud vdbVersion=1 sql=UPDATE SmallA SET IntNum=2
> 15:53:50,033 DEBUG [org.teiid.COMMAND_LOG] (Worker9_QueryProcessorQueue76) llOgHAYB6Yd3 START DATA SRC COMMAND: startTime=2018-01-05 15:53:50.033 requestID=llOgHAYB6Yd3.33 sourceCommandID=1 executionID=98 txID=TransactionImple < ac, BasicAction: 0:ffff7f000001:63850a7c:5a4f89f7:80 status: ActionStatus.RUNNING > modelName=Source translatorName=google-spreadsheet sessionID=llOgHAYB6Yd3 principal=user@teiid-security sql=SELECT Source.smalla.intkey, Source.smalla.stringkey, Source.smalla.intnum, Source.smalla.stringnum, Source.smalla.floatnum, Source.smalla.longnum, Source.smalla.doublenum, Source.smalla.bytenum, Source.smalla.datevalue, Source.smalla.timevalue, Source.smalla.timestampvalue, Source.smalla.booleanvalue, Source.smalla.charvalue, Source.smalla.shortvalue, Source.smalla.bigintegervalue, Source.smalla.bigdecimalvalue, Source.smalla.objectvalue FROM Source.smalla
> 15:53:51,128 DEBUG [org.teiid.COMMAND_LOG] (Worker9_QueryProcessorQueue76) llOgHAYB6Yd3 END SRC COMMAND: endTime=2018-01-05 15:53:51.128 requestID=llOgHAYB6Yd3.33 sourceCommandID=1 executionID=98 txID=TransactionImple < ac, BasicAction: 0:ffff7f000001:63850a7c:5a4f89f7:80 status: ActionStatus.RUNNING > modelName=Source translatorName=google-spreadsheet sessionID=llOgHAYB6Yd3 principal=user@teiid-security finalRowCount=30 cpuTime(ns)=37690048
> 15:53:51,129 DEBUG [org.teiid.COMMAND_LOG] (Worker9_QueryProcessorQueue76) llOgHAYB6Yd3 START DATA SRC COMMAND: startTime=2018-01-05 15:53:51.129 requestID=llOgHAYB6Yd3.33 sourceCommandID=2 executionID=99 txID=TransactionImple < ac, BasicAction: 0:ffff7f000001:63850a7c:5a4f89f7:80 status: ActionStatus.RUNNING > modelName=Source translatorName=google-spreadsheet sessionID=llOgHAYB6Yd3 principal=user@teiid-security sql=UPDATE Source.smalla SET intkey = 2, stringkey = '2', intnum = 2, stringnum = '812376', floatnum = -27810.0, longnum = 9, doublenum = -1349305.33, bytenum = -121, datevalue = {d'2012-01-26'}, timevalue = null, timestampvalue = null, booleanvalue = FALSE, charvalue = '5', shortvalue = 13825, bigintegervalue = 27147783, bigdecimalvalue = 1703662.0300000, objectvalue = '-106.0' WHERE intkey = 2
> 15:53:51,740 DEBUG [org.teiid.COMMAND_LOG] (Worker9_QueryProcessorQueue76) llOgHAYB6Yd3 ERROR SRC COMMAND: endTime=2018-01-05 15:53:51.74 requestID=llOgHAYB6Yd3.33 sourceCommandID=2 executionID=99 txID=TransactionImple < ac, BasicAction: 0:ffff7f000001:63850a7c:5a4f89f7:80 status: ActionStatus.RUNNING > modelName=Source translatorName=google-spreadsheet sessionID=llOgHAYB6Yd3 principal=user@teiid-security
> 15:53:51,746 DEBUG [org.teiid.COMMAND_LOG] (Worker9_QueryProcessorQueue76) llOgHAYB6Yd3 END SRC COMMAND: endTime=2018-01-05 15:53:51.746 requestID=llOgHAYB6Yd3.33 sourceCommandID=2 executionID=99 txID=TransactionImple < ac, BasicAction: 0:ffff7f000001:63850a7c:5a4f89f7:80 status: ActionStatus.RUNNING > modelName=Source translatorName=google-spreadsheet sessionID=llOgHAYB6Yd3 principal=user@teiid-security finalRowCount=0 cpuTime(ns)=13526883
> 15:53:51,746 INFO [org.teiid.COMMAND_LOG] (Worker9_QueryProcessorQueue76) llOgHAYB6Yd3 ERROR USER COMMAND: endTime=2018-01-05 15:53:51.746 requestID=llOgHAYB6Yd3.33 txID=TransactionImple < ac, BasicAction: 0:ffff7f000001:63850a7c:5a4f89f7:80 status: ActionStatus.RUNNING > sessionID=llOgHAYB6Yd3 principal=user@teiid-security vdbName=googlespreadsheetcrud vdbVersion=1 finalRowCount=null
> 15:53:51,747 INFO [org.teiid.COMMAND_LOG] (Worker9_QueryProcessorQueue76) llOgHAYB6Yd3 END USER COMMAND: endTime=2018-01-05 15:53:51.747 requestID=llOgHAYB6Yd3.33 txID=null sessionID=llOgHAYB6Yd3 principal=user@teiid-security vdbName=googlespreadsheetcrud vdbVersion=1 finalRowCount=0
> {code}
--
This message was sent by Atlassian JIRA
(v7.5.0#75005)
8 years, 2 months
[JBoss JIRA] (TEIID-5196) Osisoft Translator - Wrong data returned for some JOIN queries when integer and float columns are compared
by Ramesh Reddy (JIRA)
[ https://issues.jboss.org/browse/TEIID-5196?page=com.atlassian.jira.plugin... ]
Ramesh Reddy commented on TEIID-5196:
-------------------------------------
[~asmigala] What I see on this is inconsistent behavior by PI, executing the same query multiple times returning different results. Sometimes as specified above others with correct negative values. Not upcasting to double seems to return consistently, but [~shawkins] mentioned Integer to Float conversion is lossy conversion, which is not good that we pursue.
> Osisoft Translator - Wrong data returned for some JOIN queries when integer and float columns are compared
> ----------------------------------------------------------------------------------------------------------
>
> Key: TEIID-5196
> URL: https://issues.jboss.org/browse/TEIID-5196
> Project: Teiid
> Issue Type: Bug
> Components: JDBC Connector
> Affects Versions: 8.12.x-6.4
> Reporter: Andrej Šmigala
> Assignee: Ramesh Reddy
>
> When using equality comparison between an integer and float columns in a WHERE or ON clause, Teiid pushes it to Osisoft PI with both columns cast as double.
> There seems to be a bug in Osisoft PI which causes the non-positive float values in the result for such a query to be returned as NULL (or not at all).
> E.g.
> {code:sql|title=Teiid query}
> SELECT BQT1.MediumA.IntNum, BQT1.MediumB.FloatNum
> FROM BQT1.MediumA
> FULL JOIN BQT1.MediumB
> ON BQT1.MediumA.IntNum = BQT1.MediumB.FloatNum
> WHERE
> BQT1.MediumA.IntNum >= -10
> AND BQT1.MediumA.IntNum < 5
> AND (BQT1.MediumB.FloatNum >= -10
> AND BQT1.MediumB.FloatNum < 5)
> {code}
> is translated to
> {code:sql|title=Pushed Osisoft PI query}
> SELECT g_0.IntNum, g_1.FloatNum
> FROM dvqe..MediumA AS g_0, dvqe..MediumB AS g_1
> WHERE
> cast(g_0.IntNum AS Double) = cast(g_1.FloatNum AS Double)
> AND g_0.IntNum < 5
> AND g_1.FloatNum >= -10.0
> AND g_1.FloatNum < 5.0
> AND g_0.IntNum >= -10
> {code}
> which seems to be correct, but returns the wrong result:
> ||IntNum||FloatNum||
> |1|1|
> |2|2|
> |3|3|
> |4|4|
> Note that the only the positive values are returned, even though the criteria match also negative values (which are present in the source table).
> If the cast to double in the source query is removed (or replaced with cast to single), the query returns the expected results.
--
This message was sent by Atlassian JIRA
(v7.5.0#75005)
8 years, 2 months
[JBoss JIRA] (TEIID-5183) NPE in Swagger translator
by Steven Hawkins (JIRA)
[ https://issues.jboss.org/browse/TEIID-5183?page=com.atlassian.jira.plugin... ]
Steven Hawkins commented on TEIID-5183:
---------------------------------------
I'll investigate that on 9.3.x. We can tolerate an error as a known issue, but wrong results should be addressed if possible.
> NPE in Swagger translator
> -------------------------
>
> Key: TEIID-5183
> URL: https://issues.jboss.org/browse/TEIID-5183
> Project: Teiid
> Issue Type: Bug
> Components: Misc. Connectors
> Affects Versions: 9.3.4
> Environment: teiid-9.3.4 on WildFly Full 10.0.0.Final (WildFly Core 2.0.10.Final)
> Reporter: dalex dalex
> Assignee: Steven Hawkins
> Fix For: 10.1, 9.3.6, 10.0.2
>
> Attachments: swagger_null_values.jpg
>
>
> When using the http://api.apis.guru/v2/specs/azure.com/redis/2017-10-01/ link as an endpoint for swagger resource adapter Teiid throws up the following error message (in bootstrapping phase), though with http://petstore.swagger.io/v2 endpoint according to the https://teiid.gitbooks.io/documents/reference/Swagger_Translator.html documentation the translator works:
> {code:noformat}
> 2017-12-18 16:14:43,975 WARN [org.teiid.RUNTIME] (Worker1_async-teiid-threads1) TEIID50036 VDB test.1 model "mswagger" metadata failed to load. Reason:java.lang.NullPointerExceptio
> n: java.lang.NullPointerException
> at org.teiid.metadata.MetadataFactory.setUUID(MetadataFactory.java:155)
> at org.teiid.metadata.MetadataFactory.addProcedureParameter(MetadataFactory.java:421)
> at org.teiid.translator.swagger.SwaggerMetadataProcessor.addProcedureParameters(SwaggerMetadataProcessor.java:560)
> at org.teiid.translator.swagger.SwaggerMetadataProcessor.addProcedure(SwaggerMetadataProcessor.java:261)
> at org.teiid.translator.swagger.SwaggerMetadataProcessor.process(SwaggerMetadataProcessor.java:206)
> at org.teiid.translator.swagger.SwaggerMetadataProcessor.process(SwaggerMetadataProcessor.java:74)
> at org.teiid.translator.ExecutionFactory.getMetadata(ExecutionFactory.java:961)
> at org.teiid.query.metadata.NativeMetadataRepository.getMetadata(NativeMetadataRepository.java:96)
> at org.teiid.query.metadata.NativeMetadataRepository.loadMetadata(NativeMetadataRepository.java:62)
> at org.teiid.query.metadata.ChainingMetadataRepository.loadMetadata(ChainingMetadataRepository.java:55)
> at org.teiid.jboss.VDBService$6.run(VDBService.java:341)
> at org.teiid.jboss.VDBService$7.run(VDBService.java:392)
> 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}
> The http://api.apis.guru/v2/specs/azure.com/redis/2017-10-01/ endpoint supports swagger API according to the https://apis.guru/browse-apis/ link and I can see json output when requesting the http://api.apis.guru/v2/specs/azure.com/redis/2017-10-01/swagger.json link. Probably the NPE appears because of RefParameter type which is not handled in SwaggerMetadataProcessor.addProcedureParameters method which leads to name = null.
--
This message was sent by Atlassian JIRA
(v7.5.0#75005)
8 years, 2 months