[JBoss JIRA] (TEIID-5942) OData request fails when Host header specifies also port
by Steven Hawkins (Jira)
[ https://issues.redhat.com/browse/TEIID-5942?page=com.atlassian.jira.plugi... ]
Work on TEIID-5942 started by Steven Hawkins.
---------------------------------------------
> OData request fails when Host header specifies also port
> --------------------------------------------------------
>
> Key: TEIID-5942
> URL: https://issues.redhat.com/browse/TEIID-5942
> Project: Teiid
> Issue Type: Bug
> Components: OData
> Reporter: Steven Hawkins
> Assignee: Steven Hawkins
> Priority: Blocker
>
> TLDR: using the URLs returned in odata responses for new requests in apache http client causes 406 in the server pod because it tries to add the port twice to the url
> ----
> The current implementation of odata endpoint always adds the port to the returned links (such as {{context}} or {{nextLink}}), even when using the default port and not specifying it in the request:
> {code}
> $ curl -s -k https://host/odata/Source/SimpleTableView | jq '."@odata.context"'
> "https://host:443/odata/Source/$metadata#SimpleTableView"
> {code}
> This is ok, but will be important for triggering the issue later.
> Tools such as {{curl}} or web browsers strip the port from the hostname before they set it in the {{Host}} header on the HTTP request:
> {code}
> $ curl -vs -k https://host/odata/Source/SimpleTableView 2>&1 | grep 'Host:'
> > Host: host
> {code}
> However, the Apache HTTP client java client (also used by the olingo odata 4 client) does not strip the port, resulting in {{Host}} header such as
> {code}
> Host: host:443
> {code}
> This is in fact in line with [RFC 2616|https://tools.ietf.org/html/rfc2616#section-14.23] which states
> {quote}
> The Host request-header field specifies the Internet host and port
> number of the resource being requested, as obtained from the original
> URI given by the user or referring resource
> {quote}
> Requests with such a header will fail in the vdb pod with the following exception:
> {code}
> Caused by: java.lang.RuntimeException: Unable to create URI: https://host:443:443/odata/Source/SimpleTableView
> at org.teiid.olingo.web.ProxyHttpServletRequest.<init>(ProxyHttpServletRequest.java:85) ~[teiid-olingo-13.1.1.fuse-jdk11-800015-redhat-00001.jar!/:13.1.1.fuse-jdk11-800015-redhat-00001]
> at org.teiid.spring.odata.SpringODataFilter.handleProxiedRequest(SpringODataFilter.java:218) ~[spring-odata-1.4.1.fuse-jdk11-800012-redhat-00001.jar!/:1.4.1.fuse-jdk11-800012-redhat-00001]
> at org.teiid.spring.odata.SpringODataFilter.preHandle(SpringODataFilter.java:73) ~[spring-odata-1.4.1.fuse-jdk11-800012-redhat-00001.jar!/:1.4.1.fuse-jdk11-800012-redhat-00001]
> at org.springframework.web.servlet.HandlerExecutionChain.applyPreHandle(HandlerExecutionChain.java:136) ~[spring-webmvc-5.1.8.RELEASE.jar!/:5.1.8.RELEASE]
> at org.springframework.web.servlet.DispatcherServlet.doDispatch(DispatcherServlet.java:1034) ~[spring-webmvc-5.1.8.RELEASE.jar!/:5.1.8.RELEASE]
> at org.springframework.web.servlet.DispatcherServlet.doService(DispatcherServlet.java:942) ~[spring-webmvc-5.1.8.RELEASE.jar!/:5.1.8.RELEASE]
> at org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:1005) ~[spring-webmvc-5.1.8.RELEASE.jar!/:5.1.8.RELEASE]
> ... 66 common frames omitted
> Caused by: java.net.MalformedURLException: Error at index 3 in: "443:443"
> at java.base/java.net.URL.<init>(URL.java:679) ~[na:na]
> at java.base/java.net.URL.<init>(URL.java:541) ~[na:na]
> at java.base/java.net.URL.<init>(URL.java:488) ~[na:na]
> at org.teiid.olingo.web.ProxyHttpServletRequest.<init>(ProxyHttpServletRequest.java:83) ~[teiid-olingo-13.1.1.fuse-jdk11-800015-redhat-00001.jar!/:13.1.1.fuse-jdk11-800015-redhat-00001]
> ... 72 common frames omitted
> {code}
> Notice {{443:443}}, it appears the backend is trying to add the port even though it's already there, which makes the resulting URL invalid.
--
This message was sent by Atlassian Jira
(v7.13.8#713008)
5 years, 11 months
[JBoss JIRA] (TEIIDSB-193) codegen xa datasource support
by Steven Hawkins (Jira)
Steven Hawkins created TEIIDSB-193:
--------------------------------------
Summary: codegen xa datasource support
Key: TEIIDSB-193
URL: https://issues.redhat.com/browse/TEIIDSB-193
Project: Teiid Spring Boot
Issue Type: Enhancement
Components: datasource
Reporter: Steven Hawkins
XA support should be possible, but requires additional metadata (at least the datasource class name) a different set of code generations and supporting logic. The built-in xa support for spring (spring.datasource.xa) seems to only account for only a single source. Atomikos has support for mulitple XA: http://www.thedevpiece.com/configuring-multiple-datasources-using-springb...
Perhaps narayana could add something similar so that there is a simple properties driven bean that can be created for each datasource.
--
This message was sent by Atlassian Jira
(v7.13.8#713008)
5 years, 11 months
[JBoss JIRA] (TEIID-5941) Regression in salesforce translator when using LIKE query with wildcard
by Steven Hawkins (Jira)
[ https://issues.redhat.com/browse/TEIID-5941?page=com.atlassian.jira.plugi... ]
Steven Hawkins resolved TEIID-5941.
-----------------------------------
Fix Version/s: 14.0
13.1.1
Resolution: Done
The existing logic was using .toString in several places on expressions, which results in the default translation not the salesforce expected. So things would fail with like when the table alias was pushed.
> Regression in salesforce translator when using LIKE query with wildcard
> -----------------------------------------------------------------------
>
> Key: TEIID-5941
> URL: https://issues.redhat.com/browse/TEIID-5941
> Project: Teiid
> Issue Type: Bug
> Components: Salesforce Connector
> Affects Versions: 13.1
> Reporter: Steven Hawkins
> Assignee: Steven Hawkins
> Priority: Critical
> Labels: regression
> Fix For: 14.0, 13.1.1
>
> Original Estimate: 2 hours
> Remaining Estimate: 2 hours
>
> Running any query with a LIKE and wildcard such as
> {code:sql}
> select Name from Account where Name like 'gene%'
> {code}
> results in
> {code}
> SQL Error [30504] [50000]: TEIID30504 Remote org.teiid.core.TeiidProcessingException: TEIID30504 bqt: null
> {code}
> In the client.
> The exception in the vdb pod is
> {code}
> org.teiid.translator.TranslatorException: null
> at org.teiid.spring.data.salesforce.SalesforceConnectionImpl.query(SalesforceConnectionImpl.java:247) ~[spring-data-salesforce-1.4.1.fuse-jdk11-800014-redhat-00001.jar!/:1.4.1.fuse-jdk11-800014-redhat-00001]
> at org.teiid.translator.salesforce.execution.QueryExecutionImpl.execute(QueryExecutionImpl.java:249) ~[translator-salesforce-13.1.1.fuse-jdk11-800017-redhat-00001.jar!/:13.1.1.fuse-jdk11-800017-redhat-00001]
> at org.teiid.dqp.internal.datamgr.ConnectorWorkItem.execute(ConnectorWorkItem.java:402) ~[teiid-engine-13.1.1.fuse-jdk11-800017-redhat-00001.jar!/:13.1.1.fuse-jdk11-800017-redhat-00001]
> at jdk.internal.reflect.GeneratedMethodAccessor53.invoke(Unknown Source) ~[na:na]
> at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) ~[na:na]
> at java.base/java.lang.reflect.Method.invoke(Method.java:566) ~[na:na]
> at org.teiid.dqp.internal.datamgr.ConnectorManager$1.invoke(ConnectorManager.java:228) ~[teiid-engine-13.1.1.fuse-jdk11-800017-redhat-00001.jar!/:13.1.1.fuse-jdk11-800017-redhat-00001]
> at com.sun.proxy.$Proxy121.execute(Unknown Source) ~[na:na]
> at org.teiid.dqp.internal.process.DataTierTupleSource.getResults(DataTierTupleSource.java:302) ~[teiid-engine-13.1.1.fuse-jdk11-800017-redhat-00001.jar!/:13.1.1.fuse-jdk11-800017-redhat-00001]
> at org.teiid.dqp.internal.process.DataTierTupleSource$1.call(DataTierTupleSource.java:108) ~[teiid-engine-13.1.1.fuse-jdk11-800017-redhat-00001.jar!/:13.1.1.fuse-jdk11-800017-redhat-00001]
> at org.teiid.dqp.internal.process.DataTierTupleSource$1.call(DataTierTupleSource.java:104) ~[teiid-engine-13.1.1.fuse-jdk11-800017-redhat-00001.jar!/:13.1.1.fuse-jdk11-800017-redhat-00001]
> at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) ~[na:na]
> at org.teiid.dqp.internal.process.FutureWork.run(FutureWork.java:59) ~[teiid-engine-13.1.1.fuse-jdk11-800017-redhat-00001.jar!/:13.1.1.fuse-jdk11-800017-redhat-00001]
> at org.teiid.dqp.internal.process.DQPWorkContext.runInContext(DQPWorkContext.java:281) ~[teiid-engine-13.1.1.fuse-jdk11-800017-redhat-00001.jar!/:13.1.1.fuse-jdk11-800017-redhat-00001]
> at org.teiid.dqp.internal.process.ThreadReuseExecutor$RunnableWrapper.run(ThreadReuseExecutor.java:124) ~[teiid-engine-13.1.1.fuse-jdk11-800017-redhat-00001.jar!/:13.1.1.fuse-jdk11-800017-redhat-00001]
> at org.teiid.dqp.internal.process.ThreadReuseExecutor$2.run(ThreadReuseExecutor.java:212) ~[teiid-engine-13.1.1.fuse-jdk11-800017-redhat-00001.jar!/:13.1.1.fuse-jdk11-800017-redhat-00001]
> at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128) ~[na:na]
> at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628) ~[na:na]
> at java.base/java.lang.Thread.run(Thread.java:834) ~[na:na]
> Caused by: com.sforce.soap.partner.fault.InvalidFieldFault: null
> at java.base/jdk.internal.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method) ~[na:na]
> at java.base/jdk.internal.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:62) ~[na:na]
> at java.base/jdk.internal.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45) ~[na:na]
> at java.base/java.lang.reflect.Constructor.newInstance(Constructor.java:490) ~[na:na]
> at java.base/java.lang.Class.newInstance(Class.java:584) ~[na:na]
> at com.sforce.ws.bind.TypeMapper.readSingle(TypeMapper.java:673) ~[force-wsc-45.1.0.jar!/:na]
> at com.sforce.ws.bind.TypeMapper.readObject(TypeMapper.java:556) ~[force-wsc-45.1.0.jar!/:na]
> at com.sforce.ws.transport.SoapConnection.parseDetail(SoapConnection.java:236) ~[force-wsc-45.1.0.jar!/:na]
> at com.sforce.ws.transport.SoapConnection.createException(SoapConnection.java:210) ~[force-wsc-45.1.0.jar!/:na]
> at com.sforce.ws.transport.SoapConnection.receive(SoapConnection.java:156) ~[force-wsc-45.1.0.jar!/:na]
> at com.sforce.ws.transport.SoapConnection.send(SoapConnection.java:99) ~[force-wsc-45.1.0.jar!/:na]
> at com.sforce.soap.partner.PartnerConnection.query(PartnerConnection.java:1197) ~[force-partner-api-45.1.0.jar!/:na]
> at org.teiid.spring.data.salesforce.SalesforceConnectionImpl.query(SalesforceConnectionImpl.java:244) ~[spring-data-salesforce-1.4.1.fuse-jdk11-800014-redhat-00001.jar!/:1.4.1.fuse-jdk11-800014-redhat-00001]
> ... 18 common frames omitted
> 2020-04-20 13:11:21.198 WARN 1 --- [ocessorQueue310] org.teiid.PROCESSOR : TEIID30020 Processing exception for request 9oUsxRHqO3g6.35 'TEIID30504 bqt: null'. Originally TeiidProcessingException java.base/jdk.internal.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method). Enable more detailed logging to see the entire stacktrace.
> {code}
> When not using a wildcard, the query passes.
> This used to work correctly in 7.6
--
This message was sent by Atlassian Jira
(v7.13.8#713008)
5 years, 11 months
[JBoss JIRA] (TEIID-5941) Regression in salesforce translator when using LIKE query with wildcard
by Steven Hawkins (Jira)
[ https://issues.redhat.com/browse/TEIID-5941?page=com.atlassian.jira.plugi... ]
Steven Hawkins updated TEIID-5941:
----------------------------------
Original Estimate: 2 hours
Remaining Estimate: 2 hours
Story Points: 0.5
Sprint: DV Sprint 62
> Regression in salesforce translator when using LIKE query with wildcard
> -----------------------------------------------------------------------
>
> Key: TEIID-5941
> URL: https://issues.redhat.com/browse/TEIID-5941
> Project: Teiid
> Issue Type: Bug
> Components: Salesforce Connector
> Affects Versions: 13.1
> Reporter: Steven Hawkins
> Assignee: Steven Hawkins
> Priority: Critical
> Labels: regression
> Original Estimate: 2 hours
> Remaining Estimate: 2 hours
>
> Running any query with a LIKE and wildcard such as
> {code:sql}
> select Name from Account where Name like 'gene%'
> {code}
> results in
> {code}
> SQL Error [30504] [50000]: TEIID30504 Remote org.teiid.core.TeiidProcessingException: TEIID30504 bqt: null
> {code}
> In the client.
> The exception in the vdb pod is
> {code}
> org.teiid.translator.TranslatorException: null
> at org.teiid.spring.data.salesforce.SalesforceConnectionImpl.query(SalesforceConnectionImpl.java:247) ~[spring-data-salesforce-1.4.1.fuse-jdk11-800014-redhat-00001.jar!/:1.4.1.fuse-jdk11-800014-redhat-00001]
> at org.teiid.translator.salesforce.execution.QueryExecutionImpl.execute(QueryExecutionImpl.java:249) ~[translator-salesforce-13.1.1.fuse-jdk11-800017-redhat-00001.jar!/:13.1.1.fuse-jdk11-800017-redhat-00001]
> at org.teiid.dqp.internal.datamgr.ConnectorWorkItem.execute(ConnectorWorkItem.java:402) ~[teiid-engine-13.1.1.fuse-jdk11-800017-redhat-00001.jar!/:13.1.1.fuse-jdk11-800017-redhat-00001]
> at jdk.internal.reflect.GeneratedMethodAccessor53.invoke(Unknown Source) ~[na:na]
> at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) ~[na:na]
> at java.base/java.lang.reflect.Method.invoke(Method.java:566) ~[na:na]
> at org.teiid.dqp.internal.datamgr.ConnectorManager$1.invoke(ConnectorManager.java:228) ~[teiid-engine-13.1.1.fuse-jdk11-800017-redhat-00001.jar!/:13.1.1.fuse-jdk11-800017-redhat-00001]
> at com.sun.proxy.$Proxy121.execute(Unknown Source) ~[na:na]
> at org.teiid.dqp.internal.process.DataTierTupleSource.getResults(DataTierTupleSource.java:302) ~[teiid-engine-13.1.1.fuse-jdk11-800017-redhat-00001.jar!/:13.1.1.fuse-jdk11-800017-redhat-00001]
> at org.teiid.dqp.internal.process.DataTierTupleSource$1.call(DataTierTupleSource.java:108) ~[teiid-engine-13.1.1.fuse-jdk11-800017-redhat-00001.jar!/:13.1.1.fuse-jdk11-800017-redhat-00001]
> at org.teiid.dqp.internal.process.DataTierTupleSource$1.call(DataTierTupleSource.java:104) ~[teiid-engine-13.1.1.fuse-jdk11-800017-redhat-00001.jar!/:13.1.1.fuse-jdk11-800017-redhat-00001]
> at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) ~[na:na]
> at org.teiid.dqp.internal.process.FutureWork.run(FutureWork.java:59) ~[teiid-engine-13.1.1.fuse-jdk11-800017-redhat-00001.jar!/:13.1.1.fuse-jdk11-800017-redhat-00001]
> at org.teiid.dqp.internal.process.DQPWorkContext.runInContext(DQPWorkContext.java:281) ~[teiid-engine-13.1.1.fuse-jdk11-800017-redhat-00001.jar!/:13.1.1.fuse-jdk11-800017-redhat-00001]
> at org.teiid.dqp.internal.process.ThreadReuseExecutor$RunnableWrapper.run(ThreadReuseExecutor.java:124) ~[teiid-engine-13.1.1.fuse-jdk11-800017-redhat-00001.jar!/:13.1.1.fuse-jdk11-800017-redhat-00001]
> at org.teiid.dqp.internal.process.ThreadReuseExecutor$2.run(ThreadReuseExecutor.java:212) ~[teiid-engine-13.1.1.fuse-jdk11-800017-redhat-00001.jar!/:13.1.1.fuse-jdk11-800017-redhat-00001]
> at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128) ~[na:na]
> at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628) ~[na:na]
> at java.base/java.lang.Thread.run(Thread.java:834) ~[na:na]
> Caused by: com.sforce.soap.partner.fault.InvalidFieldFault: null
> at java.base/jdk.internal.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method) ~[na:na]
> at java.base/jdk.internal.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:62) ~[na:na]
> at java.base/jdk.internal.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45) ~[na:na]
> at java.base/java.lang.reflect.Constructor.newInstance(Constructor.java:490) ~[na:na]
> at java.base/java.lang.Class.newInstance(Class.java:584) ~[na:na]
> at com.sforce.ws.bind.TypeMapper.readSingle(TypeMapper.java:673) ~[force-wsc-45.1.0.jar!/:na]
> at com.sforce.ws.bind.TypeMapper.readObject(TypeMapper.java:556) ~[force-wsc-45.1.0.jar!/:na]
> at com.sforce.ws.transport.SoapConnection.parseDetail(SoapConnection.java:236) ~[force-wsc-45.1.0.jar!/:na]
> at com.sforce.ws.transport.SoapConnection.createException(SoapConnection.java:210) ~[force-wsc-45.1.0.jar!/:na]
> at com.sforce.ws.transport.SoapConnection.receive(SoapConnection.java:156) ~[force-wsc-45.1.0.jar!/:na]
> at com.sforce.ws.transport.SoapConnection.send(SoapConnection.java:99) ~[force-wsc-45.1.0.jar!/:na]
> at com.sforce.soap.partner.PartnerConnection.query(PartnerConnection.java:1197) ~[force-partner-api-45.1.0.jar!/:na]
> at org.teiid.spring.data.salesforce.SalesforceConnectionImpl.query(SalesforceConnectionImpl.java:244) ~[spring-data-salesforce-1.4.1.fuse-jdk11-800014-redhat-00001.jar!/:1.4.1.fuse-jdk11-800014-redhat-00001]
> ... 18 common frames omitted
> 2020-04-20 13:11:21.198 WARN 1 --- [ocessorQueue310] org.teiid.PROCESSOR : TEIID30020 Processing exception for request 9oUsxRHqO3g6.35 'TEIID30504 bqt: null'. Originally TeiidProcessingException java.base/jdk.internal.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method). Enable more detailed logging to see the entire stacktrace.
> {code}
> When not using a wildcard, the query passes.
> This used to work correctly in 7.6
--
This message was sent by Atlassian Jira
(v7.13.8#713008)
5 years, 11 months
[JBoss JIRA] (TEIID-5941) Regression in salesforce translator when using LIKE query with wildcard
by Steven Hawkins (Jira)
[ https://issues.redhat.com/browse/TEIID-5941?page=com.atlassian.jira.plugi... ]
Steven Hawkins commented on TEIID-5941:
---------------------------------------
The stack trace doesn't go deep enough in showing the error. It is actually a problem with the query string by adding self-join / table alias support.
> Regression in salesforce translator when using LIKE query with wildcard
> -----------------------------------------------------------------------
>
> Key: TEIID-5941
> URL: https://issues.redhat.com/browse/TEIID-5941
> Project: Teiid
> Issue Type: Bug
> Components: Salesforce Connector
> Affects Versions: 13.1
> Reporter: Steven Hawkins
> Assignee: Steven Hawkins
> Priority: Critical
> Labels: regression
>
> Running any query with a LIKE and wildcard such as
> {code:sql}
> select Name from Account where Name like 'gene%'
> {code}
> results in
> {code}
> SQL Error [30504] [50000]: TEIID30504 Remote org.teiid.core.TeiidProcessingException: TEIID30504 bqt: null
> {code}
> In the client.
> The exception in the vdb pod is
> {code}
> org.teiid.translator.TranslatorException: null
> at org.teiid.spring.data.salesforce.SalesforceConnectionImpl.query(SalesforceConnectionImpl.java:247) ~[spring-data-salesforce-1.4.1.fuse-jdk11-800014-redhat-00001.jar!/:1.4.1.fuse-jdk11-800014-redhat-00001]
> at org.teiid.translator.salesforce.execution.QueryExecutionImpl.execute(QueryExecutionImpl.java:249) ~[translator-salesforce-13.1.1.fuse-jdk11-800017-redhat-00001.jar!/:13.1.1.fuse-jdk11-800017-redhat-00001]
> at org.teiid.dqp.internal.datamgr.ConnectorWorkItem.execute(ConnectorWorkItem.java:402) ~[teiid-engine-13.1.1.fuse-jdk11-800017-redhat-00001.jar!/:13.1.1.fuse-jdk11-800017-redhat-00001]
> at jdk.internal.reflect.GeneratedMethodAccessor53.invoke(Unknown Source) ~[na:na]
> at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) ~[na:na]
> at java.base/java.lang.reflect.Method.invoke(Method.java:566) ~[na:na]
> at org.teiid.dqp.internal.datamgr.ConnectorManager$1.invoke(ConnectorManager.java:228) ~[teiid-engine-13.1.1.fuse-jdk11-800017-redhat-00001.jar!/:13.1.1.fuse-jdk11-800017-redhat-00001]
> at com.sun.proxy.$Proxy121.execute(Unknown Source) ~[na:na]
> at org.teiid.dqp.internal.process.DataTierTupleSource.getResults(DataTierTupleSource.java:302) ~[teiid-engine-13.1.1.fuse-jdk11-800017-redhat-00001.jar!/:13.1.1.fuse-jdk11-800017-redhat-00001]
> at org.teiid.dqp.internal.process.DataTierTupleSource$1.call(DataTierTupleSource.java:108) ~[teiid-engine-13.1.1.fuse-jdk11-800017-redhat-00001.jar!/:13.1.1.fuse-jdk11-800017-redhat-00001]
> at org.teiid.dqp.internal.process.DataTierTupleSource$1.call(DataTierTupleSource.java:104) ~[teiid-engine-13.1.1.fuse-jdk11-800017-redhat-00001.jar!/:13.1.1.fuse-jdk11-800017-redhat-00001]
> at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) ~[na:na]
> at org.teiid.dqp.internal.process.FutureWork.run(FutureWork.java:59) ~[teiid-engine-13.1.1.fuse-jdk11-800017-redhat-00001.jar!/:13.1.1.fuse-jdk11-800017-redhat-00001]
> at org.teiid.dqp.internal.process.DQPWorkContext.runInContext(DQPWorkContext.java:281) ~[teiid-engine-13.1.1.fuse-jdk11-800017-redhat-00001.jar!/:13.1.1.fuse-jdk11-800017-redhat-00001]
> at org.teiid.dqp.internal.process.ThreadReuseExecutor$RunnableWrapper.run(ThreadReuseExecutor.java:124) ~[teiid-engine-13.1.1.fuse-jdk11-800017-redhat-00001.jar!/:13.1.1.fuse-jdk11-800017-redhat-00001]
> at org.teiid.dqp.internal.process.ThreadReuseExecutor$2.run(ThreadReuseExecutor.java:212) ~[teiid-engine-13.1.1.fuse-jdk11-800017-redhat-00001.jar!/:13.1.1.fuse-jdk11-800017-redhat-00001]
> at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128) ~[na:na]
> at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628) ~[na:na]
> at java.base/java.lang.Thread.run(Thread.java:834) ~[na:na]
> Caused by: com.sforce.soap.partner.fault.InvalidFieldFault: null
> at java.base/jdk.internal.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method) ~[na:na]
> at java.base/jdk.internal.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:62) ~[na:na]
> at java.base/jdk.internal.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45) ~[na:na]
> at java.base/java.lang.reflect.Constructor.newInstance(Constructor.java:490) ~[na:na]
> at java.base/java.lang.Class.newInstance(Class.java:584) ~[na:na]
> at com.sforce.ws.bind.TypeMapper.readSingle(TypeMapper.java:673) ~[force-wsc-45.1.0.jar!/:na]
> at com.sforce.ws.bind.TypeMapper.readObject(TypeMapper.java:556) ~[force-wsc-45.1.0.jar!/:na]
> at com.sforce.ws.transport.SoapConnection.parseDetail(SoapConnection.java:236) ~[force-wsc-45.1.0.jar!/:na]
> at com.sforce.ws.transport.SoapConnection.createException(SoapConnection.java:210) ~[force-wsc-45.1.0.jar!/:na]
> at com.sforce.ws.transport.SoapConnection.receive(SoapConnection.java:156) ~[force-wsc-45.1.0.jar!/:na]
> at com.sforce.ws.transport.SoapConnection.send(SoapConnection.java:99) ~[force-wsc-45.1.0.jar!/:na]
> at com.sforce.soap.partner.PartnerConnection.query(PartnerConnection.java:1197) ~[force-partner-api-45.1.0.jar!/:na]
> at org.teiid.spring.data.salesforce.SalesforceConnectionImpl.query(SalesforceConnectionImpl.java:244) ~[spring-data-salesforce-1.4.1.fuse-jdk11-800014-redhat-00001.jar!/:1.4.1.fuse-jdk11-800014-redhat-00001]
> ... 18 common frames omitted
> 2020-04-20 13:11:21.198 WARN 1 --- [ocessorQueue310] org.teiid.PROCESSOR : TEIID30020 Processing exception for request 9oUsxRHqO3g6.35 'TEIID30504 bqt: null'. Originally TeiidProcessingException java.base/jdk.internal.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method). Enable more detailed logging to see the entire stacktrace.
> {code}
> When not using a wildcard, the query passes.
> This used to work correctly in 7.6
--
This message was sent by Atlassian Jira
(v7.13.8#713008)
5 years, 11 months
[JBoss JIRA] (TEIID-5941) Regression in salesforce translator when using LIKE query with wildcard
by Steven Hawkins (Jira)
[ https://issues.redhat.com/browse/TEIID-5941?page=com.atlassian.jira.plugi... ]
Steven Hawkins moved ENTESB-13520 to TEIID-5941:
------------------------------------------------
Project: Teiid (was: Red Hat Fuse)
Key: TEIID-5941 (was: ENTESB-13520)
Workflow: classic default workflow (was: ENTESB Planned Work)
Component/s: Salesforce Connector
(was: Data Integration)
Target Release: (was: fuse-7.7-GA)
Affects Version/s: 13.1
(was: fuse-next-TP1-CR2)
> Regression in salesforce translator when using LIKE query with wildcard
> -----------------------------------------------------------------------
>
> Key: TEIID-5941
> URL: https://issues.redhat.com/browse/TEIID-5941
> Project: Teiid
> Issue Type: Bug
> Components: Salesforce Connector
> Affects Versions: 13.1
> Reporter: Steven Hawkins
> Assignee: Steven Hawkins
> Priority: Critical
> Labels: regression
>
> Running any query with a LIKE and wildcard such as
> {code:sql}
> select Name from Account where Name like 'gene%'
> {code}
> results in
> {code}
> SQL Error [30504] [50000]: TEIID30504 Remote org.teiid.core.TeiidProcessingException: TEIID30504 bqt: null
> {code}
> In the client.
> The exception in the vdb pod is
> {code}
> org.teiid.translator.TranslatorException: null
> at org.teiid.spring.data.salesforce.SalesforceConnectionImpl.query(SalesforceConnectionImpl.java:247) ~[spring-data-salesforce-1.4.1.fuse-jdk11-800014-redhat-00001.jar!/:1.4.1.fuse-jdk11-800014-redhat-00001]
> at org.teiid.translator.salesforce.execution.QueryExecutionImpl.execute(QueryExecutionImpl.java:249) ~[translator-salesforce-13.1.1.fuse-jdk11-800017-redhat-00001.jar!/:13.1.1.fuse-jdk11-800017-redhat-00001]
> at org.teiid.dqp.internal.datamgr.ConnectorWorkItem.execute(ConnectorWorkItem.java:402) ~[teiid-engine-13.1.1.fuse-jdk11-800017-redhat-00001.jar!/:13.1.1.fuse-jdk11-800017-redhat-00001]
> at jdk.internal.reflect.GeneratedMethodAccessor53.invoke(Unknown Source) ~[na:na]
> at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) ~[na:na]
> at java.base/java.lang.reflect.Method.invoke(Method.java:566) ~[na:na]
> at org.teiid.dqp.internal.datamgr.ConnectorManager$1.invoke(ConnectorManager.java:228) ~[teiid-engine-13.1.1.fuse-jdk11-800017-redhat-00001.jar!/:13.1.1.fuse-jdk11-800017-redhat-00001]
> at com.sun.proxy.$Proxy121.execute(Unknown Source) ~[na:na]
> at org.teiid.dqp.internal.process.DataTierTupleSource.getResults(DataTierTupleSource.java:302) ~[teiid-engine-13.1.1.fuse-jdk11-800017-redhat-00001.jar!/:13.1.1.fuse-jdk11-800017-redhat-00001]
> at org.teiid.dqp.internal.process.DataTierTupleSource$1.call(DataTierTupleSource.java:108) ~[teiid-engine-13.1.1.fuse-jdk11-800017-redhat-00001.jar!/:13.1.1.fuse-jdk11-800017-redhat-00001]
> at org.teiid.dqp.internal.process.DataTierTupleSource$1.call(DataTierTupleSource.java:104) ~[teiid-engine-13.1.1.fuse-jdk11-800017-redhat-00001.jar!/:13.1.1.fuse-jdk11-800017-redhat-00001]
> at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) ~[na:na]
> at org.teiid.dqp.internal.process.FutureWork.run(FutureWork.java:59) ~[teiid-engine-13.1.1.fuse-jdk11-800017-redhat-00001.jar!/:13.1.1.fuse-jdk11-800017-redhat-00001]
> at org.teiid.dqp.internal.process.DQPWorkContext.runInContext(DQPWorkContext.java:281) ~[teiid-engine-13.1.1.fuse-jdk11-800017-redhat-00001.jar!/:13.1.1.fuse-jdk11-800017-redhat-00001]
> at org.teiid.dqp.internal.process.ThreadReuseExecutor$RunnableWrapper.run(ThreadReuseExecutor.java:124) ~[teiid-engine-13.1.1.fuse-jdk11-800017-redhat-00001.jar!/:13.1.1.fuse-jdk11-800017-redhat-00001]
> at org.teiid.dqp.internal.process.ThreadReuseExecutor$2.run(ThreadReuseExecutor.java:212) ~[teiid-engine-13.1.1.fuse-jdk11-800017-redhat-00001.jar!/:13.1.1.fuse-jdk11-800017-redhat-00001]
> at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128) ~[na:na]
> at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628) ~[na:na]
> at java.base/java.lang.Thread.run(Thread.java:834) ~[na:na]
> Caused by: com.sforce.soap.partner.fault.InvalidFieldFault: null
> at java.base/jdk.internal.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method) ~[na:na]
> at java.base/jdk.internal.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:62) ~[na:na]
> at java.base/jdk.internal.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45) ~[na:na]
> at java.base/java.lang.reflect.Constructor.newInstance(Constructor.java:490) ~[na:na]
> at java.base/java.lang.Class.newInstance(Class.java:584) ~[na:na]
> at com.sforce.ws.bind.TypeMapper.readSingle(TypeMapper.java:673) ~[force-wsc-45.1.0.jar!/:na]
> at com.sforce.ws.bind.TypeMapper.readObject(TypeMapper.java:556) ~[force-wsc-45.1.0.jar!/:na]
> at com.sforce.ws.transport.SoapConnection.parseDetail(SoapConnection.java:236) ~[force-wsc-45.1.0.jar!/:na]
> at com.sforce.ws.transport.SoapConnection.createException(SoapConnection.java:210) ~[force-wsc-45.1.0.jar!/:na]
> at com.sforce.ws.transport.SoapConnection.receive(SoapConnection.java:156) ~[force-wsc-45.1.0.jar!/:na]
> at com.sforce.ws.transport.SoapConnection.send(SoapConnection.java:99) ~[force-wsc-45.1.0.jar!/:na]
> at com.sforce.soap.partner.PartnerConnection.query(PartnerConnection.java:1197) ~[force-partner-api-45.1.0.jar!/:na]
> at org.teiid.spring.data.salesforce.SalesforceConnectionImpl.query(SalesforceConnectionImpl.java:244) ~[spring-data-salesforce-1.4.1.fuse-jdk11-800014-redhat-00001.jar!/:1.4.1.fuse-jdk11-800014-redhat-00001]
> ... 18 common frames omitted
> 2020-04-20 13:11:21.198 WARN 1 --- [ocessorQueue310] org.teiid.PROCESSOR : TEIID30020 Processing exception for request 9oUsxRHqO3g6.35 'TEIID30504 bqt: null'. Originally TeiidProcessingException java.base/jdk.internal.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method). Enable more detailed logging to see the entire stacktrace.
> {code}
> When not using a wildcard, the query passes.
> This used to work correctly in 7.6
--
This message was sent by Atlassian Jira
(v7.13.8#713008)
5 years, 11 months
[JBoss JIRA] (TEIIDSB-190) REST with request payload throws an error
by Ramesh Reddy (Jira)
[ https://issues.redhat.com/browse/TEIIDSB-190?page=com.atlassian.jira.plug... ]
Ramesh Reddy reassigned TEIIDSB-190:
------------------------------------
Assignee: Ramesh Reddy (was: Steven Hawkins)
> REST with request payload throws an error
> -----------------------------------------
>
> Key: TEIIDSB-190
> URL: https://issues.redhat.com/browse/TEIIDSB-190
> Project: Teiid Spring Boot
> Issue Type: Bug
> Components: core
> Reporter: Sadhana Nandakumar
> Assignee: Ramesh Reddy
> Priority: Major
> Fix For: 1.5.0
>
>
> TEIID spring boot is expecting the payload to be a bean, and hence throws an error. POST without request body works fine without any issues.
> CREATE VIEW StockPrice (
> symbol string PRIMARY KEY,
> price double
> ) AS
> SELECT p.symbol, y.price
> FROM accounts.PRODUCT as p, TABLE(call invokeHttp(action=>'POST', endpoint=>QUERYSTRING('predict'), headers=>jsonObject('application/json' as "Content-Type"), request=>jsonObject('PLATINUM' as "customerClass"))) as x,
> JSONTABLE(JSONPARSE(x.result,true), '$' COLUMNS price double path '@.data.segment') as y
> No errors on build, when I query the odata endpoint, I see the following error.
> <error xmlns="http://docs.oasis-open.org/odata/ns/metadata">
> <code>TEIID30504</code>
> <message>
> TEIID30504 quotesvc: No bean named '{"customerClass":"PLATINUM"}' available
> </message>
> </error>
--
This message was sent by Atlassian Jira
(v7.13.8#713008)
5 years, 11 months
[JBoss JIRA] (TEIID-5940) How to connect GCP bucket using Teiid
by nayan Bijagare (Jira)
nayan Bijagare created TEIID-5940:
-------------------------------------
Summary: How to connect GCP bucket using Teiid
Key: TEIID-5940
URL: https://issues.redhat.com/browse/TEIID-5940
Project: Teiid
Issue Type: Feature Request
Components: JDBC Connector
Reporter: nayan Bijagare
Assignee: Steven Hawkins
We need to read flat file or CSV file tabular data using Teiid.
We couldn't find any JDBC driver by using it we can establish the connection with the GCP Bucket.
Could you please suggest us any solution how to connect to GCP bucket using Teiid.
--
This message was sent by Atlassian Jira
(v7.13.8#713008)
5 years, 11 months
[JBoss JIRA] (TEIIDSB-170) Automate materialization to JDG
by Ramesh Reddy (Jira)
[ https://issues.redhat.com/browse/TEIIDSB-170?page=com.atlassian.jira.plug... ]
Ramesh Reddy updated TEIIDSB-170:
---------------------------------
Comment: was deleted
(was: Looks like we can not add this in the vdb-codegen-plugin at all, if we handle the modification there is no way inject the modified DDL back into Teiid VDB. In the Operator model, the VDB is already written to disk (image). This needs to be handled in the Teiid Spring Boot engine in boot sequence before deployment of the vdb.)
> Automate materialization to JDG
> -------------------------------
>
> Key: TEIIDSB-170
> URL: https://issues.redhat.com/browse/TEIIDSB-170
> Project: Teiid Spring Boot
> Issue Type: Enhancement
> Components: OpenShift
> Reporter: Steven Hawkins
> Assignee: Ramesh Reddy
> Priority: Major
> Fix For: 1.5.0
>
> Original Estimate: 1 week
> Time Spent: 1 hour
> Remaining Estimate: 4 days, 7 hours
>
> Create an internal materialization replacement needs that is turnkey materialization to JDG (little to no user setup required)
> - the operator may create the infinispan cluster if needed
> - the status table and internal representation of the materialization target would be setup automatically
> For the user this would be as simple marking a view as materialized and then it would be populated in jdg upon deployment. They would not have any concerns with cache naming, status tables, etc.
> For simplicity the initial version would make a similar assumption to the current internal logic - it is for only a specific vdb. If the vdb cr is modified, then it's expected that the cache would be recreated.
--
This message was sent by Atlassian Jira
(v7.13.8#713008)
5 years, 11 months
[JBoss JIRA] (TEIID-5882) Default cache name is no longer default
by Steven Hawkins (Jira)
[ https://issues.redhat.com/browse/TEIID-5882?page=com.atlassian.jira.plugi... ]
Steven Hawkins commented on TEIID-5882:
---------------------------------------
Yes to remove that default and update any docs.
> Default cache name is no longer default
> ---------------------------------------
>
> Key: TEIID-5882
> URL: https://issues.redhat.com/browse/TEIID-5882
> Project: Teiid
> Issue Type: Quality Risk
> Components: Infinispan
> Reporter: Steven Hawkins
> Assignee: Ramesh Reddy
> Priority: Major
> Fix For: 14.0
>
>
> The infinispan default cache name is no longer default. It can instead be specified in the cache container and obtained by the getCache method that does not take a name. Our resource adapter defaults the value to "default", so that could be removed.
--
This message was sent by Atlassian Jira
(v7.13.8#713008)
5 years, 11 months