[JBoss JIRA] (TEIID-6017) Not able to connect GCP bucket using S3 translator
by Nayan Bija (Jira)
[ https://issues.redhat.com/browse/TEIID-6017?page=com.atlassian.jira.plugi... ]
Nayan Bija commented on TEIID-6017:
-----------------------------------
Hi,
Thanks for your suggestion,
We are using Teiid 15.0.0 version and downloaded it from below link.
[https://oss.sonatype.org/service/local/repositories/releases/content/org/...]
And I am also making changes step by step.
First I have configured the adapter by using Google Bucket secret key.
then I have created a above dummy VDB just to check the connectivity with the Google Storage.
But connection is not estabilishing. hence I am not getting what exactly missing here.
Whether there is a problem in adapter or I am following wrong approch.
I have done below things till now.
# Download Teiid 15.0.0
# Created bucket on Google Storage.
# Created a access key and secret key
# Created a adapter by adding google access key and secret key
# Created a dummy VDB to test connection.
# Trying to make connction.
Could you please convey me if I am missing anything?
> Not able to connect GCP bucket using S3 translator
> --------------------------------------------------
>
> Key: TEIID-6017
> URL: https://issues.redhat.com/browse/TEIID-6017
> Project: Teiid
> Issue Type: Feature Request
> Reporter: Nayan Bija
> Assignee: Steven Hawkins
> Priority: Major
>
> As suggested in the ticket TEIID-6015
> We have tried to connect the GCP bucket using the S3 translator(not amazon-s3).
> As mentioned, S3 doesn't support google authentication,
> so we have created access key and secret key of Google bucket by logging into the GCP accoudnt.
> We have followed below steps to create access key and secret key.
> _*Storage->Setting->INTEROPERABILITY-> Service account HMAC->Create a key for service account"*_
>
> We have also created below adapter file and VDB but still, we are not able to connect to GCP.
>
> <resource-adapter id="amazon-s3-custom">
> <module slot="main" id="org.jboss.teiid.resource-adapter.s3"/>
> <transaction-support>NoTransaction</transaction-support>
> <connection-definitions>
> <connection-definition class-name="org.teiid.resource.adapter.s3.S3ManagedConnectionFactory" jndi-name="java:/s3DS" enabled="true" use-java-context="true" pool-name="teiid-s3-ds">
> <config-property name="bucket">abc</config-property>
> <config-property name="endpoint">[https://storage.googleapis.com|https://storage.googleapis.com/]</config-property>
> <config-property name="secretKey">xxx</config-property>
> <config-property name="accessKey">xxx</config-property>
> </connection-definition>
> </connection-definitions>
> </resource-adapter>
>
>
>
> VDB
> ----
>
> <?xml version="1.0"?>
> <vdb name="gcp" version="1">
> <connection-type>BY_VERSION</connection-type>
> <model name="s3">
> <source name="web-connector" translator-name="amazon-s3-custom" connection-jndi-name="java:/s3DS"/>
> </model>
> <translator name="amazon-s3-custom" type="amazon-s3">
> <property name="accesskey" value="xxx"/>
> <property name="secretkey" value="xxx"/>
> <property name="bucket" value="abc"/>
> </translator>
> </vdb
>
>
> as we tried to connect we are getting below error.
>
> *_"_*_org.teiid.jdbc.TeiidSQLException: TEIID20018 Unable to find a component used authenticate on to Teiid_*_"_*
>
> In the above configuration, where should we mention the File name?
> As I have read the properties in the documentation, I could see bucket property, where we can add a bucket name. but where should we add the file name which is present in the bucket?
>
> Could you please help us with it?
>
>
>
>
--
This message was sent by Atlassian Jira
(v7.13.8#713008)
5 years, 4 months
[JBoss JIRA] (TEIID-6017) Not able to connect GCP bucket using S3 translator
by Nayan Bija (Jira)
[ https://issues.redhat.com/browse/TEIID-6017?page=com.atlassian.jira.plugi... ]
Nayan Bija commented on TEIID-6017:
-----------------------------------
Hi,
Thanks for your suggestion,
We are using Teiid 15.0.0 version and downloaded it from below link.
[https://oss.sonatype.org/service/local/repositories/releases/content/org/...]
And I am also making changes step by step.
First I have configured the adapter by using Google Bucket secret key.
then I have created a above dummy VDB just to check the connectivity with the Google Storage.
But connection is not estabilishing. hence I am not getting what exactly missing here.
Whether there is a problem in adapter or I am following wrong approch.
I have done below things till now.
# Download Teiid 15.0.0
# Created bucket on Google Storage.
# Created a access key and secret key
# Created a adapter by adding google access key and secret key
# Created a dummy VDB to test connection.
# Trying to make connction.
Could you please convey me if I am missing anything?
> Not able to connect GCP bucket using S3 translator
> --------------------------------------------------
>
> Key: TEIID-6017
> URL: https://issues.redhat.com/browse/TEIID-6017
> Project: Teiid
> Issue Type: Feature Request
> Reporter: Nayan Bija
> Assignee: Steven Hawkins
> Priority: Major
>
> As suggested in the ticket TEIID-6015
> We have tried to connect the GCP bucket using the S3 translator(not amazon-s3).
> As mentioned, S3 doesn't support google authentication,
> so we have created access key and secret key of Google bucket by logging into the GCP accoudnt.
> We have followed below steps to create access key and secret key.
> _*Storage->Setting->INTEROPERABILITY-> Service account HMAC->Create a key for service account"*_
>
> We have also created below adapter file and VDB but still, we are not able to connect to GCP.
>
> <resource-adapter id="amazon-s3-custom">
> <module slot="main" id="org.jboss.teiid.resource-adapter.s3"/>
> <transaction-support>NoTransaction</transaction-support>
> <connection-definitions>
> <connection-definition class-name="org.teiid.resource.adapter.s3.S3ManagedConnectionFactory" jndi-name="java:/s3DS" enabled="true" use-java-context="true" pool-name="teiid-s3-ds">
> <config-property name="bucket">abc</config-property>
> <config-property name="endpoint">[https://storage.googleapis.com|https://storage.googleapis.com/]</config-property>
> <config-property name="secretKey">xxx</config-property>
> <config-property name="accessKey">xxx</config-property>
> </connection-definition>
> </connection-definitions>
> </resource-adapter>
>
>
>
> VDB
> ----
>
> <?xml version="1.0"?>
> <vdb name="gcp" version="1">
> <connection-type>BY_VERSION</connection-type>
> <model name="s3">
> <source name="web-connector" translator-name="amazon-s3-custom" connection-jndi-name="java:/s3DS"/>
> </model>
> <translator name="amazon-s3-custom" type="amazon-s3">
> <property name="accesskey" value="xxx"/>
> <property name="secretkey" value="xxx"/>
> <property name="bucket" value="abc"/>
> </translator>
> </vdb
>
>
> as we tried to connect we are getting below error.
>
> *_"_*_org.teiid.jdbc.TeiidSQLException: TEIID20018 Unable to find a component used authenticate on to Teiid_*_"_*
>
> In the above configuration, where should we mention the File name?
> As I have read the properties in the documentation, I could see bucket property, where we can add a bucket name. but where should we add the file name which is present in the bucket?
>
> Could you please help us with it?
>
>
>
>
--
This message was sent by Atlassian Jira
(v7.13.8#713008)
5 years, 4 months
[JBoss JIRA] (TEIID-6010) Salesforce: an implementation restriction when querying ContentDocumentLink table
by Steven Hawkins (Jira)
[ https://issues.redhat.com/browse/TEIID-6010?page=com.atlassian.jira.plugi... ]
Steven Hawkins edited comment on TEIID-6010 at 8/13/20 9:30 AM:
----------------------------------------------------------------
For me using all defaults with 34 connectivity get the following imported metadata:
{code:sql}
CREATE FOREIGN TABLE ContentDocumentLink (
Id string(18) NOT NULL AUTO_INCREMENT DEFAULT 'sf default' OPTIONS (NAMEINSOURCE 'Id', UPDATABLE FALSE, NATIVE_TYPE 'id', "teiid_sf:Calculated" 'false', "teiid_sf:Custom" 'false', "teiid_sf:Defaulted on Create" 'true'),
LinkedEntityId string(18) NOT NULL OPTIONS (NAMEINSOURCE 'LinkedEntityId', NATIVE_TYPE 'reference', "teiid_sf:Calculated" 'false', "teiid_sf:Custom" 'false', "teiid_sf:Defaulted on Create" 'false'),
ContentDocumentId string(18) NOT NULL OPTIONS (NAMEINSOURCE 'ContentDocumentId', NATIVE_TYPE 'reference', "teiid_sf:Calculated" 'false', "teiid_sf:Custom" 'false', "teiid_sf:Defaulted on Create" 'false'),
IsDeleted boolean NOT NULL DEFAULT 'sf default' OPTIONS (NAMEINSOURCE 'IsDeleted', UPDATABLE FALSE, NATIVE_TYPE '_boolean', "teiid_sf:Calculated" 'false', "teiid_sf:Custom" 'false', "teiid_sf:Defaulted on Create" 'true'),
ShareType string(40) OPTIONS (NAMEINSOURCE 'ShareType', NATIVE_TYPE 'restrictedpicklist', "teiid_sf:Calculated" 'false', "teiid_sf:Custom" 'false', "teiid_sf:Defaulted on Create" 'false', "teiid_sf:Picklist Values" 'V,C,I'),
Visibility string(40) OPTIONS (NAMEINSOURCE 'Visibility', NATIVE_TYPE 'restrictedpicklist', "teiid_sf:Calculated" 'false', "teiid_sf:Custom" 'false', "teiid_sf:Defaulted on Create" 'false', "teiid_sf:Picklist Values" 'AllUsers,InternalUsers,SharedUsers'),
...
{code}
The same pushdown query/plan:
{code}
OPTIMIZATION COMPLETE:
PROCESSOR PLAN:
AccessNode(0) output=[SalesForceModel.ContentDocumentLink.Id, SalesForceModel.ContentDocumentLink.LinkedEntityId, SalesForceModel.ContentDocumentLink.ContentDocumentId, SalesForceModel.ContentDocumentLink.IsDeleted, SalesForceModel.ContentDocumentLink.ShareType, SalesForceModel.ContentDocumentLink.Visibility] SELECT g_0.Id, g_0.LinkedEntityId, g_0.ContentDocumentId, g_0.IsDeleted, g_0.ShareType, g_0.Visibility FROM SalesForceModel.ContentDocumentLink AS g_0 WHERE g_0.ContentDocumentId = '0691t000002aeKaAAI'
{code}
And the soql query:
{code}
SELECT Id, LinkedEntityId, ContentDocumentId, IsDeleted, ShareType, Visibility FROM ContentDocumentLink WHERE ContentDocumentId = '0691t000002aeKaAAI'
{code}
The difference is that this is on 15/master after TEIID-5988.
On Teiid 14 before that change the soql query has qualifications - "WHERE ContentDocumentLink.ContentDocumentId ="
Which for some reason undocumented Salesforce treats differently than the unqualified form. Can you confirm that this is already addressed in Teiid 15 for you?
was (Author: shawkins):
For me using all defaults with 34 connectivity get the following imported metadata:
{code:sql}
CREATE FOREIGN TABLE ContentDocumentLink (
Id string(18) NOT NULL AUTO_INCREMENT DEFAULT 'sf default' OPTIONS (NAMEINSOURCE 'Id', UPDATABLE FALSE, NATIVE_TYPE 'id', "teiid_sf:Calculated" 'false', "teiid_sf:Custom" 'false', "teiid_sf:Defaulted on Create" 'true'),
LinkedEntityId string(18) NOT NULL OPTIONS (NAMEINSOURCE 'LinkedEntityId', NATIVE_TYPE 'reference', "teiid_sf:Calculated" 'false', "teiid_sf:Custom" 'false', "teiid_sf:Defaulted on Create" 'false'),
ContentDocumentId string(18) NOT NULL OPTIONS (NAMEINSOURCE 'ContentDocumentId', NATIVE_TYPE 'reference', "teiid_sf:Calculated" 'false', "teiid_sf:Custom" 'false', "teiid_sf:Defaulted on Create" 'false'),
IsDeleted boolean NOT NULL DEFAULT 'sf default' OPTIONS (NAMEINSOURCE 'IsDeleted', UPDATABLE FALSE, NATIVE_TYPE '_boolean', "teiid_sf:Calculated" 'false', "teiid_sf:Custom" 'false', "teiid_sf:Defaulted on Create" 'true'),
ShareType string(40) OPTIONS (NAMEINSOURCE 'ShareType', NATIVE_TYPE 'restrictedpicklist', "teiid_sf:Calculated" 'false', "teiid_sf:Custom" 'false', "teiid_sf:Defaulted on Create" 'false', "teiid_sf:Picklist Values" 'V,C,I'),
Visibility string(40) OPTIONS (NAMEINSOURCE 'Visibility', NATIVE_TYPE 'restrictedpicklist', "teiid_sf:Calculated" 'false', "teiid_sf:Custom" 'false', "teiid_sf:Defaulted on Create" 'false', "teiid_sf:Picklist Values" 'AllUsers,InternalUsers,SharedUsers'),
...
{code}
The same pushdown query/plan:
{code}
OPTIMIZATION COMPLETE:
PROCESSOR PLAN:
AccessNode(0) output=[SalesForceModel.ContentDocumentLink.Id, SalesForceModel.ContentDocumentLink.LinkedEntityId, SalesForceModel.ContentDocumentLink.ContentDocumentId, SalesForceModel.ContentDocumentLink.IsDeleted, SalesForceModel.ContentDocumentLink.ShareType, SalesForceModel.ContentDocumentLink.Visibility] SELECT g_0.Id, g_0.LinkedEntityId, g_0.ContentDocumentId, g_0.IsDeleted, g_0.ShareType, g_0.Visibility FROM SalesForceModel.ContentDocumentLink AS g_0 WHERE g_0.ContentDocumentId = '0691t000002aeKaAAI'
{code}
And the soql query:
{code}
SELECT Id, LinkedEntityId, ContentDocumentId, IsDeleted, ShareType, Visibility FROM ContentDocumentLink WHERE ContentDocumentId = '0691t000002aeKaAAI'
{code}
The difference is that this is on 15/master after TEIID-5988.
On Teiid 14 before that change the soql query has qualifications - "WHERE ContentDocumentLink.ContentDocumentId ="
Which for some reason undocumented reason Salesforce treats differently, then the unqualified form. Can you confirm that this is already addressed in Teiid 15 for you?
> Salesforce: an implementation restriction when querying ContentDocumentLink table
> ---------------------------------------------------------------------------------
>
> Key: TEIID-6010
> URL: https://issues.redhat.com/browse/TEIID-6010
> Project: Teiid
> Issue Type: Bug
> Components: Salesforce Connector
> Affects Versions: 14.0
> Reporter: Dmitrii Pogorelov
> Assignee: Steven Hawkins
> Priority: Major
>
> when running the following query:
> {code:sql}
> SELECT "Id", "LinkedEntityId", "ContentDocumentId", "IsDeleted", "ShareType", "Visibility"
> FROM "sf34.ContentDocumentLink"
> WHERE "ContentDocumentId" = '0691t000002aeKaAAI' ;; {code}
> Teiid throws out the stack trace:
> {code:java}
> 2020-08-10 14:11:56,721 WARN [org.teiid.CONNECTOR] (Worker2_QueryProcessorQueue33) SSrs8BwlD5AI Connector worker process failed for atomic-request=SSrs8BwlD5AI.14.0.0: org.teiid.translator.TranslatorException at org.teiid.salesforce.BaseSalesforceConnection.query(BaseSalesforceConnection.java:198) at org.teiid.translator.salesforce.execution.QueryExecutionImpl.execute(QueryExecutionImpl.java:249) at org.teiid.dqp.internal.datamgr.ConnectorWorkItem.execute(ConnectorWorkItem.java:402) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) 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:228) at com.sun.proxy.$Proxy46.execute(Unknown Source) at org.teiid.dqp.internal.process.DataTierTupleSource.getResults(DataTierTupleSource.java:302) at org.teiid.dqp.internal.process.DataTierTupleSource$1.call(DataTierTupleSource.java:108) at org.teiid.dqp.internal.process.DataTierTupleSource$1.call(DataTierTupleSource.java:104) at java.util.concurrent.FutureTask.run(FutureTask.java:266) at org.teiid.dqp.internal.process.FutureWork.run(FutureWork.java:59) at org.teiid.dqp.internal.process.DQPWorkContext.runInContext(DQPWorkContext.java:281) at org.teiid.dqp.internal.process.ThreadReuseExecutor$RunnableWrapper.run(ThreadReuseExecutor.java:124) at org.teiid.dqp.internal.process.ThreadReuseExecutor$2.run(ThreadReuseExecutor.java:212) 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: [MalformedQueryFault [ApiQueryFault [ApiFault exceptionCode='MALFORMED_QUERY' exceptionMessage='Implementation restriction: ContentDocumentLink requires a filter by a single Id on ContentDocumentId or LinkedEntityId using the equals operator or multiple Id's using the IN operator.' ] row='-1' column='-1' ] ] at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method) at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:62) at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45) at java.lang.reflect.Constructor.newInstance(Constructor.java:423) at java.lang.Class.newInstance(Class.java:442) at com.sforce.ws.bind.TypeMapper.readSingle(TypeMapper.java:652) at com.sforce.ws.bind.TypeMapper.readObject(TypeMapper.java:529) at com.sforce.ws.transport.SoapConnection.parseDetail(SoapConnection.java:230) at com.sforce.ws.transport.SoapConnection.createException(SoapConnection.java:204) at com.sforce.ws.transport.SoapConnection.receive(SoapConnection.java:150) at com.sforce.ws.transport.SoapConnection.send(SoapConnection.java:99) at com.sforce.soap.partner.PartnerConnection.query(PartnerConnection.java:1078) at org.teiid.salesforce.BaseSalesforceConnection.query(BaseSalesforceConnection.java:193) ... 19 more{code}
> though the native query works:
> {code:sql}
> select w.* from (call sf34.native('search;SELECT Id, LinkedEntityId, ContentDocumentId, IsDeleted, ShareType, Visibility FROM ContentDocumentLink WHERE ContentDocumentId = ''0691t000002aeKaAAI''', null)) as w ;; {code}
--
This message was sent by Atlassian Jira
(v7.13.8#713008)
5 years, 4 months
[JBoss JIRA] (TEIID-6010) Salesforce: an implementation restriction when querying ContentDocumentLink table
by Steven Hawkins (Jira)
[ https://issues.redhat.com/browse/TEIID-6010?page=com.atlassian.jira.plugi... ]
Steven Hawkins resolved TEIID-6010.
-----------------------------------
Resolution: Duplicate Issue
Marking as a duplicate of TEIID-5988
> Salesforce: an implementation restriction when querying ContentDocumentLink table
> ---------------------------------------------------------------------------------
>
> Key: TEIID-6010
> URL: https://issues.redhat.com/browse/TEIID-6010
> Project: Teiid
> Issue Type: Bug
> Components: Salesforce Connector
> Affects Versions: 14.0
> Reporter: Dmitrii Pogorelov
> Assignee: Steven Hawkins
> Priority: Major
>
> when running the following query:
> {code:sql}
> SELECT "Id", "LinkedEntityId", "ContentDocumentId", "IsDeleted", "ShareType", "Visibility"
> FROM "sf34.ContentDocumentLink"
> WHERE "ContentDocumentId" = '0691t000002aeKaAAI' ;; {code}
> Teiid throws out the stack trace:
> {code:java}
> 2020-08-10 14:11:56,721 WARN [org.teiid.CONNECTOR] (Worker2_QueryProcessorQueue33) SSrs8BwlD5AI Connector worker process failed for atomic-request=SSrs8BwlD5AI.14.0.0: org.teiid.translator.TranslatorException at org.teiid.salesforce.BaseSalesforceConnection.query(BaseSalesforceConnection.java:198) at org.teiid.translator.salesforce.execution.QueryExecutionImpl.execute(QueryExecutionImpl.java:249) at org.teiid.dqp.internal.datamgr.ConnectorWorkItem.execute(ConnectorWorkItem.java:402) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) 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:228) at com.sun.proxy.$Proxy46.execute(Unknown Source) at org.teiid.dqp.internal.process.DataTierTupleSource.getResults(DataTierTupleSource.java:302) at org.teiid.dqp.internal.process.DataTierTupleSource$1.call(DataTierTupleSource.java:108) at org.teiid.dqp.internal.process.DataTierTupleSource$1.call(DataTierTupleSource.java:104) at java.util.concurrent.FutureTask.run(FutureTask.java:266) at org.teiid.dqp.internal.process.FutureWork.run(FutureWork.java:59) at org.teiid.dqp.internal.process.DQPWorkContext.runInContext(DQPWorkContext.java:281) at org.teiid.dqp.internal.process.ThreadReuseExecutor$RunnableWrapper.run(ThreadReuseExecutor.java:124) at org.teiid.dqp.internal.process.ThreadReuseExecutor$2.run(ThreadReuseExecutor.java:212) 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: [MalformedQueryFault [ApiQueryFault [ApiFault exceptionCode='MALFORMED_QUERY' exceptionMessage='Implementation restriction: ContentDocumentLink requires a filter by a single Id on ContentDocumentId or LinkedEntityId using the equals operator or multiple Id's using the IN operator.' ] row='-1' column='-1' ] ] at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method) at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:62) at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45) at java.lang.reflect.Constructor.newInstance(Constructor.java:423) at java.lang.Class.newInstance(Class.java:442) at com.sforce.ws.bind.TypeMapper.readSingle(TypeMapper.java:652) at com.sforce.ws.bind.TypeMapper.readObject(TypeMapper.java:529) at com.sforce.ws.transport.SoapConnection.parseDetail(SoapConnection.java:230) at com.sforce.ws.transport.SoapConnection.createException(SoapConnection.java:204) at com.sforce.ws.transport.SoapConnection.receive(SoapConnection.java:150) at com.sforce.ws.transport.SoapConnection.send(SoapConnection.java:99) at com.sforce.soap.partner.PartnerConnection.query(PartnerConnection.java:1078) at org.teiid.salesforce.BaseSalesforceConnection.query(BaseSalesforceConnection.java:193) ... 19 more{code}
> though the native query works:
> {code:sql}
> select w.* from (call sf34.native('search;SELECT Id, LinkedEntityId, ContentDocumentId, IsDeleted, ShareType, Visibility FROM ContentDocumentLink WHERE ContentDocumentId = ''0691t000002aeKaAAI''', null)) as w ;; {code}
--
This message was sent by Atlassian Jira
(v7.13.8#713008)
5 years, 4 months
[JBoss JIRA] (TEIID-6010) Salesforce: an implementation restriction when querying ContentDocumentLink table
by Steven Hawkins (Jira)
[ https://issues.redhat.com/browse/TEIID-6010?page=com.atlassian.jira.plugi... ]
Steven Hawkins reopened TEIID-6010:
-----------------------------------
> Salesforce: an implementation restriction when querying ContentDocumentLink table
> ---------------------------------------------------------------------------------
>
> Key: TEIID-6010
> URL: https://issues.redhat.com/browse/TEIID-6010
> Project: Teiid
> Issue Type: Bug
> Components: Salesforce Connector
> Affects Versions: 14.0
> Reporter: Dmitrii Pogorelov
> Assignee: Steven Hawkins
> Priority: Major
>
> when running the following query:
> {code:sql}
> SELECT "Id", "LinkedEntityId", "ContentDocumentId", "IsDeleted", "ShareType", "Visibility"
> FROM "sf34.ContentDocumentLink"
> WHERE "ContentDocumentId" = '0691t000002aeKaAAI' ;; {code}
> Teiid throws out the stack trace:
> {code:java}
> 2020-08-10 14:11:56,721 WARN [org.teiid.CONNECTOR] (Worker2_QueryProcessorQueue33) SSrs8BwlD5AI Connector worker process failed for atomic-request=SSrs8BwlD5AI.14.0.0: org.teiid.translator.TranslatorException at org.teiid.salesforce.BaseSalesforceConnection.query(BaseSalesforceConnection.java:198) at org.teiid.translator.salesforce.execution.QueryExecutionImpl.execute(QueryExecutionImpl.java:249) at org.teiid.dqp.internal.datamgr.ConnectorWorkItem.execute(ConnectorWorkItem.java:402) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) 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:228) at com.sun.proxy.$Proxy46.execute(Unknown Source) at org.teiid.dqp.internal.process.DataTierTupleSource.getResults(DataTierTupleSource.java:302) at org.teiid.dqp.internal.process.DataTierTupleSource$1.call(DataTierTupleSource.java:108) at org.teiid.dqp.internal.process.DataTierTupleSource$1.call(DataTierTupleSource.java:104) at java.util.concurrent.FutureTask.run(FutureTask.java:266) at org.teiid.dqp.internal.process.FutureWork.run(FutureWork.java:59) at org.teiid.dqp.internal.process.DQPWorkContext.runInContext(DQPWorkContext.java:281) at org.teiid.dqp.internal.process.ThreadReuseExecutor$RunnableWrapper.run(ThreadReuseExecutor.java:124) at org.teiid.dqp.internal.process.ThreadReuseExecutor$2.run(ThreadReuseExecutor.java:212) 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: [MalformedQueryFault [ApiQueryFault [ApiFault exceptionCode='MALFORMED_QUERY' exceptionMessage='Implementation restriction: ContentDocumentLink requires a filter by a single Id on ContentDocumentId or LinkedEntityId using the equals operator or multiple Id's using the IN operator.' ] row='-1' column='-1' ] ] at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method) at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:62) at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45) at java.lang.reflect.Constructor.newInstance(Constructor.java:423) at java.lang.Class.newInstance(Class.java:442) at com.sforce.ws.bind.TypeMapper.readSingle(TypeMapper.java:652) at com.sforce.ws.bind.TypeMapper.readObject(TypeMapper.java:529) at com.sforce.ws.transport.SoapConnection.parseDetail(SoapConnection.java:230) at com.sforce.ws.transport.SoapConnection.createException(SoapConnection.java:204) at com.sforce.ws.transport.SoapConnection.receive(SoapConnection.java:150) at com.sforce.ws.transport.SoapConnection.send(SoapConnection.java:99) at com.sforce.soap.partner.PartnerConnection.query(PartnerConnection.java:1078) at org.teiid.salesforce.BaseSalesforceConnection.query(BaseSalesforceConnection.java:193) ... 19 more{code}
> though the native query works:
> {code:sql}
> select w.* from (call sf34.native('search;SELECT Id, LinkedEntityId, ContentDocumentId, IsDeleted, ShareType, Visibility FROM ContentDocumentLink WHERE ContentDocumentId = ''0691t000002aeKaAAI''', null)) as w ;; {code}
--
This message was sent by Atlassian Jira
(v7.13.8#713008)
5 years, 4 months
[JBoss JIRA] (TEIID-6010) Salesforce: an implementation restriction when querying ContentDocumentLink table
by Dmitrii Pogorelov (Jira)
[ https://issues.redhat.com/browse/TEIID-6010?page=com.atlassian.jira.plugi... ]
Dmitrii Pogorelov commented on TEIID-6010:
------------------------------------------
[~shawkins] yes, it helped! The TEIID-5988 issue solves the problem. Thx Steven!
> Salesforce: an implementation restriction when querying ContentDocumentLink table
> ---------------------------------------------------------------------------------
>
> Key: TEIID-6010
> URL: https://issues.redhat.com/browse/TEIID-6010
> Project: Teiid
> Issue Type: Bug
> Components: Salesforce Connector
> Affects Versions: 14.0
> Reporter: Dmitrii Pogorelov
> Assignee: Steven Hawkins
> Priority: Major
>
> when running the following query:
> {code:sql}
> SELECT "Id", "LinkedEntityId", "ContentDocumentId", "IsDeleted", "ShareType", "Visibility"
> FROM "sf34.ContentDocumentLink"
> WHERE "ContentDocumentId" = '0691t000002aeKaAAI' ;; {code}
> Teiid throws out the stack trace:
> {code:java}
> 2020-08-10 14:11:56,721 WARN [org.teiid.CONNECTOR] (Worker2_QueryProcessorQueue33) SSrs8BwlD5AI Connector worker process failed for atomic-request=SSrs8BwlD5AI.14.0.0: org.teiid.translator.TranslatorException at org.teiid.salesforce.BaseSalesforceConnection.query(BaseSalesforceConnection.java:198) at org.teiid.translator.salesforce.execution.QueryExecutionImpl.execute(QueryExecutionImpl.java:249) at org.teiid.dqp.internal.datamgr.ConnectorWorkItem.execute(ConnectorWorkItem.java:402) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) 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:228) at com.sun.proxy.$Proxy46.execute(Unknown Source) at org.teiid.dqp.internal.process.DataTierTupleSource.getResults(DataTierTupleSource.java:302) at org.teiid.dqp.internal.process.DataTierTupleSource$1.call(DataTierTupleSource.java:108) at org.teiid.dqp.internal.process.DataTierTupleSource$1.call(DataTierTupleSource.java:104) at java.util.concurrent.FutureTask.run(FutureTask.java:266) at org.teiid.dqp.internal.process.FutureWork.run(FutureWork.java:59) at org.teiid.dqp.internal.process.DQPWorkContext.runInContext(DQPWorkContext.java:281) at org.teiid.dqp.internal.process.ThreadReuseExecutor$RunnableWrapper.run(ThreadReuseExecutor.java:124) at org.teiid.dqp.internal.process.ThreadReuseExecutor$2.run(ThreadReuseExecutor.java:212) 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: [MalformedQueryFault [ApiQueryFault [ApiFault exceptionCode='MALFORMED_QUERY' exceptionMessage='Implementation restriction: ContentDocumentLink requires a filter by a single Id on ContentDocumentId or LinkedEntityId using the equals operator or multiple Id's using the IN operator.' ] row='-1' column='-1' ] ] at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method) at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:62) at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45) at java.lang.reflect.Constructor.newInstance(Constructor.java:423) at java.lang.Class.newInstance(Class.java:442) at com.sforce.ws.bind.TypeMapper.readSingle(TypeMapper.java:652) at com.sforce.ws.bind.TypeMapper.readObject(TypeMapper.java:529) at com.sforce.ws.transport.SoapConnection.parseDetail(SoapConnection.java:230) at com.sforce.ws.transport.SoapConnection.createException(SoapConnection.java:204) at com.sforce.ws.transport.SoapConnection.receive(SoapConnection.java:150) at com.sforce.ws.transport.SoapConnection.send(SoapConnection.java:99) at com.sforce.soap.partner.PartnerConnection.query(PartnerConnection.java:1078) at org.teiid.salesforce.BaseSalesforceConnection.query(BaseSalesforceConnection.java:193) ... 19 more{code}
> though the native query works:
> {code:sql}
> select w.* from (call sf34.native('search;SELECT Id, LinkedEntityId, ContentDocumentId, IsDeleted, ShareType, Visibility FROM ContentDocumentLink WHERE ContentDocumentId = ''0691t000002aeKaAAI''', null)) as w ;; {code}
--
This message was sent by Atlassian Jira
(v7.13.8#713008)
5 years, 4 months
[JBoss JIRA] (TEIID-6010) Salesforce: an implementation restriction when querying ContentDocumentLink table
by Dmitrii Pogorelov (Jira)
[ https://issues.redhat.com/browse/TEIID-6010?page=com.atlassian.jira.plugi... ]
Dmitrii Pogorelov commented on TEIID-6010:
------------------------------------------
[~shawkins] let me adapt changes from the TEIID-5988 issue and check...
> Salesforce: an implementation restriction when querying ContentDocumentLink table
> ---------------------------------------------------------------------------------
>
> Key: TEIID-6010
> URL: https://issues.redhat.com/browse/TEIID-6010
> Project: Teiid
> Issue Type: Bug
> Components: Salesforce Connector
> Affects Versions: 14.0
> Reporter: Dmitrii Pogorelov
> Assignee: Steven Hawkins
> Priority: Major
>
> when running the following query:
> {code:sql}
> SELECT "Id", "LinkedEntityId", "ContentDocumentId", "IsDeleted", "ShareType", "Visibility"
> FROM "sf34.ContentDocumentLink"
> WHERE "ContentDocumentId" = '0691t000002aeKaAAI' ;; {code}
> Teiid throws out the stack trace:
> {code:java}
> 2020-08-10 14:11:56,721 WARN [org.teiid.CONNECTOR] (Worker2_QueryProcessorQueue33) SSrs8BwlD5AI Connector worker process failed for atomic-request=SSrs8BwlD5AI.14.0.0: org.teiid.translator.TranslatorException at org.teiid.salesforce.BaseSalesforceConnection.query(BaseSalesforceConnection.java:198) at org.teiid.translator.salesforce.execution.QueryExecutionImpl.execute(QueryExecutionImpl.java:249) at org.teiid.dqp.internal.datamgr.ConnectorWorkItem.execute(ConnectorWorkItem.java:402) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) 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:228) at com.sun.proxy.$Proxy46.execute(Unknown Source) at org.teiid.dqp.internal.process.DataTierTupleSource.getResults(DataTierTupleSource.java:302) at org.teiid.dqp.internal.process.DataTierTupleSource$1.call(DataTierTupleSource.java:108) at org.teiid.dqp.internal.process.DataTierTupleSource$1.call(DataTierTupleSource.java:104) at java.util.concurrent.FutureTask.run(FutureTask.java:266) at org.teiid.dqp.internal.process.FutureWork.run(FutureWork.java:59) at org.teiid.dqp.internal.process.DQPWorkContext.runInContext(DQPWorkContext.java:281) at org.teiid.dqp.internal.process.ThreadReuseExecutor$RunnableWrapper.run(ThreadReuseExecutor.java:124) at org.teiid.dqp.internal.process.ThreadReuseExecutor$2.run(ThreadReuseExecutor.java:212) 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: [MalformedQueryFault [ApiQueryFault [ApiFault exceptionCode='MALFORMED_QUERY' exceptionMessage='Implementation restriction: ContentDocumentLink requires a filter by a single Id on ContentDocumentId or LinkedEntityId using the equals operator or multiple Id's using the IN operator.' ] row='-1' column='-1' ] ] at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method) at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:62) at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45) at java.lang.reflect.Constructor.newInstance(Constructor.java:423) at java.lang.Class.newInstance(Class.java:442) at com.sforce.ws.bind.TypeMapper.readSingle(TypeMapper.java:652) at com.sforce.ws.bind.TypeMapper.readObject(TypeMapper.java:529) at com.sforce.ws.transport.SoapConnection.parseDetail(SoapConnection.java:230) at com.sforce.ws.transport.SoapConnection.createException(SoapConnection.java:204) at com.sforce.ws.transport.SoapConnection.receive(SoapConnection.java:150) at com.sforce.ws.transport.SoapConnection.send(SoapConnection.java:99) at com.sforce.soap.partner.PartnerConnection.query(PartnerConnection.java:1078) at org.teiid.salesforce.BaseSalesforceConnection.query(BaseSalesforceConnection.java:193) ... 19 more{code}
> though the native query works:
> {code:sql}
> select w.* from (call sf34.native('search;SELECT Id, LinkedEntityId, ContentDocumentId, IsDeleted, ShareType, Visibility FROM ContentDocumentLink WHERE ContentDocumentId = ''0691t000002aeKaAAI''', null)) as w ;; {code}
--
This message was sent by Atlassian Jira
(v7.13.8#713008)
5 years, 4 months
[JBoss JIRA] (TEIID-6010) Salesforce: an implementation restriction when querying ContentDocumentLink table
by Steven Hawkins (Jira)
[ https://issues.redhat.com/browse/TEIID-6010?page=com.atlassian.jira.plugi... ]
Steven Hawkins commented on TEIID-6010:
---------------------------------------
For me using all defaults with 34 connectivity get the following imported metadata:
{code:sql}
CREATE FOREIGN TABLE ContentDocumentLink (
Id string(18) NOT NULL AUTO_INCREMENT DEFAULT 'sf default' OPTIONS (NAMEINSOURCE 'Id', UPDATABLE FALSE, NATIVE_TYPE 'id', "teiid_sf:Calculated" 'false', "teiid_sf:Custom" 'false', "teiid_sf:Defaulted on Create" 'true'),
LinkedEntityId string(18) NOT NULL OPTIONS (NAMEINSOURCE 'LinkedEntityId', NATIVE_TYPE 'reference', "teiid_sf:Calculated" 'false', "teiid_sf:Custom" 'false', "teiid_sf:Defaulted on Create" 'false'),
ContentDocumentId string(18) NOT NULL OPTIONS (NAMEINSOURCE 'ContentDocumentId', NATIVE_TYPE 'reference', "teiid_sf:Calculated" 'false', "teiid_sf:Custom" 'false', "teiid_sf:Defaulted on Create" 'false'),
IsDeleted boolean NOT NULL DEFAULT 'sf default' OPTIONS (NAMEINSOURCE 'IsDeleted', UPDATABLE FALSE, NATIVE_TYPE '_boolean', "teiid_sf:Calculated" 'false', "teiid_sf:Custom" 'false', "teiid_sf:Defaulted on Create" 'true'),
ShareType string(40) OPTIONS (NAMEINSOURCE 'ShareType', NATIVE_TYPE 'restrictedpicklist', "teiid_sf:Calculated" 'false', "teiid_sf:Custom" 'false', "teiid_sf:Defaulted on Create" 'false', "teiid_sf:Picklist Values" 'V,C,I'),
Visibility string(40) OPTIONS (NAMEINSOURCE 'Visibility', NATIVE_TYPE 'restrictedpicklist', "teiid_sf:Calculated" 'false', "teiid_sf:Custom" 'false', "teiid_sf:Defaulted on Create" 'false', "teiid_sf:Picklist Values" 'AllUsers,InternalUsers,SharedUsers'),
...
{code}
The same pushdown query/plan:
{code}
OPTIMIZATION COMPLETE:
PROCESSOR PLAN:
AccessNode(0) output=[SalesForceModel.ContentDocumentLink.Id, SalesForceModel.ContentDocumentLink.LinkedEntityId, SalesForceModel.ContentDocumentLink.ContentDocumentId, SalesForceModel.ContentDocumentLink.IsDeleted, SalesForceModel.ContentDocumentLink.ShareType, SalesForceModel.ContentDocumentLink.Visibility] SELECT g_0.Id, g_0.LinkedEntityId, g_0.ContentDocumentId, g_0.IsDeleted, g_0.ShareType, g_0.Visibility FROM SalesForceModel.ContentDocumentLink AS g_0 WHERE g_0.ContentDocumentId = '0691t000002aeKaAAI'
{code}
And the soql query:
{code}
SELECT Id, LinkedEntityId, ContentDocumentId, IsDeleted, ShareType, Visibility FROM ContentDocumentLink WHERE ContentDocumentId = '0691t000002aeKaAAI'
{code}
The difference is that this is on 15/master after TEIID-5988.
On Teiid 14 before that change the soql query has qualifications - "WHERE ContentDocumentLink.ContentDocumentId ="
Which for some reason undocumented reason Salesforce treats differently, then the unqualified form. Can you confirm that this is already addressed in Teiid 15 for you?
> Salesforce: an implementation restriction when querying ContentDocumentLink table
> ---------------------------------------------------------------------------------
>
> Key: TEIID-6010
> URL: https://issues.redhat.com/browse/TEIID-6010
> Project: Teiid
> Issue Type: Bug
> Components: Salesforce Connector
> Affects Versions: 14.0
> Reporter: Dmitrii Pogorelov
> Assignee: Steven Hawkins
> Priority: Major
>
> when running the following query:
> {code:sql}
> SELECT "Id", "LinkedEntityId", "ContentDocumentId", "IsDeleted", "ShareType", "Visibility"
> FROM "sf34.ContentDocumentLink"
> WHERE "ContentDocumentId" = '0691t000002aeKaAAI' ;; {code}
> Teiid throws out the stack trace:
> {code:java}
> 2020-08-10 14:11:56,721 WARN [org.teiid.CONNECTOR] (Worker2_QueryProcessorQueue33) SSrs8BwlD5AI Connector worker process failed for atomic-request=SSrs8BwlD5AI.14.0.0: org.teiid.translator.TranslatorException at org.teiid.salesforce.BaseSalesforceConnection.query(BaseSalesforceConnection.java:198) at org.teiid.translator.salesforce.execution.QueryExecutionImpl.execute(QueryExecutionImpl.java:249) at org.teiid.dqp.internal.datamgr.ConnectorWorkItem.execute(ConnectorWorkItem.java:402) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) 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:228) at com.sun.proxy.$Proxy46.execute(Unknown Source) at org.teiid.dqp.internal.process.DataTierTupleSource.getResults(DataTierTupleSource.java:302) at org.teiid.dqp.internal.process.DataTierTupleSource$1.call(DataTierTupleSource.java:108) at org.teiid.dqp.internal.process.DataTierTupleSource$1.call(DataTierTupleSource.java:104) at java.util.concurrent.FutureTask.run(FutureTask.java:266) at org.teiid.dqp.internal.process.FutureWork.run(FutureWork.java:59) at org.teiid.dqp.internal.process.DQPWorkContext.runInContext(DQPWorkContext.java:281) at org.teiid.dqp.internal.process.ThreadReuseExecutor$RunnableWrapper.run(ThreadReuseExecutor.java:124) at org.teiid.dqp.internal.process.ThreadReuseExecutor$2.run(ThreadReuseExecutor.java:212) 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: [MalformedQueryFault [ApiQueryFault [ApiFault exceptionCode='MALFORMED_QUERY' exceptionMessage='Implementation restriction: ContentDocumentLink requires a filter by a single Id on ContentDocumentId or LinkedEntityId using the equals operator or multiple Id's using the IN operator.' ] row='-1' column='-1' ] ] at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method) at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:62) at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45) at java.lang.reflect.Constructor.newInstance(Constructor.java:423) at java.lang.Class.newInstance(Class.java:442) at com.sforce.ws.bind.TypeMapper.readSingle(TypeMapper.java:652) at com.sforce.ws.bind.TypeMapper.readObject(TypeMapper.java:529) at com.sforce.ws.transport.SoapConnection.parseDetail(SoapConnection.java:230) at com.sforce.ws.transport.SoapConnection.createException(SoapConnection.java:204) at com.sforce.ws.transport.SoapConnection.receive(SoapConnection.java:150) at com.sforce.ws.transport.SoapConnection.send(SoapConnection.java:99) at com.sforce.soap.partner.PartnerConnection.query(PartnerConnection.java:1078) at org.teiid.salesforce.BaseSalesforceConnection.query(BaseSalesforceConnection.java:193) ... 19 more{code}
> though the native query works:
> {code:sql}
> select w.* from (call sf34.native('search;SELECT Id, LinkedEntityId, ContentDocumentId, IsDeleted, ShareType, Visibility FROM ContentDocumentLink WHERE ContentDocumentId = ''0691t000002aeKaAAI''', null)) as w ;; {code}
--
This message was sent by Atlassian Jira
(v7.13.8#713008)
5 years, 4 months
[JBoss JIRA] (TEIID-6017) Not able to connect GCP bucket using S3 translator
by Steven Hawkins (Jira)
[ https://issues.redhat.com/browse/TEIID-6017?page=com.atlassian.jira.plugi... ]
Steven Hawkins resolved TEIID-6017.
-----------------------------------
Resolution: Explained
>From this and other issues it's clear that you are trying to do a lot all at once with a low familiarity with Teiid. It would help if you could start from either a smaller working example or build up incrementally - so that you can isolate what exactly isn't working for you.
For example you can start with a dummy vdb to verify you can connect and query. Then you can add a source model to your vdb and verify that it error out when looking for the datasource, then you can add your datasource.
Example dummy vdb in ddl:
{code:java}
CREATE DATABASE DUMMY;
USE DATABASE DUMMY;
CREATE VIRTUAL SCHEMA S1;
SET SCHEMA S1;
CREATE VIEW V as SELECT 'HELLO WORLD';
{code}
> *_"_*_org.teiid.jdbc.TeiidSQLException: TEIID20018 Unable to find a component used authenticate on to Teiid_*_"_*
That is not related to anything about sources or translators. It probably indicates something is wrong with the Teiid install - did you use a full kit including wildflyor an overlay? If an overlay, which teiid version and wildfly version - as they are not independent.
> Not able to connect GCP bucket using S3 translator
> --------------------------------------------------
>
> Key: TEIID-6017
> URL: https://issues.redhat.com/browse/TEIID-6017
> Project: Teiid
> Issue Type: Feature Request
> Reporter: Nayan Bija
> Assignee: Steven Hawkins
> Priority: Major
>
> As suggested in the ticket TEIID-6015
> We have tried to connect the GCP bucket using the S3 translator(not amazon-s3).
> As mentioned, S3 doesn't support google authentication,
> so we have created access key and secret key of Google bucket by logging into the GCP accoudnt.
> We have followed below steps to create access key and secret key.
> _*Storage->Setting->INTEROPERABILITY-> Service account HMAC->Create a key for service account"*_
>
> We have also created below adapter file and VDB but still, we are not able to connect to GCP.
>
> <resource-adapter id="amazon-s3-custom">
> <module slot="main" id="org.jboss.teiid.resource-adapter.s3"/>
> <transaction-support>NoTransaction</transaction-support>
> <connection-definitions>
> <connection-definition class-name="org.teiid.resource.adapter.s3.S3ManagedConnectionFactory" jndi-name="java:/s3DS" enabled="true" use-java-context="true" pool-name="teiid-s3-ds">
> <config-property name="bucket">abc</config-property>
> <config-property name="endpoint">[https://storage.googleapis.com|https://storage.googleapis.com/]</config-property>
> <config-property name="secretKey">xxx</config-property>
> <config-property name="accessKey">xxx</config-property>
> </connection-definition>
> </connection-definitions>
> </resource-adapter>
>
>
>
> VDB
> ----
>
> <?xml version="1.0"?>
> <vdb name="gcp" version="1">
> <connection-type>BY_VERSION</connection-type>
> <model name="s3">
> <source name="web-connector" translator-name="amazon-s3-custom" connection-jndi-name="java:/s3DS"/>
> </model>
> <translator name="amazon-s3-custom" type="amazon-s3">
> <property name="accesskey" value="xxx"/>
> <property name="secretkey" value="xxx"/>
> <property name="bucket" value="abc"/>
> </translator>
> </vdb
>
>
> as we tried to connect we are getting below error.
>
> *_"_*_org.teiid.jdbc.TeiidSQLException: TEIID20018 Unable to find a component used authenticate on to Teiid_*_"_*
>
> In the above configuration, where should we mention the File name?
> As I have read the properties in the documentation, I could see bucket property, where we can add a bucket name. but where should we add the file name which is present in the bucket?
>
> Could you please help us with it?
>
>
>
>
--
This message was sent by Atlassian Jira
(v7.13.8#713008)
5 years, 4 months
[JBoss JIRA] (TEIID-6010) Salesforce: an implementation restriction when querying ContentDocumentLink table
by Dmitrii Pogorelov (Jira)
[ https://issues.redhat.com/browse/TEIID-6010?page=com.atlassian.jira.plugi... ]
Dmitrii Pogorelov commented on TEIID-6010:
------------------------------------------
[~shawkins] it still fails without limit clause (SQuirrel adds the limit automatically):
{code:java}
---------------------------------------------------------------------------- OPTIMIZATION COMPLETE: PROCESSOR PLAN: AccessNode(0) output=[sf34.ContentDocumentLink.Id, sf34.ContentDocumentLink.LinkedEntityId, sf34.ContentDocumentLink.ContentDocumentId, sf34.ContentDocumentLink.IsDeleted, sf34.ContentDocumentLink.ShareType, sf34.ContentDocumentLink.Visibility] SELECT g_0.Id, g_0.LinkedEntityId, g_0.ContentDocumentId, g_0.IsDeleted, g_0.ShareType, g_0.Visibility FROM sf34.ContentDocumentLink AS g_0 WHERE g_0.ContentDocumentId = '0691t000002aeKaAAI' ============================================================================ 2020-08-13 14:36:49,765 WARN [org.teiid.CONNECTOR] (Worker6_QueryProcessorQueue12) +DOVlogY13Ra Connector worker process failed for atomic-request=+DOVlogY13Ra.2.0.2: org.teiid.translator.TranslatorException at org.teiid.salesforce.BaseSalesforceConnection.query(BaseSalesforceConnection.java:198) at org.teiid.translator.salesforce.execution.QueryExecutionImpl.execute(QueryExecutionImpl.java:249) at org.teiid.dqp.internal.datamgr.ConnectorWorkItem.execute(ConnectorWorkItem.java:402) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) 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:228) at com.sun.proxy.$Proxy46.execute(Unknown Source) at org.teiid.dqp.internal.process.DataTierTupleSource.getResults(DataTierTupleSource.java:302) at org.teiid.dqp.internal.process.DataTierTupleSource$1.call(DataTierTupleSource.java:108) at org.teiid.dqp.internal.process.DataTierTupleSource$1.call(DataTierTupleSource.java:104) at java.util.concurrent.FutureTask.run(FutureTask.java:266) at org.teiid.dqp.internal.process.FutureWork.run(FutureWork.java:59) at org.teiid.dqp.internal.process.DQPWorkContext.runInContext(DQPWorkContext.java:281) at org.teiid.dqp.internal.process.ThreadReuseExecutor$RunnableWrapper.run(ThreadReuseExecutor.java:124) at org.teiid.dqp.internal.process.ThreadReuseExecutor$2.run(ThreadReuseExecutor.java:212) 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: [MalformedQueryFault [ApiQueryFault [ApiFault exceptionCode='MALFORMED_QUERY' exceptionMessage='Implementation restriction: ContentDocumentLink requires a filter by a single Id on ContentDocumentId or LinkedEntityId using the equals operator or multiple Id's using the IN operator.' ] row='-1' column='-1' ] ] at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method) at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:62) at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45) at java.lang.reflect.Constructor.newInstance(Constructor.java:423) at java.lang.Class.newInstance(Class.java:442) at com.sforce.ws.bind.TypeMapper.readSingle(TypeMapper.java:652) at com.sforce.ws.bind.TypeMapper.readObject(TypeMapper.java:529) at com.sforce.ws.transport.SoapConnection.parseDetail(SoapConnection.java:230)
at com.sforce.ws.transport.SoapConnection.createException(SoapConnection.java:204) at com.sforce.ws.transport.SoapConnection.receive(SoapConnection.java:150) at com.sforce.ws.transport.SoapConnection.send(SoapConnection.java:99) at com.sforce.soap.partner.PartnerConnection.query(PartnerConnection.java:1078) at org.teiid.salesforce.BaseSalesforceConnection.query(BaseSalesforceConnection.java:193) ... 19 more 2020-08-13 14:36:49,768 WARN [org.teiid.PROCESSOR] (Worker5_QueryProcessorQueue13) +DOVlogY13Ra TEIID30020 Processing exception for request +DOVlogY13Ra.2 'TEIID30504 sf34: null'. Originally TeiidProcessingException sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method). Enable more detailed logging to see the entire stacktrace. {code}
> Salesforce: an implementation restriction when querying ContentDocumentLink table
> ---------------------------------------------------------------------------------
>
> Key: TEIID-6010
> URL: https://issues.redhat.com/browse/TEIID-6010
> Project: Teiid
> Issue Type: Bug
> Components: Salesforce Connector
> Affects Versions: 14.0
> Reporter: Dmitrii Pogorelov
> Assignee: Steven Hawkins
> Priority: Major
>
> when running the following query:
> {code:sql}
> SELECT "Id", "LinkedEntityId", "ContentDocumentId", "IsDeleted", "ShareType", "Visibility"
> FROM "sf34.ContentDocumentLink"
> WHERE "ContentDocumentId" = '0691t000002aeKaAAI' ;; {code}
> Teiid throws out the stack trace:
> {code:java}
> 2020-08-10 14:11:56,721 WARN [org.teiid.CONNECTOR] (Worker2_QueryProcessorQueue33) SSrs8BwlD5AI Connector worker process failed for atomic-request=SSrs8BwlD5AI.14.0.0: org.teiid.translator.TranslatorException at org.teiid.salesforce.BaseSalesforceConnection.query(BaseSalesforceConnection.java:198) at org.teiid.translator.salesforce.execution.QueryExecutionImpl.execute(QueryExecutionImpl.java:249) at org.teiid.dqp.internal.datamgr.ConnectorWorkItem.execute(ConnectorWorkItem.java:402) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) 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:228) at com.sun.proxy.$Proxy46.execute(Unknown Source) at org.teiid.dqp.internal.process.DataTierTupleSource.getResults(DataTierTupleSource.java:302) at org.teiid.dqp.internal.process.DataTierTupleSource$1.call(DataTierTupleSource.java:108) at org.teiid.dqp.internal.process.DataTierTupleSource$1.call(DataTierTupleSource.java:104) at java.util.concurrent.FutureTask.run(FutureTask.java:266) at org.teiid.dqp.internal.process.FutureWork.run(FutureWork.java:59) at org.teiid.dqp.internal.process.DQPWorkContext.runInContext(DQPWorkContext.java:281) at org.teiid.dqp.internal.process.ThreadReuseExecutor$RunnableWrapper.run(ThreadReuseExecutor.java:124) at org.teiid.dqp.internal.process.ThreadReuseExecutor$2.run(ThreadReuseExecutor.java:212) 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: [MalformedQueryFault [ApiQueryFault [ApiFault exceptionCode='MALFORMED_QUERY' exceptionMessage='Implementation restriction: ContentDocumentLink requires a filter by a single Id on ContentDocumentId or LinkedEntityId using the equals operator or multiple Id's using the IN operator.' ] row='-1' column='-1' ] ] at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method) at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:62) at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45) at java.lang.reflect.Constructor.newInstance(Constructor.java:423) at java.lang.Class.newInstance(Class.java:442) at com.sforce.ws.bind.TypeMapper.readSingle(TypeMapper.java:652) at com.sforce.ws.bind.TypeMapper.readObject(TypeMapper.java:529) at com.sforce.ws.transport.SoapConnection.parseDetail(SoapConnection.java:230) at com.sforce.ws.transport.SoapConnection.createException(SoapConnection.java:204) at com.sforce.ws.transport.SoapConnection.receive(SoapConnection.java:150) at com.sforce.ws.transport.SoapConnection.send(SoapConnection.java:99) at com.sforce.soap.partner.PartnerConnection.query(PartnerConnection.java:1078) at org.teiid.salesforce.BaseSalesforceConnection.query(BaseSalesforceConnection.java:193) ... 19 more{code}
> though the native query works:
> {code:sql}
> select w.* from (call sf34.native('search;SELECT Id, LinkedEntityId, ContentDocumentId, IsDeleted, ShareType, Visibility FROM ContentDocumentLink WHERE ContentDocumentId = ''0691t000002aeKaAAI''', null)) as w ;; {code}
--
This message was sent by Atlassian Jira
(v7.13.8#713008)
5 years, 4 months