Details

    • Steps to Reproduce:
      Hide

      1. Spring-boot-teiid application
      2. First SQL

      SELECT
                t.Id                        AS Task_id
              , t.LastStatusChangeDate__c   AS Task_time
              , t.WhoId                     AS Task_whoId
              , t.OwnerId                   AS Task_ownerId
              , u.Name                      AS Task_agent
              , t.Request_Type__c           AS Task_department
      FROM
                Task AS t
      LEFT OUTER JOIN salesforce.User AS u ON u.Id = t.OwnerId
      WHERE
              t.Type='Online chat'
      AND t.createdById = '00532000005hioBAAQ'
      AND t.ActivityDate > '2020-08-29' 
      ORDER BY 
       t.LastStatusChangeDate__c DESC NULLS FIRST
      LIMIT 100
      OFFSET 0
      

      Plan

      PLAN:
      
      ProjectNode
        + Relational Node ID:0
        + Output Columns:
          0: Task_id (string)
          1: Task_time (timestamp)
          2: Task_whoId (string)
          3: Task_ownerId (string)
          4: Task_agent (string)
          5: Task_department (string)
        + Cost Estimates:Estimated Node Cardinality: 100.0
        + Child 0:
          LimitNode
            + Relational Node ID:1
            + Output Columns:
              0: Id (string)
              1: LastStatusChangeDate__c (timestamp)
              2: WhoId (string)
              3: OwnerId (string)
              4: Name (string)
              5: Request_Type__c (string)
            + Cost Estimates:Estimated Node Cardinality: 100.0
            + Child 0:
              SortNode
                + Relational Node ID:2
                + Output Columns:
                  0: Id (string)
                  1: LastStatusChangeDate__c (timestamp)
                  2: WhoId (string)
                  3: OwnerId (string)
                  4: Name (string)
                  5: Request_Type__c (string)
                + Cost Estimates:Estimated Node Cardinality: -1.0
                + Child 0:
                  JoinNode
                    + Relational Node ID:3
                    + Output Columns:
                      0: Id (string)
                      1: LastStatusChangeDate__c (timestamp)
                      2: WhoId (string)
                      3: OwnerId (string)
                      4: Name (string)
                      5: Request_Type__c (string)
                    + Cost Estimates:Estimated Node Cardinality: -1.0
                    + Child 0:
                      LimitNode
                        + Relational Node ID:4
                        + Output Columns:
                          0: OwnerId (string)
                          1: Id (string)
                          2: LastStatusChangeDate__c (timestamp)
                          3: WhoId (string)
                          4: Request_Type__c (string)
                        + Cost Estimates:Estimated Node Cardinality: 100.0
                        + Child 0:
                          SortNode
                            + Relational Node ID:5
                            + Output Columns:
                              0: OwnerId (string)
                              1: Id (string)
                              2: LastStatusChangeDate__c (timestamp)
                              3: WhoId (string)
                              4: Request_Type__c (string)
                            + Cost Estimates:Estimated Node Cardinality: -1.0
                            + Child 0:
                              AccessNode
                                + Relational Node ID:6
                                + Output Columns:
                                  0: OwnerId (string)
                                  1: Id (string)
                                  2: LastStatusChangeDate__c (timestamp)
                                  3: WhoId (string)
                                  4: Request_Type__c (string)
                                + Cost Estimates:Estimated Node Cardinality: -1.0
                                + Query:SELECT g_0.OwnerId, g_0.Id, g_0.LastStatusChangeDate__c, g_0.WhoId, g_0.Request_Type__c FROM salesforce.Task AS g_0 WHERE (g_0.Type = 'Online chat') AND (g_0.CreatedById = '00532000005hioBAAQ') AND (g_0.ActivityDate > {d'2020-08-29'})
                                + Model Name:salesforce
                            + Sort Columns:[t.LastStatusChangeDate__c DESC NULLS FIRST]
                            + Sort FrameMode:SORT
                        + Row Offset:null
                        + Row Limit:100
                    + Child 1:
                      DependentAccessNode
                        + Relational Node ID:7
                        + Output Columns:
                          0: Id (string)
                          1: Name (string)
                        + Cost Estimates:Estimated Node Cardinality: -1.0
                        + Query:SELECT g_0.Id, g_0.Name FROM salesforce."User" AS g_0 WHERE g_0.Id IN (<dependent values>)
                        + Model Name:salesforce
                    + Dependent Join:true
                    + Join Strategy:ENHANCED SORT JOIN (SORT/SORT)
                    + Join Type:LEFT OUTER JOIN
                    + Join Criteria:t.OwnerId=u.Id
                + Sort Columns:[t.LastStatusChangeDate__c DESC NULLS FIRST]
                + Sort FrameMode:SORT
            + Row Offset:null
            + Row Limit:100
        + Select Columns:
          0: t.Id AS Task_id
          1: t.LastStatusChangeDate__c AS Task_time
          2: t.WhoId AS Task_whoId
          3: t.OwnerId AS Task_ownerId
          4: u.Name AS Task_agent
          5: t.Request_Type__c AS Task_department
        + Data Bytes Sent:7
        + Planning Time:7
      END PLAN
      
      DEBUG LOG :
      
      
      ============================================================================
      USER COMMAND:
      SELECT t.Id AS Task_id, t.LastStatusChangeDate__c AS Task_time, t.WhoId AS Task_whoId, t.OwnerId AS Task_ownerId, u.Name AS Task_agent, t.Request_Type__c AS Task_department FROM salesforce.Task AS t LEFT OUTER JOIN salesforce."User" AS u ON u.Id = t.OwnerId WHERE (t.Type = 'Online chat') AND (t.CreatedById = '00532000005hioBAAQ') AND (t.ActivityDate > {d'2020-08-29'}) ORDER BY Task_time DESC NULLS FIRST LIMIT 100
      
      ----------------------------------------------------------------------------
      OPTIMIZE: 
      SELECT t.Id AS Task_id, t.LastStatusChangeDate__c AS Task_time, t.WhoId AS Task_whoId, t.OwnerId AS Task_ownerId, u.Name AS Task_agent, t.Request_Type__c AS Task_department FROM salesforce.Task AS t LEFT OUTER JOIN salesforce."User" AS u ON u.Id = t.OwnerId WHERE (t.Type = 'Online chat') AND (t.CreatedById = '00532000005hioBAAQ') AND (t.ActivityDate > {d'2020-08-29'}) ORDER BY Task_time DESC NULLS FIRST LIMIT 100
      
      ----------------------------------------------------------------------------
      GENERATE CANONICAL: 
      SELECT t.Id AS Task_id, t.LastStatusChangeDate__c AS Task_time, t.WhoId AS Task_whoId, t.OwnerId AS Task_ownerId, u.Name AS Task_agent, t.Request_Type__c AS Task_department FROM salesforce.Task AS t LEFT OUTER JOIN salesforce."User" AS u ON u.Id = t.OwnerId WHERE (t.Type = 'Online chat') AND (t.CreatedById = '00532000005hioBAAQ') AND (t.ActivityDate > {d'2020-08-29'}) ORDER BY Task_time DESC NULLS FIRST LIMIT 100
      
      CANONICAL PLAN: 
      TupleLimit(groups=[], props={MAX_TUPLE_LIMIT=100})
        Sort(groups=[salesforce.Task AS t], props={SORT_ORDER=ORDER BY Task_time DESC NULLS FIRST})
          Project(groups=[salesforce.Task AS t, salesforce."User" AS u], props={PROJECT_COLS=[t.Id AS Task_id, t.LastStatusChangeDate__c AS Task_time, t.WhoId AS Task_whoId, t.OwnerId AS Task_ownerId, u.Name AS Task_agent, t.Request_Type__c AS Task_department]})
            Select(groups=[salesforce.Task AS t], props={SELECT_CRITERIA=t.ActivityDate > {d'2020-08-29'}})
              Select(groups=[salesforce.Task AS t], props={SELECT_CRITERIA=t.CreatedById = '00532000005hioBAAQ'})
                Select(groups=[salesforce.Task AS t], props={SELECT_CRITERIA=t.Type = 'Online chat'})
                  Join(groups=[salesforce.Task AS t, salesforce."User" AS u], props={JOIN_TYPE=LEFT OUTER JOIN, JOIN_STRATEGY=NESTED_LOOP, JOIN_CRITERIA=[u.Id = t.OwnerId]})
                    Source(groups=[salesforce.Task AS t])
                    Source(groups=[salesforce."User" AS u])
      
      
      ============================================================================
      EXECUTING PlaceAccess
      
      AFTER: 
      TupleLimit(groups=[], props={MAX_TUPLE_LIMIT=100})
        Sort(groups=[salesforce.Task AS t], props={SORT_ORDER=ORDER BY Task_time DESC NULLS FIRST})
          Project(groups=[salesforce.Task AS t, salesforce."User" AS u], props={PROJECT_COLS=[t.Id AS Task_id, t.LastStatusChangeDate__c AS Task_time, t.WhoId AS Task_whoId, t.OwnerId AS Task_ownerId, u.Name AS Task_agent, t.Request_Type__c AS Task_department]})
            Select(groups=[salesforce.Task AS t], props={SELECT_CRITERIA=t.ActivityDate > {d'2020-08-29'}})
              Select(groups=[salesforce.Task AS t], props={SELECT_CRITERIA=t.CreatedById = '00532000005hioBAAQ'})
                Select(groups=[salesforce.Task AS t], props={SELECT_CRITERIA=t.Type = 'Online chat'})
                  Join(groups=[salesforce.Task AS t, salesforce."User" AS u], props={JOIN_TYPE=LEFT OUTER JOIN, JOIN_STRATEGY=NESTED_LOOP, JOIN_CRITERIA=[u.Id = t.OwnerId]})
                    Access(groups=[salesforce.Task AS t], props={SOURCE_HINT=null, MODEL_ID=Schema name=salesforce, nameInSource=null, uuid=tid:6b7918e394e2-66cf095f-00000000})
                      Source(groups=[salesforce.Task AS t])
                    Access(groups=[salesforce."User" AS u], props={SOURCE_HINT=null, MODEL_ID=Schema name=salesforce, nameInSource=null, uuid=tid:6b7918e394e2-66cf095f-00000000})
                      Source(groups=[salesforce."User" AS u])
      
      
      ============================================================================
      EXECUTING AssignOutputElements
      
      AFTER: 
      TupleLimit(groups=[], props={MAX_TUPLE_LIMIT=100, OUTPUT_COLS=[t.Id AS Task_id, t.LastStatusChangeDate__c AS Task_time, t.WhoId AS Task_whoId, t.OwnerId AS Task_ownerId, u.Name AS Task_agent, t.Request_Type__c AS Task_department]})
        Sort(groups=[salesforce.Task AS t], props={SORT_ORDER=ORDER BY Task_time DESC NULLS FIRST, OUTPUT_COLS=[t.Id AS Task_id, t.LastStatusChangeDate__c AS Task_time, t.WhoId AS Task_whoId, t.OwnerId AS Task_ownerId, u.Name AS Task_agent, t.Request_Type__c AS Task_department], UNRELATED_SORT=false})
          Project(groups=[salesforce.Task AS t, salesforce."User" AS u], props={PROJECT_COLS=[t.Id AS Task_id, t.LastStatusChangeDate__c AS Task_time, t.WhoId AS Task_whoId, t.OwnerId AS Task_ownerId, u.Name AS Task_agent, t.Request_Type__c AS Task_department], OUTPUT_COLS=[t.Id AS Task_id, t.LastStatusChangeDate__c AS Task_time, t.WhoId AS Task_whoId, t.OwnerId AS Task_ownerId, u.Name AS Task_agent, t.Request_Type__c AS Task_department]})
            Select(groups=[salesforce.Task AS t], props={SELECT_CRITERIA=t.ActivityDate > {d'2020-08-29'}, OUTPUT_COLS=[t.Id, t.LastStatusChangeDate__c, t.WhoId, t.OwnerId, u.Name, t.Request_Type__c]})
              Select(groups=[salesforce.Task AS t], props={SELECT_CRITERIA=t.CreatedById = '00532000005hioBAAQ', OUTPUT_COLS=[t.ActivityDate, t.Id, t.LastStatusChangeDate__c, t.WhoId, t.OwnerId, u.Name, t.Request_Type__c]})
                Select(groups=[salesforce.Task AS t], props={SELECT_CRITERIA=t.Type = 'Online chat', OUTPUT_COLS=[t.CreatedById, t.ActivityDate, t.Id, t.LastStatusChangeDate__c, t.WhoId, t.OwnerId, u.Name, t.Request_Type__c]})
                  Join(groups=[salesforce.Task AS t, salesforce."User" AS u], props={JOIN_TYPE=LEFT OUTER JOIN, JOIN_STRATEGY=NESTED_LOOP, JOIN_CRITERIA=[u.Id = t.OwnerId], OUTPUT_COLS=[t.Type, t.CreatedById, t.ActivityDate, t.Id, t.LastStatusChangeDate__c, t.WhoId, t.OwnerId, u.Name, t.Request_Type__c]})
                    Access(groups=[salesforce.Task AS t], props={SOURCE_HINT=null, MODEL_ID=Schema name=salesforce, nameInSource=null, uuid=tid:6b7918e394e2-66cf095f-00000000, OUTPUT_COLS=[t.OwnerId, t.Type, t.CreatedById, t.ActivityDate, t.Id, t.LastStatusChangeDate__c, t.WhoId, t.Request_Type__c]})
                      Source(groups=[salesforce.Task AS t], props={OUTPUT_COLS=[t.OwnerId, t.Type, t.CreatedById, t.ActivityDate, t.Id, t.LastStatusChangeDate__c, t.WhoId, t.Request_Type__c]})
                    Access(groups=[salesforce."User" AS u], props={SOURCE_HINT=null, MODEL_ID=Schema name=salesforce, nameInSource=null, uuid=tid:6b7918e394e2-66cf095f-00000000, OUTPUT_COLS=[u.Id, u.Name]})
                      Source(groups=[salesforce."User" AS u], props={OUTPUT_COLS=[u.Id, u.Name]})
      
      
      ============================================================================
      EXECUTING RemoveOptionalJoins
      
      AFTER: 
      TupleLimit(groups=[])
        Sort(groups=[salesforce.Task AS t])
          Project(groups=[salesforce.Task AS t, salesforce."User" AS u])
            Select(groups=[salesforce.Task AS t], props={SELECT_CRITERIA=t.ActivityDate > {d'2020-08-29'}, OUTPUT_COLS=[t.Id, t.LastStatusChangeDate__c, t.WhoId, t.OwnerId, u.Name, t.Request_Type__c]})
              Select(groups=[salesforce.Task AS t])
                Select(groups=[salesforce.Task AS t])
                  Join(groups=[salesforce.Task AS t, salesforce."User" AS u], props={JOIN_TYPE=LEFT OUTER JOIN, JOIN_STRATEGY=NESTED_LOOP, JOIN_CRITERIA=[u.Id = t.OwnerId], OUTPUT_COLS=[t.Type, t.CreatedById, t.ActivityDate, t.Id, t.LastStatusChangeDate__c, t.WhoId, t.OwnerId, u.Name, t.Request_Type__c]})
                    Access(groups=[salesforce.Task AS t])
                      Source(groups=[salesforce.Task AS t])
                    Access(groups=[salesforce."User" AS u])
                      Source(groups=[salesforce."User" AS u])
      
      
      ============================================================================
      EXECUTING PushSelectCriteria
      
      AFTER: 
      TupleLimit(groups=[])
        Sort(groups=[salesforce.Task AS t])
          Project(groups=[salesforce.Task AS t, salesforce."User" AS u], props={PROJECT_COLS=[t.Id AS Task_id, t.LastStatusChangeDate__c AS Task_time, t.WhoId AS Task_whoId, t.OwnerId AS Task_ownerId, u.Name AS Task_agent, t.Request_Type__c AS Task_department], OUTPUT_COLS=[t.Id AS Task_id, t.LastStatusChangeDate__c AS Task_time, t.WhoId AS Task_whoId, t.OwnerId AS Task_ownerId, u.Name AS Task_agent, t.Request_Type__c AS Task_department]})
            Join(groups=[salesforce.Task AS t, salesforce."User" AS u], props={JOIN_TYPE=LEFT OUTER JOIN, JOIN_STRATEGY=NESTED_LOOP, JOIN_CRITERIA=[u.Id = t.OwnerId], OUTPUT_COLS=[t.Type, t.CreatedById, t.ActivityDate, t.Id, t.LastStatusChangeDate__c, t.WhoId, t.OwnerId, u.Name, t.Request_Type__c]})
              Access(groups=[salesforce.Task AS t], props={SOURCE_HINT=null, MODEL_ID=Schema name=salesforce, nameInSource=null, uuid=tid:6b7918e394e2-66cf095f-00000000, OUTPUT_COLS=[t.OwnerId, t.Type, t.CreatedById, t.ActivityDate, t.Id, t.LastStatusChangeDate__c, t.WhoId, t.Request_Type__c]})
                Select(groups=[salesforce.Task AS t], props={SELECT_CRITERIA=(t.Type = 'Online chat') AND (t.CreatedById = '00532000005hioBAAQ') AND (t.ActivityDate > {d'2020-08-29'}), OUTPUT_COLS=[t.Id, t.LastStatusChangeDate__c, t.WhoId, t.OwnerId, u.Name, t.Request_Type__c]})
                  Source(groups=[salesforce.Task AS t], props={OUTPUT_COLS=[t.OwnerId, t.Type, t.CreatedById, t.ActivityDate, t.Id, t.LastStatusChangeDate__c, t.WhoId, t.Request_Type__c]})
              Access(groups=[salesforce."User" AS u])
                Source(groups=[salesforce."User" AS u])
      
      
      ============================================================================
      EXECUTING PushNonJoinCriteria
      
      AFTER: 
      TupleLimit(groups=[])
        Sort(groups=[salesforce.Task AS t])
          Project(groups=[salesforce.Task AS t, salesforce."User" AS u])
            Join(groups=[salesforce.Task AS t, salesforce."User" AS u], props={JOIN_TYPE=LEFT OUTER JOIN, JOIN_STRATEGY=NESTED_LOOP, JOIN_CRITERIA=[u.Id = t.OwnerId], OUTPUT_COLS=[t.Type, t.CreatedById, t.ActivityDate, t.Id, t.LastStatusChangeDate__c, t.WhoId, t.OwnerId, u.Name, t.Request_Type__c]})
              Access(groups=[salesforce.Task AS t])
                Select(groups=[salesforce.Task AS t])
                  Source(groups=[salesforce.Task AS t])
              Access(groups=[salesforce."User" AS u])
                Source(groups=[salesforce."User" AS u])
      
      
      ============================================================================
      EXECUTING CleanCriteria
      
      AFTER: 
      TupleLimit(groups=[], props={MAX_TUPLE_LIMIT=100, OUTPUT_COLS=null, APPROXIMATE_OUTPUT_COLUMNS=6})
        Sort(groups=[salesforce.Task AS t], props={SORT_ORDER=ORDER BY Task_time DESC NULLS FIRST, OUTPUT_COLS=null, UNRELATED_SORT=false, APPROXIMATE_OUTPUT_COLUMNS=6})
          Project(groups=[salesforce.Task AS t, salesforce."User" AS u], props={PROJECT_COLS=[t.Id AS Task_id, t.LastStatusChangeDate__c AS Task_time, t.WhoId AS Task_whoId, t.OwnerId AS Task_ownerId, u.Name AS Task_agent, t.Request_Type__c AS Task_department], OUTPUT_COLS=null, APPROXIMATE_OUTPUT_COLUMNS=6})
            Join(groups=[salesforce.Task AS t, salesforce."User" AS u], props={JOIN_TYPE=LEFT OUTER JOIN, JOIN_STRATEGY=NESTED_LOOP, JOIN_CRITERIA=[u.Id = t.OwnerId], OUTPUT_COLS=null, APPROXIMATE_OUTPUT_COLUMNS=9})
              Access(groups=[salesforce.Task AS t], props={SOURCE_HINT=null, MODEL_ID=Schema name=salesforce, nameInSource=null, uuid=tid:6b7918e394e2-66cf095f-00000000, OUTPUT_COLS=null, APPROXIMATE_OUTPUT_COLUMNS=8})
                Select(groups=[salesforce.Task AS t], props={SELECT_CRITERIA=(t.Type = 'Online chat') AND (t.CreatedById = '00532000005hioBAAQ') AND (t.ActivityDate > {d'2020-08-29'}), OUTPUT_COLS=null, APPROXIMATE_OUTPUT_COLUMNS=6})
                  Source(groups=[salesforce.Task AS t], props={OUTPUT_COLS=null, APPROXIMATE_OUTPUT_COLUMNS=8})
              Access(groups=[salesforce."User" AS u], props={SOURCE_HINT=null, MODEL_ID=Schema name=salesforce, nameInSource=null, uuid=tid:6b7918e394e2-66cf095f-00000000, OUTPUT_COLS=null, APPROXIMATE_OUTPUT_COLUMNS=2})
                Source(groups=[salesforce."User" AS u], props={OUTPUT_COLS=null, APPROXIMATE_OUTPUT_COLUMNS=2})
      
      
      ============================================================================
      EXECUTING RaiseAccess
      
      AFTER: 
      TupleLimit(groups=[])
        Sort(groups=[salesforce.Task AS t])
          Project(groups=[salesforce.Task AS t, salesforce."User" AS u])
            Join(groups=[salesforce.Task AS t, salesforce."User" AS u], props={JOIN_TYPE=LEFT OUTER JOIN, JOIN_STRATEGY=NESTED_LOOP, JOIN_CRITERIA=[u.Id = t.OwnerId], OUTPUT_COLS=null, APPROXIMATE_OUTPUT_COLUMNS=9})
              Access(groups=[salesforce.Task AS t], props={SOURCE_HINT=null, MODEL_ID=Schema name=salesforce, nameInSource=null, uuid=tid:6b7918e394e2-66cf095f-00000000, OUTPUT_COLS=null, APPROXIMATE_OUTPUT_COLUMNS=8})
                Select(groups=[salesforce.Task AS t])
                  Source(groups=[salesforce.Task AS t])
              Access(groups=[salesforce."User" AS u], props={SOURCE_HINT=null, MODEL_ID=Schema name=salesforce, nameInSource=null, uuid=tid:6b7918e394e2-66cf095f-00000000, OUTPUT_COLS=null, APPROXIMATE_OUTPUT_COLUMNS=2})
                Source(groups=[salesforce."User" AS u])
      
      
      ============================================================================
      EXECUTING PlanOuterJoins
      
      AFTER: 
      TupleLimit(groups=[])
        Sort(groups=[salesforce.Task AS t])
          Project(groups=[salesforce.Task AS t, salesforce."User" AS u])
            Join(groups=[salesforce.Task AS t, salesforce."User" AS u])
              Access(groups=[salesforce.Task AS t])
                Select(groups=[salesforce.Task AS t])
                  Source(groups=[salesforce.Task AS t])
              Access(groups=[salesforce."User" AS u])
                Source(groups=[salesforce."User" AS u])
      
      
      ============================================================================
      EXECUTING CopyCriteria
      
      AFTER: 
      TupleLimit(groups=[])
        Sort(groups=[salesforce.Task AS t])
          Project(groups=[salesforce.Task AS t, salesforce."User" AS u])
            Join(groups=[salesforce.Task AS t, salesforce."User" AS u], props={JOIN_TYPE=LEFT OUTER JOIN, JOIN_STRATEGY=NESTED_LOOP, JOIN_CRITERIA=[u.Id = t.OwnerId], OUTPUT_COLS=null, APPROXIMATE_OUTPUT_COLUMNS=9, IS_COPIED=true})
              Access(groups=[salesforce.Task AS t])
                Select(groups=[salesforce.Task AS t], props={SELECT_CRITERIA=(t.Type = 'Online chat') AND (t.CreatedById = '00532000005hioBAAQ') AND (t.ActivityDate > {d'2020-08-29'}), OUTPUT_COLS=null, APPROXIMATE_OUTPUT_COLUMNS=6, IS_COPIED=true})
                  Source(groups=[salesforce.Task AS t])
              Access(groups=[salesforce."User" AS u])
                Source(groups=[salesforce."User" AS u])
      
      
      ============================================================================
      EXECUTING CleanCriteria
      
      AFTER: 
      TupleLimit(groups=[], props={MAX_TUPLE_LIMIT=100, OUTPUT_COLS=null, APPROXIMATE_OUTPUT_COLUMNS=6})
        Sort(groups=[salesforce.Task AS t], props={SORT_ORDER=ORDER BY Task_time DESC NULLS FIRST, OUTPUT_COLS=null, UNRELATED_SORT=false, APPROXIMATE_OUTPUT_COLUMNS=6})
          Project(groups=[salesforce.Task AS t, salesforce."User" AS u], props={PROJECT_COLS=[t.Id AS Task_id, t.LastStatusChangeDate__c AS Task_time, t.WhoId AS Task_whoId, t.OwnerId AS Task_ownerId, u.Name AS Task_agent, t.Request_Type__c AS Task_department], OUTPUT_COLS=null, APPROXIMATE_OUTPUT_COLUMNS=6})
            Join(groups=[salesforce.Task AS t, salesforce."User" AS u], props={JOIN_TYPE=LEFT OUTER JOIN, JOIN_STRATEGY=NESTED_LOOP, JOIN_CRITERIA=[u.Id = t.OwnerId], OUTPUT_COLS=null, APPROXIMATE_OUTPUT_COLUMNS=9, IS_COPIED=true})
              Access(groups=[salesforce.Task AS t], props={SOURCE_HINT=null, MODEL_ID=Schema name=salesforce, nameInSource=null, uuid=tid:6b7918e394e2-66cf095f-00000000, OUTPUT_COLS=null, APPROXIMATE_OUTPUT_COLUMNS=8})
                Select(groups=[salesforce.Task AS t], props={SELECT_CRITERIA=(t.Type = 'Online chat') AND (t.CreatedById = '00532000005hioBAAQ') AND (t.ActivityDate > {d'2020-08-29'}), OUTPUT_COLS=null, APPROXIMATE_OUTPUT_COLUMNS=6, IS_COPIED=true})
                  Source(groups=[salesforce.Task AS t], props={OUTPUT_COLS=null, APPROXIMATE_OUTPUT_COLUMNS=8})
              Access(groups=[salesforce."User" AS u], props={SOURCE_HINT=null, MODEL_ID=Schema name=salesforce, nameInSource=null, uuid=tid:6b7918e394e2-66cf095f-00000000, OUTPUT_COLS=null, APPROXIMATE_OUTPUT_COLUMNS=2})
                Source(groups=[salesforce."User" AS u], props={OUTPUT_COLS=null, APPROXIMATE_OUTPUT_COLUMNS=2})
      
      
      ============================================================================
      EXECUTING PlanJoins
      
      AFTER: 
      TupleLimit(groups=[])
        Sort(groups=[salesforce.Task AS t])
          Project(groups=[salesforce.Task AS t, salesforce."User" AS u])
            Join(groups=[salesforce.Task AS t, salesforce."User" AS u], props={JOIN_TYPE=LEFT OUTER JOIN, JOIN_STRATEGY=NESTED_LOOP, JOIN_CRITERIA=[u.Id = t.OwnerId], OUTPUT_COLS=null, APPROXIMATE_OUTPUT_COLUMNS=9, IS_COPIED=true})
              Access(groups=[salesforce.Task AS t])
                Select(groups=[salesforce.Task AS t])
                  Source(groups=[salesforce.Task AS t])
              Access(groups=[salesforce."User" AS u])
                Source(groups=[salesforce."User" AS u])
      
      
      ============================================================================
      EXECUTING PushSelectCriteria
      
      AFTER: 
      TupleLimit(groups=[])
        Sort(groups=[salesforce.Task AS t])
          Project(groups=[salesforce.Task AS t, salesforce."User" AS u])
            Join(groups=[salesforce.Task AS t, salesforce."User" AS u])
              Access(groups=[salesforce.Task AS t])
                Select(groups=[salesforce.Task AS t], props={SELECT_CRITERIA=(t.Type = 'Online chat') AND (t.CreatedById = '00532000005hioBAAQ') AND (t.ActivityDate > {d'2020-08-29'}), OUTPUT_COLS=null, APPROXIMATE_OUTPUT_COLUMNS=6, IS_COPIED=true})
                  Source(groups=[salesforce.Task AS t])
              Access(groups=[salesforce."User" AS u])
                Source(groups=[salesforce."User" AS u])
      
      
      ============================================================================
      EXECUTING RaiseAccess
      
      AFTER: 
      TupleLimit(groups=[])
        Sort(groups=[salesforce.Task AS t])
          Project(groups=[salesforce.Task AS t, salesforce."User" AS u])
            Join(groups=[salesforce.Task AS t, salesforce."User" AS u], props={JOIN_TYPE=LEFT OUTER JOIN, JOIN_STRATEGY=NESTED_LOOP, JOIN_CRITERIA=[u.Id = t.OwnerId], OUTPUT_COLS=null, APPROXIMATE_OUTPUT_COLUMNS=9, IS_COPIED=true})
              Access(groups=[salesforce.Task AS t], props={SOURCE_HINT=null, MODEL_ID=Schema name=salesforce, nameInSource=null, uuid=tid:6b7918e394e2-66cf095f-00000000, OUTPUT_COLS=null, APPROXIMATE_OUTPUT_COLUMNS=8})
                Select(groups=[salesforce.Task AS t])
                  Source(groups=[salesforce.Task AS t])
              Access(groups=[salesforce."User" AS u], props={SOURCE_HINT=null, MODEL_ID=Schema name=salesforce, nameInSource=null, uuid=tid:6b7918e394e2-66cf095f-00000000, OUTPUT_COLS=null, APPROXIMATE_OUTPUT_COLUMNS=2})
                Source(groups=[salesforce."User" AS u])
      
      
      ============================================================================
      EXECUTING PlanOuterJoins
      
      AFTER: 
      TupleLimit(groups=[])
        Sort(groups=[salesforce.Task AS t])
          Project(groups=[salesforce.Task AS t, salesforce."User" AS u])
            Join(groups=[salesforce.Task AS t, salesforce."User" AS u], props={JOIN_TYPE=LEFT OUTER JOIN, JOIN_STRATEGY=NESTED_LOOP, JOIN_CRITERIA=[u.Id = t.OwnerId], OUTPUT_COLS=null, APPROXIMATE_OUTPUT_COLUMNS=9, IS_COPIED=true})
              Access(groups=[salesforce.Task AS t])
                Select(groups=[salesforce.Task AS t])
                  Source(groups=[salesforce.Task AS t])
              Access(groups=[salesforce."User" AS u])
                Source(groups=[salesforce."User" AS u])
      
      
      ============================================================================
      EXECUTING ChooseJoinStrategy
      
      AFTER: 
      TupleLimit(groups=[])
        Sort(groups=[salesforce.Task AS t])
          Project(groups=[salesforce.Task AS t, salesforce."User" AS u])
            Join(groups=[salesforce.Task AS t, salesforce."User" AS u], props={JOIN_TYPE=LEFT OUTER JOIN, JOIN_STRATEGY=MERGE, JOIN_CRITERIA=[u.Id = t.OwnerId], OUTPUT_COLS=null, APPROXIMATE_OUTPUT_COLUMNS=9, IS_COPIED=true, LEFT_EXPRESSIONS=[t.OwnerId], RIGHT_EXPRESSIONS=[u.Id], NON_EQUI_JOIN_CRITERIA=[]})
              Access(groups=[salesforce.Task AS t])
                Select(groups=[salesforce.Task AS t])
                  Source(groups=[salesforce.Task AS t])
              Access(groups=[salesforce."User" AS u])
                Source(groups=[salesforce."User" AS u])
      
      
      ============================================================================
      EXECUTING PushLargeIn
      
      AFTER: 
      TupleLimit(groups=[])
        Sort(groups=[salesforce.Task AS t])
          Project(groups=[salesforce.Task AS t, salesforce."User" AS u])
            Join(groups=[salesforce.Task AS t, salesforce."User" AS u])
              Access(groups=[salesforce.Task AS t])
                Select(groups=[salesforce.Task AS t])
                  Source(groups=[salesforce.Task AS t])
              Access(groups=[salesforce."User" AS u])
                Source(groups=[salesforce."User" AS u])
      
      
      ============================================================================
      EXECUTING AssignOutputElements
      
      AFTER: 
      TupleLimit(groups=[], props={MAX_TUPLE_LIMIT=100, OUTPUT_COLS=[t.Id AS Task_id, t.LastStatusChangeDate__c AS Task_time, t.WhoId AS Task_whoId, t.OwnerId AS Task_ownerId, u.Name AS Task_agent, t.Request_Type__c AS Task_department], APPROXIMATE_OUTPUT_COLUMNS=6})
        Sort(groups=[salesforce.Task AS t], props={SORT_ORDER=ORDER BY Task_time DESC NULLS FIRST, OUTPUT_COLS=[t.Id AS Task_id, t.LastStatusChangeDate__c AS Task_time, t.WhoId AS Task_whoId, t.OwnerId AS Task_ownerId, u.Name AS Task_agent, t.Request_Type__c AS Task_department], UNRELATED_SORT=false, APPROXIMATE_OUTPUT_COLUMNS=6})
          Project(groups=[salesforce.Task AS t, salesforce."User" AS u], props={PROJECT_COLS=[t.Id AS Task_id, t.LastStatusChangeDate__c AS Task_time, t.WhoId AS Task_whoId, t.OwnerId AS Task_ownerId, u.Name AS Task_agent, t.Request_Type__c AS Task_department], OUTPUT_COLS=[t.Id AS Task_id, t.LastStatusChangeDate__c AS Task_time, t.WhoId AS Task_whoId, t.OwnerId AS Task_ownerId, u.Name AS Task_agent, t.Request_Type__c AS Task_department], APPROXIMATE_OUTPUT_COLUMNS=6})
            Join(groups=[salesforce.Task AS t, salesforce."User" AS u], props={JOIN_TYPE=LEFT OUTER JOIN, JOIN_STRATEGY=MERGE, JOIN_CRITERIA=[u.Id = t.OwnerId], OUTPUT_COLS=[t.Id, t.LastStatusChangeDate__c, t.WhoId, t.OwnerId, u.Name, t.Request_Type__c], APPROXIMATE_OUTPUT_COLUMNS=9, IS_COPIED=true, LEFT_EXPRESSIONS=[t.OwnerId], RIGHT_EXPRESSIONS=[u.Id], NON_EQUI_JOIN_CRITERIA=[]})
              Access(groups=[salesforce.Task AS t], props={SOURCE_HINT=null, MODEL_ID=Schema name=salesforce, nameInSource=null, uuid=tid:6b7918e394e2-66cf095f-00000000, OUTPUT_COLS=[t.OwnerId, t.Id, t.LastStatusChangeDate__c, t.WhoId, t.Request_Type__c], APPROXIMATE_OUTPUT_COLUMNS=8})
                Select(groups=[salesforce.Task AS t], props={SELECT_CRITERIA=(t.Type = 'Online chat') AND (t.CreatedById = '00532000005hioBAAQ') AND (t.ActivityDate > {d'2020-08-29'}), OUTPUT_COLS=[t.OwnerId, t.Id, t.LastStatusChangeDate__c, t.WhoId, t.Request_Type__c], APPROXIMATE_OUTPUT_COLUMNS=6, IS_COPIED=true})
                  Source(groups=[salesforce.Task AS t], props={OUTPUT_COLS=[t.Type, t.CreatedById, t.ActivityDate, t.OwnerId, t.Id, t.LastStatusChangeDate__c, t.WhoId, t.Request_Type__c], APPROXIMATE_OUTPUT_COLUMNS=8})
              Access(groups=[salesforce."User" AS u], props={SOURCE_HINT=null, MODEL_ID=Schema name=salesforce, nameInSource=null, uuid=tid:6b7918e394e2-66cf095f-00000000, OUTPUT_COLS=[u.Id, u.Name], APPROXIMATE_OUTPUT_COLUMNS=2})
                Source(groups=[salesforce."User" AS u], props={OUTPUT_COLS=[u.Id, u.Name], APPROXIMATE_OUTPUT_COLUMNS=2})
      
      
      ============================================================================
      EXECUTING PushLimit
      
      AFTER: 
      Project(groups=[salesforce.Task AS t, salesforce."User" AS u], props={PROJECT_COLS=[t.Id AS Task_id, t.LastStatusChangeDate__c AS Task_time, t.WhoId AS Task_whoId, t.OwnerId AS Task_ownerId, u.Name AS Task_agent, t.Request_Type__c AS Task_department], OUTPUT_COLS=[t.Id AS Task_id, t.LastStatusChangeDate__c AS Task_time, t.WhoId AS Task_whoId, t.OwnerId AS Task_ownerId, u.Name AS Task_agent, t.Request_Type__c AS Task_department], APPROXIMATE_OUTPUT_COLUMNS=6})
        TupleLimit(groups=[], props={MAX_TUPLE_LIMIT=100, OUTPUT_COLS=[t.Id, t.LastStatusChangeDate__c, t.WhoId, t.OwnerId, u.Name, t.Request_Type__c], APPROXIMATE_OUTPUT_COLUMNS=6})
          Sort(groups=[salesforce.Task AS t], props={SORT_ORDER=ORDER BY t.LastStatusChangeDate__c DESC NULLS FIRST, OUTPUT_COLS=[t.Id, t.LastStatusChangeDate__c, t.WhoId, t.OwnerId, u.Name, t.Request_Type__c], UNRELATED_SORT=false, APPROXIMATE_OUTPUT_COLUMNS=6})
            Join(groups=[salesforce.Task AS t, salesforce."User" AS u], props={JOIN_TYPE=LEFT OUTER JOIN, JOIN_STRATEGY=MERGE, JOIN_CRITERIA=[u.Id = t.OwnerId], OUTPUT_COLS=[t.Id, t.LastStatusChangeDate__c, t.WhoId, t.OwnerId, u.Name, t.Request_Type__c], APPROXIMATE_OUTPUT_COLUMNS=9, IS_COPIED=true, LEFT_EXPRESSIONS=[t.OwnerId], RIGHT_EXPRESSIONS=[u.Id], NON_EQUI_JOIN_CRITERIA=[]})
              TupleLimit(groups=[], props={MAX_TUPLE_LIMIT=100, OUTPUT_COLS=[t.OwnerId, t.Id, t.LastStatusChangeDate__c, t.WhoId, t.Request_Type__c], IS_PUSHED=true})
                Sort(groups=[salesforce.Task AS t], props={SORT_ORDER=ORDER BY t.LastStatusChangeDate__c DESC NULLS FIRST, OUTPUT_COLS=[t.OwnerId, t.Id, t.LastStatusChangeDate__c, t.WhoId, t.Request_Type__c]})
                  Access(groups=[salesforce.Task AS t], props={SOURCE_HINT=null, MODEL_ID=Schema name=salesforce, nameInSource=null, uuid=tid:6b7918e394e2-66cf095f-00000000, OUTPUT_COLS=[t.OwnerId, t.Id, t.LastStatusChangeDate__c, t.WhoId, t.Request_Type__c], APPROXIMATE_OUTPUT_COLUMNS=8})
                    Select(groups=[salesforce.Task AS t])
                      Source(groups=[salesforce.Task AS t])
              Access(groups=[salesforce."User" AS u])
                Source(groups=[salesforce."User" AS u])
      
      
      ============================================================================
      EXECUTING ChooseDependent
      
      AFTER: 
      Project(groups=[salesforce.Task AS t, salesforce."User" AS u])
        TupleLimit(groups=[])
          Sort(groups=[salesforce.Task AS t])
            Join(groups=[salesforce.Task AS t, salesforce."User" AS u], props={JOIN_TYPE=LEFT OUTER JOIN, JOIN_STRATEGY=MERGE, JOIN_CRITERIA=[u.Id = t.OwnerId], OUTPUT_COLS=[t.Id, t.LastStatusChangeDate__c, t.WhoId, t.OwnerId, u.Name, t.Request_Type__c], APPROXIMATE_OUTPUT_COLUMNS=9, IS_COPIED=true, LEFT_EXPRESSIONS=[t.OwnerId], RIGHT_EXPRESSIONS=[u.Id], NON_EQUI_JOIN_CRITERIA=[], EST_CARDINALITY=null, DEPENDENT_VALUE_SOURCE=$dsc/id88})
              TupleLimit(groups=[], props={MAX_TUPLE_LIMIT=100, OUTPUT_COLS=[t.OwnerId, t.Id, t.LastStatusChangeDate__c, t.WhoId, t.Request_Type__c], IS_PUSHED=true, EST_CARDINALITY=100.0, EST_COL_STATS={t.OwnerId=[-1.0, -1.0, -1.0], t.Id=[-1.0, -1.0, -1.0], t.LastStatusChangeDate__c=[-1.0, -1.0, -1.0], t.WhoId=[-1.0, -1.0, -1.0], ...}})
                Sort(groups=[salesforce.Task AS t], props={SORT_ORDER=ORDER BY t.LastStatusChangeDate__c DESC NULLS FIRST, OUTPUT_COLS=[t.OwnerId, t.Id, t.LastStatusChangeDate__c, t.WhoId, t.Request_Type__c], EST_CARDINALITY=-1.0, EST_COL_STATS={t.OwnerId=[-1.0, -1.0, -1.0], t.Id=[-1.0, -1.0, -1.0], t.LastStatusChangeDate__c=[-1.0, -1.0, -1.0], t.WhoId=[-1.0, -1.0, -1.0], ...}})
                  Access(groups=[salesforce.Task AS t], props={SOURCE_HINT=null, MODEL_ID=Schema name=salesforce, nameInSource=null, uuid=tid:6b7918e394e2-66cf095f-00000000, OUTPUT_COLS=[t.OwnerId, t.Id, t.LastStatusChangeDate__c, t.WhoId, t.Request_Type__c], APPROXIMATE_OUTPUT_COLUMNS=8, EST_CARDINALITY=-1.0, EST_COL_STATS={t.OwnerId=[-1.0, -1.0, -1.0], t.Id=[-1.0, -1.0, -1.0], t.LastStatusChangeDate__c=[-1.0, -1.0, -1.0], t.WhoId=[-1.0, -1.0, -1.0], ...}})
                    Select(groups=[salesforce.Task AS t], props={SELECT_CRITERIA=(t.Type = 'Online chat') AND (t.CreatedById = '00532000005hioBAAQ') AND (t.ActivityDate > {d'2020-08-29'}), OUTPUT_COLS=[t.OwnerId, t.Id, t.LastStatusChangeDate__c, t.WhoId, t.Request_Type__c], APPROXIMATE_OUTPUT_COLUMNS=6, IS_COPIED=true, EST_CARDINALITY=-1.0, EST_COL_STATS={t.OwnerId=[-1.0, -1.0, -1.0], t.Id=[-1.0, -1.0, -1.0], t.LastStatusChangeDate__c=[-1.0, -1.0, -1.0], t.WhoId=[-1.0, -1.0, -1.0], ...}})
                      Source(groups=[salesforce.Task AS t], props={OUTPUT_COLS=[t.Type, t.CreatedById, t.ActivityDate, t.OwnerId, t.Id, t.LastStatusChangeDate__c, t.WhoId, t.Request_Type__c], APPROXIMATE_OUTPUT_COLUMNS=8, EST_COL_STATS={t.Type=[-1.0, -1.0, -1.0], t.CreatedById=[-1.0, -1.0, -1.0], t.ActivityDate=[-1.0, -1.0, -1.0], t.OwnerId=[-1.0, -1.0, -1.0], ...}, EST_CARDINALITY=-1.0})
              Select(groups=[salesforce."User" AS u], props={SELECT_CRITERIA=u.Id IN (<dependent values>), IS_DEPENDENT_SET=true})
                Access(groups=[salesforce."User" AS u], props={SOURCE_HINT=null, MODEL_ID=Schema name=salesforce, nameInSource=null, uuid=tid:6b7918e394e2-66cf095f-00000000, OUTPUT_COLS=[u.Id, u.Name], APPROXIMATE_OUTPUT_COLUMNS=2, EST_CARDINALITY=-1.0, EST_COL_STATS={u.Id=[-1.0, -1.0, -1.0], u.Name=[-1.0, -1.0, -1.0]}})
                  Source(groups=[salesforce."User" AS u], props={OUTPUT_COLS=[u.Id, u.Name], APPROXIMATE_OUTPUT_COLUMNS=2, EST_COL_STATS={u.Id=[-1.0, -1.0, -1.0], u.Name=[-1.0, -1.0, -1.0]}, EST_CARDINALITY=-1.0})
      
      
      ============================================================================
      EXECUTING PushSelectCriteria
      
      AFTER: 
      Project(groups=[salesforce.Task AS t, salesforce."User" AS u])
        TupleLimit(groups=[])
          Sort(groups=[salesforce.Task AS t])
            Join(groups=[salesforce.Task AS t, salesforce."User" AS u], props={JOIN_TYPE=LEFT OUTER JOIN, JOIN_STRATEGY=MERGE, JOIN_CRITERIA=[u.Id = t.OwnerId], OUTPUT_COLS=[t.Id, t.LastStatusChangeDate__c, t.WhoId, t.OwnerId, u.Name, t.Request_Type__c], APPROXIMATE_OUTPUT_COLUMNS=9, IS_COPIED=true, LEFT_EXPRESSIONS=[t.OwnerId], RIGHT_EXPRESSIONS=[u.Id], NON_EQUI_JOIN_CRITERIA=[], EST_CARDINALITY=null, DEPENDENT_VALUE_SOURCE=$dsc/id88})
              TupleLimit(groups=[])
                Sort(groups=[salesforce.Task AS t])
                  Access(groups=[salesforce.Task AS t])
                    Select(groups=[salesforce.Task AS t], props={SELECT_CRITERIA=(t.Type = 'Online chat') AND (t.CreatedById = '00532000005hioBAAQ') AND (t.ActivityDate > {d'2020-08-29'}), OUTPUT_COLS=[t.OwnerId, t.Id, t.LastStatusChangeDate__c, t.WhoId, t.Request_Type__c], APPROXIMATE_OUTPUT_COLUMNS=6, IS_COPIED=true, EST_CARDINALITY=-1.0, EST_COL_STATS={t.OwnerId=[-1.0, -1.0, -1.0], t.Id=[-1.0, -1.0, -1.0], t.LastStatusChangeDate__c=[-1.0, -1.0, -1.0], t.WhoId=[-1.0, -1.0, -1.0], ...}})
                      Source(groups=[salesforce.Task AS t])
              Access(groups=[salesforce."User" AS u], props={SOURCE_HINT=null, MODEL_ID=Schema name=salesforce, nameInSource=null, uuid=tid:6b7918e394e2-66cf095f-00000000, OUTPUT_COLS=[u.Id, u.Name], APPROXIMATE_OUTPUT_COLUMNS=2, EST_CARDINALITY=-1.0, EST_COL_STATS={u.Id=[-1.0, -1.0, -1.0], u.Name=[-1.0, -1.0, -1.0]}, IS_DEPENDENT_SET=true})
                Select(groups=[salesforce."User" AS u], props={SELECT_CRITERIA=u.Id IN (<dependent values>), IS_DEPENDENT_SET=true, IS_PUSHED=true})
                  Source(groups=[salesforce."User" AS u], props={OUTPUT_COLS=[u.Id, u.Name], APPROXIMATE_OUTPUT_COLUMNS=2, EST_COL_STATS={u.Id=[-1.0, -1.0, -1.0], u.Name=[-1.0, -1.0, -1.0]}, EST_CARDINALITY=-1.0})
      
      
      ============================================================================
      EXECUTING CleanCriteria
      
      AFTER: 
      Project(groups=[salesforce.Task AS t, salesforce."User" AS u], props={PROJECT_COLS=[t.Id AS Task_id, t.LastStatusChangeDate__c AS Task_time, t.WhoId AS Task_whoId, t.OwnerId AS Task_ownerId, u.Name AS Task_agent, t.Request_Type__c AS Task_department], OUTPUT_COLS=null, APPROXIMATE_OUTPUT_COLUMNS=6})
        TupleLimit(groups=[], props={MAX_TUPLE_LIMIT=100, OUTPUT_COLS=null, APPROXIMATE_OUTPUT_COLUMNS=6})
          Sort(groups=[salesforce.Task AS t], props={SORT_ORDER=ORDER BY t.LastStatusChangeDate__c DESC NULLS FIRST, OUTPUT_COLS=null, UNRELATED_SORT=false, APPROXIMATE_OUTPUT_COLUMNS=6})
            Join(groups=[salesforce.Task AS t, salesforce."User" AS u], props={JOIN_TYPE=LEFT OUTER JOIN, JOIN_STRATEGY=MERGE, JOIN_CRITERIA=[u.Id = t.OwnerId], OUTPUT_COLS=null, APPROXIMATE_OUTPUT_COLUMNS=6, IS_COPIED=true, LEFT_EXPRESSIONS=[t.OwnerId], RIGHT_EXPRESSIONS=[u.Id], NON_EQUI_JOIN_CRITERIA=[], EST_CARDINALITY=null, DEPENDENT_VALUE_SOURCE=$dsc/id88})
              TupleLimit(groups=[], props={MAX_TUPLE_LIMIT=100, OUTPUT_COLS=null, IS_PUSHED=true, EST_CARDINALITY=100.0, EST_COL_STATS={t.OwnerId=[-1.0, -1.0, -1.0], t.Id=[-1.0, -1.0, -1.0], t.LastStatusChangeDate__c=[-1.0, -1.0, -1.0], t.WhoId=[-1.0, -1.0, -1.0], ...}, APPROXIMATE_OUTPUT_COLUMNS=5})
                Sort(groups=[salesforce.Task AS t], props={SORT_ORDER=ORDER BY t.LastStatusChangeDate__c DESC NULLS FIRST, OUTPUT_COLS=null, EST_CARDINALITY=-1.0, EST_COL_STATS={t.OwnerId=[-1.0, -1.0, -1.0], t.Id=[-1.0, -1.0, -1.0], t.LastStatusChangeDate__c=[-1.0, -1.0, -1.0], t.WhoId=[-1.0, -1.0, -1.0], ...}, APPROXIMATE_OUTPUT_COLUMNS=5})
                  Access(groups=[salesforce.Task AS t], props={SOURCE_HINT=null, MODEL_ID=Schema name=salesforce, nameInSource=null, uuid=tid:6b7918e394e2-66cf095f-00000000, OUTPUT_COLS=null, APPROXIMATE_OUTPUT_COLUMNS=5, EST_CARDINALITY=-1.0, EST_COL_STATS={t.OwnerId=[-1.0, -1.0, -1.0], t.Id=[-1.0, -1.0, -1.0], t.LastStatusChangeDate__c=[-1.0, -1.0, -1.0], t.WhoId=[-1.0, -1.0, -1.0], ...}})
                    Select(groups=[salesforce.Task AS t], props={SELECT_CRITERIA=(t.Type = 'Online chat') AND (t.CreatedById = '00532000005hioBAAQ') AND (t.ActivityDate > {d'2020-08-29'}), OUTPUT_COLS=null, APPROXIMATE_OUTPUT_COLUMNS=5, IS_COPIED=true, EST_CARDINALITY=-1.0, EST_COL_STATS={t.OwnerId=[-1.0, -1.0, -1.0], t.Id=[-1.0, -1.0, -1.0], t.LastStatusChangeDate__c=[-1.0, -1.0, -1.0], t.WhoId=[-1.0, -1.0, -1.0], ...}})
                      Source(groups=[salesforce.Task AS t], props={OUTPUT_COLS=null, APPROXIMATE_OUTPUT_COLUMNS=8, EST_COL_STATS={t.Type=[-1.0, -1.0, -1.0], t.CreatedById=[-1.0, -1.0, -1.0], t.ActivityDate=[-1.0, -1.0, -1.0], t.OwnerId=[-1.0, -1.0, -1.0], ...}, EST_CARDINALITY=-1.0})
              Access(groups=[salesforce."User" AS u], props={SOURCE_HINT=null, MODEL_ID=Schema name=salesforce, nameInSource=null, uuid=tid:6b7918e394e2-66cf095f-00000000, OUTPUT_COLS=null, APPROXIMATE_OUTPUT_COLUMNS=2, EST_CARDINALITY=-1.0, EST_COL_STATS={u.Id=[-1.0, -1.0, -1.0], u.Name=[-1.0, -1.0, -1.0]}, IS_DEPENDENT_SET=true})
                Select(groups=[salesforce."User" AS u], props={SELECT_CRITERIA=u.Id IN (<dependent values>), IS_DEPENDENT_SET=true, IS_PUSHED=true, OUTPUT_COLS=null})
                  Source(groups=[salesforce."User" AS u], props={OUTPUT_COLS=null, APPROXIMATE_OUTPUT_COLUMNS=2, EST_COL_STATS={u.Id=[-1.0, -1.0, -1.0], u.Name=[-1.0, -1.0, -1.0]}, EST_CARDINALITY=-1.0})
      
      
      ============================================================================
      EXECUTING AssignOutputElements
      
      AFTER: 
      Project(groups=[salesforce.Task AS t, salesforce."User" AS u], props={PROJECT_COLS=[t.Id AS Task_id, t.LastStatusChangeDate__c AS Task_time, t.WhoId AS Task_whoId, t.OwnerId AS Task_ownerId, u.Name AS Task_agent, t.Request_Type__c AS Task_department], OUTPUT_COLS=[t.Id AS Task_id, t.LastStatusChangeDate__c AS Task_time, t.WhoId AS Task_whoId, t.OwnerId AS Task_ownerId, u.Name AS Task_agent, t.Request_Type__c AS Task_department], APPROXIMATE_OUTPUT_COLUMNS=6})
        TupleLimit(groups=[], props={MAX_TUPLE_LIMIT=100, OUTPUT_COLS=[t.Id, t.LastStatusChangeDate__c, t.WhoId, t.OwnerId, u.Name, t.Request_Type__c], APPROXIMATE_OUTPUT_COLUMNS=6})
          Sort(groups=[salesforce.Task AS t], props={SORT_ORDER=ORDER BY t.LastStatusChangeDate__c DESC NULLS FIRST, OUTPUT_COLS=[t.Id, t.LastStatusChangeDate__c, t.WhoId, t.OwnerId, u.Name, t.Request_Type__c], UNRELATED_SORT=false, APPROXIMATE_OUTPUT_COLUMNS=6})
            Join(groups=[salesforce.Task AS t, salesforce."User" AS u], props={JOIN_TYPE=LEFT OUTER JOIN, JOIN_STRATEGY=MERGE, JOIN_CRITERIA=[u.Id = t.OwnerId], OUTPUT_COLS=[t.Id, t.LastStatusChangeDate__c, t.WhoId, t.OwnerId, u.Name, t.Request_Type__c], APPROXIMATE_OUTPUT_COLUMNS=6, IS_COPIED=true, LEFT_EXPRESSIONS=[t.OwnerId], RIGHT_EXPRESSIONS=[u.Id], NON_EQUI_JOIN_CRITERIA=[], EST_CARDINALITY=null, DEPENDENT_VALUE_SOURCE=$dsc/id88})
              TupleLimit(groups=[], props={MAX_TUPLE_LIMIT=100, OUTPUT_COLS=[t.OwnerId, t.Id, t.LastStatusChangeDate__c, t.WhoId, t.Request_Type__c], IS_PUSHED=true, EST_CARDINALITY=100.0, EST_COL_STATS={t.OwnerId=[-1.0, -1.0, -1.0], t.Id=[-1.0, -1.0, -1.0], t.LastStatusChangeDate__c=[-1.0, -1.0, -1.0], t.WhoId=[-1.0, -1.0, -1.0], ...}, APPROXIMATE_OUTPUT_COLUMNS=5})
                Sort(groups=[salesforce.Task AS t], props={SORT_ORDER=ORDER BY t.LastStatusChangeDate__c DESC NULLS FIRST, OUTPUT_COLS=[t.OwnerId, t.Id, t.LastStatusChangeDate__c, t.WhoId, t.Request_Type__c], EST_CARDINALITY=-1.0, EST_COL_STATS={t.OwnerId=[-1.0, -1.0, -1.0], t.Id=[-1.0, -1.0, -1.0], t.LastStatusChangeDate__c=[-1.0, -1.0, -1.0], t.WhoId=[-1.0, -1.0, -1.0], ...}, APPROXIMATE_OUTPUT_COLUMNS=5, UNRELATED_SORT=false})
                  Access(groups=[salesforce.Task AS t], props={SOURCE_HINT=null, MODEL_ID=Schema name=salesforce, nameInSource=null, uuid=tid:6b7918e394e2-66cf095f-00000000, OUTPUT_COLS=[t.OwnerId, t.Id, t.LastStatusChangeDate__c, t.WhoId, t.Request_Type__c], APPROXIMATE_OUTPUT_COLUMNS=5, EST_CARDINALITY=-1.0, EST_COL_STATS={t.OwnerId=[-1.0, -1.0, -1.0], t.Id=[-1.0, -1.0, -1.0], t.LastStatusChangeDate__c=[-1.0, -1.0, -1.0], t.WhoId=[-1.0, -1.0, -1.0], ...}})
                    Select(groups=[salesforce.Task AS t], props={SELECT_CRITERIA=(t.Type = 'Online chat') AND (t.CreatedById = '00532000005hioBAAQ') AND (t.ActivityDate > {d'2020-08-29'}), OUTPUT_COLS=[t.OwnerId, t.Id, t.LastStatusChangeDate__c, t.WhoId, t.Request_Type__c], APPROXIMATE_OUTPUT_COLUMNS=5, IS_COPIED=true, EST_CARDINALITY=-1.0, EST_COL_STATS={t.OwnerId=[-1.0, -1.0, -1.0], t.Id=[-1.0, -1.0, -1.0], t.LastStatusChangeDate__c=[-1.0, -1.0, -1.0], t.WhoId=[-1.0, -1.0, -1.0], ...}})
                      Source(groups=[salesforce.Task AS t], props={OUTPUT_COLS=[t.Type, t.CreatedById, t.ActivityDate, t.OwnerId, t.Id, t.LastStatusChangeDate__c, t.WhoId, t.Request_Type__c], APPROXIMATE_OUTPUT_COLUMNS=8, EST_COL_STATS={t.Type=[-1.0, -1.0, -1.0], t.CreatedById=[-1.0, -1.0, -1.0], t.ActivityDate=[-1.0, -1.0, -1.0], t.OwnerId=[-1.0, -1.0, -1.0], ...}, EST_CARDINALITY=-1.0})
              Access(groups=[salesforce."User" AS u], props={SOURCE_HINT=null, MODEL_ID=Schema name=salesforce, nameInSource=null, uuid=tid:6b7918e394e2-66cf095f-00000000, OUTPUT_COLS=[u.Id, u.Name], APPROXIMATE_OUTPUT_COLUMNS=2, EST_CARDINALITY=-1.0, EST_COL_STATS={u.Id=[-1.0, -1.0, -1.0], u.Name=[-1.0, -1.0, -1.0]}, IS_DEPENDENT_SET=true})
                Select(groups=[salesforce."User" AS u], props={SELECT_CRITERIA=u.Id IN (<dependent values>), IS_DEPENDENT_SET=true, IS_PUSHED=true, OUTPUT_COLS=[u.Id, u.Name]})
                  Source(groups=[salesforce."User" AS u], props={OUTPUT_COLS=[u.Id, u.Name], APPROXIMATE_OUTPUT_COLUMNS=2, EST_COL_STATS={u.Id=[-1.0, -1.0, -1.0], u.Name=[-1.0, -1.0, -1.0]}, EST_CARDINALITY=-1.0})
      
      
      ============================================================================
      EXECUTING CalculateCost
      
      AFTER: 
      Project(groups=[salesforce.Task AS t, salesforce."User" AS u], props={PROJECT_COLS=[t.Id AS Task_id, t.LastStatusChangeDate__c AS Task_time, t.WhoId AS Task_whoId, t.OwnerId AS Task_ownerId, u.Name AS Task_agent, t.Request_Type__c AS Task_department], OUTPUT_COLS=[t.Id AS Task_id, t.LastStatusChangeDate__c AS Task_time, t.WhoId AS Task_whoId, t.OwnerId AS Task_ownerId, u.Name AS Task_agent, t.Request_Type__c AS Task_department], APPROXIMATE_OUTPUT_COLUMNS=6, EST_CARDINALITY=100.0, EST_COL_STATS={t.Id=[-1.0, -1.0, -1.0], t.LastStatusChangeDate__c=[-1.0, -1.0, -1.0], t.WhoId=[-1.0, -1.0, -1.0], t.OwnerId=[-1.0, -1.0, -1.0], ...}})
        TupleLimit(groups=[], props={MAX_TUPLE_LIMIT=100, OUTPUT_COLS=[t.Id, t.LastStatusChangeDate__c, t.WhoId, t.OwnerId, u.Name, t.Request_Type__c], APPROXIMATE_OUTPUT_COLUMNS=6, EST_CARDINALITY=100.0, EST_COL_STATS={t.Id=[-1.0, -1.0, -1.0], t.LastStatusChangeDate__c=[-1.0, -1.0, -1.0], t.WhoId=[-1.0, -1.0, -1.0], t.OwnerId=[-1.0, -1.0, -1.0], ...}})
          Sort(groups=[salesforce.Task AS t], props={SORT_ORDER=ORDER BY t.LastStatusChangeDate__c DESC NULLS FIRST, OUTPUT_COLS=[t.Id, t.LastStatusChangeDate__c, t.WhoId, t.OwnerId, u.Name, t.Request_Type__c], UNRELATED_SORT=false, APPROXIMATE_OUTPUT_COLUMNS=6, EST_CARDINALITY=-1.0, EST_COL_STATS={t.Id=[-1.0, -1.0, -1.0], t.LastStatusChangeDate__c=[-1.0, -1.0, -1.0], t.WhoId=[-1.0, -1.0, -1.0], t.OwnerId=[-1.0, -1.0, -1.0], ...}})
            Join(groups=[salesforce.Task AS t, salesforce."User" AS u], props={JOIN_TYPE=LEFT OUTER JOIN, JOIN_STRATEGY=MERGE, JOIN_CRITERIA=[u.Id = t.OwnerId], OUTPUT_COLS=[t.Id, t.LastStatusChangeDate__c, t.WhoId, t.OwnerId, u.Name, t.Request_Type__c], APPROXIMATE_OUTPUT_COLUMNS=6, IS_COPIED=true, LEFT_EXPRESSIONS=[t.OwnerId], RIGHT_EXPRESSIONS=[u.Id], NON_EQUI_JOIN_CRITERIA=[], EST_CARDINALITY=-1.0, DEPENDENT_VALUE_SOURCE=$dsc/id88, EST_COL_STATS={t.Id=[-1.0, -1.0, -1.0], t.LastStatusChangeDate__c=[-1.0, -1.0, -1.0], t.WhoId=[-1.0, -1.0, -1.0], t.OwnerId=[-1.0, -1.0, -1.0], ...}})
              TupleLimit(groups=[], props={MAX_TUPLE_LIMIT=100, OUTPUT_COLS=[t.OwnerId, t.Id, t.LastStatusChangeDate__c, t.WhoId, t.Request_Type__c], IS_PUSHED=true, EST_CARDINALITY=100.0, EST_COL_STATS={t.OwnerId=[-1.0, -1.0, -1.0], t.Id=[-1.0, -1.0, -1.0], t.LastStatusChangeDate__c=[-1.0, -1.0, -1.0], t.WhoId=[-1.0, -1.0, -1.0], ...}, APPROXIMATE_OUTPUT_COLUMNS=5})
                Sort(groups=[salesforce.Task AS t], props={SORT_ORDER=ORDER BY t.LastStatusChangeDate__c DESC NULLS FIRST, OUTPUT_COLS=[t.OwnerId, t.Id, t.LastStatusChangeDate__c, t.WhoId, t.Request_Type__c], EST_CARDINALITY=-1.0, EST_COL_STATS={t.OwnerId=[-1.0, -1.0, -1.0], t.Id=[-1.0, -1.0, -1.0], t.LastStatusChangeDate__c=[-1.0, -1.0, -1.0], t.WhoId=[-1.0, -1.0, -1.0], ...}, APPROXIMATE_OUTPUT_COLUMNS=5, UNRELATED_SORT=false})
                  Access(groups=[salesforce.Task AS t], props={SOURCE_HINT=null, MODEL_ID=Schema name=salesforce, nameInSource=null, uuid=tid:6b7918e394e2-66cf095f-00000000, OUTPUT_COLS=[t.OwnerId, t.Id, t.LastStatusChangeDate__c, t.WhoId, t.Request_Type__c], APPROXIMATE_OUTPUT_COLUMNS=5, EST_CARDINALITY=-1.0, EST_COL_STATS={t.OwnerId=[-1.0, -1.0, -1.0], t.Id=[-1.0, -1.0, -1.0], t.LastStatusChangeDate__c=[-1.0, -1.0, -1.0], t.WhoId=[-1.0, -1.0, -1.0], ...}})
                    Select(groups=[salesforce.Task AS t], props={SELECT_CRITERIA=(t.Type = 'Online chat') AND (t.CreatedById = '00532000005hioBAAQ') AND (t.ActivityDate > {d'2020-08-29'}), OUTPUT_COLS=[t.OwnerId, t.Id, t.LastStatusChangeDate__c, t.WhoId, t.Request_Type__c], APPROXIMATE_OUTPUT_COLUMNS=5, IS_COPIED=true, EST_CARDINALITY=-1.0, EST_COL_STATS={t.OwnerId=[-1.0, -1.0, -1.0], t.Id=[-1.0, -1.0, -1.0], t.LastStatusChangeDate__c=[-1.0, -1.0, -1.0], t.WhoId=[-1.0, -1.0, -1.0], ...}})
                      Source(groups=[salesforce.Task AS t], props={OUTPUT_COLS=[t.Type, t.CreatedById, t.ActivityDate, t.OwnerId, t.Id, t.LastStatusChangeDate__c, t.WhoId, t.Request_Type__c], APPROXIMATE_OUTPUT_COLUMNS=8, EST_COL_STATS={t.Type=[-1.0, -1.0, -1.0], t.CreatedById=[-1.0, -1.0, -1.0], t.ActivityDate=[-1.0, -1.0, -1.0], t.OwnerId=[-1.0, -1.0, -1.0], ...}, EST_CARDINALITY=-1.0})
              Access(groups=[salesforce."User" AS u], props={SOURCE_HINT=null, MODEL_ID=Schema name=salesforce, nameInSource=null, uuid=tid:6b7918e394e2-66cf095f-00000000, OUTPUT_COLS=[u.Id, u.Name], APPROXIMATE_OUTPUT_COLUMNS=2, EST_CARDINALITY=-1.0, EST_COL_STATS={u.Id=[-1.0, -1.0, -1.0], u.Name=[-1.0, -1.0, -1.0]}, IS_DEPENDENT_SET=true})
                Select(groups=[salesforce."User" AS u], props={SELECT_CRITERIA=u.Id IN (<dependent values>), IS_DEPENDENT_SET=true, IS_PUSHED=true, OUTPUT_COLS=[u.Id, u.Name], EST_CARDINALITY=-1.0, EST_COL_STATS={u.Id=[-1.0, -1.0, -1.0], u.Name=[-1.0, -1.0, -1.0]}})
                  Source(groups=[salesforce."User" AS u], props={OUTPUT_COLS=[u.Id, u.Name], APPROXIMATE_OUTPUT_COLUMNS=2, EST_COL_STATS={u.Id=[-1.0, -1.0, -1.0], u.Name=[-1.0, -1.0, -1.0]}, EST_CARDINALITY=-1.0})
      
      
      ============================================================================
      EXECUTING ImplementJoinStrategy
      
      AFTER: 
      Project(groups=[salesforce.Task AS t, salesforce."User" AS u])
        TupleLimit(groups=[])
          Sort(groups=[salesforce.Task AS t])
            Join(groups=[salesforce.Task AS t, salesforce."User" AS u], props={JOIN_TYPE=LEFT OUTER JOIN, JOIN_STRATEGY=ENHANCED_SORT, JOIN_CRITERIA=[u.Id = t.OwnerId], OUTPUT_COLS=[t.Id, t.LastStatusChangeDate__c, t.WhoId, t.OwnerId, u.Name, t.Request_Type__c], APPROXIMATE_OUTPUT_COLUMNS=6, IS_COPIED=true, LEFT_EXPRESSIONS=[t.OwnerId], RIGHT_EXPRESSIONS=[u.Id], NON_EQUI_JOIN_CRITERIA=[], EST_CARDINALITY=-1.0, DEPENDENT_VALUE_SOURCE=$dsc/id88, EST_COL_STATS={t.Id=[-1.0, -1.0, -1.0], t.LastStatusChangeDate__c=[-1.0, -1.0, -1.0], t.WhoId=[-1.0, -1.0, -1.0], t.OwnerId=[-1.0, -1.0, -1.0], ...}, SORT_LEFT=SORT, IS_RIGHT_DISTINCT=true, SORT_RIGHT=SORT})
              TupleLimit(groups=[], props={MAX_TUPLE_LIMIT=100, OUTPUT_COLS=[t.OwnerId, t.Id, t.LastStatusChangeDate__c, t.WhoId, t.Request_Type__c], IS_PUSHED=true, EST_CARDINALITY=100.0, EST_COL_STATS={t.OwnerId=[-1.0, -1.0, -1.0], t.Id=[-1.0, -1.0, -1.0], t.LastStatusChangeDate__c=[-1.0, -1.0, -1.0], t.WhoId=[-1.0, -1.0, -1.0], ...}, APPROXIMATE_OUTPUT_COLUMNS=5})
                Sort(groups=[salesforce.Task AS t], props={SORT_ORDER=ORDER BY t.LastStatusChangeDate__c DESC NULLS FIRST, OUTPUT_COLS=[t.OwnerId, t.Id, t.LastStatusChangeDate__c, t.WhoId, t.Request_Type__c], EST_CARDINALITY=-1.0, EST_COL_STATS={t.OwnerId=[-1.0, -1.0, -1.0], t.Id=[-1.0, -1.0, -1.0], t.LastStatusChangeDate__c=[-1.0, -1.0, -1.0], t.WhoId=[-1.0, -1.0, -1.0], ...}, APPROXIMATE_OUTPUT_COLUMNS=5, UNRELATED_SORT=false})
                  Access(groups=[salesforce.Task AS t], props={SOURCE_HINT=null, MODEL_ID=Schema name=salesforce, nameInSource=null, uuid=tid:6b7918e394e2-66cf095f-00000000, OUTPUT_COLS=[t.OwnerId, t.Id, t.LastStatusChangeDate__c, t.WhoId, t.Request_Type__c], APPROXIMATE_OUTPUT_COLUMNS=5, EST_CARDINALITY=-1.0, EST_COL_STATS={t.OwnerId=[-1.0, -1.0, -1.0], t.Id=[-1.0, -1.0, -1.0], t.LastStatusChangeDate__c=[-1.0, -1.0, -1.0], t.WhoId=[-1.0, -1.0, -1.0], ...}})
                    Select(groups=[salesforce.Task AS t], props={SELECT_CRITERIA=(t.Type = 'Online chat') AND (t.CreatedById = '00532000005hioBAAQ') AND (t.ActivityDate > {d'2020-08-29'}), OUTPUT_COLS=[t.OwnerId, t.Id, t.LastStatusChangeDate__c, t.WhoId, t.Request_Type__c], APPROXIMATE_OUTPUT_COLUMNS=5, IS_COPIED=true, EST_CARDINALITY=-1.0, EST_COL_STATS={t.OwnerId=[-1.0, -1.0, -1.0], t.Id=[-1.0, -1.0, -1.0], t.LastStatusChangeDate__c=[-1.0, -1.0, -1.0], t.WhoId=[-1.0, -1.0, -1.0], ...}})
                      Source(groups=[salesforce.Task AS t], props={OUTPUT_COLS=[t.Type, t.CreatedById, t.ActivityDate, t.OwnerId, t.Id, t.LastStatusChangeDate__c, t.WhoId, t.Request_Type__c], APPROXIMATE_OUTPUT_COLUMNS=8, EST_COL_STATS={t.Type=[-1.0, -1.0, -1.0], t.CreatedById=[-1.0, -1.0, -1.0], t.ActivityDate=[-1.0, -1.0, -1.0], t.OwnerId=[-1.0, -1.0, -1.0], ...}, EST_CARDINALITY=-1.0})
              Access(groups=[salesforce."User" AS u], props={SOURCE_HINT=null, MODEL_ID=Schema name=salesforce, nameInSource=null, uuid=tid:6b7918e394e2-66cf095f-00000000, OUTPUT_COLS=[u.Id, u.Name], APPROXIMATE_OUTPUT_COLUMNS=2, EST_CARDINALITY=-1.0, EST_COL_STATS={u.Id=[-1.0, -1.0, -1.0], u.Name=[-1.0, -1.0, -1.0]}, IS_DEPENDENT_SET=true})
                Select(groups=[salesforce."User" AS u], props={SELECT_CRITERIA=u.Id IN (<dependent values>), IS_DEPENDENT_SET=true, IS_PUSHED=true, OUTPUT_COLS=[u.Id, u.Name], EST_CARDINALITY=-1.0, EST_COL_STATS={u.Id=[-1.0, -1.0, -1.0], u.Name=[-1.0, -1.0, -1.0]}})
                  Source(groups=[salesforce."User" AS u], props={OUTPUT_COLS=[u.Id, u.Name], APPROXIMATE_OUTPUT_COLUMNS=2, EST_COL_STATS={u.Id=[-1.0, -1.0, -1.0], u.Name=[-1.0, -1.0, -1.0]}, EST_CARDINALITY=-1.0})
      
      
      ============================================================================
      EXECUTING PlanSubqueries
      
      AFTER: 
      Project(groups=[salesforce.Task AS t, salesforce."User" AS u], props={PROJECT_COLS=[t.Id AS Task_id, t.LastStatusChangeDate__c AS Task_time, t.WhoId AS Task_whoId, t.OwnerId AS Task_ownerId, u.Name AS Task_agent, t.Request_Type__c AS Task_department], OUTPUT_COLS=[t.Id AS Task_id, t.LastStatusChangeDate__c AS Task_time, t.WhoId AS Task_whoId, t.OwnerId AS Task_ownerId, u.Name AS Task_agent, t.Request_Type__c AS Task_department], APPROXIMATE_OUTPUT_COLUMNS=6, EST_CARDINALITY=100.0, EST_COL_STATS={t.Id=[-1.0, -1.0, -1.0], t.LastStatusChangeDate__c=[-1.0, -1.0, -1.0], t.WhoId=[-1.0, -1.0, -1.0], t.OwnerId=[-1.0, -1.0, -1.0], ...}})
        TupleLimit(groups=[])
          Sort(groups=[salesforce.Task AS t])
            Join(groups=[salesforce.Task AS t, salesforce."User" AS u])
              TupleLimit(groups=[])
                Sort(groups=[salesforce.Task AS t])
                  Access(groups=[salesforce.Task AS t])
                    Select(groups=[salesforce.Task AS t])
                      Source(groups=[salesforce.Task AS t])
              Access(groups=[salesforce."User" AS u])
                Select(groups=[salesforce."User" AS u])
                  Source(groups=[salesforce."User" AS u])
      
      
      ============================================================================
      EXECUTING MergeCriteria
      
      AFTER: 
      Project(groups=[salesforce.Task AS t, salesforce."User" AS u])
        TupleLimit(groups=[])
          Sort(groups=[salesforce.Task AS t])
            Join(groups=[salesforce.Task AS t, salesforce."User" AS u])
              TupleLimit(groups=[])
                Sort(groups=[salesforce.Task AS t])
                  Access(groups=[salesforce.Task AS t])
                    Select(groups=[salesforce.Task AS t])
                      Source(groups=[salesforce.Task AS t])
              Access(groups=[salesforce."User" AS u])
                Select(groups=[salesforce."User" AS u])
                  Source(groups=[salesforce."User" AS u])
      
      
      ============================================================================
      EXECUTING PlanSorts
      
      AFTER: 
      Project(groups=[salesforce.Task AS t, salesforce."User" AS u])
        TupleLimit(groups=[])
          Sort(groups=[salesforce.Task AS t], props={SORT_ORDER=ORDER BY t.LastStatusChangeDate__c DESC NULLS FIRST, OUTPUT_COLS=[t.Id, t.LastStatusChangeDate__c, t.WhoId, t.OwnerId, u.Name, t.Request_Type__c], UNRELATED_SORT=false, APPROXIMATE_OUTPUT_COLUMNS=6, EST_CARDINALITY=-1.0, EST_COL_STATS={t.Id=[-1.0, -1.0, -1.0], t.LastStatusChangeDate__c=[-1.0, -1.0, -1.0], t.WhoId=[-1.0, -1.0, -1.0], t.OwnerId=[-1.0, -1.0, -1.0], ...}})
            Join(groups=[salesforce.Task AS t, salesforce."User" AS u], props={JOIN_TYPE=LEFT OUTER JOIN, JOIN_STRATEGY=ENHANCED_SORT, JOIN_CRITERIA=[u.Id = t.OwnerId], OUTPUT_COLS=[t.Id, t.LastStatusChangeDate__c, t.WhoId, t.OwnerId, u.Name, t.Request_Type__c], APPROXIMATE_OUTPUT_COLUMNS=6, IS_COPIED=true, LEFT_EXPRESSIONS=[t.OwnerId], RIGHT_EXPRESSIONS=[u.Id], NON_EQUI_JOIN_CRITERIA=[], EST_CARDINALITY=-1.0, DEPENDENT_VALUE_SOURCE=$dsc/id88, EST_COL_STATS={t.Id=[-1.0, -1.0, -1.0], t.LastStatusChangeDate__c=[-1.0, -1.0, -1.0], t.WhoId=[-1.0, -1.0, -1.0], t.OwnerId=[-1.0, -1.0, -1.0], ...}, SORT_LEFT=SORT, IS_RIGHT_DISTINCT=true, SORT_RIGHT=SORT})
              TupleLimit(groups=[])
                Sort(groups=[salesforce.Task AS t], props={SORT_ORDER=ORDER BY t.LastStatusChangeDate__c DESC NULLS FIRST, OUTPUT_COLS=[t.OwnerId, t.Id, t.LastStatusChangeDate__c, t.WhoId, t.Request_Type__c], EST_CARDINALITY=-1.0, EST_COL_STATS={t.OwnerId=[-1.0, -1.0, -1.0], t.Id=[-1.0, -1.0, -1.0], t.LastStatusChangeDate__c=[-1.0, -1.0, -1.0], t.WhoId=[-1.0, -1.0, -1.0], ...}, APPROXIMATE_OUTPUT_COLUMNS=5, UNRELATED_SORT=false})
                  Access(groups=[salesforce.Task AS t], props={SOURCE_HINT=null, MODEL_ID=Schema name=salesforce, nameInSource=null, uuid=tid:6b7918e394e2-66cf095f-00000000, OUTPUT_COLS=[t.OwnerId, t.Id, t.LastStatusChangeDate__c, t.WhoId, t.Request_Type__c], APPROXIMATE_OUTPUT_COLUMNS=5, EST_CARDINALITY=-1.0, EST_COL_STATS={t.OwnerId=[-1.0, -1.0, -1.0], t.Id=[-1.0, -1.0, -1.0], t.LastStatusChangeDate__c=[-1.0, -1.0, -1.0], t.WhoId=[-1.0, -1.0, -1.0], ...}})
                    Select(groups=[salesforce.Task AS t])
                      Source(groups=[salesforce.Task AS t])
              Access(groups=[salesforce."User" AS u])
                Select(groups=[salesforce."User" AS u])
                  Source(groups=[salesforce."User" AS u])
      
      
      ============================================================================
      EXECUTING CollapseSource
      
      AFTER: 
      Project(groups=[salesforce.Task AS t, salesforce."User" AS u])
        TupleLimit(groups=[])
          Sort(groups=[salesforce.Task AS t])
            Join(groups=[salesforce.Task AS t, salesforce."User" AS u])
              TupleLimit(groups=[])
                Sort(groups=[salesforce.Task AS t])
                  Access(groups=[salesforce.Task AS t], props={SOURCE_HINT=null, MODEL_ID=Schema name=salesforce, nameInSource=null, uuid=tid:6b7918e394e2-66cf095f-00000000, OUTPUT_COLS=[t.OwnerId, t.Id, t.LastStatusChangeDate__c, t.WhoId, t.Request_Type__c], APPROXIMATE_OUTPUT_COLUMNS=5, EST_CARDINALITY=-1.0, EST_COL_STATS={t.OwnerId=[-1.0, -1.0, -1.0], t.Id=[-1.0, -1.0, -1.0], t.LastStatusChangeDate__c=[-1.0, -1.0, -1.0], t.WhoId=[-1.0, -1.0, -1.0], ...}, ATOMIC_REQUEST=SELECT t.OwnerId, t.Id, t.LastStatusChangeDate__c, t.WhoId, t.Request_Type__c FROM salesforce.Task AS t WHERE (t.Type = 'Online chat') AND (t.CreatedById = '00532000005hioBAAQ') AND (t.ActivityDate > {d'2020-08-29'})})
              Access(groups=[salesforce."User" AS u], props={SOURCE_HINT=null, MODEL_ID=Schema name=salesforce, nameInSource=null, uuid=tid:6b7918e394e2-66cf095f-00000000, OUTPUT_COLS=[u.Id, u.Name], APPROXIMATE_OUTPUT_COLUMNS=2, EST_CARDINALITY=-1.0, EST_COL_STATS={u.Id=[-1.0, -1.0, -1.0], u.Name=[-1.0, -1.0, -1.0]}, IS_DEPENDENT_SET=true, ATOMIC_REQUEST=SELECT u.Id, u.Name FROM salesforce."User" AS u WHERE u.Id IN (<dependent values>)})
      
      
      ============================================================================
      CONVERTING PLAN TREE TO PROCESS TREE
      
      PROCESS PLAN = 
      ProjectNode(0) output=[t.Id AS Task_id, t.LastStatusChangeDate__c AS Task_time, t.WhoId AS Task_whoId, t.OwnerId AS Task_ownerId, u.Name AS Task_agent, t.Request_Type__c AS Task_department] [t.Id AS Task_id, t.LastStatusChangeDate__c AS Task_time, t.WhoId AS Task_whoId, t.OwnerId AS Task_ownerId, u.Name AS Task_agent, t.Request_Type__c AS Task_department]
        LimitNode(1) output=[t.Id, t.LastStatusChangeDate__c, t.WhoId, t.OwnerId, u.Name, t.Request_Type__c] limit 100
          SortNode(2) output=[t.Id, t.LastStatusChangeDate__c, t.WhoId, t.OwnerId, u.Name, t.Request_Type__c] [SORT] [t.LastStatusChangeDate__c DESC NULLS FIRST]
            JoinNode(3) [Dependent] [ENHANCED SORT JOIN (SORT/SORT)] [LEFT OUTER JOIN] criteria=[t.OwnerId=u.Id] output=[t.Id, t.LastStatusChangeDate__c, t.WhoId, t.OwnerId, u.Name, t.Request_Type__c]
              LimitNode(4) output=[t.OwnerId, t.Id, t.LastStatusChangeDate__c, t.WhoId, t.Request_Type__c] limit 100
                SortNode(5) output=[t.OwnerId, t.Id, t.LastStatusChangeDate__c, t.WhoId, t.Request_Type__c] [SORT] [t.LastStatusChangeDate__c DESC NULLS FIRST]
                  AccessNode(6) output=[t.OwnerId, t.Id, t.LastStatusChangeDate__c, t.WhoId, t.Request_Type__c] SELECT g_0.OwnerId, g_0.Id, g_0.LastStatusChangeDate__c, g_0.WhoId, g_0.Request_Type__c FROM salesforce.Task AS g_0 WHERE (g_0.Type = 'Online chat') AND (g_0.CreatedById = '00532000005hioBAAQ') AND (g_0.ActivityDate > {d'2020-08-29'})
              DependentAccessNode(7) output=[u.Id, u.Name] SELECT g_0.Id, g_0.Name FROM salesforce."User" AS g_0 WHERE g_0.Id IN (<dependent values>)
      
      ============================================================================
      
      ----------------------------------------------------------------------------
      OPTIMIZATION COMPLETE:
      PROCESSOR PLAN:
      ProjectNode(0) output=[t.Id AS Task_id, t.LastStatusChangeDate__c AS Task_time, t.WhoId AS Task_whoId, t.OwnerId AS Task_ownerId, u.Name AS Task_agent, t.Request_Type__c AS Task_department] [t.Id AS Task_id, t.LastStatusChangeDate__c AS Task_time, t.WhoId AS Task_whoId, t.OwnerId AS Task_ownerId, u.Name AS Task_agent, t.Request_Type__c AS Task_department]
        LimitNode(1) output=[t.Id, t.LastStatusChangeDate__c, t.WhoId, t.OwnerId, u.Name, t.Request_Type__c] limit 100
          SortNode(2) output=[t.Id, t.LastStatusChangeDate__c, t.WhoId, t.OwnerId, u.Name, t.Request_Type__c] [SORT] [t.LastStatusChangeDate__c DESC NULLS FIRST]
            JoinNode(3) [Dependent] [ENHANCED SORT JOIN (SORT/SORT)] [LEFT OUTER JOIN] criteria=[t.OwnerId=u.Id] output=[t.Id, t.LastStatusChangeDate__c, t.WhoId, t.OwnerId, u.Name, t.Request_Type__c]
              LimitNode(4) output=[t.OwnerId, t.Id, t.LastStatusChangeDate__c, t.WhoId, t.Request_Type__c] limit 100
                SortNode(5) output=[t.OwnerId, t.Id, t.LastStatusChangeDate__c, t.WhoId, t.Request_Type__c] [SORT] [t.LastStatusChangeDate__c DESC NULLS FIRST]
                  AccessNode(6) output=[t.OwnerId, t.Id, t.LastStatusChangeDate__c, t.WhoId, t.Request_Type__c] SELECT g_0.OwnerId, g_0.Id, g_0.LastStatusChangeDate__c, g_0.WhoId, g_0.Request_Type__c FROM salesforce.Task AS g_0 WHERE (g_0.Type = 'Online chat') AND (g_0.CreatedById = '00532000005hioBAAQ') AND (g_0.ActivityDate > {d'2020-08-29'})
              DependentAccessNode(7) output=[u.Id, u.Name] SELECT g_0.Id, g_0.Name FROM salesforce."User" AS g_0 WHERE g_0.Id IN (<dependent values>)
      
      ============================================================================
      END DEBUG LOG
      
      
      

      In this plan we have real SOQL query

      SELECT g_0.OwnerId, g_0.Id, g_0.LastStatusChangeDate__c, g_0.WhoId, g_0.Request_Type__c FROM salesforce.Task AS g_0 WHERE (g_0.Type = 'Online chat') AND (g_0.CreatedById = '00532000005hioBAAQ') AND (g_0.ActivityDate > {d'2020-08-29'})
      

      3. Another variant of SQL

      SELECT
                t.Id                        AS Task_id
              , t.LastStatusChangeDate__c   AS Task_time
              , t.WhoId                     AS Task_whoId
              , t.OwnerId                   AS Task_ownerId
              , u.Name                      AS Task_agent
              , t.Request_Type__c           AS Task_department
      FROM
                Task AS t
      LEFT OUTER JOIN salesforce.User AS u ON u.Id = t.OwnerId
      WHERE
              t.Type='Online chat'
      AND t.createdById = '00532000005hioBAAQ'
      AND t.ActivityDate > '2020-08-29' 
      ORDER BY 
       t.LastStatusChangeDate__c DESC
      LIMIT 100
      OFFSET 0
      
      PLAN:
      
      ProjectNode
        + Relational Node ID:0
        + Output Columns:
          0: Task_id (string)
          1: Task_time (timestamp)
          2: Task_whoId (string)
          3: Task_ownerId (string)
          4: Task_agent (string)
          5: Task_department (string)
        + Cost Estimates:Estimated Node Cardinality: 100.0
        + Child 0:
          LimitNode
            + Relational Node ID:1
            + Output Columns:
              0: Id (string)
              1: LastStatusChangeDate__c (timestamp)
              2: WhoId (string)
              3: OwnerId (string)
              4: Name (string)
              5: Request_Type__c (string)
            + Cost Estimates:Estimated Node Cardinality: 100.0
            + Child 0:
              SortNode
                + Relational Node ID:2
                + Output Columns:
                  0: Id (string)
                  1: LastStatusChangeDate__c (timestamp)
                  2: WhoId (string)
                  3: OwnerId (string)
                  4: Name (string)
                  5: Request_Type__c (string)
                + Cost Estimates:Estimated Node Cardinality: -1.0
                + Child 0:
                  JoinNode
                    + Relational Node ID:3
                    + Output Columns:
                      0: Id (string)
                      1: LastStatusChangeDate__c (timestamp)
                      2: WhoId (string)
                      3: OwnerId (string)
                      4: Name (string)
                      5: Request_Type__c (string)
                    + Cost Estimates:Estimated Node Cardinality: -1.0
                    + Child 0:
                      AccessNode
                        + Relational Node ID:4
                        + Output Columns:
                          0: OwnerId (string)
                          1: Id (string)
                          2: LastStatusChangeDate__c (timestamp)
                          3: WhoId (string)
                          4: Request_Type__c (string)
                        + Cost Estimates:Estimated Node Cardinality: 100.0
                        + Query:SELECT g_0.OwnerId, g_0.Id, g_0.LastStatusChangeDate__c, g_0.WhoId, g_0.Request_Type__c FROM salesforce.Task AS g_0 WHERE (g_0.Type = 'Online chat') AND (g_0.CreatedById = '00532000005hioBAAQ') AND (g_0.ActivityDate > {d'2020-08-29'}) ORDER BY g_0.LastStatusChangeDate__c DESC LIMIT 100
                        + Model Name:salesforce
                    + Child 1:
                      DependentAccessNode
                        + Relational Node ID:5
                        + Output Columns:
                          0: Id (string)
                          1: Name (string)
                        + Cost Estimates:Estimated Node Cardinality: -1.0
                        + Query:SELECT g_0.Id, g_0.Name FROM salesforce."User" AS g_0 WHERE g_0.Id IN (<dependent values>)
                        + Model Name:salesforce
                    + Dependent Join:true
                    + Join Strategy:ENHANCED SORT JOIN (SORT/SORT)
                    + Join Type:LEFT OUTER JOIN
                    + Join Criteria:t.OwnerId=u.Id
                + Sort Columns:[t.LastStatusChangeDate__c DESC]
                + Sort FrameMode:SORT
            + Row Offset:null
            + Row Limit:100
        + Select Columns:
          0: t.Id AS Task_id
          1: t.LastStatusChangeDate__c AS Task_time
          2: t.WhoId AS Task_whoId
          3: t.OwnerId AS Task_ownerId
          4: u.Name AS Task_agent
          5: t.Request_Type__c AS Task_department
        + Data Bytes Sent:7
        + Planning Time:0
      END PLAN
      
      DEBUG LOG :
      
      nullEND DEBUG LOG
      
      
      

      in this plan we have SOQL

      SELECT g_0.OwnerId, g_0.Id, g_0.LastStatusChangeDate__c, g_0.WhoId, g_0.Request_Type__c FROM salesforce.Task AS g_0 WHERE (g_0.Type = 'Online chat') AND (g_0.CreatedById = '00532000005hioBAAQ') AND (g_0.ActivityDate > {d'2020-08-29'}) ORDER BY g_0.LastStatusChangeDate__c DESC LIMIT 100
      

      in first SQL we have NULLS FIRST in SQL but not in SOQL, but in SOQL this construction is exists. Same for LIMIT construction in first SQL.

      https://developer.salesforce.com/docs/atlas.en-us.soql_sosl.meta/soql_sosl/sforce_api_calls_soql_select_orderby.htm

      So in first and second constructions we have different row sets with real salefforce request

      Show
      1. Spring-boot-teiid application 2. First SQL SELECT t.Id AS Task_id , t.LastStatusChangeDate__c AS Task_time , t.WhoId AS Task_whoId , t.OwnerId AS Task_ownerId , u.Name AS Task_agent , t.Request_Type__c AS Task_department FROM Task AS t LEFT OUTER JOIN salesforce.User AS u ON u.Id = t.OwnerId WHERE t.Type= 'Online chat' AND t.createdById = '00532000005hioBAAQ' AND t.ActivityDate > '2020-08-29' ORDER BY t.LastStatusChangeDate__c DESC NULLS FIRST LIMIT 100 OFFSET 0 Plan PLAN: ProjectNode + Relational Node ID:0 + Output Columns: 0: Task_id (string) 1: Task_time (timestamp) 2: Task_whoId (string) 3: Task_ownerId (string) 4: Task_agent (string) 5: Task_department (string) + Cost Estimates:Estimated Node Cardinality: 100.0 + Child 0: LimitNode + Relational Node ID:1 + Output Columns: 0: Id (string) 1: LastStatusChangeDate__c (timestamp) 2: WhoId (string) 3: OwnerId (string) 4: Name (string) 5: Request_Type__c (string) + Cost Estimates:Estimated Node Cardinality: 100.0 + Child 0: SortNode + Relational Node ID:2 + Output Columns: 0: Id (string) 1: LastStatusChangeDate__c (timestamp) 2: WhoId (string) 3: OwnerId (string) 4: Name (string) 5: Request_Type__c (string) + Cost Estimates:Estimated Node Cardinality: -1.0 + Child 0: JoinNode + Relational Node ID:3 + Output Columns: 0: Id (string) 1: LastStatusChangeDate__c (timestamp) 2: WhoId (string) 3: OwnerId (string) 4: Name (string) 5: Request_Type__c (string) + Cost Estimates:Estimated Node Cardinality: -1.0 + Child 0: LimitNode + Relational Node ID:4 + Output Columns: 0: OwnerId (string) 1: Id (string) 2: LastStatusChangeDate__c (timestamp) 3: WhoId (string) 4: Request_Type__c (string) + Cost Estimates:Estimated Node Cardinality: 100.0 + Child 0: SortNode + Relational Node ID:5 + Output Columns: 0: OwnerId (string) 1: Id (string) 2: LastStatusChangeDate__c (timestamp) 3: WhoId (string) 4: Request_Type__c (string) + Cost Estimates:Estimated Node Cardinality: -1.0 + Child 0: AccessNode + Relational Node ID:6 + Output Columns: 0: OwnerId (string) 1: Id (string) 2: LastStatusChangeDate__c (timestamp) 3: WhoId (string) 4: Request_Type__c (string) + Cost Estimates:Estimated Node Cardinality: -1.0 + Query:SELECT g_0.OwnerId, g_0.Id, g_0.LastStatusChangeDate__c, g_0.WhoId, g_0.Request_Type__c FROM salesforce.Task AS g_0 WHERE (g_0.Type = 'Online chat' ) AND (g_0.CreatedById = '00532000005hioBAAQ' ) AND (g_0.ActivityDate > {d '2020-08-29' }) + Model Name:salesforce + Sort Columns:[t.LastStatusChangeDate__c DESC NULLS FIRST] + Sort FrameMode:SORT + Row Offset: null + Row Limit:100 + Child 1: DependentAccessNode + Relational Node ID:7 + Output Columns: 0: Id (string) 1: Name (string) + Cost Estimates:Estimated Node Cardinality: -1.0 + Query:SELECT g_0.Id, g_0.Name FROM salesforce. "User" AS g_0 WHERE g_0.Id IN (<dependent values>) + Model Name:salesforce + Dependent Join: true + Join Strategy:ENHANCED SORT JOIN (SORT/SORT) + Join Type:LEFT OUTER JOIN + Join Criteria:t.OwnerId=u.Id + Sort Columns:[t.LastStatusChangeDate__c DESC NULLS FIRST] + Sort FrameMode:SORT + Row Offset: null + Row Limit:100 + Select Columns: 0: t.Id AS Task_id 1: t.LastStatusChangeDate__c AS Task_time 2: t.WhoId AS Task_whoId 3: t.OwnerId AS Task_ownerId 4: u.Name AS Task_agent 5: t.Request_Type__c AS Task_department + Data Bytes Sent:7 + Planning Time:7 END PLAN DEBUG LOG : ============================================================================ USER COMMAND: SELECT t.Id AS Task_id, t.LastStatusChangeDate__c AS Task_time, t.WhoId AS Task_whoId, t.OwnerId AS Task_ownerId, u.Name AS Task_agent, t.Request_Type__c AS Task_department FROM salesforce.Task AS t LEFT OUTER JOIN salesforce. "User" AS u ON u.Id = t.OwnerId WHERE (t.Type = 'Online chat' ) AND (t.CreatedById = '00532000005hioBAAQ' ) AND (t.ActivityDate > {d '2020-08-29' }) ORDER BY Task_time DESC NULLS FIRST LIMIT 100 ---------------------------------------------------------------------------- OPTIMIZE: SELECT t.Id AS Task_id, t.LastStatusChangeDate__c AS Task_time, t.WhoId AS Task_whoId, t.OwnerId AS Task_ownerId, u.Name AS Task_agent, t.Request_Type__c AS Task_department FROM salesforce.Task AS t LEFT OUTER JOIN salesforce. "User" AS u ON u.Id = t.OwnerId WHERE (t.Type = 'Online chat' ) AND (t.CreatedById = '00532000005hioBAAQ' ) AND (t.ActivityDate > {d '2020-08-29' }) ORDER BY Task_time DESC NULLS FIRST LIMIT 100 ---------------------------------------------------------------------------- GENERATE CANONICAL: SELECT t.Id AS Task_id, t.LastStatusChangeDate__c AS Task_time, t.WhoId AS Task_whoId, t.OwnerId AS Task_ownerId, u.Name AS Task_agent, t.Request_Type__c AS Task_department FROM salesforce.Task AS t LEFT OUTER JOIN salesforce. "User" AS u ON u.Id = t.OwnerId WHERE (t.Type = 'Online chat' ) AND (t.CreatedById = '00532000005hioBAAQ' ) AND (t.ActivityDate > {d '2020-08-29' }) ORDER BY Task_time DESC NULLS FIRST LIMIT 100 CANONICAL PLAN: TupleLimit(groups=[], props={MAX_TUPLE_LIMIT=100}) Sort(groups=[salesforce.Task AS t], props={SORT_ORDER=ORDER BY Task_time DESC NULLS FIRST}) Project(groups=[salesforce.Task AS t, salesforce. "User" AS u], props={PROJECT_COLS=[t.Id AS Task_id, t.LastStatusChangeDate__c AS Task_time, t.WhoId AS Task_whoId, t.OwnerId AS Task_ownerId, u.Name AS Task_agent, t.Request_Type__c AS Task_department]}) Select(groups=[salesforce.Task AS t], props={SELECT_CRITERIA=t.ActivityDate > {d '2020-08-29' }}) Select(groups=[salesforce.Task AS t], props={SELECT_CRITERIA=t.CreatedById = '00532000005hioBAAQ' }) Select(groups=[salesforce.Task AS t], props={SELECT_CRITERIA=t.Type = 'Online chat' }) Join(groups=[salesforce.Task AS t, salesforce. "User" AS u], props={JOIN_TYPE=LEFT OUTER JOIN, JOIN_STRATEGY=NESTED_LOOP, JOIN_CRITERIA=[u.Id = t.OwnerId]}) Source(groups=[salesforce.Task AS t]) Source(groups=[salesforce. "User" AS u]) ============================================================================ EXECUTING PlaceAccess AFTER: TupleLimit(groups=[], props={MAX_TUPLE_LIMIT=100}) Sort(groups=[salesforce.Task AS t], props={SORT_ORDER=ORDER BY Task_time DESC NULLS FIRST}) Project(groups=[salesforce.Task AS t, salesforce. "User" AS u], props={PROJECT_COLS=[t.Id AS Task_id, t.LastStatusChangeDate__c AS Task_time, t.WhoId AS Task_whoId, t.OwnerId AS Task_ownerId, u.Name AS Task_agent, t.Request_Type__c AS Task_department]}) Select(groups=[salesforce.Task AS t], props={SELECT_CRITERIA=t.ActivityDate > {d '2020-08-29' }}) Select(groups=[salesforce.Task AS t], props={SELECT_CRITERIA=t.CreatedById = '00532000005hioBAAQ' }) Select(groups=[salesforce.Task AS t], props={SELECT_CRITERIA=t.Type = 'Online chat' }) Join(groups=[salesforce.Task AS t, salesforce. "User" AS u], props={JOIN_TYPE=LEFT OUTER JOIN, JOIN_STRATEGY=NESTED_LOOP, JOIN_CRITERIA=[u.Id = t.OwnerId]}) Access(groups=[salesforce.Task AS t], props={SOURCE_HINT= null , MODEL_ID=Schema name=salesforce, nameInSource= null , uuid=tid:6b7918e394e2-66cf095f-00000000}) Source(groups=[salesforce.Task AS t]) Access(groups=[salesforce. "User" AS u], props={SOURCE_HINT= null , MODEL_ID=Schema name=salesforce, nameInSource= null , uuid=tid:6b7918e394e2-66cf095f-00000000}) Source(groups=[salesforce. "User" AS u]) ============================================================================ EXECUTING AssignOutputElements AFTER: TupleLimit(groups=[], props={MAX_TUPLE_LIMIT=100, OUTPUT_COLS=[t.Id AS Task_id, t.LastStatusChangeDate__c AS Task_time, t.WhoId AS Task_whoId, t.OwnerId AS Task_ownerId, u.Name AS Task_agent, t.Request_Type__c AS Task_department]}) Sort(groups=[salesforce.Task AS t], props={SORT_ORDER=ORDER BY Task_time DESC NULLS FIRST, OUTPUT_COLS=[t.Id AS Task_id, t.LastStatusChangeDate__c AS Task_time, t.WhoId AS Task_whoId, t.OwnerId AS Task_ownerId, u.Name AS Task_agent, t.Request_Type__c AS Task_department], UNRELATED_SORT= false }) Project(groups=[salesforce.Task AS t, salesforce. "User" AS u], props={PROJECT_COLS=[t.Id AS Task_id, t.LastStatusChangeDate__c AS Task_time, t.WhoId AS Task_whoId, t.OwnerId AS Task_ownerId, u.Name AS Task_agent, t.Request_Type__c AS Task_department], OUTPUT_COLS=[t.Id AS Task_id, t.LastStatusChangeDate__c AS Task_time, t.WhoId AS Task_whoId, t.OwnerId AS Task_ownerId, u.Name AS Task_agent, t.Request_Type__c AS Task_department]}) Select(groups=[salesforce.Task AS t], props={SELECT_CRITERIA=t.ActivityDate > {d '2020-08-29' }, OUTPUT_COLS=[t.Id, t.LastStatusChangeDate__c, t.WhoId, t.OwnerId, u.Name, t.Request_Type__c]}) Select(groups=[salesforce.Task AS t], props={SELECT_CRITERIA=t.CreatedById = '00532000005hioBAAQ' , OUTPUT_COLS=[t.ActivityDate, t.Id, t.LastStatusChangeDate__c, t.WhoId, t.OwnerId, u.Name, t.Request_Type__c]}) Select(groups=[salesforce.Task AS t], props={SELECT_CRITERIA=t.Type = 'Online chat' , OUTPUT_COLS=[t.CreatedById, t.ActivityDate, t.Id, t.LastStatusChangeDate__c, t.WhoId, t.OwnerId, u.Name, t.Request_Type__c]}) Join(groups=[salesforce.Task AS t, salesforce. "User" AS u], props={JOIN_TYPE=LEFT OUTER JOIN, JOIN_STRATEGY=NESTED_LOOP, JOIN_CRITERIA=[u.Id = t.OwnerId], OUTPUT_COLS=[t.Type, t.CreatedById, t.ActivityDate, t.Id, t.LastStatusChangeDate__c, t.WhoId, t.OwnerId, u.Name, t.Request_Type__c]}) Access(groups=[salesforce.Task AS t], props={SOURCE_HINT= null , MODEL_ID=Schema name=salesforce, nameInSource= null , uuid=tid:6b7918e394e2-66cf095f-00000000, OUTPUT_COLS=[t.OwnerId, t.Type, t.CreatedById, t.ActivityDate, t.Id, t.LastStatusChangeDate__c, t.WhoId, t.Request_Type__c]}) Source(groups=[salesforce.Task AS t], props={OUTPUT_COLS=[t.OwnerId, t.Type, t.CreatedById, t.ActivityDate, t.Id, t.LastStatusChangeDate__c, t.WhoId, t.Request_Type__c]}) Access(groups=[salesforce. "User" AS u], props={SOURCE_HINT= null , MODEL_ID=Schema name=salesforce, nameInSource= null , uuid=tid:6b7918e394e2-66cf095f-00000000, OUTPUT_COLS=[u.Id, u.Name]}) Source(groups=[salesforce. "User" AS u], props={OUTPUT_COLS=[u.Id, u.Name]}) ============================================================================ EXECUTING RemoveOptionalJoins AFTER: TupleLimit(groups=[]) Sort(groups=[salesforce.Task AS t]) Project(groups=[salesforce.Task AS t, salesforce. "User" AS u]) Select(groups=[salesforce.Task AS t], props={SELECT_CRITERIA=t.ActivityDate > {d '2020-08-29' }, OUTPUT_COLS=[t.Id, t.LastStatusChangeDate__c, t.WhoId, t.OwnerId, u.Name, t.Request_Type__c]}) Select(groups=[salesforce.Task AS t]) Select(groups=[salesforce.Task AS t]) Join(groups=[salesforce.Task AS t, salesforce. "User" AS u], props={JOIN_TYPE=LEFT OUTER JOIN, JOIN_STRATEGY=NESTED_LOOP, JOIN_CRITERIA=[u.Id = t.OwnerId], OUTPUT_COLS=[t.Type, t.CreatedById, t.ActivityDate, t.Id, t.LastStatusChangeDate__c, t.WhoId, t.OwnerId, u.Name, t.Request_Type__c]}) Access(groups=[salesforce.Task AS t]) Source(groups=[salesforce.Task AS t]) Access(groups=[salesforce. "User" AS u]) Source(groups=[salesforce. "User" AS u]) ============================================================================ EXECUTING PushSelectCriteria AFTER: TupleLimit(groups=[]) Sort(groups=[salesforce.Task AS t]) Project(groups=[salesforce.Task AS t, salesforce. "User" AS u], props={PROJECT_COLS=[t.Id AS Task_id, t.LastStatusChangeDate__c AS Task_time, t.WhoId AS Task_whoId, t.OwnerId AS Task_ownerId, u.Name AS Task_agent, t.Request_Type__c AS Task_department], OUTPUT_COLS=[t.Id AS Task_id, t.LastStatusChangeDate__c AS Task_time, t.WhoId AS Task_whoId, t.OwnerId AS Task_ownerId, u.Name AS Task_agent, t.Request_Type__c AS Task_department]}) Join(groups=[salesforce.Task AS t, salesforce. "User" AS u], props={JOIN_TYPE=LEFT OUTER JOIN, JOIN_STRATEGY=NESTED_LOOP, JOIN_CRITERIA=[u.Id = t.OwnerId], OUTPUT_COLS=[t.Type, t.CreatedById, t.ActivityDate, t.Id, t.LastStatusChangeDate__c, t.WhoId, t.OwnerId, u.Name, t.Request_Type__c]}) Access(groups=[salesforce.Task AS t], props={SOURCE_HINT= null , MODEL_ID=Schema name=salesforce, nameInSource= null , uuid=tid:6b7918e394e2-66cf095f-00000000, OUTPUT_COLS=[t.OwnerId, t.Type, t.CreatedById, t.ActivityDate, t.Id, t.LastStatusChangeDate__c, t.WhoId, t.Request_Type__c]}) Select(groups=[salesforce.Task AS t], props={SELECT_CRITERIA=(t.Type = 'Online chat' ) AND (t.CreatedById = '00532000005hioBAAQ' ) AND (t.ActivityDate > {d '2020-08-29' }), OUTPUT_COLS=[t.Id, t.LastStatusChangeDate__c, t.WhoId, t.OwnerId, u.Name, t.Request_Type__c]}) Source(groups=[salesforce.Task AS t], props={OUTPUT_COLS=[t.OwnerId, t.Type, t.CreatedById, t.ActivityDate, t.Id, t.LastStatusChangeDate__c, t.WhoId, t.Request_Type__c]}) Access(groups=[salesforce. "User" AS u]) Source(groups=[salesforce. "User" AS u]) ============================================================================ EXECUTING PushNonJoinCriteria AFTER: TupleLimit(groups=[]) Sort(groups=[salesforce.Task AS t]) Project(groups=[salesforce.Task AS t, salesforce. "User" AS u]) Join(groups=[salesforce.Task AS t, salesforce. "User" AS u], props={JOIN_TYPE=LEFT OUTER JOIN, JOIN_STRATEGY=NESTED_LOOP, JOIN_CRITERIA=[u.Id = t.OwnerId], OUTPUT_COLS=[t.Type, t.CreatedById, t.ActivityDate, t.Id, t.LastStatusChangeDate__c, t.WhoId, t.OwnerId, u.Name, t.Request_Type__c]}) Access(groups=[salesforce.Task AS t]) Select(groups=[salesforce.Task AS t]) Source(groups=[salesforce.Task AS t]) Access(groups=[salesforce. "User" AS u]) Source(groups=[salesforce. "User" AS u]) ============================================================================ EXECUTING CleanCriteria AFTER: TupleLimit(groups=[], props={MAX_TUPLE_LIMIT=100, OUTPUT_COLS= null , APPROXIMATE_OUTPUT_COLUMNS=6}) Sort(groups=[salesforce.Task AS t], props={SORT_ORDER=ORDER BY Task_time DESC NULLS FIRST, OUTPUT_COLS= null , UNRELATED_SORT= false , APPROXIMATE_OUTPUT_COLUMNS=6}) Project(groups=[salesforce.Task AS t, salesforce. "User" AS u], props={PROJECT_COLS=[t.Id AS Task_id, t.LastStatusChangeDate__c AS Task_time, t.WhoId AS Task_whoId, t.OwnerId AS Task_ownerId, u.Name AS Task_agent, t.Request_Type__c AS Task_department], OUTPUT_COLS= null , APPROXIMATE_OUTPUT_COLUMNS=6}) Join(groups=[salesforce.Task AS t, salesforce. "User" AS u], props={JOIN_TYPE=LEFT OUTER JOIN, JOIN_STRATEGY=NESTED_LOOP, JOIN_CRITERIA=[u.Id = t.OwnerId], OUTPUT_COLS= null , APPROXIMATE_OUTPUT_COLUMNS=9}) Access(groups=[salesforce.Task AS t], props={SOURCE_HINT= null , MODEL_ID=Schema name=salesforce, nameInSource= null , uuid=tid:6b7918e394e2-66cf095f-00000000, OUTPUT_COLS= null , APPROXIMATE_OUTPUT_COLUMNS=8}) Select(groups=[salesforce.Task AS t], props={SELECT_CRITERIA=(t.Type = 'Online chat' ) AND (t.CreatedById = '00532000005hioBAAQ' ) AND (t.ActivityDate > {d '2020-08-29' }), OUTPUT_COLS= null , APPROXIMATE_OUTPUT_COLUMNS=6}) Source(groups=[salesforce.Task AS t], props={OUTPUT_COLS= null , APPROXIMATE_OUTPUT_COLUMNS=8}) Access(groups=[salesforce. "User" AS u], props={SOURCE_HINT= null , MODEL_ID=Schema name=salesforce, nameInSource= null , uuid=tid:6b7918e394e2-66cf095f-00000000, OUTPUT_COLS= null , APPROXIMATE_OUTPUT_COLUMNS=2}) Source(groups=[salesforce. "User" AS u], props={OUTPUT_COLS= null , APPROXIMATE_OUTPUT_COLUMNS=2}) ============================================================================ EXECUTING RaiseAccess AFTER: TupleLimit(groups=[]) Sort(groups=[salesforce.Task AS t]) Project(groups=[salesforce.Task AS t, salesforce. "User" AS u]) Join(groups=[salesforce.Task AS t, salesforce. "User" AS u], props={JOIN_TYPE=LEFT OUTER JOIN, JOIN_STRATEGY=NESTED_LOOP, JOIN_CRITERIA=[u.Id = t.OwnerId], OUTPUT_COLS= null , APPROXIMATE_OUTPUT_COLUMNS=9}) Access(groups=[salesforce.Task AS t], props={SOURCE_HINT= null , MODEL_ID=Schema name=salesforce, nameInSource= null , uuid=tid:6b7918e394e2-66cf095f-00000000, OUTPUT_COLS= null , APPROXIMATE_OUTPUT_COLUMNS=8}) Select(groups=[salesforce.Task AS t]) Source(groups=[salesforce.Task AS t]) Access(groups=[salesforce. "User" AS u], props={SOURCE_HINT= null , MODEL_ID=Schema name=salesforce, nameInSource= null , uuid=tid:6b7918e394e2-66cf095f-00000000, OUTPUT_COLS= null , APPROXIMATE_OUTPUT_COLUMNS=2}) Source(groups=[salesforce. "User" AS u]) ============================================================================ EXECUTING PlanOuterJoins AFTER: TupleLimit(groups=[]) Sort(groups=[salesforce.Task AS t]) Project(groups=[salesforce.Task AS t, salesforce. "User" AS u]) Join(groups=[salesforce.Task AS t, salesforce. "User" AS u]) Access(groups=[salesforce.Task AS t]) Select(groups=[salesforce.Task AS t]) Source(groups=[salesforce.Task AS t]) Access(groups=[salesforce. "User" AS u]) Source(groups=[salesforce. "User" AS u]) ============================================================================ EXECUTING CopyCriteria AFTER: TupleLimit(groups=[]) Sort(groups=[salesforce.Task AS t]) Project(groups=[salesforce.Task AS t, salesforce. "User" AS u]) Join(groups=[salesforce.Task AS t, salesforce. "User" AS u], props={JOIN_TYPE=LEFT OUTER JOIN, JOIN_STRATEGY=NESTED_LOOP, JOIN_CRITERIA=[u.Id = t.OwnerId], OUTPUT_COLS= null , APPROXIMATE_OUTPUT_COLUMNS=9, IS_COPIED= true }) Access(groups=[salesforce.Task AS t]) Select(groups=[salesforce.Task AS t], props={SELECT_CRITERIA=(t.Type = 'Online chat' ) AND (t.CreatedById = '00532000005hioBAAQ' ) AND (t.ActivityDate > {d '2020-08-29' }), OUTPUT_COLS= null , APPROXIMATE_OUTPUT_COLUMNS=6, IS_COPIED= true }) Source(groups=[salesforce.Task AS t]) Access(groups=[salesforce. "User" AS u]) Source(groups=[salesforce. "User" AS u]) ============================================================================ EXECUTING CleanCriteria AFTER: TupleLimit(groups=[], props={MAX_TUPLE_LIMIT=100, OUTPUT_COLS= null , APPROXIMATE_OUTPUT_COLUMNS=6}) Sort(groups=[salesforce.Task AS t], props={SORT_ORDER=ORDER BY Task_time DESC NULLS FIRST, OUTPUT_COLS= null , UNRELATED_SORT= false , APPROXIMATE_OUTPUT_COLUMNS=6}) Project(groups=[salesforce.Task AS t, salesforce. "User" AS u], props={PROJECT_COLS=[t.Id AS Task_id, t.LastStatusChangeDate__c AS Task_time, t.WhoId AS Task_whoId, t.OwnerId AS Task_ownerId, u.Name AS Task_agent, t.Request_Type__c AS Task_department], OUTPUT_COLS= null , APPROXIMATE_OUTPUT_COLUMNS=6}) Join(groups=[salesforce.Task AS t, salesforce. "User" AS u], props={JOIN_TYPE=LEFT OUTER JOIN, JOIN_STRATEGY=NESTED_LOOP, JOIN_CRITERIA=[u.Id = t.OwnerId], OUTPUT_COLS= null , APPROXIMATE_OUTPUT_COLUMNS=9, IS_COPIED= true }) Access(groups=[salesforce.Task AS t], props={SOURCE_HINT= null , MODEL_ID=Schema name=salesforce, nameInSource= null , uuid=tid:6b7918e394e2-66cf095f-00000000, OUTPUT_COLS= null , APPROXIMATE_OUTPUT_COLUMNS=8}) Select(groups=[salesforce.Task AS t], props={SELECT_CRITERIA=(t.Type = 'Online chat' ) AND (t.CreatedById = '00532000005hioBAAQ' ) AND (t.ActivityDate > {d '2020-08-29' }), OUTPUT_COLS= null , APPROXIMATE_OUTPUT_COLUMNS=6, IS_COPIED= true }) Source(groups=[salesforce.Task AS t], props={OUTPUT_COLS= null , APPROXIMATE_OUTPUT_COLUMNS=8}) Access(groups=[salesforce. "User" AS u], props={SOURCE_HINT= null , MODEL_ID=Schema name=salesforce, nameInSource= null , uuid=tid:6b7918e394e2-66cf095f-00000000, OUTPUT_COLS= null , APPROXIMATE_OUTPUT_COLUMNS=2}) Source(groups=[salesforce. "User" AS u], props={OUTPUT_COLS= null , APPROXIMATE_OUTPUT_COLUMNS=2}) ============================================================================ EXECUTING PlanJoins AFTER: TupleLimit(groups=[]) Sort(groups=[salesforce.Task AS t]) Project(groups=[salesforce.Task AS t, salesforce. "User" AS u]) Join(groups=[salesforce.Task AS t, salesforce. "User" AS u], props={JOIN_TYPE=LEFT OUTER JOIN, JOIN_STRATEGY=NESTED_LOOP, JOIN_CRITERIA=[u.Id = t.OwnerId], OUTPUT_COLS= null , APPROXIMATE_OUTPUT_COLUMNS=9, IS_COPIED= true }) Access(groups=[salesforce.Task AS t]) Select(groups=[salesforce.Task AS t]) Source(groups=[salesforce.Task AS t]) Access(groups=[salesforce. "User" AS u]) Source(groups=[salesforce. "User" AS u]) ============================================================================ EXECUTING PushSelectCriteria AFTER: TupleLimit(groups=[]) Sort(groups=[salesforce.Task AS t]) Project(groups=[salesforce.Task AS t, salesforce. "User" AS u]) Join(groups=[salesforce.Task AS t, salesforce. "User" AS u]) Access(groups=[salesforce.Task AS t]) Select(groups=[salesforce.Task AS t], props={SELECT_CRITERIA=(t.Type = 'Online chat' ) AND (t.CreatedById = '00532000005hioBAAQ' ) AND (t.ActivityDate > {d '2020-08-29' }), OUTPUT_COLS= null , APPROXIMATE_OUTPUT_COLUMNS=6, IS_COPIED= true }) Source(groups=[salesforce.Task AS t]) Access(groups=[salesforce. "User" AS u]) Source(groups=[salesforce. "User" AS u]) ============================================================================ EXECUTING RaiseAccess AFTER: TupleLimit(groups=[]) Sort(groups=[salesforce.Task AS t]) Project(groups=[salesforce.Task AS t, salesforce. "User" AS u]) Join(groups=[salesforce.Task AS t, salesforce. "User" AS u], props={JOIN_TYPE=LEFT OUTER JOIN, JOIN_STRATEGY=NESTED_LOOP, JOIN_CRITERIA=[u.Id = t.OwnerId], OUTPUT_COLS= null , APPROXIMATE_OUTPUT_COLUMNS=9, IS_COPIED= true }) Access(groups=[salesforce.Task AS t], props={SOURCE_HINT= null , MODEL_ID=Schema name=salesforce, nameInSource= null , uuid=tid:6b7918e394e2-66cf095f-00000000, OUTPUT_COLS= null , APPROXIMATE_OUTPUT_COLUMNS=8}) Select(groups=[salesforce.Task AS t]) Source(groups=[salesforce.Task AS t]) Access(groups=[salesforce. "User" AS u], props={SOURCE_HINT= null , MODEL_ID=Schema name=salesforce, nameInSource= null , uuid=tid:6b7918e394e2-66cf095f-00000000, OUTPUT_COLS= null , APPROXIMATE_OUTPUT_COLUMNS=2}) Source(groups=[salesforce. "User" AS u]) ============================================================================ EXECUTING PlanOuterJoins AFTER: TupleLimit(groups=[]) Sort(groups=[salesforce.Task AS t]) Project(groups=[salesforce.Task AS t, salesforce. "User" AS u]) Join(groups=[salesforce.Task AS t, salesforce. "User" AS u], props={JOIN_TYPE=LEFT OUTER JOIN, JOIN_STRATEGY=NESTED_LOOP, JOIN_CRITERIA=[u.Id = t.OwnerId], OUTPUT_COLS= null , APPROXIMATE_OUTPUT_COLUMNS=9, IS_COPIED= true }) Access(groups=[salesforce.Task AS t]) Select(groups=[salesforce.Task AS t]) Source(groups=[salesforce.Task AS t]) Access(groups=[salesforce. "User" AS u]) Source(groups=[salesforce. "User" AS u]) ============================================================================ EXECUTING ChooseJoinStrategy AFTER: TupleLimit(groups=[]) Sort(groups=[salesforce.Task AS t]) Project(groups=[salesforce.Task AS t, salesforce. "User" AS u]) Join(groups=[salesforce.Task AS t, salesforce. "User" AS u], props={JOIN_TYPE=LEFT OUTER JOIN, JOIN_STRATEGY=MERGE, JOIN_CRITERIA=[u.Id = t.OwnerId], OUTPUT_COLS= null , APPROXIMATE_OUTPUT_COLUMNS=9, IS_COPIED= true , LEFT_EXPRESSIONS=[t.OwnerId], RIGHT_EXPRESSIONS=[u.Id], NON_EQUI_JOIN_CRITERIA=[]}) Access(groups=[salesforce.Task AS t]) Select(groups=[salesforce.Task AS t]) Source(groups=[salesforce.Task AS t]) Access(groups=[salesforce. "User" AS u]) Source(groups=[salesforce. "User" AS u]) ============================================================================ EXECUTING PushLargeIn AFTER: TupleLimit(groups=[]) Sort(groups=[salesforce.Task AS t]) Project(groups=[salesforce.Task AS t, salesforce. "User" AS u]) Join(groups=[salesforce.Task AS t, salesforce. "User" AS u]) Access(groups=[salesforce.Task AS t]) Select(groups=[salesforce.Task AS t]) Source(groups=[salesforce.Task AS t]) Access(groups=[salesforce. "User" AS u]) Source(groups=[salesforce. "User" AS u]) ============================================================================ EXECUTING AssignOutputElements AFTER: TupleLimit(groups=[], props={MAX_TUPLE_LIMIT=100, OUTPUT_COLS=[t.Id AS Task_id, t.LastStatusChangeDate__c AS Task_time, t.WhoId AS Task_whoId, t.OwnerId AS Task_ownerId, u.Name AS Task_agent, t.Request_Type__c AS Task_department], APPROXIMATE_OUTPUT_COLUMNS=6}) Sort(groups=[salesforce.Task AS t], props={SORT_ORDER=ORDER BY Task_time DESC NULLS FIRST, OUTPUT_COLS=[t.Id AS Task_id, t.LastStatusChangeDate__c AS Task_time, t.WhoId AS Task_whoId, t.OwnerId AS Task_ownerId, u.Name AS Task_agent, t.Request_Type__c AS Task_department], UNRELATED_SORT= false , APPROXIMATE_OUTPUT_COLUMNS=6}) Project(groups=[salesforce.Task AS t, salesforce. "User" AS u], props={PROJECT_COLS=[t.Id AS Task_id, t.LastStatusChangeDate__c AS Task_time, t.WhoId AS Task_whoId, t.OwnerId AS Task_ownerId, u.Name AS Task_agent, t.Request_Type__c AS Task_department], OUTPUT_COLS=[t.Id AS Task_id, t.LastStatusChangeDate__c AS Task_time, t.WhoId AS Task_whoId, t.OwnerId AS Task_ownerId, u.Name AS Task_agent, t.Request_Type__c AS Task_department], APPROXIMATE_OUTPUT_COLUMNS=6}) Join(groups=[salesforce.Task AS t, salesforce. "User" AS u], props={JOIN_TYPE=LEFT OUTER JOIN, JOIN_STRATEGY=MERGE, JOIN_CRITERIA=[u.Id = t.OwnerId], OUTPUT_COLS=[t.Id, t.LastStatusChangeDate__c, t.WhoId, t.OwnerId, u.Name, t.Request_Type__c], APPROXIMATE_OUTPUT_COLUMNS=9, IS_COPIED= true , LEFT_EXPRESSIONS=[t.OwnerId], RIGHT_EXPRESSIONS=[u.Id], NON_EQUI_JOIN_CRITERIA=[]}) Access(groups=[salesforce.Task AS t], props={SOURCE_HINT= null , MODEL_ID=Schema name=salesforce, nameInSource= null , uuid=tid:6b7918e394e2-66cf095f-00000000, OUTPUT_COLS=[t.OwnerId, t.Id, t.LastStatusChangeDate__c, t.WhoId, t.Request_Type__c], APPROXIMATE_OUTPUT_COLUMNS=8}) Select(groups=[salesforce.Task AS t], props={SELECT_CRITERIA=(t.Type = 'Online chat' ) AND (t.CreatedById = '00532000005hioBAAQ' ) AND (t.ActivityDate > {d '2020-08-29' }), OUTPUT_COLS=[t.OwnerId, t.Id, t.LastStatusChangeDate__c, t.WhoId, t.Request_Type__c], APPROXIMATE_OUTPUT_COLUMNS=6, IS_COPIED= true }) Source(groups=[salesforce.Task AS t], props={OUTPUT_COLS=[t.Type, t.CreatedById, t.ActivityDate, t.OwnerId, t.Id, t.LastStatusChangeDate__c, t.WhoId, t.Request_Type__c], APPROXIMATE_OUTPUT_COLUMNS=8}) Access(groups=[salesforce. "User" AS u], props={SOURCE_HINT= null , MODEL_ID=Schema name=salesforce, nameInSource= null , uuid=tid:6b7918e394e2-66cf095f-00000000, OUTPUT_COLS=[u.Id, u.Name], APPROXIMATE_OUTPUT_COLUMNS=2}) Source(groups=[salesforce. "User" AS u], props={OUTPUT_COLS=[u.Id, u.Name], APPROXIMATE_OUTPUT_COLUMNS=2}) ============================================================================ EXECUTING PushLimit AFTER: Project(groups=[salesforce.Task AS t, salesforce. "User" AS u], props={PROJECT_COLS=[t.Id AS Task_id, t.LastStatusChangeDate__c AS Task_time, t.WhoId AS Task_whoId, t.OwnerId AS Task_ownerId, u.Name AS Task_agent, t.Request_Type__c AS Task_department], OUTPUT_COLS=[t.Id AS Task_id, t.LastStatusChangeDate__c AS Task_time, t.WhoId AS Task_whoId, t.OwnerId AS Task_ownerId, u.Name AS Task_agent, t.Request_Type__c AS Task_department], APPROXIMATE_OUTPUT_COLUMNS=6}) TupleLimit(groups=[], props={MAX_TUPLE_LIMIT=100, OUTPUT_COLS=[t.Id, t.LastStatusChangeDate__c, t.WhoId, t.OwnerId, u.Name, t.Request_Type__c], APPROXIMATE_OUTPUT_COLUMNS=6}) Sort(groups=[salesforce.Task AS t], props={SORT_ORDER=ORDER BY t.LastStatusChangeDate__c DESC NULLS FIRST, OUTPUT_COLS=[t.Id, t.LastStatusChangeDate__c, t.WhoId, t.OwnerId, u.Name, t.Request_Type__c], UNRELATED_SORT= false , APPROXIMATE_OUTPUT_COLUMNS=6}) Join(groups=[salesforce.Task AS t, salesforce. "User" AS u], props={JOIN_TYPE=LEFT OUTER JOIN, JOIN_STRATEGY=MERGE, JOIN_CRITERIA=[u.Id = t.OwnerId], OUTPUT_COLS=[t.Id, t.LastStatusChangeDate__c, t.WhoId, t.OwnerId, u.Name, t.Request_Type__c], APPROXIMATE_OUTPUT_COLUMNS=9, IS_COPIED= true , LEFT_EXPRESSIONS=[t.OwnerId], RIGHT_EXPRESSIONS=[u.Id], NON_EQUI_JOIN_CRITERIA=[]}) TupleLimit(groups=[], props={MAX_TUPLE_LIMIT=100, OUTPUT_COLS=[t.OwnerId, t.Id, t.LastStatusChangeDate__c, t.WhoId, t.Request_Type__c], IS_PUSHED= true }) Sort(groups=[salesforce.Task AS t], props={SORT_ORDER=ORDER BY t.LastStatusChangeDate__c DESC NULLS FIRST, OUTPUT_COLS=[t.OwnerId, t.Id, t.LastStatusChangeDate__c, t.WhoId, t.Request_Type__c]}) Access(groups=[salesforce.Task AS t], props={SOURCE_HINT= null , MODEL_ID=Schema name=salesforce, nameInSource= null , uuid=tid:6b7918e394e2-66cf095f-00000000, OUTPUT_COLS=[t.OwnerId, t.Id, t.LastStatusChangeDate__c, t.WhoId, t.Request_Type__c], APPROXIMATE_OUTPUT_COLUMNS=8}) Select(groups=[salesforce.Task AS t]) Source(groups=[salesforce.Task AS t]) Access(groups=[salesforce. "User" AS u]) Source(groups=[salesforce. "User" AS u]) ============================================================================ EXECUTING ChooseDependent AFTER: Project(groups=[salesforce.Task AS t, salesforce. "User" AS u]) TupleLimit(groups=[]) Sort(groups=[salesforce.Task AS t]) Join(groups=[salesforce.Task AS t, salesforce. "User" AS u], props={JOIN_TYPE=LEFT OUTER JOIN, JOIN_STRATEGY=MERGE, JOIN_CRITERIA=[u.Id = t.OwnerId], OUTPUT_COLS=[t.Id, t.LastStatusChangeDate__c, t.WhoId, t.OwnerId, u.Name, t.Request_Type__c], APPROXIMATE_OUTPUT_COLUMNS=9, IS_COPIED= true , LEFT_EXPRESSIONS=[t.OwnerId], RIGHT_EXPRESSIONS=[u.Id], NON_EQUI_JOIN_CRITERIA=[], EST_CARDINALITY= null , DEPENDENT_VALUE_SOURCE=$dsc/id88}) TupleLimit(groups=[], props={MAX_TUPLE_LIMIT=100, OUTPUT_COLS=[t.OwnerId, t.Id, t.LastStatusChangeDate__c, t.WhoId, t.Request_Type__c], IS_PUSHED= true , EST_CARDINALITY=100.0, EST_COL_STATS={t.OwnerId=[-1.0, -1.0, -1.0], t.Id=[-1.0, -1.0, -1.0], t.LastStatusChangeDate__c=[-1.0, -1.0, -1.0], t.WhoId=[-1.0, -1.0, -1.0], ...}}) Sort(groups=[salesforce.Task AS t], props={SORT_ORDER=ORDER BY t.LastStatusChangeDate__c DESC NULLS FIRST, OUTPUT_COLS=[t.OwnerId, t.Id, t.LastStatusChangeDate__c, t.WhoId, t.Request_Type__c], EST_CARDINALITY=-1.0, EST_COL_STATS={t.OwnerId=[-1.0, -1.0, -1.0], t.Id=[-1.0, -1.0, -1.0], t.LastStatusChangeDate__c=[-1.0, -1.0, -1.0], t.WhoId=[-1.0, -1.0, -1.0], ...}}) Access(groups=[salesforce.Task AS t], props={SOURCE_HINT= null , MODEL_ID=Schema name=salesforce, nameInSource= null , uuid=tid:6b7918e394e2-66cf095f-00000000, OUTPUT_COLS=[t.OwnerId, t.Id, t.LastStatusChangeDate__c, t.WhoId, t.Request_Type__c], APPROXIMATE_OUTPUT_COLUMNS=8, EST_CARDINALITY=-1.0, EST_COL_STATS={t.OwnerId=[-1.0, -1.0, -1.0], t.Id=[-1.0, -1.0, -1.0], t.LastStatusChangeDate__c=[-1.0, -1.0, -1.0], t.WhoId=[-1.0, -1.0, -1.0], ...}}) Select(groups=[salesforce.Task AS t], props={SELECT_CRITERIA=(t.Type = 'Online chat' ) AND (t.CreatedById = '00532000005hioBAAQ' ) AND (t.ActivityDate > {d '2020-08-29' }), OUTPUT_COLS=[t.OwnerId, t.Id, t.LastStatusChangeDate__c, t.WhoId, t.Request_Type__c], APPROXIMATE_OUTPUT_COLUMNS=6, IS_COPIED= true , EST_CARDINALITY=-1.0, EST_COL_STATS={t.OwnerId=[-1.0, -1.0, -1.0], t.Id=[-1.0, -1.0, -1.0], t.LastStatusChangeDate__c=[-1.0, -1.0, -1.0], t.WhoId=[-1.0, -1.0, -1.0], ...}}) Source(groups=[salesforce.Task AS t], props={OUTPUT_COLS=[t.Type, t.CreatedById, t.ActivityDate, t.OwnerId, t.Id, t.LastStatusChangeDate__c, t.WhoId, t.Request_Type__c], APPROXIMATE_OUTPUT_COLUMNS=8, EST_COL_STATS={t.Type=[-1.0, -1.0, -1.0], t.CreatedById=[-1.0, -1.0, -1.0], t.ActivityDate=[-1.0, -1.0, -1.0], t.OwnerId=[-1.0, -1.0, -1.0], ...}, EST_CARDINALITY=-1.0}) Select(groups=[salesforce. "User" AS u], props={SELECT_CRITERIA=u.Id IN (<dependent values>), IS_DEPENDENT_SET= true }) Access(groups=[salesforce. "User" AS u], props={SOURCE_HINT= null , MODEL_ID=Schema name=salesforce, nameInSource= null , uuid=tid:6b7918e394e2-66cf095f-00000000, OUTPUT_COLS=[u.Id, u.Name], APPROXIMATE_OUTPUT_COLUMNS=2, EST_CARDINALITY=-1.0, EST_COL_STATS={u.Id=[-1.0, -1.0, -1.0], u.Name=[-1.0, -1.0, -1.0]}}) Source(groups=[salesforce. "User" AS u], props={OUTPUT_COLS=[u.Id, u.Name], APPROXIMATE_OUTPUT_COLUMNS=2, EST_COL_STATS={u.Id=[-1.0, -1.0, -1.0], u.Name=[-1.0, -1.0, -1.0]}, EST_CARDINALITY=-1.0}) ============================================================================ EXECUTING PushSelectCriteria AFTER: Project(groups=[salesforce.Task AS t, salesforce. "User" AS u]) TupleLimit(groups=[]) Sort(groups=[salesforce.Task AS t]) Join(groups=[salesforce.Task AS t, salesforce. "User" AS u], props={JOIN_TYPE=LEFT OUTER JOIN, JOIN_STRATEGY=MERGE, JOIN_CRITERIA=[u.Id = t.OwnerId], OUTPUT_COLS=[t.Id, t.LastStatusChangeDate__c, t.WhoId, t.OwnerId, u.Name, t.Request_Type__c], APPROXIMATE_OUTPUT_COLUMNS=9, IS_COPIED= true , LEFT_EXPRESSIONS=[t.OwnerId], RIGHT_EXPRESSIONS=[u.Id], NON_EQUI_JOIN_CRITERIA=[], EST_CARDINALITY= null , DEPENDENT_VALUE_SOURCE=$dsc/id88}) TupleLimit(groups=[]) Sort(groups=[salesforce.Task AS t]) Access(groups=[salesforce.Task AS t]) Select(groups=[salesforce.Task AS t], props={SELECT_CRITERIA=(t.Type = 'Online chat' ) AND (t.CreatedById = '00532000005hioBAAQ' ) AND (t.ActivityDate > {d '2020-08-29' }), OUTPUT_COLS=[t.OwnerId, t.Id, t.LastStatusChangeDate__c, t.WhoId, t.Request_Type__c], APPROXIMATE_OUTPUT_COLUMNS=6, IS_COPIED= true , EST_CARDINALITY=-1.0, EST_COL_STATS={t.OwnerId=[-1.0, -1.0, -1.0], t.Id=[-1.0, -1.0, -1.0], t.LastStatusChangeDate__c=[-1.0, -1.0, -1.0], t.WhoId=[-1.0, -1.0, -1.0], ...}}) Source(groups=[salesforce.Task AS t]) Access(groups=[salesforce. "User" AS u], props={SOURCE_HINT= null , MODEL_ID=Schema name=salesforce, nameInSource= null , uuid=tid:6b7918e394e2-66cf095f-00000000, OUTPUT_COLS=[u.Id, u.Name], APPROXIMATE_OUTPUT_COLUMNS=2, EST_CARDINALITY=-1.0, EST_COL_STATS={u.Id=[-1.0, -1.0, -1.0], u.Name=[-1.0, -1.0, -1.0]}, IS_DEPENDENT_SET= true }) Select(groups=[salesforce. "User" AS u], props={SELECT_CRITERIA=u.Id IN (<dependent values>), IS_DEPENDENT_SET= true , IS_PUSHED= true }) Source(groups=[salesforce. "User" AS u], props={OUTPUT_COLS=[u.Id, u.Name], APPROXIMATE_OUTPUT_COLUMNS=2, EST_COL_STATS={u.Id=[-1.0, -1.0, -1.0], u.Name=[-1.0, -1.0, -1.0]}, EST_CARDINALITY=-1.0}) ============================================================================ EXECUTING CleanCriteria AFTER: Project(groups=[salesforce.Task AS t, salesforce. "User" AS u], props={PROJECT_COLS=[t.Id AS Task_id, t.LastStatusChangeDate__c AS Task_time, t.WhoId AS Task_whoId, t.OwnerId AS Task_ownerId, u.Name AS Task_agent, t.Request_Type__c AS Task_department], OUTPUT_COLS= null , APPROXIMATE_OUTPUT_COLUMNS=6}) TupleLimit(groups=[], props={MAX_TUPLE_LIMIT=100, OUTPUT_COLS= null , APPROXIMATE_OUTPUT_COLUMNS=6}) Sort(groups=[salesforce.Task AS t], props={SORT_ORDER=ORDER BY t.LastStatusChangeDate__c DESC NULLS FIRST, OUTPUT_COLS= null , UNRELATED_SORT= false , APPROXIMATE_OUTPUT_COLUMNS=6}) Join(groups=[salesforce.Task AS t, salesforce. "User" AS u], props={JOIN_TYPE=LEFT OUTER JOIN, JOIN_STRATEGY=MERGE, JOIN_CRITERIA=[u.Id = t.OwnerId], OUTPUT_COLS= null , APPROXIMATE_OUTPUT_COLUMNS=6, IS_COPIED= true , LEFT_EXPRESSIONS=[t.OwnerId], RIGHT_EXPRESSIONS=[u.Id], NON_EQUI_JOIN_CRITERIA=[], EST_CARDINALITY= null , DEPENDENT_VALUE_SOURCE=$dsc/id88}) TupleLimit(groups=[], props={MAX_TUPLE_LIMIT=100, OUTPUT_COLS= null , IS_PUSHED= true , EST_CARDINALITY=100.0, EST_COL_STATS={t.OwnerId=[-1.0, -1.0, -1.0], t.Id=[-1.0, -1.0, -1.0], t.LastStatusChangeDate__c=[-1.0, -1.0, -1.0], t.WhoId=[-1.0, -1.0, -1.0], ...}, APPROXIMATE_OUTPUT_COLUMNS=5}) Sort(groups=[salesforce.Task AS t], props={SORT_ORDER=ORDER BY t.LastStatusChangeDate__c DESC NULLS FIRST, OUTPUT_COLS= null , EST_CARDINALITY=-1.0, EST_COL_STATS={t.OwnerId=[-1.0, -1.0, -1.0], t.Id=[-1.0, -1.0, -1.0], t.LastStatusChangeDate__c=[-1.0, -1.0, -1.0], t.WhoId=[-1.0, -1.0, -1.0], ...}, APPROXIMATE_OUTPUT_COLUMNS=5}) Access(groups=[salesforce.Task AS t], props={SOURCE_HINT= null , MODEL_ID=Schema name=salesforce, nameInSource= null , uuid=tid:6b7918e394e2-66cf095f-00000000, OUTPUT_COLS= null , APPROXIMATE_OUTPUT_COLUMNS=5, EST_CARDINALITY=-1.0, EST_COL_STATS={t.OwnerId=[-1.0, -1.0, -1.0], t.Id=[-1.0, -1.0, -1.0], t.LastStatusChangeDate__c=[-1.0, -1.0, -1.0], t.WhoId=[-1.0, -1.0, -1.0], ...}}) Select(groups=[salesforce.Task AS t], props={SELECT_CRITERIA=(t.Type = 'Online chat' ) AND (t.CreatedById = '00532000005hioBAAQ' ) AND (t.ActivityDate > {d '2020-08-29' }), OUTPUT_COLS= null , APPROXIMATE_OUTPUT_COLUMNS=5, IS_COPIED= true , EST_CARDINALITY=-1.0, EST_COL_STATS={t.OwnerId=[-1.0, -1.0, -1.0], t.Id=[-1.0, -1.0, -1.0], t.LastStatusChangeDate__c=[-1.0, -1.0, -1.0], t.WhoId=[-1.0, -1.0, -1.0], ...}}) Source(groups=[salesforce.Task AS t], props={OUTPUT_COLS= null , APPROXIMATE_OUTPUT_COLUMNS=8, EST_COL_STATS={t.Type=[-1.0, -1.0, -1.0], t.CreatedById=[-1.0, -1.0, -1.0], t.ActivityDate=[-1.0, -1.0, -1.0], t.OwnerId=[-1.0, -1.0, -1.0], ...}, EST_CARDINALITY=-1.0}) Access(groups=[salesforce. "User" AS u], props={SOURCE_HINT= null , MODEL_ID=Schema name=salesforce, nameInSource= null , uuid=tid:6b7918e394e2-66cf095f-00000000, OUTPUT_COLS= null , APPROXIMATE_OUTPUT_COLUMNS=2, EST_CARDINALITY=-1.0, EST_COL_STATS={u.Id=[-1.0, -1.0, -1.0], u.Name=[-1.0, -1.0, -1.0]}, IS_DEPENDENT_SET= true }) Select(groups=[salesforce. "User" AS u], props={SELECT_CRITERIA=u.Id IN (<dependent values>), IS_DEPENDENT_SET= true , IS_PUSHED= true , OUTPUT_COLS= null }) Source(groups=[salesforce. "User" AS u], props={OUTPUT_COLS= null , APPROXIMATE_OUTPUT_COLUMNS=2, EST_COL_STATS={u.Id=[-1.0, -1.0, -1.0], u.Name=[-1.0, -1.0, -1.0]}, EST_CARDINALITY=-1.0}) ============================================================================ EXECUTING AssignOutputElements AFTER: Project(groups=[salesforce.Task AS t, salesforce. "User" AS u], props={PROJECT_COLS=[t.Id AS Task_id, t.LastStatusChangeDate__c AS Task_time, t.WhoId AS Task_whoId, t.OwnerId AS Task_ownerId, u.Name AS Task_agent, t.Request_Type__c AS Task_department], OUTPUT_COLS=[t.Id AS Task_id, t.LastStatusChangeDate__c AS Task_time, t.WhoId AS Task_whoId, t.OwnerId AS Task_ownerId, u.Name AS Task_agent, t.Request_Type__c AS Task_department], APPROXIMATE_OUTPUT_COLUMNS=6}) TupleLimit(groups=[], props={MAX_TUPLE_LIMIT=100, OUTPUT_COLS=[t.Id, t.LastStatusChangeDate__c, t.WhoId, t.OwnerId, u.Name, t.Request_Type__c], APPROXIMATE_OUTPUT_COLUMNS=6}) Sort(groups=[salesforce.Task AS t], props={SORT_ORDER=ORDER BY t.LastStatusChangeDate__c DESC NULLS FIRST, OUTPUT_COLS=[t.Id, t.LastStatusChangeDate__c, t.WhoId, t.OwnerId, u.Name, t.Request_Type__c], UNRELATED_SORT= false , APPROXIMATE_OUTPUT_COLUMNS=6}) Join(groups=[salesforce.Task AS t, salesforce. "User" AS u], props={JOIN_TYPE=LEFT OUTER JOIN, JOIN_STRATEGY=MERGE, JOIN_CRITERIA=[u.Id = t.OwnerId], OUTPUT_COLS=[t.Id, t.LastStatusChangeDate__c, t.WhoId, t.OwnerId, u.Name, t.Request_Type__c], APPROXIMATE_OUTPUT_COLUMNS=6, IS_COPIED= true , LEFT_EXPRESSIONS=[t.OwnerId], RIGHT_EXPRESSIONS=[u.Id], NON_EQUI_JOIN_CRITERIA=[], EST_CARDINALITY= null , DEPENDENT_VALUE_SOURCE=$dsc/id88}) TupleLimit(groups=[], props={MAX_TUPLE_LIMIT=100, OUTPUT_COLS=[t.OwnerId, t.Id, t.LastStatusChangeDate__c, t.WhoId, t.Request_Type__c], IS_PUSHED= true , EST_CARDINALITY=100.0, EST_COL_STATS={t.OwnerId=[-1.0, -1.0, -1.0], t.Id=[-1.0, -1.0, -1.0], t.LastStatusChangeDate__c=[-1.0, -1.0, -1.0], t.WhoId=[-1.0, -1.0, -1.0], ...}, APPROXIMATE_OUTPUT_COLUMNS=5}) Sort(groups=[salesforce.Task AS t], props={SORT_ORDER=ORDER BY t.LastStatusChangeDate__c DESC NULLS FIRST, OUTPUT_COLS=[t.OwnerId, t.Id, t.LastStatusChangeDate__c, t.WhoId, t.Request_Type__c], EST_CARDINALITY=-1.0, EST_COL_STATS={t.OwnerId=[-1.0, -1.0, -1.0], t.Id=[-1.0, -1.0, -1.0], t.LastStatusChangeDate__c=[-1.0, -1.0, -1.0], t.WhoId=[-1.0, -1.0, -1.0], ...}, APPROXIMATE_OUTPUT_COLUMNS=5, UNRELATED_SORT= false }) Access(groups=[salesforce.Task AS t], props={SOURCE_HINT= null , MODEL_ID=Schema name=salesforce, nameInSource= null , uuid=tid:6b7918e394e2-66cf095f-00000000, OUTPUT_COLS=[t.OwnerId, t.Id, t.LastStatusChangeDate__c, t.WhoId, t.Request_Type__c], APPROXIMATE_OUTPUT_COLUMNS=5, EST_CARDINALITY=-1.0, EST_COL_STATS={t.OwnerId=[-1.0, -1.0, -1.0], t.Id=[-1.0, -1.0, -1.0], t.LastStatusChangeDate__c=[-1.0, -1.0, -1.0], t.WhoId=[-1.0, -1.0, -1.0], ...}}) Select(groups=[salesforce.Task AS t], props={SELECT_CRITERIA=(t.Type = 'Online chat' ) AND (t.CreatedById = '00532000005hioBAAQ' ) AND (t.ActivityDate > {d '2020-08-29' }), OUTPUT_COLS=[t.OwnerId, t.Id, t.LastStatusChangeDate__c, t.WhoId, t.Request_Type__c], APPROXIMATE_OUTPUT_COLUMNS=5, IS_COPIED= true , EST_CARDINALITY=-1.0, EST_COL_STATS={t.OwnerId=[-1.0, -1.0, -1.0], t.Id=[-1.0, -1.0, -1.0], t.LastStatusChangeDate__c=[-1.0, -1.0, -1.0], t.WhoId=[-1.0, -1.0, -1.0], ...}}) Source(groups=[salesforce.Task AS t], props={OUTPUT_COLS=[t.Type, t.CreatedById, t.ActivityDate, t.OwnerId, t.Id, t.LastStatusChangeDate__c, t.WhoId, t.Request_Type__c], APPROXIMATE_OUTPUT_COLUMNS=8, EST_COL_STATS={t.Type=[-1.0, -1.0, -1.0], t.CreatedById=[-1.0, -1.0, -1.0], t.ActivityDate=[-1.0, -1.0, -1.0], t.OwnerId=[-1.0, -1.0, -1.0], ...}, EST_CARDINALITY=-1.0}) Access(groups=[salesforce. "User" AS u], props={SOURCE_HINT= null , MODEL_ID=Schema name=salesforce, nameInSource= null , uuid=tid:6b7918e394e2-66cf095f-00000000, OUTPUT_COLS=[u.Id, u.Name], APPROXIMATE_OUTPUT_COLUMNS=2, EST_CARDINALITY=-1.0, EST_COL_STATS={u.Id=[-1.0, -1.0, -1.0], u.Name=[-1.0, -1.0, -1.0]}, IS_DEPENDENT_SET= true }) Select(groups=[salesforce. "User" AS u], props={SELECT_CRITERIA=u.Id IN (<dependent values>), IS_DEPENDENT_SET= true , IS_PUSHED= true , OUTPUT_COLS=[u.Id, u.Name]}) Source(groups=[salesforce. "User" AS u], props={OUTPUT_COLS=[u.Id, u.Name], APPROXIMATE_OUTPUT_COLUMNS=2, EST_COL_STATS={u.Id=[-1.0, -1.0, -1.0], u.Name=[-1.0, -1.0, -1.0]}, EST_CARDINALITY=-1.0}) ============================================================================ EXECUTING CalculateCost AFTER: Project(groups=[salesforce.Task AS t, salesforce. "User" AS u], props={PROJECT_COLS=[t.Id AS Task_id, t.LastStatusChangeDate__c AS Task_time, t.WhoId AS Task_whoId, t.OwnerId AS Task_ownerId, u.Name AS Task_agent, t.Request_Type__c AS Task_department], OUTPUT_COLS=[t.Id AS Task_id, t.LastStatusChangeDate__c AS Task_time, t.WhoId AS Task_whoId, t.OwnerId AS Task_ownerId, u.Name AS Task_agent, t.Request_Type__c AS Task_department], APPROXIMATE_OUTPUT_COLUMNS=6, EST_CARDINALITY=100.0, EST_COL_STATS={t.Id=[-1.0, -1.0, -1.0], t.LastStatusChangeDate__c=[-1.0, -1.0, -1.0], t.WhoId=[-1.0, -1.0, -1.0], t.OwnerId=[-1.0, -1.0, -1.0], ...}}) TupleLimit(groups=[], props={MAX_TUPLE_LIMIT=100, OUTPUT_COLS=[t.Id, t.LastStatusChangeDate__c, t.WhoId, t.OwnerId, u.Name, t.Request_Type__c], APPROXIMATE_OUTPUT_COLUMNS=6, EST_CARDINALITY=100.0, EST_COL_STATS={t.Id=[-1.0, -1.0, -1.0], t.LastStatusChangeDate__c=[-1.0, -1.0, -1.0], t.WhoId=[-1.0, -1.0, -1.0], t.OwnerId=[-1.0, -1.0, -1.0], ...}}) Sort(groups=[salesforce.Task AS t], props={SORT_ORDER=ORDER BY t.LastStatusChangeDate__c DESC NULLS FIRST, OUTPUT_COLS=[t.Id, t.LastStatusChangeDate__c, t.WhoId, t.OwnerId, u.Name, t.Request_Type__c], UNRELATED_SORT= false , APPROXIMATE_OUTPUT_COLUMNS=6, EST_CARDINALITY=-1.0, EST_COL_STATS={t.Id=[-1.0, -1.0, -1.0], t.LastStatusChangeDate__c=[-1.0, -1.0, -1.0], t.WhoId=[-1.0, -1.0, -1.0], t.OwnerId=[-1.0, -1.0, -1.0], ...}}) Join(groups=[salesforce.Task AS t, salesforce. "User" AS u], props={JOIN_TYPE=LEFT OUTER JOIN, JOIN_STRATEGY=MERGE, JOIN_CRITERIA=[u.Id = t.OwnerId], OUTPUT_COLS=[t.Id, t.LastStatusChangeDate__c, t.WhoId, t.OwnerId, u.Name, t.Request_Type__c], APPROXIMATE_OUTPUT_COLUMNS=6, IS_COPIED= true , LEFT_EXPRESSIONS=[t.OwnerId], RIGHT_EXPRESSIONS=[u.Id], NON_EQUI_JOIN_CRITERIA=[], EST_CARDINALITY=-1.0, DEPENDENT_VALUE_SOURCE=$dsc/id88, EST_COL_STATS={t.Id=[-1.0, -1.0, -1.0], t.LastStatusChangeDate__c=[-1.0, -1.0, -1.0], t.WhoId=[-1.0, -1.0, -1.0], t.OwnerId=[-1.0, -1.0, -1.0], ...}}) TupleLimit(groups=[], props={MAX_TUPLE_LIMIT=100, OUTPUT_COLS=[t.OwnerId, t.Id, t.LastStatusChangeDate__c, t.WhoId, t.Request_Type__c], IS_PUSHED= true , EST_CARDINALITY=100.0, EST_COL_STATS={t.OwnerId=[-1.0, -1.0, -1.0], t.Id=[-1.0, -1.0, -1.0], t.LastStatusChangeDate__c=[-1.0, -1.0, -1.0], t.WhoId=[-1.0, -1.0, -1.0], ...}, APPROXIMATE_OUTPUT_COLUMNS=5}) Sort(groups=[salesforce.Task AS t], props={SORT_ORDER=ORDER BY t.LastStatusChangeDate__c DESC NULLS FIRST, OUTPUT_COLS=[t.OwnerId, t.Id, t.LastStatusChangeDate__c, t.WhoId, t.Request_Type__c], EST_CARDINALITY=-1.0, EST_COL_STATS={t.OwnerId=[-1.0, -1.0, -1.0], t.Id=[-1.0, -1.0, -1.0], t.LastStatusChangeDate__c=[-1.0, -1.0, -1.0], t.WhoId=[-1.0, -1.0, -1.0], ...}, APPROXIMATE_OUTPUT_COLUMNS=5, UNRELATED_SORT= false }) Access(groups=[salesforce.Task AS t], props={SOURCE_HINT= null , MODEL_ID=Schema name=salesforce, nameInSource= null , uuid=tid:6b7918e394e2-66cf095f-00000000, OUTPUT_COLS=[t.OwnerId, t.Id, t.LastStatusChangeDate__c, t.WhoId, t.Request_Type__c], APPROXIMATE_OUTPUT_COLUMNS=5, EST_CARDINALITY=-1.0, EST_COL_STATS={t.OwnerId=[-1.0, -1.0, -1.0], t.Id=[-1.0, -1.0, -1.0], t.LastStatusChangeDate__c=[-1.0, -1.0, -1.0], t.WhoId=[-1.0, -1.0, -1.0], ...}}) Select(groups=[salesforce.Task AS t], props={SELECT_CRITERIA=(t.Type = 'Online chat' ) AND (t.CreatedById = '00532000005hioBAAQ' ) AND (t.ActivityDate > {d '2020-08-29' }), OUTPUT_COLS=[t.OwnerId, t.Id, t.LastStatusChangeDate__c, t.WhoId, t.Request_Type__c], APPROXIMATE_OUTPUT_COLUMNS=5, IS_COPIED= true , EST_CARDINALITY=-1.0, EST_COL_STATS={t.OwnerId=[-1.0, -1.0, -1.0], t.Id=[-1.0, -1.0, -1.0], t.LastStatusChangeDate__c=[-1.0, -1.0, -1.0], t.WhoId=[-1.0, -1.0, -1.0], ...}}) Source(groups=[salesforce.Task AS t], props={OUTPUT_COLS=[t.Type, t.CreatedById, t.ActivityDate, t.OwnerId, t.Id, t.LastStatusChangeDate__c, t.WhoId, t.Request_Type__c], APPROXIMATE_OUTPUT_COLUMNS=8, EST_COL_STATS={t.Type=[-1.0, -1.0, -1.0], t.CreatedById=[-1.0, -1.0, -1.0], t.ActivityDate=[-1.0, -1.0, -1.0], t.OwnerId=[-1.0, -1.0, -1.0], ...}, EST_CARDINALITY=-1.0}) Access(groups=[salesforce. "User" AS u], props={SOURCE_HINT= null , MODEL_ID=Schema name=salesforce, nameInSource= null , uuid=tid:6b7918e394e2-66cf095f-00000000, OUTPUT_COLS=[u.Id, u.Name], APPROXIMATE_OUTPUT_COLUMNS=2, EST_CARDINALITY=-1.0, EST_COL_STATS={u.Id=[-1.0, -1.0, -1.0], u.Name=[-1.0, -1.0, -1.0]}, IS_DEPENDENT_SET= true }) Select(groups=[salesforce. "User" AS u], props={SELECT_CRITERIA=u.Id IN (<dependent values>), IS_DEPENDENT_SET= true , IS_PUSHED= true , OUTPUT_COLS=[u.Id, u.Name], EST_CARDINALITY=-1.0, EST_COL_STATS={u.Id=[-1.0, -1.0, -1.0], u.Name=[-1.0, -1.0, -1.0]}}) Source(groups=[salesforce. "User" AS u], props={OUTPUT_COLS=[u.Id, u.Name], APPROXIMATE_OUTPUT_COLUMNS=2, EST_COL_STATS={u.Id=[-1.0, -1.0, -1.0], u.Name=[-1.0, -1.0, -1.0]}, EST_CARDINALITY=-1.0}) ============================================================================ EXECUTING ImplementJoinStrategy AFTER: Project(groups=[salesforce.Task AS t, salesforce. "User" AS u]) TupleLimit(groups=[]) Sort(groups=[salesforce.Task AS t]) Join(groups=[salesforce.Task AS t, salesforce. "User" AS u], props={JOIN_TYPE=LEFT OUTER JOIN, JOIN_STRATEGY=ENHANCED_SORT, JOIN_CRITERIA=[u.Id = t.OwnerId], OUTPUT_COLS=[t.Id, t.LastStatusChangeDate__c, t.WhoId, t.OwnerId, u.Name, t.Request_Type__c], APPROXIMATE_OUTPUT_COLUMNS=6, IS_COPIED= true , LEFT_EXPRESSIONS=[t.OwnerId], RIGHT_EXPRESSIONS=[u.Id], NON_EQUI_JOIN_CRITERIA=[], EST_CARDINALITY=-1.0, DEPENDENT_VALUE_SOURCE=$dsc/id88, EST_COL_STATS={t.Id=[-1.0, -1.0, -1.0], t.LastStatusChangeDate__c=[-1.0, -1.0, -1.0], t.WhoId=[-1.0, -1.0, -1.0], t.OwnerId=[-1.0, -1.0, -1.0], ...}, SORT_LEFT=SORT, IS_RIGHT_DISTINCT= true , SORT_RIGHT=SORT}) TupleLimit(groups=[], props={MAX_TUPLE_LIMIT=100, OUTPUT_COLS=[t.OwnerId, t.Id, t.LastStatusChangeDate__c, t.WhoId, t.Request_Type__c], IS_PUSHED= true , EST_CARDINALITY=100.0, EST_COL_STATS={t.OwnerId=[-1.0, -1.0, -1.0], t.Id=[-1.0, -1.0, -1.0], t.LastStatusChangeDate__c=[-1.0, -1.0, -1.0], t.WhoId=[-1.0, -1.0, -1.0], ...}, APPROXIMATE_OUTPUT_COLUMNS=5}) Sort(groups=[salesforce.Task AS t], props={SORT_ORDER=ORDER BY t.LastStatusChangeDate__c DESC NULLS FIRST, OUTPUT_COLS=[t.OwnerId, t.Id, t.LastStatusChangeDate__c, t.WhoId, t.Request_Type__c], EST_CARDINALITY=-1.0, EST_COL_STATS={t.OwnerId=[-1.0, -1.0, -1.0], t.Id=[-1.0, -1.0, -1.0], t.LastStatusChangeDate__c=[-1.0, -1.0, -1.0], t.WhoId=[-1.0, -1.0, -1.0], ...}, APPROXIMATE_OUTPUT_COLUMNS=5, UNRELATED_SORT= false }) Access(groups=[salesforce.Task AS t], props={SOURCE_HINT= null , MODEL_ID=Schema name=salesforce, nameInSource= null , uuid=tid:6b7918e394e2-66cf095f-00000000, OUTPUT_COLS=[t.OwnerId, t.Id, t.LastStatusChangeDate__c, t.WhoId, t.Request_Type__c], APPROXIMATE_OUTPUT_COLUMNS=5, EST_CARDINALITY=-1.0, EST_COL_STATS={t.OwnerId=[-1.0, -1.0, -1.0], t.Id=[-1.0, -1.0, -1.0], t.LastStatusChangeDate__c=[-1.0, -1.0, -1.0], t.WhoId=[-1.0, -1.0, -1.0], ...}}) Select(groups=[salesforce.Task AS t], props={SELECT_CRITERIA=(t.Type = 'Online chat' ) AND (t.CreatedById = '00532000005hioBAAQ' ) AND (t.ActivityDate > {d '2020-08-29' }), OUTPUT_COLS=[t.OwnerId, t.Id, t.LastStatusChangeDate__c, t.WhoId, t.Request_Type__c], APPROXIMATE_OUTPUT_COLUMNS=5, IS_COPIED= true , EST_CARDINALITY=-1.0, EST_COL_STATS={t.OwnerId=[-1.0, -1.0, -1.0], t.Id=[-1.0, -1.0, -1.0], t.LastStatusChangeDate__c=[-1.0, -1.0, -1.0], t.WhoId=[-1.0, -1.0, -1.0], ...}}) Source(groups=[salesforce.Task AS t], props={OUTPUT_COLS=[t.Type, t.CreatedById, t.ActivityDate, t.OwnerId, t.Id, t.LastStatusChangeDate__c, t.WhoId, t.Request_Type__c], APPROXIMATE_OUTPUT_COLUMNS=8, EST_COL_STATS={t.Type=[-1.0, -1.0, -1.0], t.CreatedById=[-1.0, -1.0, -1.0], t.ActivityDate=[-1.0, -1.0, -1.0], t.OwnerId=[-1.0, -1.0, -1.0], ...}, EST_CARDINALITY=-1.0}) Access(groups=[salesforce. "User" AS u], props={SOURCE_HINT= null , MODEL_ID=Schema name=salesforce, nameInSource= null , uuid=tid:6b7918e394e2-66cf095f-00000000, OUTPUT_COLS=[u.Id, u.Name], APPROXIMATE_OUTPUT_COLUMNS=2, EST_CARDINALITY=-1.0, EST_COL_STATS={u.Id=[-1.0, -1.0, -1.0], u.Name=[-1.0, -1.0, -1.0]}, IS_DEPENDENT_SET= true }) Select(groups=[salesforce. "User" AS u], props={SELECT_CRITERIA=u.Id IN (<dependent values>), IS_DEPENDENT_SET= true , IS_PUSHED= true , OUTPUT_COLS=[u.Id, u.Name], EST_CARDINALITY=-1.0, EST_COL_STATS={u.Id=[-1.0, -1.0, -1.0], u.Name=[-1.0, -1.0, -1.0]}}) Source(groups=[salesforce. "User" AS u], props={OUTPUT_COLS=[u.Id, u.Name], APPROXIMATE_OUTPUT_COLUMNS=2, EST_COL_STATS={u.Id=[-1.0, -1.0, -1.0], u.Name=[-1.0, -1.0, -1.0]}, EST_CARDINALITY=-1.0}) ============================================================================ EXECUTING PlanSubqueries AFTER: Project(groups=[salesforce.Task AS t, salesforce. "User" AS u], props={PROJECT_COLS=[t.Id AS Task_id, t.LastStatusChangeDate__c AS Task_time, t.WhoId AS Task_whoId, t.OwnerId AS Task_ownerId, u.Name AS Task_agent, t.Request_Type__c AS Task_department], OUTPUT_COLS=[t.Id AS Task_id, t.LastStatusChangeDate__c AS Task_time, t.WhoId AS Task_whoId, t.OwnerId AS Task_ownerId, u.Name AS Task_agent, t.Request_Type__c AS Task_department], APPROXIMATE_OUTPUT_COLUMNS=6, EST_CARDINALITY=100.0, EST_COL_STATS={t.Id=[-1.0, -1.0, -1.0], t.LastStatusChangeDate__c=[-1.0, -1.0, -1.0], t.WhoId=[-1.0, -1.0, -1.0], t.OwnerId=[-1.0, -1.0, -1.0], ...}}) TupleLimit(groups=[]) Sort(groups=[salesforce.Task AS t]) Join(groups=[salesforce.Task AS t, salesforce. "User" AS u]) TupleLimit(groups=[]) Sort(groups=[salesforce.Task AS t]) Access(groups=[salesforce.Task AS t]) Select(groups=[salesforce.Task AS t]) Source(groups=[salesforce.Task AS t]) Access(groups=[salesforce. "User" AS u]) Select(groups=[salesforce. "User" AS u]) Source(groups=[salesforce. "User" AS u]) ============================================================================ EXECUTING MergeCriteria AFTER: Project(groups=[salesforce.Task AS t, salesforce. "User" AS u]) TupleLimit(groups=[]) Sort(groups=[salesforce.Task AS t]) Join(groups=[salesforce.Task AS t, salesforce. "User" AS u]) TupleLimit(groups=[]) Sort(groups=[salesforce.Task AS t]) Access(groups=[salesforce.Task AS t]) Select(groups=[salesforce.Task AS t]) Source(groups=[salesforce.Task AS t]) Access(groups=[salesforce. "User" AS u]) Select(groups=[salesforce. "User" AS u]) Source(groups=[salesforce. "User" AS u]) ============================================================================ EXECUTING PlanSorts AFTER: Project(groups=[salesforce.Task AS t, salesforce. "User" AS u]) TupleLimit(groups=[]) Sort(groups=[salesforce.Task AS t], props={SORT_ORDER=ORDER BY t.LastStatusChangeDate__c DESC NULLS FIRST, OUTPUT_COLS=[t.Id, t.LastStatusChangeDate__c, t.WhoId, t.OwnerId, u.Name, t.Request_Type__c], UNRELATED_SORT= false , APPROXIMATE_OUTPUT_COLUMNS=6, EST_CARDINALITY=-1.0, EST_COL_STATS={t.Id=[-1.0, -1.0, -1.0], t.LastStatusChangeDate__c=[-1.0, -1.0, -1.0], t.WhoId=[-1.0, -1.0, -1.0], t.OwnerId=[-1.0, -1.0, -1.0], ...}}) Join(groups=[salesforce.Task AS t, salesforce. "User" AS u], props={JOIN_TYPE=LEFT OUTER JOIN, JOIN_STRATEGY=ENHANCED_SORT, JOIN_CRITERIA=[u.Id = t.OwnerId], OUTPUT_COLS=[t.Id, t.LastStatusChangeDate__c, t.WhoId, t.OwnerId, u.Name, t.Request_Type__c], APPROXIMATE_OUTPUT_COLUMNS=6, IS_COPIED= true , LEFT_EXPRESSIONS=[t.OwnerId], RIGHT_EXPRESSIONS=[u.Id], NON_EQUI_JOIN_CRITERIA=[], EST_CARDINALITY=-1.0, DEPENDENT_VALUE_SOURCE=$dsc/id88, EST_COL_STATS={t.Id=[-1.0, -1.0, -1.0], t.LastStatusChangeDate__c=[-1.0, -1.0, -1.0], t.WhoId=[-1.0, -1.0, -1.0], t.OwnerId=[-1.0, -1.0, -1.0], ...}, SORT_LEFT=SORT, IS_RIGHT_DISTINCT= true , SORT_RIGHT=SORT}) TupleLimit(groups=[]) Sort(groups=[salesforce.Task AS t], props={SORT_ORDER=ORDER BY t.LastStatusChangeDate__c DESC NULLS FIRST, OUTPUT_COLS=[t.OwnerId, t.Id, t.LastStatusChangeDate__c, t.WhoId, t.Request_Type__c], EST_CARDINALITY=-1.0, EST_COL_STATS={t.OwnerId=[-1.0, -1.0, -1.0], t.Id=[-1.0, -1.0, -1.0], t.LastStatusChangeDate__c=[-1.0, -1.0, -1.0], t.WhoId=[-1.0, -1.0, -1.0], ...}, APPROXIMATE_OUTPUT_COLUMNS=5, UNRELATED_SORT= false }) Access(groups=[salesforce.Task AS t], props={SOURCE_HINT= null , MODEL_ID=Schema name=salesforce, nameInSource= null , uuid=tid:6b7918e394e2-66cf095f-00000000, OUTPUT_COLS=[t.OwnerId, t.Id, t.LastStatusChangeDate__c, t.WhoId, t.Request_Type__c], APPROXIMATE_OUTPUT_COLUMNS=5, EST_CARDINALITY=-1.0, EST_COL_STATS={t.OwnerId=[-1.0, -1.0, -1.0], t.Id=[-1.0, -1.0, -1.0], t.LastStatusChangeDate__c=[-1.0, -1.0, -1.0], t.WhoId=[-1.0, -1.0, -1.0], ...}}) Select(groups=[salesforce.Task AS t]) Source(groups=[salesforce.Task AS t]) Access(groups=[salesforce. "User" AS u]) Select(groups=[salesforce. "User" AS u]) Source(groups=[salesforce. "User" AS u]) ============================================================================ EXECUTING CollapseSource AFTER: Project(groups=[salesforce.Task AS t, salesforce. "User" AS u]) TupleLimit(groups=[]) Sort(groups=[salesforce.Task AS t]) Join(groups=[salesforce.Task AS t, salesforce. "User" AS u]) TupleLimit(groups=[]) Sort(groups=[salesforce.Task AS t]) Access(groups=[salesforce.Task AS t], props={SOURCE_HINT= null , MODEL_ID=Schema name=salesforce, nameInSource= null , uuid=tid:6b7918e394e2-66cf095f-00000000, OUTPUT_COLS=[t.OwnerId, t.Id, t.LastStatusChangeDate__c, t.WhoId, t.Request_Type__c], APPROXIMATE_OUTPUT_COLUMNS=5, EST_CARDINALITY=-1.0, EST_COL_STATS={t.OwnerId=[-1.0, -1.0, -1.0], t.Id=[-1.0, -1.0, -1.0], t.LastStatusChangeDate__c=[-1.0, -1.0, -1.0], t.WhoId=[-1.0, -1.0, -1.0], ...}, ATOMIC_REQUEST=SELECT t.OwnerId, t.Id, t.LastStatusChangeDate__c, t.WhoId, t.Request_Type__c FROM salesforce.Task AS t WHERE (t.Type = 'Online chat' ) AND (t.CreatedById = '00532000005hioBAAQ' ) AND (t.ActivityDate > {d '2020-08-29' })}) Access(groups=[salesforce. "User" AS u], props={SOURCE_HINT= null , MODEL_ID=Schema name=salesforce, nameInSource= null , uuid=tid:6b7918e394e2-66cf095f-00000000, OUTPUT_COLS=[u.Id, u.Name], APPROXIMATE_OUTPUT_COLUMNS=2, EST_CARDINALITY=-1.0, EST_COL_STATS={u.Id=[-1.0, -1.0, -1.0], u.Name=[-1.0, -1.0, -1.0]}, IS_DEPENDENT_SET= true , ATOMIC_REQUEST=SELECT u.Id, u.Name FROM salesforce. "User" AS u WHERE u.Id IN (<dependent values>)}) ============================================================================ CONVERTING PLAN TREE TO PROCESS TREE PROCESS PLAN = ProjectNode(0) output=[t.Id AS Task_id, t.LastStatusChangeDate__c AS Task_time, t.WhoId AS Task_whoId, t.OwnerId AS Task_ownerId, u.Name AS Task_agent, t.Request_Type__c AS Task_department] [t.Id AS Task_id, t.LastStatusChangeDate__c AS Task_time, t.WhoId AS Task_whoId, t.OwnerId AS Task_ownerId, u.Name AS Task_agent, t.Request_Type__c AS Task_department] LimitNode(1) output=[t.Id, t.LastStatusChangeDate__c, t.WhoId, t.OwnerId, u.Name, t.Request_Type__c] limit 100 SortNode(2) output=[t.Id, t.LastStatusChangeDate__c, t.WhoId, t.OwnerId, u.Name, t.Request_Type__c] [SORT] [t.LastStatusChangeDate__c DESC NULLS FIRST] JoinNode(3) [Dependent] [ENHANCED SORT JOIN (SORT/SORT)] [LEFT OUTER JOIN] criteria=[t.OwnerId=u.Id] output=[t.Id, t.LastStatusChangeDate__c, t.WhoId, t.OwnerId, u.Name, t.Request_Type__c] LimitNode(4) output=[t.OwnerId, t.Id, t.LastStatusChangeDate__c, t.WhoId, t.Request_Type__c] limit 100 SortNode(5) output=[t.OwnerId, t.Id, t.LastStatusChangeDate__c, t.WhoId, t.Request_Type__c] [SORT] [t.LastStatusChangeDate__c DESC NULLS FIRST] AccessNode(6) output=[t.OwnerId, t.Id, t.LastStatusChangeDate__c, t.WhoId, t.Request_Type__c] SELECT g_0.OwnerId, g_0.Id, g_0.LastStatusChangeDate__c, g_0.WhoId, g_0.Request_Type__c FROM salesforce.Task AS g_0 WHERE (g_0.Type = 'Online chat' ) AND (g_0.CreatedById = '00532000005hioBAAQ' ) AND (g_0.ActivityDate > {d '2020-08-29' }) DependentAccessNode(7) output=[u.Id, u.Name] SELECT g_0.Id, g_0.Name FROM salesforce. "User" AS g_0 WHERE g_0.Id IN (<dependent values>) ============================================================================ ---------------------------------------------------------------------------- OPTIMIZATION COMPLETE: PROCESSOR PLAN: ProjectNode(0) output=[t.Id AS Task_id, t.LastStatusChangeDate__c AS Task_time, t.WhoId AS Task_whoId, t.OwnerId AS Task_ownerId, u.Name AS Task_agent, t.Request_Type__c AS Task_department] [t.Id AS Task_id, t.LastStatusChangeDate__c AS Task_time, t.WhoId AS Task_whoId, t.OwnerId AS Task_ownerId, u.Name AS Task_agent, t.Request_Type__c AS Task_department] LimitNode(1) output=[t.Id, t.LastStatusChangeDate__c, t.WhoId, t.OwnerId, u.Name, t.Request_Type__c] limit 100 SortNode(2) output=[t.Id, t.LastStatusChangeDate__c, t.WhoId, t.OwnerId, u.Name, t.Request_Type__c] [SORT] [t.LastStatusChangeDate__c DESC NULLS FIRST] JoinNode(3) [Dependent] [ENHANCED SORT JOIN (SORT/SORT)] [LEFT OUTER JOIN] criteria=[t.OwnerId=u.Id] output=[t.Id, t.LastStatusChangeDate__c, t.WhoId, t.OwnerId, u.Name, t.Request_Type__c] LimitNode(4) output=[t.OwnerId, t.Id, t.LastStatusChangeDate__c, t.WhoId, t.Request_Type__c] limit 100 SortNode(5) output=[t.OwnerId, t.Id, t.LastStatusChangeDate__c, t.WhoId, t.Request_Type__c] [SORT] [t.LastStatusChangeDate__c DESC NULLS FIRST] AccessNode(6) output=[t.OwnerId, t.Id, t.LastStatusChangeDate__c, t.WhoId, t.Request_Type__c] SELECT g_0.OwnerId, g_0.Id, g_0.LastStatusChangeDate__c, g_0.WhoId, g_0.Request_Type__c FROM salesforce.Task AS g_0 WHERE (g_0.Type = 'Online chat' ) AND (g_0.CreatedById = '00532000005hioBAAQ' ) AND (g_0.ActivityDate > {d '2020-08-29' }) DependentAccessNode(7) output=[u.Id, u.Name] SELECT g_0.Id, g_0.Name FROM salesforce. "User" AS g_0 WHERE g_0.Id IN (<dependent values>) ============================================================================ END DEBUG LOG In this plan we have real SOQL query SELECT g_0.OwnerId, g_0.Id, g_0.LastStatusChangeDate__c, g_0.WhoId, g_0.Request_Type__c FROM salesforce.Task AS g_0 WHERE (g_0.Type = 'Online chat' ) AND (g_0.CreatedById = '00532000005hioBAAQ' ) AND (g_0.ActivityDate > {d '2020-08-29' }) 3. Another variant of SQL SELECT t.Id AS Task_id , t.LastStatusChangeDate__c AS Task_time , t.WhoId AS Task_whoId , t.OwnerId AS Task_ownerId , u.Name AS Task_agent , t.Request_Type__c AS Task_department FROM Task AS t LEFT OUTER JOIN salesforce.User AS u ON u.Id = t.OwnerId WHERE t.Type= 'Online chat' AND t.createdById = '00532000005hioBAAQ' AND t.ActivityDate > '2020-08-29' ORDER BY t.LastStatusChangeDate__c DESC LIMIT 100 OFFSET 0 PLAN: ProjectNode + Relational Node ID:0 + Output Columns: 0: Task_id (string) 1: Task_time (timestamp) 2: Task_whoId (string) 3: Task_ownerId (string) 4: Task_agent (string) 5: Task_department (string) + Cost Estimates:Estimated Node Cardinality: 100.0 + Child 0: LimitNode + Relational Node ID:1 + Output Columns: 0: Id (string) 1: LastStatusChangeDate__c (timestamp) 2: WhoId (string) 3: OwnerId (string) 4: Name (string) 5: Request_Type__c (string) + Cost Estimates:Estimated Node Cardinality: 100.0 + Child 0: SortNode + Relational Node ID:2 + Output Columns: 0: Id (string) 1: LastStatusChangeDate__c (timestamp) 2: WhoId (string) 3: OwnerId (string) 4: Name (string) 5: Request_Type__c (string) + Cost Estimates:Estimated Node Cardinality: -1.0 + Child 0: JoinNode + Relational Node ID:3 + Output Columns: 0: Id (string) 1: LastStatusChangeDate__c (timestamp) 2: WhoId (string) 3: OwnerId (string) 4: Name (string) 5: Request_Type__c (string) + Cost Estimates:Estimated Node Cardinality: -1.0 + Child 0: AccessNode + Relational Node ID:4 + Output Columns: 0: OwnerId (string) 1: Id (string) 2: LastStatusChangeDate__c (timestamp) 3: WhoId (string) 4: Request_Type__c (string) + Cost Estimates:Estimated Node Cardinality: 100.0 + Query:SELECT g_0.OwnerId, g_0.Id, g_0.LastStatusChangeDate__c, g_0.WhoId, g_0.Request_Type__c FROM salesforce.Task AS g_0 WHERE (g_0.Type = 'Online chat' ) AND (g_0.CreatedById = '00532000005hioBAAQ' ) AND (g_0.ActivityDate > {d '2020-08-29' }) ORDER BY g_0.LastStatusChangeDate__c DESC LIMIT 100 + Model Name:salesforce + Child 1: DependentAccessNode + Relational Node ID:5 + Output Columns: 0: Id (string) 1: Name (string) + Cost Estimates:Estimated Node Cardinality: -1.0 + Query:SELECT g_0.Id, g_0.Name FROM salesforce. "User" AS g_0 WHERE g_0.Id IN (<dependent values>) + Model Name:salesforce + Dependent Join: true + Join Strategy:ENHANCED SORT JOIN (SORT/SORT) + Join Type:LEFT OUTER JOIN + Join Criteria:t.OwnerId=u.Id + Sort Columns:[t.LastStatusChangeDate__c DESC] + Sort FrameMode:SORT + Row Offset: null + Row Limit:100 + Select Columns: 0: t.Id AS Task_id 1: t.LastStatusChangeDate__c AS Task_time 2: t.WhoId AS Task_whoId 3: t.OwnerId AS Task_ownerId 4: u.Name AS Task_agent 5: t.Request_Type__c AS Task_department + Data Bytes Sent:7 + Planning Time:0 END PLAN DEBUG LOG : nullEND DEBUG LOG in this plan we have SOQL SELECT g_0.OwnerId, g_0.Id, g_0.LastStatusChangeDate__c, g_0.WhoId, g_0.Request_Type__c FROM salesforce.Task AS g_0 WHERE (g_0.Type = 'Online chat' ) AND (g_0.CreatedById = '00532000005hioBAAQ' ) AND (g_0.ActivityDate > {d '2020-08-29' }) ORDER BY g_0.LastStatusChangeDate__c DESC LIMIT 100 in first SQL we have NULLS FIRST in SQL but not in SOQL, but in SOQL this construction is exists. Same for LIMIT construction in first SQL. https://developer.salesforce.com/docs/atlas.en-us.soql_sosl.meta/soql_sosl/sforce_api_calls_soql_select_orderby.htm So in first and second constructions we have different row sets with real salefforce request

      Description

      We have two different results from Teiid where make "same" requests.

        Gliffy Diagrams

          Attachments

            Issue Links

              Activity

                People

                • Assignee:
                  shawkins Steven Hawkins
                  Reporter:
                  i3draven Renat Eskenin
                • Votes:
                  0 Vote for this issue
                  Watchers:
                  2 Start watching this issue

                  Dates

                  • Created:
                    Updated:
                    Resolved: