[JBoss JIRA] (TEIID-5183) NPE in Swagger translator
by dalex dalex (JIRA)
[ https://issues.jboss.org/browse/TEIID-5183?page=com.atlassian.jira.plugin... ]
dalex dalex commented on TEIID-5183:
------------------------------------
Hi [~shawkins], hm... I used Teiid 9.3.4 version with all changes from the issue. I need to check 10.0.1 as well, maybe there are some issues which have such influence on the behavior related to null values.
> 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)
7 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] I didn't try on master.
I tried on 8.12.x-6.4 with the steps from TEIID-4870 and still see the exception.
I use vdb:
{code}
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<vdb name="googlespreadsheetcrud" version="1">
<description>Google Spreadsheet for CRUD operations</description>
<model name="Source" type="PHYSICAL" visible="false">
<source name="Source" translator-name="google-spreadsheet" connection-jndi-name="java:/googlespreadsheet-crud" />
<metadata type="DDL">
<![CDATA[
CREATE FOREIGN TABLE smalla(
doublenum double OPTIONS (NATIVE_TYPE 'NUMBER'),
booleanvalue boolean OPTIONS (NATIVE_TYPE 'BOOLEAN'),
intnum integer OPTIONS (NATIVE_TYPE 'NUMBER'),
longnum long OPTIONS (NATIVE_TYPE 'NUMBER'),
floatnum float OPTIONS (NATIVE_TYPE 'NUMBER'),
bytenum byte OPTIONS (NATIVE_TYPE 'NUMBER'),
stringkey string(10) OPTIONS (NATIVE_TYPE 'STRING'),
objectvalue object OPTIONS (NATIVE_TYPE 'STRING'),
stringnum string(10) OPTIONS (NATIVE_TYPE 'STRING'),
bigintegervalue biginteger OPTIONS (NATIVE_TYPE 'NUMBER'),
datevalue date OPTIONS (NATIVE_TYPE 'DATE'),
charvalue string OPTIONS (NATIVE_TYPE 'STRING'),
timevalue time OPTIONS (NATIVE_TYPE 'TIMEOFDAY'),
bigdecimalvalue bigdecimal OPTIONS (NATIVE_TYPE 'NUMBER'),
timestampvalue timestamp OPTIONS (NATIVE_TYPE 'DATETIME'),
intkey integer OPTIONS (NATIVE_TYPE 'NUMBER'),
shortvalue short OPTIONS (NATIVE_TYPE 'NUMBER')
) OPTIONS (UPDATABLE 'TRUE', NAMEINSOURCE 'smalla_${label}');
CREATE FOREIGN TABLE ag (id integer PRIMARY KEY, name string) OPTIONS (UPDATABLE 'TRUE');
]]>
</metadata>
</model>
<model name="CRUD" type="VIRTUAL">
<metadata type="DDL">
<![CDATA[
CREATE VIEW SmallA_Direct (IntKey integer PRIMARY KEY,
StringKey string,
IntNum integer,
StringNum string)
OPTIONS (UPDATABLE 'TRUE')
AS
SELECT
intkey, stringkey, intnum, stringnum
FROM
Source.smalla;
]]>
</metadata>
</model>
</vdb>
{code}
The following steps end with the exception:
# INSERT INTO SmallA_Direct (IntKey, StringKey, IntNum, StringNum) VALUES (1, '1', 1, '1'), (2, '2', 2, '2'), (3, '3', 3, '3'), (4, '4', 4, '4'), (5, '5', 5, '5')
# UPDATE SmallA_Direct SET intnum = 1001 WHERE Intkey >= 3
The spreadsheet looks like this after the insert:
| doublenum | booleanvalue | intnum | longnum | floatnum | bytenum | stringkey | objectvalue | stringnum | bigintegervalue | datevalue | charvalue | timevalue | bigdecimalvalue | timestampvalue | intkey | shortvalue |
| | | 1 | | | | 1 | | 1 | | | | | | | 1 | |
| | | 2 | | | | 2 | | 2 | | | | | | | 2 | |
| | | 3 | | | | 3 | | 3 | | | | | | | 3 | |
| | | 4 | | | | 4 | | 4 | | | | | | | 4 | |
| | | 5 | | | | 5 | | 5 | | | | | | | 5 | |
> 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)
7 years, 2 months
[JBoss JIRA] (TEIID-5199) Infinispan hotrod translator correlated subquery with where criteria issue
by Steven Hawkins (JIRA)
[ https://issues.jboss.org/browse/TEIID-5199?page=com.atlassian.jira.plugin... ]
Steven Hawkins commented on TEIID-5199:
---------------------------------------
The issue is that the we don't have the logic to pre-evaluate the aggregates when the value is false, so we issue the query regardless.
> Infinispan hotrod translator correlated subquery with where criteria issue
> --------------------------------------------------------------------------
>
> Key: TEIID-5199
> URL: https://issues.jboss.org/browse/TEIID-5199
> Project: Teiid
> Issue Type: Bug
> Components: JDG Connector, Misc. Connectors
> Affects Versions: 8.12.x-6.4
> Reporter: Jan Stastny
> Assignee: Steven Hawkins
> Priority: Critical
>
> There is an issue for particular correlated subquery:
> {code:sql}
> SELECT INTKEY, FLOATNUM FROM BQT1.SMALLA AS A WHERE FLOATNUM = (SELECT MIN(FLOATNUM) FROM BQT1.SMALLA AS B WHERE (INTKEY >= 9) AND (A.INTKEY = B.INTKEY))
> {code}
> results in:
> {code}
> 10:56:06,272 WARN [org.infinispan.client.hotrod.impl.protocol.Codec21] (Worker3_QueryProcessorQueue211) ISPN004005: Error received from the server: org.infinispan.objectfilter.ParsingException: ISPN028524: Left side argument must be a property path
> 10:56:06,274 ERROR [org.teiid.CONNECTOR] (Worker3_QueryProcessorQueue211) Connector worker process failed for atomic-request=R4LPSIZO3MG1.16.1.92: org.infinispan.client.hotrod.exceptions.HotRodClientException:Request for messageId=163 returned server error (status=0x85): org.infinispan.objectfilter.ParsingException: ISPN028524: Left side argument must be a property path
> at org.infinispan.client.hotrod.impl.protocol.Codec20.checkForErrorsInResponseStatus(Codec20.java:363) [infinispan-client-hotrod.jar:8.4.1.Final-redhat-1]
> at org.infinispan.client.hotrod.impl.protocol.Codec20.readPartialHeader(Codec20.java:152) [infinispan-client-hotrod.jar:8.4.1.Final-redhat-1]
> at org.infinispan.client.hotrod.impl.protocol.Codec20.readHeader(Codec20.java:138) [infinispan-client-hotrod.jar:8.4.1.Final-redhat-1]
> at org.infinispan.client.hotrod.impl.operations.HotRodOperation.readHeaderAndValidate(HotRodOperation.java:60) [infinispan-client-hotrod.jar:8.4.1.Final-redhat-1]
> at org.infinispan.client.hotrod.impl.operations.QueryOperation.executeOperation(QueryOperation.java:68) [infinispan-client-hotrod.jar:8.4.1.Final-redhat-1]
> at org.infinispan.client.hotrod.impl.operations.QueryOperation.executeOperation(QueryOperation.java:30) [infinispan-client-hotrod.jar:8.4.1.Final-redhat-1]
> at org.infinispan.client.hotrod.impl.operations.RetryOnFailureOperation.execute(RetryOnFailureOperation.java:57) [infinispan-client-hotrod.jar:8.4.1.Final-redhat-1]
> at org.infinispan.client.hotrod.impl.query.RemoteQuery.executeQuery(RemoteQuery.java:68) [infinispan-client-hotrod.jar:8.4.1.Final-redhat-1]
> at org.infinispan.client.hotrod.impl.query.RemoteQuery.list(RemoteQuery.java:53) [infinispan-client-hotrod.jar:8.4.1.Final-redhat-1]
> at org.teiid.translator.infinispan.hotrod.InfinispanResponse.fetchNextBatch(InfinispanResponse.java:76) [translator-infinispan-hotrod-8.12.11.6_4-redhat-10.jar:8.12.11.6_4-redhat-10]
> at org.teiid.translator.infinispan.hotrod.InfinispanResponse.getNextRow(InfinispanResponse.java:99) [translator-infinispan-hotrod-8.12.11.6_4-redhat-10.jar:8.12.11.6_4-redhat-10]
> at org.teiid.translator.infinispan.hotrod.InfinispanQueryExecution.next(InfinispanQueryExecution.java:142) [translator-infinispan-hotrod-8.12.11.6_4-redhat-10.jar:8.12.11.6_4-redhat-10]
> at org.teiid.dqp.internal.datamgr.ConnectorWorkItem.handleBatch(ConnectorWorkItem.java:431) [teiid-engine-8.12.11.6_4-redhat-64-10.jar:8.12.11.6_4-redhat-64-10]
> at org.teiid.dqp.internal.datamgr.ConnectorWorkItem.more(ConnectorWorkItem.java:234) [teiid-engine-8.12.11.6_4-redhat-64-10.jar:8.12.11.6_4-redhat-64-10]
> at sun.reflect.GeneratedMethodAccessor163.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) [teiid-engine-8.12.11.6_4-redhat-64-10.jar:8.12.11.6_4-redhat-64-10]
> at com.sun.proxy.$Proxy79.more(Unknown Source)
> at org.teiid.dqp.internal.process.DataTierTupleSource.getResults(DataTierTupleSource.java:309) [teiid-engine-8.12.11.6_4-redhat-64-10.jar:8.12.11.6_4-redhat-64-10]
> at org.teiid.dqp.internal.process.DataTierTupleSource$1.call(DataTierTupleSource.java:112) [teiid-engine-8.12.11.6_4-redhat-64-10.jar:8.12.11.6_4-redhat-64-10]
> at org.teiid.dqp.internal.process.DataTierTupleSource$1.call(DataTierTupleSource.java:108) [teiid-engine-8.12.11.6_4-redhat-64-10.jar:8.12.11.6_4-redhat-64-10]
> at java.util.concurrent.FutureTask.run(FutureTask.java:266) [rt.jar:1.8.0_151]
> at org.teiid.dqp.internal.process.FutureWork.run(FutureWork.java:65) [teiid-engine-8.12.11.6_4-redhat-64-10.jar:8.12.11.6_4-redhat-64-10]
> at org.teiid.dqp.internal.process.DQPWorkContext.runInContext(DQPWorkContext.java:284) [teiid-engine-8.12.11.6_4-redhat-64-10.jar:8.12.11.6_4-redhat-64-10]
> at org.teiid.dqp.internal.process.ThreadReuseExecutor$RunnableWrapper.run(ThreadReuseExecutor.java:119) [teiid-engine-8.12.11.6_4-redhat-64-10.jar:8.12.11.6_4-redhat-64-10]
> at org.teiid.dqp.internal.process.ThreadReuseExecutor$3.run(ThreadReuseExecutor.java:210) [teiid-engine-8.12.11.6_4-redhat-64-10.jar:8.12.11.6_4-redhat-64-10]
> 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]
> 10:56:06,286 WARN [org.teiid.PROCESSOR] (Worker2_QueryProcessorQueue212) TEIID30020 Processing exception for request R4LPSIZO3MG1.16 'TEIID30312 Unable to evaluate right expression of source__1.floatNum = (SELECT MIN(B.FloatNum) FROM BQT1.SmallA AS B WHERE (B.IntKey >= 9) AND (B.IntKey = A.IntKey))'. Originally ExpressionEvaluationException 'org.infinispan.objectfilter.ParsingException: ISPN028524: Left side argument must be a property path' Codec20.java:363. Enable more detailed logging to see the entire stacktrace.
> {code}
> There is command log:
> {code}
> 10:56:02,675 INFO [org.teiid.COMMAND_LOG] (New I/O worker #1) R4LPSIZO3MG1 START USER COMMAND: startTime=2018-01-04 10:56:02.675 requestID=R4LPSIZO3MG1.16 txID=null sessionID=R4LPSIZO3MG1 applicationName=JDBC principal=user@teiid-security vdbName=jdg71 vdbVersion=1 sql=SELECT INTKEY, FLOATNUM FROM BQT1.SMALLA AS A WHERE FLOATNUM = (SELECT MIN(FLOATNUM) FROM BQT1.SMALLA AS B WHERE (INTKEY >= 9) AND (A.INTKEY = B.INTKEY))
> 10:56:02,684 DEBUG [org.teiid.COMMAND_LOG] (Worker3_QueryProcessorQueue193) R4LPSIZO3MG1 START DATA SRC COMMAND: startTime=2018-01-04 10:56:02.683 requestID=R4LPSIZO3MG1.16 sourceCommandID=7 executionID=83 txID=null modelName=s_smallA translatorName=infinispan-hotrod sessionID=R4LPSIZO3MG1 principal=user@teiid-security sql=SELECT g_0.floatNum, g_0.intKey FROM s_smallA.SmallA AS g_0
> 10:56:03,425 DEBUG [org.teiid.COMMAND_LOG] (Worker2_QueryProcessorQueue194) R4LPSIZO3MG1 END SRC COMMAND: endTime=2018-01-04 10:56:03.425 requestID=R4LPSIZO3MG1.16 sourceCommandID=7 executionID=83 txID=null modelName=s_smallA translatorName=infinispan-hotrod sessionID=R4LPSIZO3MG1 principal=user@teiid-security finalRowCount=50 cpuTime(ns)=2289655
> 10:56:03,428 DEBUG [org.teiid.COMMAND_LOG] (Worker3_QueryProcessorQueue195) R4LPSIZO3MG1 START DATA SRC COMMAND: startTime=2018-01-04 10:56:03.428 requestID=R4LPSIZO3MG1.16 sourceCommandID=1 executionID=84 txID=null modelName=s_smallA translatorName=infinispan-hotrod sessionID=R4LPSIZO3MG1 principal=user@teiid-security sql=SELECT MIN(g_0.floatNum) FROM s_smallA.SmallA AS g_0 WHERE g_0.intKey = 49
> 10:56:03,938 DEBUG [org.teiid.COMMAND_LOG] (Worker2_QueryProcessorQueue196) R4LPSIZO3MG1 END SRC COMMAND: endTime=2018-01-04 10:56:03.938 requestID=R4LPSIZO3MG1.16 sourceCommandID=1 executionID=84 txID=null modelName=s_smallA translatorName=infinispan-hotrod sessionID=R4LPSIZO3MG1 principal=user@teiid-security finalRowCount=1 cpuTime(ns)=2950052
> 10:56:03,941 DEBUG [org.teiid.COMMAND_LOG] (Worker3_QueryProcessorQueue197) R4LPSIZO3MG1 START DATA SRC COMMAND: startTime=2018-01-04 10:56:03.941 requestID=R4LPSIZO3MG1.16 sourceCommandID=1 executionID=85 txID=null modelName=s_smallA translatorName=infinispan-hotrod sessionID=R4LPSIZO3MG1 principal=user@teiid-security sql=SELECT MIN(g_0.floatNum) FROM s_smallA.SmallA AS g_0 WHERE g_0.intKey = 48
> 10:56:04,213 DEBUG [org.teiid.COMMAND_LOG] (Worker2_QueryProcessorQueue198) R4LPSIZO3MG1 END SRC COMMAND: endTime=2018-01-04 10:56:04.213 requestID=R4LPSIZO3MG1.16 sourceCommandID=1 executionID=85 txID=null modelName=s_smallA translatorName=infinispan-hotrod sessionID=R4LPSIZO3MG1 principal=user@teiid-security finalRowCount=1 cpuTime(ns)=2580568
> 10:56:04,214 DEBUG [org.teiid.COMMAND_LOG] (Worker3_QueryProcessorQueue199) R4LPSIZO3MG1 START DATA SRC COMMAND: startTime=2018-01-04 10:56:04.214 requestID=R4LPSIZO3MG1.16 sourceCommandID=1 executionID=86 txID=null modelName=s_smallA translatorName=infinispan-hotrod sessionID=R4LPSIZO3MG1 principal=user@teiid-security sql=SELECT MIN(g_0.floatNum) FROM s_smallA.SmallA AS g_0 WHERE g_0.intKey = 47
> 10:56:04,435 DEBUG [org.teiid.COMMAND_LOG] (Worker2_QueryProcessorQueue200) R4LPSIZO3MG1 END SRC COMMAND: endTime=2018-01-04 10:56:04.435 requestID=R4LPSIZO3MG1.16 sourceCommandID=1 executionID=86 txID=null modelName=s_smallA translatorName=infinispan-hotrod sessionID=R4LPSIZO3MG1 principal=user@teiid-security finalRowCount=1 cpuTime(ns)=900091
> 10:56:04,436 DEBUG [org.teiid.COMMAND_LOG] (Worker3_QueryProcessorQueue201) R4LPSIZO3MG1 START DATA SRC COMMAND: startTime=2018-01-04 10:56:04.436 requestID=R4LPSIZO3MG1.16 sourceCommandID=1 executionID=87 txID=null modelName=s_smallA translatorName=infinispan-hotrod sessionID=R4LPSIZO3MG1 principal=user@teiid-security sql=SELECT MIN(g_0.floatNum) FROM s_smallA.SmallA AS g_0 WHERE g_0.intKey = 46
> 10:56:04,736 DEBUG [org.teiid.COMMAND_LOG] (Worker2_QueryProcessorQueue202) R4LPSIZO3MG1 END SRC COMMAND: endTime=2018-01-04 10:56:04.736 requestID=R4LPSIZO3MG1.16 sourceCommandID=1 executionID=87 txID=null modelName=s_smallA translatorName=infinispan-hotrod sessionID=R4LPSIZO3MG1 principal=user@teiid-security finalRowCount=1 cpuTime(ns)=1297007
> 10:56:04,739 DEBUG [org.teiid.COMMAND_LOG] (Worker3_QueryProcessorQueue203) R4LPSIZO3MG1 START DATA SRC COMMAND: startTime=2018-01-04 10:56:04.739 requestID=R4LPSIZO3MG1.16 sourceCommandID=1 executionID=88 txID=null modelName=s_smallA translatorName=infinispan-hotrod sessionID=R4LPSIZO3MG1 principal=user@teiid-security sql=SELECT MIN(g_0.floatNum) FROM s_smallA.SmallA AS g_0 WHERE g_0.intKey = 45
> 10:56:04,977 DEBUG [org.teiid.COMMAND_LOG] (Worker2_QueryProcessorQueue204) R4LPSIZO3MG1 END SRC COMMAND: endTime=2018-01-04 10:56:04.977 requestID=R4LPSIZO3MG1.16 sourceCommandID=1 executionID=88 txID=null modelName=s_smallA translatorName=infinispan-hotrod sessionID=R4LPSIZO3MG1 principal=user@teiid-security finalRowCount=1 cpuTime(ns)=3238629
> 10:56:04,981 DEBUG [org.teiid.COMMAND_LOG] (Worker3_QueryProcessorQueue205) R4LPSIZO3MG1 START DATA SRC COMMAND: startTime=2018-01-04 10:56:04.981 requestID=R4LPSIZO3MG1.16 sourceCommandID=1 executionID=89 txID=null modelName=s_smallA translatorName=infinispan-hotrod sessionID=R4LPSIZO3MG1 principal=user@teiid-security sql=SELECT MIN(g_0.floatNum) FROM s_smallA.SmallA AS g_0 WHERE g_0.intKey = 44
> 10:56:05,240 DEBUG [org.teiid.COMMAND_LOG] (Worker2_QueryProcessorQueue206) R4LPSIZO3MG1 END SRC COMMAND: endTime=2018-01-04 10:56:05.24 requestID=R4LPSIZO3MG1.16 sourceCommandID=1 executionID=89 txID=null modelName=s_smallA translatorName=infinispan-hotrod sessionID=R4LPSIZO3MG1 principal=user@teiid-security finalRowCount=1 cpuTime(ns)=3692883
> 10:56:05,244 DEBUG [org.teiid.COMMAND_LOG] (Worker3_QueryProcessorQueue207) R4LPSIZO3MG1 START DATA SRC COMMAND: startTime=2018-01-04 10:56:05.244 requestID=R4LPSIZO3MG1.16 sourceCommandID=1 executionID=90 txID=null modelName=s_smallA translatorName=infinispan-hotrod sessionID=R4LPSIZO3MG1 principal=user@teiid-security sql=SELECT MIN(g_0.floatNum) FROM s_smallA.SmallA AS g_0 WHERE g_0.intKey = 43
> 10:56:05,496 DEBUG [org.teiid.COMMAND_LOG] (Worker2_QueryProcessorQueue208) R4LPSIZO3MG1 END SRC COMMAND: endTime=2018-01-04 10:56:05.496 requestID=R4LPSIZO3MG1.16 sourceCommandID=1 executionID=90 txID=null modelName=s_smallA translatorName=infinispan-hotrod sessionID=R4LPSIZO3MG1 principal=user@teiid-security finalRowCount=1 cpuTime(ns)=3104929
> 10:56:05,499 DEBUG [org.teiid.COMMAND_LOG] (Worker3_QueryProcessorQueue209) R4LPSIZO3MG1 START DATA SRC COMMAND: startTime=2018-01-04 10:56:05.499 requestID=R4LPSIZO3MG1.16 sourceCommandID=1 executionID=91 txID=null modelName=s_smallA translatorName=infinispan-hotrod sessionID=R4LPSIZO3MG1 principal=user@teiid-security sql=SELECT MIN(g_0.floatNum) FROM s_smallA.SmallA AS g_0 WHERE g_0.intKey = 42
> 10:56:05,746 DEBUG [org.teiid.COMMAND_LOG] (Worker2_QueryProcessorQueue210) R4LPSIZO3MG1 END SRC COMMAND: endTime=2018-01-04 10:56:05.746 requestID=R4LPSIZO3MG1.16 sourceCommandID=1 executionID=91 txID=null modelName=s_smallA translatorName=infinispan-hotrod sessionID=R4LPSIZO3MG1 principal=user@teiid-security finalRowCount=1 cpuTime(ns)=2468255
> 10:56:05,749 DEBUG [org.teiid.COMMAND_LOG] (Worker3_QueryProcessorQueue211) R4LPSIZO3MG1 START DATA SRC COMMAND: startTime=2018-01-04 10:56:05.749 requestID=R4LPSIZO3MG1.16 sourceCommandID=1 executionID=92 txID=null modelName=s_smallA translatorName=infinispan-hotrod sessionID=R4LPSIZO3MG1 principal=user@teiid-security sql=SELECT MIN(g_0.floatNum) FROM s_smallA.SmallA AS g_0 WHERE 1 = 0
> 10:56:06,274 DEBUG [org.teiid.COMMAND_LOG] (Worker3_QueryProcessorQueue211) R4LPSIZO3MG1 ERROR SRC COMMAND: endTime=2018-01-04 10:56:06.273 requestID=R4LPSIZO3MG1.16 sourceCommandID=1 executionID=92 txID=null modelName=s_smallA translatorName=infinispan-hotrod sessionID=R4LPSIZO3MG1 principal=user@teiid-security
> 10:56:06,284 DEBUG [org.teiid.COMMAND_LOG] (Worker2_QueryProcessorQueue212) R4LPSIZO3MG1 END SRC COMMAND: endTime=2018-01-04 10:56:06.284 requestID=R4LPSIZO3MG1.16 sourceCommandID=1 executionID=92 txID=null modelName=s_smallA translatorName=infinispan-hotrod sessionID=R4LPSIZO3MG1 principal=user@teiid-security finalRowCount=0 cpuTime(ns)=12513821
> 10:56:06,286 INFO [org.teiid.COMMAND_LOG] (Worker2_QueryProcessorQueue212) R4LPSIZO3MG1 ERROR USER COMMAND: endTime=2018-01-04 10:56:06.285 requestID=R4LPSIZO3MG1.16 txID=null sessionID=R4LPSIZO3MG1 principal=user@teiid-security vdbName=jdg71 vdbVersion=1 finalRowCount=null
> 10:56:06,298 INFO [org.teiid.COMMAND_LOG] (Worker2_QueryProcessorQueue212) R4LPSIZO3MG1 END USER COMMAND: endTime=2018-01-04 10:56:06.298 requestID=R4LPSIZO3MG1.16 txID=null sessionID=R4LPSIZO3MG1 principal=user@teiid-security vdbName=jdg71 vdbVersion=1 finalRowCount=0
> {code}
> There are values 0,...,49 for IntKey column, so the fact, that processing stops at 42 is weird. The root cause is in my view that during processing, when the ordering of first source command is arbitrary, after IntKey=42 there comes result with IntKey=0, which does not match the criteria. In such case the {code}SELECT MIN(g_0.floatNum) FROM s_smallA.SmallA AS g_0 WHERE 1 = 0 {code} is pushed and processing fails.
--
This message was sent by Atlassian JIRA
(v7.5.0#75005)
7 years, 2 months
[JBoss JIRA] (TEIID-5199) Infinispan hotrod translator correlated subquery with where criteria issue
by Steven Hawkins (JIRA)
[ https://issues.jboss.org/browse/TEIID-5199?page=com.atlassian.jira.plugin... ]
Steven Hawkins commented on TEIID-5199:
---------------------------------------
Ideally the engine should be preventing the pushdown as the where predicate is false. If I recall correctly this may have already been addressed on master by another issue. We may also want to make the infinispan logic more resilient as well.
> Infinispan hotrod translator correlated subquery with where criteria issue
> --------------------------------------------------------------------------
>
> Key: TEIID-5199
> URL: https://issues.jboss.org/browse/TEIID-5199
> Project: Teiid
> Issue Type: Bug
> Components: JDG Connector, Misc. Connectors
> Affects Versions: 8.12.x-6.4
> Reporter: Jan Stastny
> Assignee: Steven Hawkins
> Priority: Critical
>
> There is an issue for particular correlated subquery:
> {code:sql}
> SELECT INTKEY, FLOATNUM FROM BQT1.SMALLA AS A WHERE FLOATNUM = (SELECT MIN(FLOATNUM) FROM BQT1.SMALLA AS B WHERE (INTKEY >= 9) AND (A.INTKEY = B.INTKEY))
> {code}
> results in:
> {code}
> 10:56:06,272 WARN [org.infinispan.client.hotrod.impl.protocol.Codec21] (Worker3_QueryProcessorQueue211) ISPN004005: Error received from the server: org.infinispan.objectfilter.ParsingException: ISPN028524: Left side argument must be a property path
> 10:56:06,274 ERROR [org.teiid.CONNECTOR] (Worker3_QueryProcessorQueue211) Connector worker process failed for atomic-request=R4LPSIZO3MG1.16.1.92: org.infinispan.client.hotrod.exceptions.HotRodClientException:Request for messageId=163 returned server error (status=0x85): org.infinispan.objectfilter.ParsingException: ISPN028524: Left side argument must be a property path
> at org.infinispan.client.hotrod.impl.protocol.Codec20.checkForErrorsInResponseStatus(Codec20.java:363) [infinispan-client-hotrod.jar:8.4.1.Final-redhat-1]
> at org.infinispan.client.hotrod.impl.protocol.Codec20.readPartialHeader(Codec20.java:152) [infinispan-client-hotrod.jar:8.4.1.Final-redhat-1]
> at org.infinispan.client.hotrod.impl.protocol.Codec20.readHeader(Codec20.java:138) [infinispan-client-hotrod.jar:8.4.1.Final-redhat-1]
> at org.infinispan.client.hotrod.impl.operations.HotRodOperation.readHeaderAndValidate(HotRodOperation.java:60) [infinispan-client-hotrod.jar:8.4.1.Final-redhat-1]
> at org.infinispan.client.hotrod.impl.operations.QueryOperation.executeOperation(QueryOperation.java:68) [infinispan-client-hotrod.jar:8.4.1.Final-redhat-1]
> at org.infinispan.client.hotrod.impl.operations.QueryOperation.executeOperation(QueryOperation.java:30) [infinispan-client-hotrod.jar:8.4.1.Final-redhat-1]
> at org.infinispan.client.hotrod.impl.operations.RetryOnFailureOperation.execute(RetryOnFailureOperation.java:57) [infinispan-client-hotrod.jar:8.4.1.Final-redhat-1]
> at org.infinispan.client.hotrod.impl.query.RemoteQuery.executeQuery(RemoteQuery.java:68) [infinispan-client-hotrod.jar:8.4.1.Final-redhat-1]
> at org.infinispan.client.hotrod.impl.query.RemoteQuery.list(RemoteQuery.java:53) [infinispan-client-hotrod.jar:8.4.1.Final-redhat-1]
> at org.teiid.translator.infinispan.hotrod.InfinispanResponse.fetchNextBatch(InfinispanResponse.java:76) [translator-infinispan-hotrod-8.12.11.6_4-redhat-10.jar:8.12.11.6_4-redhat-10]
> at org.teiid.translator.infinispan.hotrod.InfinispanResponse.getNextRow(InfinispanResponse.java:99) [translator-infinispan-hotrod-8.12.11.6_4-redhat-10.jar:8.12.11.6_4-redhat-10]
> at org.teiid.translator.infinispan.hotrod.InfinispanQueryExecution.next(InfinispanQueryExecution.java:142) [translator-infinispan-hotrod-8.12.11.6_4-redhat-10.jar:8.12.11.6_4-redhat-10]
> at org.teiid.dqp.internal.datamgr.ConnectorWorkItem.handleBatch(ConnectorWorkItem.java:431) [teiid-engine-8.12.11.6_4-redhat-64-10.jar:8.12.11.6_4-redhat-64-10]
> at org.teiid.dqp.internal.datamgr.ConnectorWorkItem.more(ConnectorWorkItem.java:234) [teiid-engine-8.12.11.6_4-redhat-64-10.jar:8.12.11.6_4-redhat-64-10]
> at sun.reflect.GeneratedMethodAccessor163.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) [teiid-engine-8.12.11.6_4-redhat-64-10.jar:8.12.11.6_4-redhat-64-10]
> at com.sun.proxy.$Proxy79.more(Unknown Source)
> at org.teiid.dqp.internal.process.DataTierTupleSource.getResults(DataTierTupleSource.java:309) [teiid-engine-8.12.11.6_4-redhat-64-10.jar:8.12.11.6_4-redhat-64-10]
> at org.teiid.dqp.internal.process.DataTierTupleSource$1.call(DataTierTupleSource.java:112) [teiid-engine-8.12.11.6_4-redhat-64-10.jar:8.12.11.6_4-redhat-64-10]
> at org.teiid.dqp.internal.process.DataTierTupleSource$1.call(DataTierTupleSource.java:108) [teiid-engine-8.12.11.6_4-redhat-64-10.jar:8.12.11.6_4-redhat-64-10]
> at java.util.concurrent.FutureTask.run(FutureTask.java:266) [rt.jar:1.8.0_151]
> at org.teiid.dqp.internal.process.FutureWork.run(FutureWork.java:65) [teiid-engine-8.12.11.6_4-redhat-64-10.jar:8.12.11.6_4-redhat-64-10]
> at org.teiid.dqp.internal.process.DQPWorkContext.runInContext(DQPWorkContext.java:284) [teiid-engine-8.12.11.6_4-redhat-64-10.jar:8.12.11.6_4-redhat-64-10]
> at org.teiid.dqp.internal.process.ThreadReuseExecutor$RunnableWrapper.run(ThreadReuseExecutor.java:119) [teiid-engine-8.12.11.6_4-redhat-64-10.jar:8.12.11.6_4-redhat-64-10]
> at org.teiid.dqp.internal.process.ThreadReuseExecutor$3.run(ThreadReuseExecutor.java:210) [teiid-engine-8.12.11.6_4-redhat-64-10.jar:8.12.11.6_4-redhat-64-10]
> 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]
> 10:56:06,286 WARN [org.teiid.PROCESSOR] (Worker2_QueryProcessorQueue212) TEIID30020 Processing exception for request R4LPSIZO3MG1.16 'TEIID30312 Unable to evaluate right expression of source__1.floatNum = (SELECT MIN(B.FloatNum) FROM BQT1.SmallA AS B WHERE (B.IntKey >= 9) AND (B.IntKey = A.IntKey))'. Originally ExpressionEvaluationException 'org.infinispan.objectfilter.ParsingException: ISPN028524: Left side argument must be a property path' Codec20.java:363. Enable more detailed logging to see the entire stacktrace.
> {code}
> There is command log:
> {code}
> 10:56:02,675 INFO [org.teiid.COMMAND_LOG] (New I/O worker #1) R4LPSIZO3MG1 START USER COMMAND: startTime=2018-01-04 10:56:02.675 requestID=R4LPSIZO3MG1.16 txID=null sessionID=R4LPSIZO3MG1 applicationName=JDBC principal=user@teiid-security vdbName=jdg71 vdbVersion=1 sql=SELECT INTKEY, FLOATNUM FROM BQT1.SMALLA AS A WHERE FLOATNUM = (SELECT MIN(FLOATNUM) FROM BQT1.SMALLA AS B WHERE (INTKEY >= 9) AND (A.INTKEY = B.INTKEY))
> 10:56:02,684 DEBUG [org.teiid.COMMAND_LOG] (Worker3_QueryProcessorQueue193) R4LPSIZO3MG1 START DATA SRC COMMAND: startTime=2018-01-04 10:56:02.683 requestID=R4LPSIZO3MG1.16 sourceCommandID=7 executionID=83 txID=null modelName=s_smallA translatorName=infinispan-hotrod sessionID=R4LPSIZO3MG1 principal=user@teiid-security sql=SELECT g_0.floatNum, g_0.intKey FROM s_smallA.SmallA AS g_0
> 10:56:03,425 DEBUG [org.teiid.COMMAND_LOG] (Worker2_QueryProcessorQueue194) R4LPSIZO3MG1 END SRC COMMAND: endTime=2018-01-04 10:56:03.425 requestID=R4LPSIZO3MG1.16 sourceCommandID=7 executionID=83 txID=null modelName=s_smallA translatorName=infinispan-hotrod sessionID=R4LPSIZO3MG1 principal=user@teiid-security finalRowCount=50 cpuTime(ns)=2289655
> 10:56:03,428 DEBUG [org.teiid.COMMAND_LOG] (Worker3_QueryProcessorQueue195) R4LPSIZO3MG1 START DATA SRC COMMAND: startTime=2018-01-04 10:56:03.428 requestID=R4LPSIZO3MG1.16 sourceCommandID=1 executionID=84 txID=null modelName=s_smallA translatorName=infinispan-hotrod sessionID=R4LPSIZO3MG1 principal=user@teiid-security sql=SELECT MIN(g_0.floatNum) FROM s_smallA.SmallA AS g_0 WHERE g_0.intKey = 49
> 10:56:03,938 DEBUG [org.teiid.COMMAND_LOG] (Worker2_QueryProcessorQueue196) R4LPSIZO3MG1 END SRC COMMAND: endTime=2018-01-04 10:56:03.938 requestID=R4LPSIZO3MG1.16 sourceCommandID=1 executionID=84 txID=null modelName=s_smallA translatorName=infinispan-hotrod sessionID=R4LPSIZO3MG1 principal=user@teiid-security finalRowCount=1 cpuTime(ns)=2950052
> 10:56:03,941 DEBUG [org.teiid.COMMAND_LOG] (Worker3_QueryProcessorQueue197) R4LPSIZO3MG1 START DATA SRC COMMAND: startTime=2018-01-04 10:56:03.941 requestID=R4LPSIZO3MG1.16 sourceCommandID=1 executionID=85 txID=null modelName=s_smallA translatorName=infinispan-hotrod sessionID=R4LPSIZO3MG1 principal=user@teiid-security sql=SELECT MIN(g_0.floatNum) FROM s_smallA.SmallA AS g_0 WHERE g_0.intKey = 48
> 10:56:04,213 DEBUG [org.teiid.COMMAND_LOG] (Worker2_QueryProcessorQueue198) R4LPSIZO3MG1 END SRC COMMAND: endTime=2018-01-04 10:56:04.213 requestID=R4LPSIZO3MG1.16 sourceCommandID=1 executionID=85 txID=null modelName=s_smallA translatorName=infinispan-hotrod sessionID=R4LPSIZO3MG1 principal=user@teiid-security finalRowCount=1 cpuTime(ns)=2580568
> 10:56:04,214 DEBUG [org.teiid.COMMAND_LOG] (Worker3_QueryProcessorQueue199) R4LPSIZO3MG1 START DATA SRC COMMAND: startTime=2018-01-04 10:56:04.214 requestID=R4LPSIZO3MG1.16 sourceCommandID=1 executionID=86 txID=null modelName=s_smallA translatorName=infinispan-hotrod sessionID=R4LPSIZO3MG1 principal=user@teiid-security sql=SELECT MIN(g_0.floatNum) FROM s_smallA.SmallA AS g_0 WHERE g_0.intKey = 47
> 10:56:04,435 DEBUG [org.teiid.COMMAND_LOG] (Worker2_QueryProcessorQueue200) R4LPSIZO3MG1 END SRC COMMAND: endTime=2018-01-04 10:56:04.435 requestID=R4LPSIZO3MG1.16 sourceCommandID=1 executionID=86 txID=null modelName=s_smallA translatorName=infinispan-hotrod sessionID=R4LPSIZO3MG1 principal=user@teiid-security finalRowCount=1 cpuTime(ns)=900091
> 10:56:04,436 DEBUG [org.teiid.COMMAND_LOG] (Worker3_QueryProcessorQueue201) R4LPSIZO3MG1 START DATA SRC COMMAND: startTime=2018-01-04 10:56:04.436 requestID=R4LPSIZO3MG1.16 sourceCommandID=1 executionID=87 txID=null modelName=s_smallA translatorName=infinispan-hotrod sessionID=R4LPSIZO3MG1 principal=user@teiid-security sql=SELECT MIN(g_0.floatNum) FROM s_smallA.SmallA AS g_0 WHERE g_0.intKey = 46
> 10:56:04,736 DEBUG [org.teiid.COMMAND_LOG] (Worker2_QueryProcessorQueue202) R4LPSIZO3MG1 END SRC COMMAND: endTime=2018-01-04 10:56:04.736 requestID=R4LPSIZO3MG1.16 sourceCommandID=1 executionID=87 txID=null modelName=s_smallA translatorName=infinispan-hotrod sessionID=R4LPSIZO3MG1 principal=user@teiid-security finalRowCount=1 cpuTime(ns)=1297007
> 10:56:04,739 DEBUG [org.teiid.COMMAND_LOG] (Worker3_QueryProcessorQueue203) R4LPSIZO3MG1 START DATA SRC COMMAND: startTime=2018-01-04 10:56:04.739 requestID=R4LPSIZO3MG1.16 sourceCommandID=1 executionID=88 txID=null modelName=s_smallA translatorName=infinispan-hotrod sessionID=R4LPSIZO3MG1 principal=user@teiid-security sql=SELECT MIN(g_0.floatNum) FROM s_smallA.SmallA AS g_0 WHERE g_0.intKey = 45
> 10:56:04,977 DEBUG [org.teiid.COMMAND_LOG] (Worker2_QueryProcessorQueue204) R4LPSIZO3MG1 END SRC COMMAND: endTime=2018-01-04 10:56:04.977 requestID=R4LPSIZO3MG1.16 sourceCommandID=1 executionID=88 txID=null modelName=s_smallA translatorName=infinispan-hotrod sessionID=R4LPSIZO3MG1 principal=user@teiid-security finalRowCount=1 cpuTime(ns)=3238629
> 10:56:04,981 DEBUG [org.teiid.COMMAND_LOG] (Worker3_QueryProcessorQueue205) R4LPSIZO3MG1 START DATA SRC COMMAND: startTime=2018-01-04 10:56:04.981 requestID=R4LPSIZO3MG1.16 sourceCommandID=1 executionID=89 txID=null modelName=s_smallA translatorName=infinispan-hotrod sessionID=R4LPSIZO3MG1 principal=user@teiid-security sql=SELECT MIN(g_0.floatNum) FROM s_smallA.SmallA AS g_0 WHERE g_0.intKey = 44
> 10:56:05,240 DEBUG [org.teiid.COMMAND_LOG] (Worker2_QueryProcessorQueue206) R4LPSIZO3MG1 END SRC COMMAND: endTime=2018-01-04 10:56:05.24 requestID=R4LPSIZO3MG1.16 sourceCommandID=1 executionID=89 txID=null modelName=s_smallA translatorName=infinispan-hotrod sessionID=R4LPSIZO3MG1 principal=user@teiid-security finalRowCount=1 cpuTime(ns)=3692883
> 10:56:05,244 DEBUG [org.teiid.COMMAND_LOG] (Worker3_QueryProcessorQueue207) R4LPSIZO3MG1 START DATA SRC COMMAND: startTime=2018-01-04 10:56:05.244 requestID=R4LPSIZO3MG1.16 sourceCommandID=1 executionID=90 txID=null modelName=s_smallA translatorName=infinispan-hotrod sessionID=R4LPSIZO3MG1 principal=user@teiid-security sql=SELECT MIN(g_0.floatNum) FROM s_smallA.SmallA AS g_0 WHERE g_0.intKey = 43
> 10:56:05,496 DEBUG [org.teiid.COMMAND_LOG] (Worker2_QueryProcessorQueue208) R4LPSIZO3MG1 END SRC COMMAND: endTime=2018-01-04 10:56:05.496 requestID=R4LPSIZO3MG1.16 sourceCommandID=1 executionID=90 txID=null modelName=s_smallA translatorName=infinispan-hotrod sessionID=R4LPSIZO3MG1 principal=user@teiid-security finalRowCount=1 cpuTime(ns)=3104929
> 10:56:05,499 DEBUG [org.teiid.COMMAND_LOG] (Worker3_QueryProcessorQueue209) R4LPSIZO3MG1 START DATA SRC COMMAND: startTime=2018-01-04 10:56:05.499 requestID=R4LPSIZO3MG1.16 sourceCommandID=1 executionID=91 txID=null modelName=s_smallA translatorName=infinispan-hotrod sessionID=R4LPSIZO3MG1 principal=user@teiid-security sql=SELECT MIN(g_0.floatNum) FROM s_smallA.SmallA AS g_0 WHERE g_0.intKey = 42
> 10:56:05,746 DEBUG [org.teiid.COMMAND_LOG] (Worker2_QueryProcessorQueue210) R4LPSIZO3MG1 END SRC COMMAND: endTime=2018-01-04 10:56:05.746 requestID=R4LPSIZO3MG1.16 sourceCommandID=1 executionID=91 txID=null modelName=s_smallA translatorName=infinispan-hotrod sessionID=R4LPSIZO3MG1 principal=user@teiid-security finalRowCount=1 cpuTime(ns)=2468255
> 10:56:05,749 DEBUG [org.teiid.COMMAND_LOG] (Worker3_QueryProcessorQueue211) R4LPSIZO3MG1 START DATA SRC COMMAND: startTime=2018-01-04 10:56:05.749 requestID=R4LPSIZO3MG1.16 sourceCommandID=1 executionID=92 txID=null modelName=s_smallA translatorName=infinispan-hotrod sessionID=R4LPSIZO3MG1 principal=user@teiid-security sql=SELECT MIN(g_0.floatNum) FROM s_smallA.SmallA AS g_0 WHERE 1 = 0
> 10:56:06,274 DEBUG [org.teiid.COMMAND_LOG] (Worker3_QueryProcessorQueue211) R4LPSIZO3MG1 ERROR SRC COMMAND: endTime=2018-01-04 10:56:06.273 requestID=R4LPSIZO3MG1.16 sourceCommandID=1 executionID=92 txID=null modelName=s_smallA translatorName=infinispan-hotrod sessionID=R4LPSIZO3MG1 principal=user@teiid-security
> 10:56:06,284 DEBUG [org.teiid.COMMAND_LOG] (Worker2_QueryProcessorQueue212) R4LPSIZO3MG1 END SRC COMMAND: endTime=2018-01-04 10:56:06.284 requestID=R4LPSIZO3MG1.16 sourceCommandID=1 executionID=92 txID=null modelName=s_smallA translatorName=infinispan-hotrod sessionID=R4LPSIZO3MG1 principal=user@teiid-security finalRowCount=0 cpuTime(ns)=12513821
> 10:56:06,286 INFO [org.teiid.COMMAND_LOG] (Worker2_QueryProcessorQueue212) R4LPSIZO3MG1 ERROR USER COMMAND: endTime=2018-01-04 10:56:06.285 requestID=R4LPSIZO3MG1.16 txID=null sessionID=R4LPSIZO3MG1 principal=user@teiid-security vdbName=jdg71 vdbVersion=1 finalRowCount=null
> 10:56:06,298 INFO [org.teiid.COMMAND_LOG] (Worker2_QueryProcessorQueue212) R4LPSIZO3MG1 END USER COMMAND: endTime=2018-01-04 10:56:06.298 requestID=R4LPSIZO3MG1.16 txID=null sessionID=R4LPSIZO3MG1 principal=user@teiid-security vdbName=jdg71 vdbVersion=1 finalRowCount=0
> {code}
> There are values 0,...,49 for IntKey column, so the fact, that processing stops at 42 is weird. The root cause is in my view that during processing, when the ordering of first source command is arbitrary, after IntKey=42 there comes result with IntKey=0, which does not match the criteria. In such case the {code}SELECT MIN(g_0.floatNum) FROM s_smallA.SmallA AS g_0 WHERE 1 = 0 {code} is pushed and processing fails.
--
This message was sent by Atlassian JIRA
(v7.5.0#75005)
7 years, 2 months
[JBoss JIRA] (TEIID-5199) Infinispan hotrod translator correlated subquery with where criteria issue
by Steven Hawkins (JIRA)
[ https://issues.jboss.org/browse/TEIID-5199?page=com.atlassian.jira.plugin... ]
Work on TEIID-5199 started by Steven Hawkins.
---------------------------------------------
> Infinispan hotrod translator correlated subquery with where criteria issue
> --------------------------------------------------------------------------
>
> Key: TEIID-5199
> URL: https://issues.jboss.org/browse/TEIID-5199
> Project: Teiid
> Issue Type: Bug
> Components: JDG Connector, Misc. Connectors
> Affects Versions: 8.12.x-6.4
> Reporter: Jan Stastny
> Assignee: Steven Hawkins
> Priority: Critical
>
> There is an issue for particular correlated subquery:
> {code:sql}
> SELECT INTKEY, FLOATNUM FROM BQT1.SMALLA AS A WHERE FLOATNUM = (SELECT MIN(FLOATNUM) FROM BQT1.SMALLA AS B WHERE (INTKEY >= 9) AND (A.INTKEY = B.INTKEY))
> {code}
> results in:
> {code}
> 10:56:06,272 WARN [org.infinispan.client.hotrod.impl.protocol.Codec21] (Worker3_QueryProcessorQueue211) ISPN004005: Error received from the server: org.infinispan.objectfilter.ParsingException: ISPN028524: Left side argument must be a property path
> 10:56:06,274 ERROR [org.teiid.CONNECTOR] (Worker3_QueryProcessorQueue211) Connector worker process failed for atomic-request=R4LPSIZO3MG1.16.1.92: org.infinispan.client.hotrod.exceptions.HotRodClientException:Request for messageId=163 returned server error (status=0x85): org.infinispan.objectfilter.ParsingException: ISPN028524: Left side argument must be a property path
> at org.infinispan.client.hotrod.impl.protocol.Codec20.checkForErrorsInResponseStatus(Codec20.java:363) [infinispan-client-hotrod.jar:8.4.1.Final-redhat-1]
> at org.infinispan.client.hotrod.impl.protocol.Codec20.readPartialHeader(Codec20.java:152) [infinispan-client-hotrod.jar:8.4.1.Final-redhat-1]
> at org.infinispan.client.hotrod.impl.protocol.Codec20.readHeader(Codec20.java:138) [infinispan-client-hotrod.jar:8.4.1.Final-redhat-1]
> at org.infinispan.client.hotrod.impl.operations.HotRodOperation.readHeaderAndValidate(HotRodOperation.java:60) [infinispan-client-hotrod.jar:8.4.1.Final-redhat-1]
> at org.infinispan.client.hotrod.impl.operations.QueryOperation.executeOperation(QueryOperation.java:68) [infinispan-client-hotrod.jar:8.4.1.Final-redhat-1]
> at org.infinispan.client.hotrod.impl.operations.QueryOperation.executeOperation(QueryOperation.java:30) [infinispan-client-hotrod.jar:8.4.1.Final-redhat-1]
> at org.infinispan.client.hotrod.impl.operations.RetryOnFailureOperation.execute(RetryOnFailureOperation.java:57) [infinispan-client-hotrod.jar:8.4.1.Final-redhat-1]
> at org.infinispan.client.hotrod.impl.query.RemoteQuery.executeQuery(RemoteQuery.java:68) [infinispan-client-hotrod.jar:8.4.1.Final-redhat-1]
> at org.infinispan.client.hotrod.impl.query.RemoteQuery.list(RemoteQuery.java:53) [infinispan-client-hotrod.jar:8.4.1.Final-redhat-1]
> at org.teiid.translator.infinispan.hotrod.InfinispanResponse.fetchNextBatch(InfinispanResponse.java:76) [translator-infinispan-hotrod-8.12.11.6_4-redhat-10.jar:8.12.11.6_4-redhat-10]
> at org.teiid.translator.infinispan.hotrod.InfinispanResponse.getNextRow(InfinispanResponse.java:99) [translator-infinispan-hotrod-8.12.11.6_4-redhat-10.jar:8.12.11.6_4-redhat-10]
> at org.teiid.translator.infinispan.hotrod.InfinispanQueryExecution.next(InfinispanQueryExecution.java:142) [translator-infinispan-hotrod-8.12.11.6_4-redhat-10.jar:8.12.11.6_4-redhat-10]
> at org.teiid.dqp.internal.datamgr.ConnectorWorkItem.handleBatch(ConnectorWorkItem.java:431) [teiid-engine-8.12.11.6_4-redhat-64-10.jar:8.12.11.6_4-redhat-64-10]
> at org.teiid.dqp.internal.datamgr.ConnectorWorkItem.more(ConnectorWorkItem.java:234) [teiid-engine-8.12.11.6_4-redhat-64-10.jar:8.12.11.6_4-redhat-64-10]
> at sun.reflect.GeneratedMethodAccessor163.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) [teiid-engine-8.12.11.6_4-redhat-64-10.jar:8.12.11.6_4-redhat-64-10]
> at com.sun.proxy.$Proxy79.more(Unknown Source)
> at org.teiid.dqp.internal.process.DataTierTupleSource.getResults(DataTierTupleSource.java:309) [teiid-engine-8.12.11.6_4-redhat-64-10.jar:8.12.11.6_4-redhat-64-10]
> at org.teiid.dqp.internal.process.DataTierTupleSource$1.call(DataTierTupleSource.java:112) [teiid-engine-8.12.11.6_4-redhat-64-10.jar:8.12.11.6_4-redhat-64-10]
> at org.teiid.dqp.internal.process.DataTierTupleSource$1.call(DataTierTupleSource.java:108) [teiid-engine-8.12.11.6_4-redhat-64-10.jar:8.12.11.6_4-redhat-64-10]
> at java.util.concurrent.FutureTask.run(FutureTask.java:266) [rt.jar:1.8.0_151]
> at org.teiid.dqp.internal.process.FutureWork.run(FutureWork.java:65) [teiid-engine-8.12.11.6_4-redhat-64-10.jar:8.12.11.6_4-redhat-64-10]
> at org.teiid.dqp.internal.process.DQPWorkContext.runInContext(DQPWorkContext.java:284) [teiid-engine-8.12.11.6_4-redhat-64-10.jar:8.12.11.6_4-redhat-64-10]
> at org.teiid.dqp.internal.process.ThreadReuseExecutor$RunnableWrapper.run(ThreadReuseExecutor.java:119) [teiid-engine-8.12.11.6_4-redhat-64-10.jar:8.12.11.6_4-redhat-64-10]
> at org.teiid.dqp.internal.process.ThreadReuseExecutor$3.run(ThreadReuseExecutor.java:210) [teiid-engine-8.12.11.6_4-redhat-64-10.jar:8.12.11.6_4-redhat-64-10]
> 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]
> 10:56:06,286 WARN [org.teiid.PROCESSOR] (Worker2_QueryProcessorQueue212) TEIID30020 Processing exception for request R4LPSIZO3MG1.16 'TEIID30312 Unable to evaluate right expression of source__1.floatNum = (SELECT MIN(B.FloatNum) FROM BQT1.SmallA AS B WHERE (B.IntKey >= 9) AND (B.IntKey = A.IntKey))'. Originally ExpressionEvaluationException 'org.infinispan.objectfilter.ParsingException: ISPN028524: Left side argument must be a property path' Codec20.java:363. Enable more detailed logging to see the entire stacktrace.
> {code}
> There is command log:
> {code}
> 10:56:02,675 INFO [org.teiid.COMMAND_LOG] (New I/O worker #1) R4LPSIZO3MG1 START USER COMMAND: startTime=2018-01-04 10:56:02.675 requestID=R4LPSIZO3MG1.16 txID=null sessionID=R4LPSIZO3MG1 applicationName=JDBC principal=user@teiid-security vdbName=jdg71 vdbVersion=1 sql=SELECT INTKEY, FLOATNUM FROM BQT1.SMALLA AS A WHERE FLOATNUM = (SELECT MIN(FLOATNUM) FROM BQT1.SMALLA AS B WHERE (INTKEY >= 9) AND (A.INTKEY = B.INTKEY))
> 10:56:02,684 DEBUG [org.teiid.COMMAND_LOG] (Worker3_QueryProcessorQueue193) R4LPSIZO3MG1 START DATA SRC COMMAND: startTime=2018-01-04 10:56:02.683 requestID=R4LPSIZO3MG1.16 sourceCommandID=7 executionID=83 txID=null modelName=s_smallA translatorName=infinispan-hotrod sessionID=R4LPSIZO3MG1 principal=user@teiid-security sql=SELECT g_0.floatNum, g_0.intKey FROM s_smallA.SmallA AS g_0
> 10:56:03,425 DEBUG [org.teiid.COMMAND_LOG] (Worker2_QueryProcessorQueue194) R4LPSIZO3MG1 END SRC COMMAND: endTime=2018-01-04 10:56:03.425 requestID=R4LPSIZO3MG1.16 sourceCommandID=7 executionID=83 txID=null modelName=s_smallA translatorName=infinispan-hotrod sessionID=R4LPSIZO3MG1 principal=user@teiid-security finalRowCount=50 cpuTime(ns)=2289655
> 10:56:03,428 DEBUG [org.teiid.COMMAND_LOG] (Worker3_QueryProcessorQueue195) R4LPSIZO3MG1 START DATA SRC COMMAND: startTime=2018-01-04 10:56:03.428 requestID=R4LPSIZO3MG1.16 sourceCommandID=1 executionID=84 txID=null modelName=s_smallA translatorName=infinispan-hotrod sessionID=R4LPSIZO3MG1 principal=user@teiid-security sql=SELECT MIN(g_0.floatNum) FROM s_smallA.SmallA AS g_0 WHERE g_0.intKey = 49
> 10:56:03,938 DEBUG [org.teiid.COMMAND_LOG] (Worker2_QueryProcessorQueue196) R4LPSIZO3MG1 END SRC COMMAND: endTime=2018-01-04 10:56:03.938 requestID=R4LPSIZO3MG1.16 sourceCommandID=1 executionID=84 txID=null modelName=s_smallA translatorName=infinispan-hotrod sessionID=R4LPSIZO3MG1 principal=user@teiid-security finalRowCount=1 cpuTime(ns)=2950052
> 10:56:03,941 DEBUG [org.teiid.COMMAND_LOG] (Worker3_QueryProcessorQueue197) R4LPSIZO3MG1 START DATA SRC COMMAND: startTime=2018-01-04 10:56:03.941 requestID=R4LPSIZO3MG1.16 sourceCommandID=1 executionID=85 txID=null modelName=s_smallA translatorName=infinispan-hotrod sessionID=R4LPSIZO3MG1 principal=user@teiid-security sql=SELECT MIN(g_0.floatNum) FROM s_smallA.SmallA AS g_0 WHERE g_0.intKey = 48
> 10:56:04,213 DEBUG [org.teiid.COMMAND_LOG] (Worker2_QueryProcessorQueue198) R4LPSIZO3MG1 END SRC COMMAND: endTime=2018-01-04 10:56:04.213 requestID=R4LPSIZO3MG1.16 sourceCommandID=1 executionID=85 txID=null modelName=s_smallA translatorName=infinispan-hotrod sessionID=R4LPSIZO3MG1 principal=user@teiid-security finalRowCount=1 cpuTime(ns)=2580568
> 10:56:04,214 DEBUG [org.teiid.COMMAND_LOG] (Worker3_QueryProcessorQueue199) R4LPSIZO3MG1 START DATA SRC COMMAND: startTime=2018-01-04 10:56:04.214 requestID=R4LPSIZO3MG1.16 sourceCommandID=1 executionID=86 txID=null modelName=s_smallA translatorName=infinispan-hotrod sessionID=R4LPSIZO3MG1 principal=user@teiid-security sql=SELECT MIN(g_0.floatNum) FROM s_smallA.SmallA AS g_0 WHERE g_0.intKey = 47
> 10:56:04,435 DEBUG [org.teiid.COMMAND_LOG] (Worker2_QueryProcessorQueue200) R4LPSIZO3MG1 END SRC COMMAND: endTime=2018-01-04 10:56:04.435 requestID=R4LPSIZO3MG1.16 sourceCommandID=1 executionID=86 txID=null modelName=s_smallA translatorName=infinispan-hotrod sessionID=R4LPSIZO3MG1 principal=user@teiid-security finalRowCount=1 cpuTime(ns)=900091
> 10:56:04,436 DEBUG [org.teiid.COMMAND_LOG] (Worker3_QueryProcessorQueue201) R4LPSIZO3MG1 START DATA SRC COMMAND: startTime=2018-01-04 10:56:04.436 requestID=R4LPSIZO3MG1.16 sourceCommandID=1 executionID=87 txID=null modelName=s_smallA translatorName=infinispan-hotrod sessionID=R4LPSIZO3MG1 principal=user@teiid-security sql=SELECT MIN(g_0.floatNum) FROM s_smallA.SmallA AS g_0 WHERE g_0.intKey = 46
> 10:56:04,736 DEBUG [org.teiid.COMMAND_LOG] (Worker2_QueryProcessorQueue202) R4LPSIZO3MG1 END SRC COMMAND: endTime=2018-01-04 10:56:04.736 requestID=R4LPSIZO3MG1.16 sourceCommandID=1 executionID=87 txID=null modelName=s_smallA translatorName=infinispan-hotrod sessionID=R4LPSIZO3MG1 principal=user@teiid-security finalRowCount=1 cpuTime(ns)=1297007
> 10:56:04,739 DEBUG [org.teiid.COMMAND_LOG] (Worker3_QueryProcessorQueue203) R4LPSIZO3MG1 START DATA SRC COMMAND: startTime=2018-01-04 10:56:04.739 requestID=R4LPSIZO3MG1.16 sourceCommandID=1 executionID=88 txID=null modelName=s_smallA translatorName=infinispan-hotrod sessionID=R4LPSIZO3MG1 principal=user@teiid-security sql=SELECT MIN(g_0.floatNum) FROM s_smallA.SmallA AS g_0 WHERE g_0.intKey = 45
> 10:56:04,977 DEBUG [org.teiid.COMMAND_LOG] (Worker2_QueryProcessorQueue204) R4LPSIZO3MG1 END SRC COMMAND: endTime=2018-01-04 10:56:04.977 requestID=R4LPSIZO3MG1.16 sourceCommandID=1 executionID=88 txID=null modelName=s_smallA translatorName=infinispan-hotrod sessionID=R4LPSIZO3MG1 principal=user@teiid-security finalRowCount=1 cpuTime(ns)=3238629
> 10:56:04,981 DEBUG [org.teiid.COMMAND_LOG] (Worker3_QueryProcessorQueue205) R4LPSIZO3MG1 START DATA SRC COMMAND: startTime=2018-01-04 10:56:04.981 requestID=R4LPSIZO3MG1.16 sourceCommandID=1 executionID=89 txID=null modelName=s_smallA translatorName=infinispan-hotrod sessionID=R4LPSIZO3MG1 principal=user@teiid-security sql=SELECT MIN(g_0.floatNum) FROM s_smallA.SmallA AS g_0 WHERE g_0.intKey = 44
> 10:56:05,240 DEBUG [org.teiid.COMMAND_LOG] (Worker2_QueryProcessorQueue206) R4LPSIZO3MG1 END SRC COMMAND: endTime=2018-01-04 10:56:05.24 requestID=R4LPSIZO3MG1.16 sourceCommandID=1 executionID=89 txID=null modelName=s_smallA translatorName=infinispan-hotrod sessionID=R4LPSIZO3MG1 principal=user@teiid-security finalRowCount=1 cpuTime(ns)=3692883
> 10:56:05,244 DEBUG [org.teiid.COMMAND_LOG] (Worker3_QueryProcessorQueue207) R4LPSIZO3MG1 START DATA SRC COMMAND: startTime=2018-01-04 10:56:05.244 requestID=R4LPSIZO3MG1.16 sourceCommandID=1 executionID=90 txID=null modelName=s_smallA translatorName=infinispan-hotrod sessionID=R4LPSIZO3MG1 principal=user@teiid-security sql=SELECT MIN(g_0.floatNum) FROM s_smallA.SmallA AS g_0 WHERE g_0.intKey = 43
> 10:56:05,496 DEBUG [org.teiid.COMMAND_LOG] (Worker2_QueryProcessorQueue208) R4LPSIZO3MG1 END SRC COMMAND: endTime=2018-01-04 10:56:05.496 requestID=R4LPSIZO3MG1.16 sourceCommandID=1 executionID=90 txID=null modelName=s_smallA translatorName=infinispan-hotrod sessionID=R4LPSIZO3MG1 principal=user@teiid-security finalRowCount=1 cpuTime(ns)=3104929
> 10:56:05,499 DEBUG [org.teiid.COMMAND_LOG] (Worker3_QueryProcessorQueue209) R4LPSIZO3MG1 START DATA SRC COMMAND: startTime=2018-01-04 10:56:05.499 requestID=R4LPSIZO3MG1.16 sourceCommandID=1 executionID=91 txID=null modelName=s_smallA translatorName=infinispan-hotrod sessionID=R4LPSIZO3MG1 principal=user@teiid-security sql=SELECT MIN(g_0.floatNum) FROM s_smallA.SmallA AS g_0 WHERE g_0.intKey = 42
> 10:56:05,746 DEBUG [org.teiid.COMMAND_LOG] (Worker2_QueryProcessorQueue210) R4LPSIZO3MG1 END SRC COMMAND: endTime=2018-01-04 10:56:05.746 requestID=R4LPSIZO3MG1.16 sourceCommandID=1 executionID=91 txID=null modelName=s_smallA translatorName=infinispan-hotrod sessionID=R4LPSIZO3MG1 principal=user@teiid-security finalRowCount=1 cpuTime(ns)=2468255
> 10:56:05,749 DEBUG [org.teiid.COMMAND_LOG] (Worker3_QueryProcessorQueue211) R4LPSIZO3MG1 START DATA SRC COMMAND: startTime=2018-01-04 10:56:05.749 requestID=R4LPSIZO3MG1.16 sourceCommandID=1 executionID=92 txID=null modelName=s_smallA translatorName=infinispan-hotrod sessionID=R4LPSIZO3MG1 principal=user@teiid-security sql=SELECT MIN(g_0.floatNum) FROM s_smallA.SmallA AS g_0 WHERE 1 = 0
> 10:56:06,274 DEBUG [org.teiid.COMMAND_LOG] (Worker3_QueryProcessorQueue211) R4LPSIZO3MG1 ERROR SRC COMMAND: endTime=2018-01-04 10:56:06.273 requestID=R4LPSIZO3MG1.16 sourceCommandID=1 executionID=92 txID=null modelName=s_smallA translatorName=infinispan-hotrod sessionID=R4LPSIZO3MG1 principal=user@teiid-security
> 10:56:06,284 DEBUG [org.teiid.COMMAND_LOG] (Worker2_QueryProcessorQueue212) R4LPSIZO3MG1 END SRC COMMAND: endTime=2018-01-04 10:56:06.284 requestID=R4LPSIZO3MG1.16 sourceCommandID=1 executionID=92 txID=null modelName=s_smallA translatorName=infinispan-hotrod sessionID=R4LPSIZO3MG1 principal=user@teiid-security finalRowCount=0 cpuTime(ns)=12513821
> 10:56:06,286 INFO [org.teiid.COMMAND_LOG] (Worker2_QueryProcessorQueue212) R4LPSIZO3MG1 ERROR USER COMMAND: endTime=2018-01-04 10:56:06.285 requestID=R4LPSIZO3MG1.16 txID=null sessionID=R4LPSIZO3MG1 principal=user@teiid-security vdbName=jdg71 vdbVersion=1 finalRowCount=null
> 10:56:06,298 INFO [org.teiid.COMMAND_LOG] (Worker2_QueryProcessorQueue212) R4LPSIZO3MG1 END USER COMMAND: endTime=2018-01-04 10:56:06.298 requestID=R4LPSIZO3MG1.16 txID=null sessionID=R4LPSIZO3MG1 principal=user@teiid-security vdbName=jdg71 vdbVersion=1 finalRowCount=0
> {code}
> There are values 0,...,49 for IntKey column, so the fact, that processing stops at 42 is weird. The root cause is in my view that during processing, when the ordering of first source command is arbitrary, after IntKey=42 there comes result with IntKey=0, which does not match the criteria. In such case the {code}SELECT MIN(g_0.floatNum) FROM s_smallA.SmallA AS g_0 WHERE 1 = 0 {code} is pushed and processing fails.
--
This message was sent by Atlassian JIRA
(v7.5.0#75005)
7 years, 2 months
[JBoss JIRA] (TEIID-5200) INSERT INTO query fails in BEGIN ATOMIC block if data is obtained from atomic procedure which catches some exception
by Steven Hawkins (JIRA)
[ https://issues.jboss.org/browse/TEIID-5200?page=com.atlassian.jira.plugin... ]
Steven Hawkins resolved TEIID-5200.
-----------------------------------
Fix Version/s: 10.1
10.0.2
9.3.6
Resolution: Done
Updated the logic with starting transactions for a loop instruction and also added a warning with caught exceptions and their effect on the transaction. This also required a small change on the client to show the warnings even when an exception occurs - however not all tools may check for that.
> INSERT INTO query fails in BEGIN ATOMIC block if data is obtained from atomic procedure which catches some exception
> --------------------------------------------------------------------------------------------------------------------
>
> Key: TEIID-5200
> URL: https://issues.jboss.org/browse/TEIID-5200
> Project: Teiid
> Issue Type: Bug
> Components: Query Engine
> Affects Versions: 10.0.1
> Environment: teiid-10.0.1 on WildFly Full 11.0.0.Final (WildFly Core 3.0.8.Final)
> Reporter: dalex dalex
> Assignee: Steven Hawkins
> Priority: Critical
> Fix For: 10.1, 10.0.2, 9.3.6
>
>
> Running the query:
> {code:sql}
> begin atomic
> loop on (select s.a as a from (call procs.px1()) as s) as x
> begin
> insert into test_pg.batch_test (a) values (x.a);
> end
> end;
> {code}
> leads to the following error in stacktrace:
> {code:noformat}
> 2018-01-04 16:58:34,494 WARN [org.teiid.PROCESSOR] (Worker3_QueryProcessorQueue75) AIlKbjKNf5Ju TEIID30020 Processing exception for request AIlKbjKNf5Ju.28 'TEIID30504 test_pg: TEII
> D11009 java.sql.SQLException: javax.resource.ResourceException: IJ000460: Error checking for a transaction'. Originally TeiidProcessingException 'IJ000459: Transaction is not active:
> tx=Local transaction (delegate=TransactionImple < ac, BasicAction: 0:ffffac100003:3cbb95f1:5a4e46c6:b3 status: ActionStatus.ABORT_ONLY >, owner=Local transaction context for provide
> r JBoss JTA transaction provider)' TxConnectionManagerImpl.java:409. Enable more detailed logging to see the entire stacktrace.
> 2018-01-04 16:58:39,134 WARN [org.teiid.CONNECTOR] (Worker3_QueryProcessorQueue76) AIlKbjKNf5Ju Connector worker process failed for atomic-request=AIlKbjKNf5Ju.29.3.26: org.teiid.tr
> anslator.TranslatorException: TEIID11009 java.sql.SQLException: javax.resource.ResourceException: IJ000460: Error checking for a transaction
> at org.teiid.translator.jdbc.JDBCExecutionFactory.getConnection(JDBCExecutionFactory.java:278)
> at org.teiid.translator.jdbc.JDBCExecutionFactory.getConnection(JDBCExecutionFactory.java:65)
> at org.teiid.translator.ExecutionFactory.getConnection(ExecutionFactory.java:201)
> at org.teiid.dqp.internal.datamgr.ConnectorWorkItem.execute(ConnectorWorkItem.java:322)
> at sun.reflect.GeneratedMethodAccessor93.invoke(Unknown Source)
> at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
> at java.lang.reflect.Method.invoke(Method.java:498)
> at org.teiid.dqp.internal.datamgr.ConnectorManager$1.invoke(ConnectorManager.java:216)
> at com.sun.proxy.$Proxy36.execute(Unknown Source)
> at org.teiid.dqp.internal.process.DataTierTupleSource.getResults(DataTierTupleSource.java:302)
> at org.teiid.dqp.internal.process.DataTierTupleSource.nextTuple(DataTierTupleSource.java:138)
> at org.teiid.query.processor.relational.AccessNode.nextBatchDirect(AccessNode.java:398)
> at org.teiid.query.processor.relational.RelationalNode.nextBatch(RelationalNode.java:277)
> at org.teiid.query.processor.relational.RelationalPlan.nextBatch(RelationalPlan.java:141)
> at org.teiid.query.processor.QueryProcessor.nextBatchDirect(QueryProcessor.java:148)
> at org.teiid.query.processor.QueryProcessor.nextBatch(QueryProcessor.java:111)
> at org.teiid.query.processor.BatchIterator.finalRow(BatchIterator.java:65)
> at org.teiid.common.buffer.AbstractTupleSource.getCurrentTuple(AbstractTupleSource.java:66)
> at org.teiid.query.processor.BatchIterator.getCurrentTuple(BatchIterator.java:80)
> at org.teiid.common.buffer.AbstractTupleSource.hasNext(AbstractTupleSource.java:88)
> at org.teiid.query.processor.proc.ProcedurePlan.executePlan(ProcedurePlan.java:611)
> at org.teiid.query.processor.proc.CreateCursorResultSetInstruction.process(CreateCursorResultSetInstruction.java:65)
> at org.teiid.query.processor.proc.ProcedurePlan.processProcedure(ProcedurePlan.java:388)
> at org.teiid.query.processor.proc.ProcedurePlan.nextBatchDirect(ProcedurePlan.java:297)
> at org.teiid.query.processor.proc.ProcedurePlan.nextBatch(ProcedurePlan.java:269)
> at org.teiid.query.processor.QueryProcessor.nextBatchDirect(QueryProcessor.java:148)
> at org.teiid.query.processor.QueryProcessor.nextBatch(QueryProcessor.java:111)
> at org.teiid.query.processor.BatchCollector.collectTuples(BatchCollector.java:160)
> at org.teiid.query.processor.BatchCollector.collectTuples(BatchCollector.java:142)
> at org.teiid.dqp.internal.process.RequestWorkItem.processMore(RequestWorkItem.java:480)
> at org.teiid.dqp.internal.process.RequestWorkItem.process(RequestWorkItem.java:350)
> at org.teiid.dqp.internal.process.AbstractWorkItem.run(AbstractWorkItem.java:47)
> at org.teiid.dqp.internal.process.RequestWorkItem.run(RequestWorkItem.java:276)
> at org.teiid.dqp.internal.process.DQPWorkContext.runInContext(DQPWorkContext.java:280)
> at org.teiid.dqp.internal.process.ThreadReuseExecutor$RunnableWrapper.run(ThreadReuseExecutor.java:115)
> at org.teiid.dqp.internal.process.ThreadReuseExecutor$3.run(ThreadReuseExecutor.java:206)
> at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
> at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
> at java.lang.Thread.run(Thread.java:745)
> Caused by: java.sql.SQLException: javax.resource.ResourceException: IJ000460: Error checking for a transaction
> at org.jboss.jca.adapters.jdbc.WrapperDataSource.getConnection(WrapperDataSource.java:146)
> at org.jboss.as.connector.subsystems.datasources.WildFlyDataSource.getConnection(WildFlyDataSource.java:64)
> at org.teiid.translator.jdbc.JDBCExecutionFactory.getConnection(JDBCExecutionFactory.java:274)
> ... 38 more
> Caused by: javax.resource.ResourceException: IJ000460: Error checking for a transaction
> at org.jboss.jca.core.connectionmanager.tx.TxConnectionManagerImpl.getManagedConnection(TxConnectionManagerImpl.java:425)
> at org.jboss.jca.core.connectionmanager.AbstractConnectionManager.allocateConnection(AbstractConnectionManager.java:789)
> at org.jboss.jca.adapters.jdbc.WrapperDataSource.getConnection(WrapperDataSource.java:138)
> ... 40 more
> Caused by: javax.resource.ResourceException: IJ000459: Transaction is not active: tx=Local transaction (delegate=TransactionImple < ac, BasicAction: 0:ffffac100003:3cbb95f1:5a4e46c6:
> b6 status: ActionStatus.ABORT_ONLY >, owner=Local transaction context for provider JBoss JTA transaction provider)
> at org.jboss.jca.core.connectionmanager.tx.TxConnectionManagerImpl.getManagedConnection(TxConnectionManagerImpl.java:409)
> ... 42 more
> 2018-01-04 16:58:39,137 WARN [org.teiid.PROCESSOR] (Worker3_QueryProcessorQueue76) AIlKbjKNf5Ju TEIID30020 Processing exception for request AIlKbjKNf5Ju.29 'TEIID30504 test_pg: TEII
> D11009 java.sql.SQLException: javax.resource.ResourceException: IJ000460: Error checking for a transaction'. Originally TeiidProcessingException 'IJ000459: Transaction is not active:
> tx=Local transaction (delegate=TransactionImple < ac, BasicAction: 0:ffffac100003:3cbb95f1:5a4e46c6:b6 status: ActionStatus.ABORT_ONLY >, owner=Local transaction context for provide
> r JBoss JTA transaction provider)' TxConnectionManagerImpl.java:409. Enable more detailed logging to see the entire stacktrace.
> {code}
--
This message was sent by Atlassian JIRA
(v7.5.0#75005)
7 years, 2 months
[JBoss JIRA] (TEIID-5204) NOW() is calculated several times for SYS tables
by El Fuego (JIRA)
[ https://issues.jboss.org/browse/TEIID-5204?page=com.atlassian.jira.plugin... ]
El Fuego updated TEIID-5204:
----------------------------
Description: When applied to an internally processed schema (like {{SYS}}, {{SYSADMIN}}), command deterministic functions like {{NOW()}} are calculated separately for each row and thus give different results. (was: When applied to an internally processed schema (like {{SYS}}, {{SYSADMIN}}), command deterministic functions like {{NOW()}} are calculated separately for each row.)
> NOW() is calculated several times for SYS tables
> ------------------------------------------------
>
> Key: TEIID-5204
> URL: https://issues.jboss.org/browse/TEIID-5204
> Project: Teiid
> Issue Type: Bug
> Reporter: El Fuego
> Assignee: Steven Hawkins
>
> When applied to an internally processed schema (like {{SYS}}, {{SYSADMIN}}), command deterministic functions like {{NOW()}} are calculated separately for each row and thus give different results.
--
This message was sent by Atlassian JIRA
(v7.5.0#75005)
7 years, 2 months
[JBoss JIRA] (TEIID-4269) numeric calculated fields not displayed with odata4
by RH Bugzilla Integration (JIRA)
[ https://issues.jboss.org/browse/TEIID-4269?page=com.atlassian.jira.plugin... ]
RH Bugzilla Integration commented on TEIID-4269:
------------------------------------------------
Jan Stastny <jstastny(a)redhat.com> changed the Status of [bug 1506560|https://bugzilla.redhat.com/show_bug.cgi?id=1506560] from ON_QA to VERIFIED
> numeric calculated fields not displayed with odata4
> ---------------------------------------------------
>
> Key: TEIID-4269
> URL: https://issues.jboss.org/browse/TEIID-4269
> Project: Teiid
> Issue Type: Bug
> Components: OData
> Affects Versions: 8.12
> Reporter: Mirco Marchitiello
> Assignee: Ramesh Reddy
> Fix For: 9.1, 8.12.x-6.4
>
>
> I've created a virtual table with a new field defined in this way:
> select ROUND((BA.PREIS / BA.PEINH), 3) AS UnitPrice from xxxxxx
> for the source field are bigdecimal I define UnitPrice as
> BigDecimal (13,3)
> If I run the qery from JDBC
> select * from PurchaseRequisitionEntity where PurchaseRequisitionKey = '300-8000001452-00010' ;
> PREIS = 539,568
> PEINH = 106
> UnitPrice = 5,090.264
> And the result is correct. If I run from odata2
> /odata/CASALE.1/Entities.PurchaseRequisitionEntity('300-8000001452-00010')?$format=json
> "UnitPrice" : "5090.2640000000000000"
> As you can see the field is rounded to the 3rd digit but 13 more digits are returned with 0 value.
> Anyway odata2 succeeds in returning the result without errors.
> With odata4 I get an error:
> /odata4/CASALE.1/Entities/PurchaseRequisitionEntity('300-8000001452-00010')?$format=json
> {"error":{"code":null,"message":"The value '5090.2640000000000000' is not valid for property 'UnitPrice'."}}
> I think that's because the length of the field is greater then the matedata definition.
> At the moment the only solution I can imagine is to convert the number to a string in the proper format and the parse it into a number
--
This message was sent by Atlassian JIRA
(v7.5.0#75005)
7 years, 2 months