[teiid-issues] [JBoss JIRA] (TEIID-5856) Teiid generate wrong request to salesforce

Renat Eskenin (Jira) issues at jboss.org
Wed Nov 27 05:33:00 EST 2019


    [ https://issues.jboss.org/browse/TEIID-5856?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13818399#comment-13818399 ] 

Renat Eskenin commented on TEIID-5856:
--------------------------------------

Used ddl:

{code}
CREATE DATABASE db;
USE DATABASE db;
CREATE FOREIGN DATA WRAPPER salesforce;
CREATE FOREIGN DATA WRAPPER mysalesforce type salesforce OPTIONS (supportsOrderBy true);
CREATE SERVER salesforce FOREIGN DATA WRAPPER salesforce OPTIONS ("resource-name" 'salesforce');
CREATE SCHEMA sf SERVER salesforce;
IMPORT FROM SERVER salesforce INTO sf OPTIONS("importer.useFullSchemaName" 'false', "importer.NormalizeNames" 'false', "importer.modelAuditFields" 'true', "importer.importStatstics" 'true');
{code}

{code}
SELECT * FROM SYS.tables WHERE Name='Product_License__c'
{code}

{code}
 {
        "Description": null,
        "Cardinality": -1,
        "NameInSource": "Product_License__c",
        "Name": "Product_License__c",
        "UID": "tid:000005adccd6-9897fe32-00000545",
        "Type": "Table",
        "IsPhysical": true,
        "SupportsUpdates": true,
        "IsMaterialized": false,
        "VDBName": "db",
        "IsSystem": false,
        "SchemaUID": "tid:000005adccd6-00000e53-00000000",
        "SchemaName": "sf"
      }
{code}

SQL:

{code}
SELECT originalLicense.Id,originalLicense.Status__c,originalLicense.ReplacementLicenseID__c,originalLicense.LicenseId__c,originalLicense.vlic_Contract_Number__c,replacementLicense.LicenseId__c as replacementLicenseId ,replacementLicense.Id as replacementLicenseObjectId FROM Product_License__c originalLicense LEFT OUTER JOIN Product_License__c replacementLicense ON originalLicense.ReplacementLicenseID__c = replacementLicense.Id where originalLicense.vlic_Contract_Number__c = :contractNumber
{code}

PLAN

{code}
 ProjectNode
  + Relational Node ID:0
  + Output Columns:
    0: Id (string)
    1: Status__c (string)
    2: ReplacementLicenseID__c (string)
    3: LicenseId__c (string)
    4: vlic_Contract_Number__c (string)
    5: replacementLicenseId (string)
    6: replacementLicenseObjectId (string)
  + Cost Estimates:Estimated Node Cardinality: -1.0
  + Child 0:
    JoinNode
      + Relational Node ID:1
      + Output Columns:
        0: Id (string)
        1: Status__c (string)
        2: ReplacementLicenseID__c (string)
        3: LicenseId__c (string)
        4: vlic_Contract_Number__c (string)
        5: LicenseId__c (string)
        6: Id (string)
      + Cost Estimates:Estimated Node Cardinality: -1.0
      + Child 0:
        AccessNode
          + Relational Node ID:2
          + Output Columns:
            0: ReplacementLicenseID__c (string)
            1: Id (string)
            2: Status__c (string)
            3: LicenseId__c (string)
            4: vlic_Contract_Number__c (string)
          + Cost Estimates:Estimated Node Cardinality: -1.0
          + Query:SELECT sf.Product_License__c.ReplacementLicenseID__c, sf.Product_License__c.Id, sf.Product_License__c.Status__c, sf.Product_License__c.LicenseId__c, sf.Product_License__c.vlic_Contract_Number__c FROM sf.Product_License__c WHERE sf.Product_License__c.vlic_Contract_Number__c = ?
          + Model Name:sf
      + Child 1:
        AccessNode
          + Relational Node ID:3
          + Output Columns:
            0: Id (string)
            1: LicenseId__c (string)
          + Cost Estimates:Estimated Node Cardinality: -1.0
          + Query:SELECT sf.Product_License__c.Id, sf.Product_License__c.LicenseId__c FROM sf.Product_License__c
          + Model Name:sf
      + Join Strategy:ENHANCED SORT JOIN (SORT/SORT)
      + Join Type:LEFT OUTER JOIN
      + Join Criteria:originalLicense.ReplacementLicenseID__c=replacementLicense.Id
  + Select Columns:
    0: originalLicense.Id
    1: originalLicense.Status__c
    2: originalLicense.ReplacementLicenseID__c
    3: originalLicense.LicenseId__c
    4: originalLicense.vlic_Contract_Number__c
    5: replacementLicense.LicenseId__c AS replacementLicenseId
    6: replacementLicense.Id AS replacementLicenseObjectId
  + Data Bytes Sent:7
  + Planning Time:6
{code}


> Teiid generate wrong request to salesforce
> ------------------------------------------
>
>                 Key: TEIID-5856
>                 URL: https://issues.jboss.org/browse/TEIID-5856
>             Project: Teiid
>          Issue Type: Bug
>          Components: Salesforce Connector
>         Environment: spring-boot teiid salesforce-connector
>            Reporter: Renat Eskenin
>            Assignee: Steven Hawkins
>            Priority: Major
>
> When i call request to salesforce teiid get very long wrong request and then OOM, because teiid request all data in salesforce object.



--
This message was sent by Atlassian Jira
(v7.13.8#713008)


More information about the teiid-issues mailing list