Tuning PL/SQL - tkprof shows much more work for RECURSIVE STATEMENTS

Hi,
Firstly I'm not sure if this should be in "Database - General" or "SQL and PL/SQL". Since it's more of a performance tuning question than specifically about the PL/SQL, I'm going to put it here in "Database - General". I hope that doesn't offend anyone.
I've just started looking at a reported performance problem in our app. One of the developers set me up a procedure that replicates the issue, I ran it while tracing the session and then fed the trace file to tkprof. The results at the bottom of my tkprof output file look like this:
OVERALL TOTALS FOR ALL NON-RECURSIVE STATEMENTS
call     count       cpu    elapsed       disk      query    current        rows
Parse        3      0.01       0.07         10         60          0           0
Execute      3      0.01       0.01          0          3          0           3
Fetch        0      0.00       0.00          0          0          0           0
total        6      0.03       0.08         10         63          0           3
Misses in library cache during parse: 1
Elapsed times include waiting on following events:
  Event waited on                             Times   Max. Wait  Total Waited
  ----------------------------------------   Waited  ----------  ------------
  SQL*Net message to client                       5        0.00          0.00
  SQL*Net message from client                     4        1.68          1.70
  db file sequential read                        18        0.01          0.10
OVERALL TOTALS FOR ALL RECURSIVE STATEMENTS
call     count       cpu    elapsed       disk      query    current        rows
Parse      416      0.00       0.01          0          0          2           0
Execute   1456      0.71       0.75         26       1739        425         590
Fetch     2932      0.12       2.21        337       6338          0        3061
total     4804      0.84       2.98        363       8077        427        3651
Misses in library cache during parse: 25
Misses in library cache during execute: 24
Elapsed times include waiting on following events:
  Event waited on                             Times   Max. Wait  Total Waited
  ----------------------------------------   Waited  ----------  ------------
  db file sequential read                       343        0.08          2.09
  db file scattered read                          1        0.00          0.00
   47  user  SQL statements in session.
  888  internal SQL statements in session.
  935  SQL statements in session.
   31  statements EXPLAINed in this session.I'm looking in particular at that relatively high activity for RECURSIVE STATEMENTS, because to me, the NON-RECURSIVE (ie the actual submitted statements that form our code) looks pretty harmless. This is my first experience of trying to tune some complex looking PL/SQL and I've no idea what could be considered more "normal", but from what I think I know, and google searches, the results look quite odd to me.
Is this high activity for RECURSIVE STATEMENTS a problem, and if so, what should I start looking at to reduce that activity?
Regards,
Ados

If you have a PLSQL block or stored procedure running SQL statements, the SQL statements, too, will appear as RECURSIVE STATEMENTS in the trace file and tkprof.
It is a misconception that RECURSIVE STATEMENTS are only SYS statements doing data dictionary lookups / updates.
For example, I ran this :
SQL> create or replace procedure test_procedure as
  2  begin
  3  insert into my_emp_table select * from my_emp_table;
  4  dbms_output.put_line('Rows Inserted :  ' || sql%rowcount);
  5  insert into my_emp_table select * from my_emp_table where emplid=1;
  6  dbms_output.put_line('Rows Inserted :  ' || sql%rowcount);
  7  end;
  8  /
Procedure created.
SQL> alter session set events '10046 trace name context forever, level 8';
Session altered.
SQL> execute test_procedure;
PL/SQL procedure successfully completed.
SQL> commit;
Commit complete.
SQL> select 'x' from dual;
x
SQL> exitThe tkprof shows ;
OVERALL TOTALS FOR ALL NON-RECURSIVE STATEMENTS
call     count       cpu    elapsed       disk      query    current        rows
Parse        3      0.00       0.00          0          0          0           0
Execute      3      0.00       0.00          0          0          1           1
Fetch        2      0.00       0.00          0          0          0           1
total        8      0.00       0.00          0          0          1           2
Misses in library cache during parse: 2
Elapsed times include waiting on following events:
  Event waited on                             Times   Max. Wait  Total Waited
  ----------------------------------------   Waited  ----------  ------------
  SQL*Net message to client                       5        0.00          0.00
  SQL*Net message from client                     5        5.31         11.97
OVERALL TOTALS FOR ALL RECURSIVE STATEMENTS
call     count       cpu    elapsed       disk      query    current        rows
Parse        4      0.00       0.00          0          2          0           0
Execute      4      0.00       0.00          2         16          7           5
Fetch        2      0.00       0.00          0         14          0           2
total       10      0.01       0.01          2         32          7           7
Misses in library cache during parse: 2
Elapsed times include waiting on following events:
  Event waited on                             Times   Max. Wait  Total Waited
  ----------------------------------------   Waited  ----------  ------------
  db file sequential read                         2        0.00          0.00
    7  user  SQL statements in session.
    0  internal SQL statements in session.
    7  SQL statements in session.Which were the Non-Recursive statements ?
BEGIN test_procedure; END;
commit
select 'x' from  dualWhich were the RECURSIVE statements (which you can identify by the keywords : (recursive depth) ?
SELECT /* OPT_DYN_SAMP */ /*+ ALL_ROWS IGNORE_WHERE_CLAUSE
  NO_PARALLEL(SAMPLESUB) opt_param('parallel_execution_enabled', 'false')
  NO_PARALLEL_INDEX(SAMPLESUB) NO_SQL_TUNE */ NVL(SUM(C1),:"SYS_B_0"),
  NVL(SUM(C2),:"SYS_B_1")
FROM
(SELECT /*+ NO_PARALLEL("MY_EMP_TABLE") FULL("MY_EMP_TABLE")
  NO_PARALLEL_INDEX("MY_EMP_TABLE") */ :"SYS_B_2" AS C1, :"SYS_B_3" AS C2
  FROM "MY_EMP_TABLE" "MY_EMP_TABLE") SAMPLESUB
call     count       cpu    elapsed       disk      query    current        rows
Parse        1      0.00       0.00          0          0          0           0
Execute      1      0.00       0.00          0          0          0           0
Fetch        1      0.00       0.00          0          7          0           1
total        3      0.00       0.00          0          7          0           1
Misses in library cache during parse: 0
Optimizer mode: ALL_ROWS
Parsing user id: 64     (recursive depth: 2)
INSERT INTO MY_EMP_TABLE SELECT * FROM MY_EMP_TABLE
call     count       cpu    elapsed       disk      query    current        rows
Parse        1      0.00       0.00          0          1          0           0
Execute      1      0.00       0.00          2          8          4           3
Fetch        0      0.00       0.00          0          0          0           0
total        2      0.00       0.00          2          9          4           3
Misses in library cache during parse: 1
Optimizer mode: ALL_ROWS
Parsing user id: 64     (recursive depth: 1)
SELECT /* OPT_DYN_SAMP */ /*+ ALL_ROWS IGNORE_WHERE_CLAUSE
  NO_PARALLEL(SAMPLESUB) opt_param('parallel_execution_enabled', 'false')
  NO_PARALLEL_INDEX(SAMPLESUB) NO_SQL_TUNE */ NVL(SUM(C1),:"SYS_B_0"),
  NVL(SUM(C2),:"SYS_B_1")
FROM
(SELECT /*+ IGNORE_WHERE_CLAUSE NO_PARALLEL("MY_EMP_TABLE")
  FULL("MY_EMP_TABLE") NO_PARALLEL_INDEX("MY_EMP_TABLE") */ :"SYS_B_2" AS C1,
  CASE WHEN "MY_EMP_TABLE"."EMPLID"=:"SYS_B_3" THEN :"SYS_B_4" ELSE
  :"SYS_B_5" END AS C2 FROM "MY_EMP_TABLE" "MY_EMP_TABLE") SAMPLESUB
call     count       cpu    elapsed       disk      query    current        rows
Parse        1      0.00       0.00          0          0          0           0
Execute      1      0.00       0.00          0          0          0           0
Fetch        1      0.00       0.00          0          7          0           1
total        3      0.00       0.00          0          7          0           1
Misses in library cache during parse: 0
Optimizer mode: ALL_ROWS
Parsing user id: 64     (recursive depth: 2)
INSERT INTO MY_EMP_TABLE SELECT * FROM MY_EMP_TABLE WHERE EMPLID=1
call     count       cpu    elapsed       disk      query    current        rows
Parse        1      0.00       0.00          0          1          0           0
Execute      1      0.00       0.00          0          8          3           2
Fetch        0      0.00       0.00          0          0          0           0
total        2      0.00       0.00          0          9          3           2
Misses in library cache during parse: 1
Optimizer mode: ALL_ROWS
Parsing user id: 64     (recursive depth: 1)The INSERT statments are recursive depth 1 while the SELECTS they cause are recursive depth 2.
Note that neither of these are are actually SYS statements agaisnt the data dictionary !!
Edit :
IF you read the last few lines, it would become evident that some (in my case all) the RECURSIVE STATEMENTS are non-SYS statements, actually being my code, not Oracle's code.
       1  session in tracefile.
       7  user  SQL statements in trace file.
       0  internal SQL statements in trace file.
       7  SQL statements in trace file.
       7  unique SQL statements in trace file.
      87  lines in trace file.
       6  elapsed seconds in trace file.I have 3 non-recursive and 4 "RECURSIVE" statements. All 7 are correctly identified as "user SQL statements in trace file".
Hemant K Chitale
http://hemantoracledba.blogspot.com
Edited by: Hemant K Chitale on Jul 29, 2009 11:44 PM
Edited by: Hemant K Chitale on Jul 29, 2009 11:47 PM

Similar Messages

  • Just bought 2 Apple 6 plus phones. Cannot get my husbands email to connect. He works for the state and not sure if that is the problem or not. All his information is correct.

    Just bought two new iPhone 6 plus phones.  Cannot get the email to load on my husbands phone for his work.  He works for the state and I don't know if that is the issue or not.  Any suggestions?

    Your husband should contact his IT department at work to find out if he is allowed to set up his work email on his personal device and if so, how to do it.

  • Wrapping a "select" into a "select * from (SQL select)" costs much more

    I had a SELECT statement which works OK. It takes about 10-20 seconds to respond.
    However, I need to order it and use rownum so I figured by wrapping the statement in a SELECT * FROM (...) would be the same difference, pretty much.
    However, before I even add a sort or use rownum, it costs so much more.
    How can that be? Surely it runs the subquery and then just shows the columns from that?
    Here are the details for both:
    SELECT ms.component_part, ip."DESCRIPTION", ms.qty_per_assembly, ipp.
           mrp_order_code, ip.planner_buyer, ip.type_code, pps.vendor_no, pps.
           vendor_manuf_leadtime, ipp.min_order_qty, ipp.maxweek_supply
           period_order_quantity, ipp.safety_stock,
           ifsapp.inventory_part_in_stock_api.GET_INVENTORY_QTY_ONHAND(ms.contract,
           ms.component_part, NULL) qty_onhand, ip.estimated_material_cost, (SELECT
           SUM(ex.qty_demand)
        FROM ifsinfo.km_order_supply_demand_mfg ex
        WHERE ex.date_required BETWEEN TO_DATE(SYSDATE) AND TO_DATE('01/05/2007',
              'DD/MM/YYYY') + 1 - 1 / ((60 * 60) * 24)
          AND ex.part_no = ms.component_part
          AND ex.contract = ms.contract
        GROUP BY ex.part_no) manu_sum_dmd, (SELECT SUM(ex.qty_demand)
                                                FROM ifsinfo.km_order_supply_demand_pur ex
                                                WHERE ex.date_required BETWEEN
                                                      TO_DATE(SYSDATE) AND
                                                      TO_DATE('01/05/2007',
                                                      'DD/MM/YYYY') + 1 - 1 / ((60
                                                      * 60) * 24)
                                                  AND ex.part_no = ms.
                                                      component_part
                                                  AND ex.contract = ms.contract
                                                GROUP BY ex.part_no) purch_sum_dmd
        FROM ifsapp.manuf_structure ms, ifsapp.inventory_part ip, ifsapp.
             inventory_part_planning ipp, ifsapp.purchase_part_supplier pps
        WHERE ms.component_part = ip.part_no
          AND ms.contract = ip.contract
          AND ms.component_part = ipp.part_no
          AND ms.contract = ipp.contract
          AND ms.component_part = pps.part_no(+)
          AND ms.contract = pps.contract(+)
          AND NVL(pps.primary_vendor_db, 'Y') = 'Y'
        CONNECT BY PRIOR ms.component_part = ms.part_no
               AND PRIOR ms.contract = ms.contract
               AND ms.eff_phase_in_date <= SYSDATE
               AND NVL(ms.eff_phase_out_date, SYSDATE) >= SYSDATE
        START WITH ms.part_no = 'K7501890'
              AND ms.contract = 'OKMMN'
              AND ms.bom_type = 'Manufacturing'
              AND ms.eng_chg_level = '1'
    Get Explain Plan By:
       Cost All Rows
    Execution Steps:
    328  SELECT STATEMENT
    155  SORT (GROUP BY NOSORT)
    154  MERGE JOIN (CARTESIAN)
    5  FILTER
    4  NESTED LOOPS (OUTER)
    1  INDEX (RANGE SCAN), INVENTORY_PART_CONFIG_PK (IFSAPP) 
    3  TABLE ACCESS (BY INDEX ROWID), INVENTORY_PART_TAB (IFSAPP) 
    2  INDEX (UNIQUE SCAN), INVENTORY_PART_PK (IFSAPP) 
    153  BUFFER (SORT)
    152  VIEW, ORDER_SUPPLY_DEMAND_EXT (IFSAPP) 
    151  UNION-ALL
    9  FILTER
    8  INLIST ITERATOR
    7  TABLE ACCESS (BY INDEX ROWID), SHOP_MATERIAL_ALLOC_TAB (IFSAPP) 
    6  INDEX (RANGE SCAN), SHOP_MATERIAL_ALLOC_1_IX (IFSAPP) 
    13  FILTER
    12  INLIST ITERATOR
    11  TABLE ACCESS (BY INDEX ROWID), CUSTOMER_ORDER_LINE_TAB (IFSAPP) 
    10  INDEX (RANGE SCAN), CUSTOMER_ORDER_LINE_2_IX (IFSAPP) 
    17  FILTER
    16  INLIST ITERATOR
    15  TABLE ACCESS (BY INDEX ROWID), PURCHASE_ORDER_LINE_TAB (IFSAPP) 
    14  INDEX (RANGE SCAN), PURCHASE_ORDER_LINE_1_IX (IFSAPP) 
    20  FILTER
    19  TABLE ACCESS (BY INDEX ROWID), SHOP_ORD_TAB (IFSAPP) 
    18  INDEX (RANGE SCAN), SHOP_ORD_TAB_1_IX (IFSAPP) 
    26  FILTER
    25  NESTED LOOPS
    22  TABLE ACCESS (BY INDEX ROWID), PURCHASE_ORDER_LINE_COMP_TAB (IFSAPP) 
    21  INDEX (RANGE SCAN), PURCHASE_ORDER_LINE_COMP_1_IX (IFSAPP) 
    24  TABLE ACCESS (BY INDEX ROWID), PURCHASE_ORDER_LINE_TAB (IFSAPP) 
    23  INDEX (UNIQUE SCAN), PURCHASE_ORDER_LINE_PK (IFSAPP) 
    30  FILTER
    29  INLIST ITERATOR
    28  TABLE ACCESS (BY INDEX ROWID), MATERIAL_REQUIS_LINE_TAB (IFSAPP) 
    27  INDEX (RANGE SCAN), MATERIAL_REQUIS_LINE_1_IX (IFSAPP) 
    39  FILTER
    38  NESTED LOOPS
    35  NESTED LOOPS
    32  TABLE ACCESS (BY INDEX ROWID), MAINT_MATERIAL_REQ_LINE_TAB (IFSAPP) 
    31  INDEX (RANGE SCAN), MAINT_MATERIAL_REQ_LINE_IX2 (IFSAPP) 
    34  TABLE ACCESS (BY INDEX ROWID), MAINT_MATERIAL_REQUISITION_TAB (IFSAPP) 
    33  INDEX (UNIQUE SCAN), MAINT_MATERIAL_REQUISITION_PK (IFSAPP) 
    37  TABLE ACCESS (BY INDEX ROWID), ACTIVE_WORK_ORDER_TAB (IFSAPP) 
    36  INDEX (UNIQUE SCAN), ACTIVE_WORK_ORDER_PK (IFSAPP) 
    42  FILTER
    41  TABLE ACCESS (BY INDEX ROWID), PURCHASE_REQ_LINE_TAB (IFSAPP) 
    40  INDEX (RANGE SCAN), PURCHASE_REQ_LINE1_IX (IFSAPP) 
    79  VIEW, MRP_PART_SUPPLY_DEMAND_EXT (IFSAPP) 
    78  SORT (UNIQUE)
    77  UNION-ALL
    57  FILTER
    56  NESTED LOOPS (ANTI)
    44  TABLE ACCESS (BY INDEX ROWID), MRP_PART_SUPPLY_DEMAND_TAB (IFSAPP) 
    43  INDEX (RANGE SCAN), MRP_PART_SUPPLY_DEMAND_PK (IFSAPP) 
    55  VIEW, LINE_SCHED_COMP_EXT (IFSAPP) 
    54  UNION-ALL (PARTITION)
    48  NESTED LOOPS
    46  TABLE ACCESS (BY INDEX ROWID), LINE_SCHED_RECEIPT_MTRL_TAB (IFSAPP) 
    45  INDEX (RANGE SCAN), LINE_SCHED_RECEIPT_MTRL_1_IX (IFSAPP) 
    47  INDEX (UNIQUE SCAN), LINE_SCHED_RECEIPT_PK (IFSAPP) 
    53  NESTED LOOPS
    50  TABLE ACCESS (BY INDEX ROWID), PRODUCTION_RECEIPT_MTRL_TAB (IFSAPP) 
    49  INDEX (RANGE SCAN), PRODUCTION_RECEIPT_MTRL_1_IX (IFSAPP) 
    52  TABLE ACCESS (BY INDEX ROWID), PRODUCTION_RECEIPT_TAB (IFSAPP) 
    51  INDEX (UNIQUE SCAN), PRODUCTION_RECEIPT_PK (IFSAPP) 
    76  FILTER
    75  NESTED LOOPS (ANTI)
    62  NESTED LOOPS
    59  TABLE ACCESS (BY INDEX ROWID), MRP_PART_SUPPLY_DEMAND_TAB (IFSAPP) 
    58  INDEX (RANGE SCAN), MRP_PART_SUPPLY_DEMAND_PK (IFSAPP) 
    61  TABLE ACCESS (BY INDEX ROWID), INVENTORY_PART_PLANNING_TAB (IFSAPP) 
    60  INDEX (UNIQUE SCAN), INVENTORY_PART_PLANNING_PK (IFSAPP) 
    74  VIEW, LINE_SCHED_COMP_EXT (IFSAPP) 
    73  UNION-ALL (PARTITION)
    67  NESTED LOOPS
    64  TABLE ACCESS (BY INDEX ROWID), LINE_SCHED_RECEIPT_MTRL_TAB (IFSAPP) 
    63  INDEX (RANGE SCAN), LINE_SCHED_RECEIPT_MTRL_1_IX (IFSAPP) 
    66  TABLE ACCESS (BY INDEX ROWID), LINE_SCHED_RECEIPT_TAB (IFSAPP) 
    65  INDEX (UNIQUE SCAN), LINE_SCHED_RECEIPT_PK (IFSAPP) 
    72  NESTED LOOPS
    69  TABLE ACCESS (BY INDEX ROWID), PRODUCTION_RECEIPT_MTRL_TAB (IFSAPP) 
    68  INDEX (RANGE SCAN), PRODUCTION_RECEIPT_MTRL_1_IX (IFSAPP) 
    71  TABLE ACCESS (BY INDEX ROWID), PRODUCTION_RECEIPT_TAB (IFSAPP) 
    70  INDEX (UNIQUE SCAN), PRODUCTION_RECEIPT_PK (IFSAPP) 
    84  FILTER
    83  NESTED LOOPS
    80  INDEX (UNIQUE SCAN), INVENTORY_PART_PLANNING_PK (IFSAPP) 
    82  TABLE ACCESS (BY INDEX ROWID), SHOP_ORDER_PROP_TAB (IFSAPP) 
    81  INDEX (RANGE SCAN), SHOP_ORDER_PROP_1_IX (IFSAPP) 
    90  FILTER
    89  NESTED LOOPS
    86  TABLE ACCESS (BY INDEX ROWID), LEVEL_1_PART_TAB (IFSAPP) 
    85  INDEX (UNIQUE SCAN), LEVEL_1_PART_PK (IFSAPP) 
    88  TABLE ACCESS (BY INDEX ROWID), LEVEL_1_FORECAST_TAB (IFSAPP) 
    87  INDEX (RANGE SCAN), LEVEL_1_FORECAST_PK (IFSAPP) 
    96  FILTER
    93  FILTER
    92  TABLE ACCESS (BY INDEX ROWID), DOP_ORDER_TAB (IFSAPP) 
    91  INDEX (RANGE SCAN), DOP_ORDER_1_IX (IFSAPP) 
    95  TABLE ACCESS (BY INDEX ROWID), DOP_ORDER_TAB (IFSAPP) 
    94  INDEX (UNIQUE SCAN), DOP_ORDER_PK (IFSAPP) 
    99  FILTER
    98  TABLE ACCESS (BY INDEX ROWID), DOP_ORDER_TAB (IFSAPP) 
    97  INDEX (RANGE SCAN), DOP_ORDER_1_IX (IFSAPP) 
    112  VIEW, LINE_SCHED_COMP_EXT (IFSAPP) 
    111  UNION-ALL
    104  FILTER
    103  NESTED LOOPS
    101  TABLE ACCESS (BY INDEX ROWID), LINE_SCHED_RECEIPT_MTRL_TAB (IFSAPP) 
    100  INDEX (RANGE SCAN), LINE_SCHED_RECEIPT_MTRL_1_IX (IFSAPP) 
    102  INDEX (UNIQUE SCAN), LINE_SCHED_RECEIPT_PK (IFSAPP) 
    110  FILTER
    109  NESTED LOOPS
    106  TABLE ACCESS (BY INDEX ROWID), PRODUCTION_RECEIPT_MTRL_TAB (IFSAPP) 
    105  INDEX (RANGE SCAN), PRODUCTION_RECEIPT_MTRL_1_IX (IFSAPP) 
    108  TABLE ACCESS (BY INDEX ROWID), PRODUCTION_RECEIPT_TAB (IFSAPP) 
    107  INDEX (UNIQUE SCAN), PRODUCTION_RECEIPT_PK (IFSAPP) 
    117  FILTER
    116  NESTED LOOPS
    113  INDEX (UNIQUE SCAN), INVENTORY_PART_PLANNING_PK (IFSAPP) 
    115  TABLE ACCESS (BY INDEX ROWID), LINE_SCHED_RECEIPT_TAB (IFSAPP) 
    114  INDEX (RANGE SCAN), LINE_SCHED_RECEIPT_2_IX (IFSAPP) 
    120  FILTER
    119  TABLE ACCESS (BY INDEX ROWID), ACTIVE_WORK_ORDER_TAB (IFSAPP) 
    118  INDEX (RANGE SCAN), ACTIVE_WORK_ORDER_IX2 (IFSAPP) 
    123  FILTER
    122  TABLE ACCESS (BY INDEX ROWID), SPARE_PART_FORECAST_TAB (IFSAPP) 
    121  INDEX (RANGE SCAN), SPARE_PART_FORECAST_PK (IFSAPP) 
    126  FILTER
    125  TABLE ACCESS (BY INDEX ROWID), CUST_SCHED_PLAN_DEMAND_TAB (IFSAPP) 
    124  INDEX (RANGE SCAN), CUST_SCHED_PLAN_DEMAND_1_IX (IFSAPP) 
    138  FILTER
    137  HASH JOIN (ANTI)
    135  HASH JOIN (ANTI)
    133  NESTED LOOPS
    130  NESTED LOOPS
    128  TABLE ACCESS (BY INDEX ROWID), MATERIAL_PROCUREMENT_LIST_TAB (IFSAPP) 
    127  INDEX (RANGE SCAN), MPL_AK1 (IFSAPP) 
    129  INDEX (UNIQUE SCAN), ACTIVITY_PK (IFSAPP) 
    132  TABLE ACCESS (BY INDEX ROWID), PROJECT_PRODUCT_STRUCTURE_TAB (IFSAPP) 
    131  INDEX (UNIQUE SCAN), PROJECT_PRODUCT_STRUCTURE_PK (IFSAPP) 
    134  TABLE ACCESS (FULL), PROCURED_MATERIAL_TAB (IFSAPP) 
    136  TABLE ACCESS (FULL), PROCURED_MATERIAL_TAB (IFSAPP) 
    141  FILTER
    140  TABLE ACCESS (BY INDEX ROWID), HPM_PART_SUPPLY_DEMAND_TAB (IFSAPP) 
    139  INDEX (RANGE SCAN), HPM_PART_SUPPLY_DEMAND_PK (IFSAPP) 
    144  FILTER
    143  TABLE ACCESS (BY INDEX ROWID), SUPP_SCHED_PLAN_SUPPLY_TAB (IFSAPP) 
    142  INDEX (RANGE SCAN), SUPP_SCHED_PLAN_SUPPLY_1_IX (IFSAPP) 
    147  FILTER
    146  TABLE ACCESS (BY INDEX ROWID), ORDER_QUOTATION_LINE_TAB (IFSAPP) 
    145  INDEX (RANGE SCAN), ORDER_QUOTATION_LINE_2_IX (IFSAPP) 
    150  FILTER
    149  TABLE ACCESS (BY INDEX ROWID), PROMISE_INVENTORY_ORDER_TAB (IFSAPP) 
    148  INDEX (FULL SCAN), PROMISE_INVENTORY_ORDER_PK (IFSAPP) 
    306  SORT (GROUP BY NOSORT)
    305  NESTED LOOPS
    157  TABLE ACCESS (BY INDEX ROWID), PURCHASE_PART_TAB (IFSAPP) 
    156  INDEX (UNIQUE SCAN), PURCHASE_PART_PK (IFSAPP) 
    304  VIEW, ORDER_SUPPLY_DEMAND_EXT (IFSAPP) 
    303  UNION-ALL
    161  FILTER
    160  INLIST ITERATOR
    159  TABLE ACCESS (BY INDEX ROWID), SHOP_MATERIAL_ALLOC_TAB (IFSAPP) 
    158  INDEX (RANGE SCAN), SHOP_MATERIAL_ALLOC_1_IX (IFSAPP) 
    165  FILTER
    164  INLIST ITERATOR
    163  TABLE ACCESS (BY INDEX ROWID), CUSTOMER_ORDER_LINE_TAB (IFSAPP) 
    162  INDEX (RANGE SCAN), CUSTOMER_ORDER_LINE_2_IX (IFSAPP) 
    169  FILTER
    168  INLIST ITERATOR
    167  TABLE ACCESS (BY INDEX ROWID), PURCHASE_ORDER_LINE_TAB (IFSAPP) 
    166  INDEX (RANGE SCAN), PURCHASE_ORDER_LINE_1_IX (IFSAPP) 
    172  FILTER
    171  TABLE ACCESS (BY INDEX ROWID), SHOP_ORD_TAB (IFSAPP) 
    170  INDEX (RANGE SCAN), SHOP_ORD_TAB_1_IX (IFSAPP) 
    178  FILTER
    177  NESTED LOOPS
    174  TABLE ACCESS (BY INDEX ROWID), PURCHASE_ORDER_LINE_COMP_TAB (IFSAPP) 
    173  INDEX (RANGE SCAN), PURCHASE_ORDER_LINE_COMP_1_IX (IFSAPP) 
    176  TABLE ACCESS (BY INDEX ROWID), PURCHASE_ORDER_LINE_TAB (IFSAPP) 
    175  INDEX (UNIQUE SCAN), PURCHASE_ORDER_LINE_PK (IFSAPP) 
    182  FILTER
    181  INLIST ITERATOR
    180  TABLE ACCESS (BY INDEX ROWID), MATERIAL_REQUIS_LINE_TAB (IFSAPP) 
    179  INDEX (RANGE SCAN), MATERIAL_REQUIS_LINE_1_IX (IFSAPP) 
    191  FILTER
    190  NESTED LOOPS
    187  NESTED LOOPS
    184  TABLE ACCESS (BY INDEX ROWID), MAINT_MATERIAL_REQ_LINE_TAB (IFSAPP) 
    183  INDEX (RANGE SCAN), MAINT_MATERIAL_REQ_LINE_IX2 (IFSAPP) 
    186  TABLE ACCESS (BY INDEX ROWID), MAINT_MATERIAL_REQUISITION_TAB (IFSAPP) 
    185  INDEX (UNIQUE SCAN), MAINT_MATERIAL_REQUISITION_PK (IFSAPP) 
    189  TABLE ACCESS (BY INDEX ROWID), ACTIVE_WORK_ORDER_TAB (IFSAPP) 
    188  INDEX (UNIQUE SCAN), ACTIVE_WORK_ORDER_PK (IFSAPP) 
    194  FILTER
    193  TABLE ACCESS (BY INDEX ROWID), PURCHASE_REQ_LINE_TAB (IFSAPP) 
    192  INDEX (RANGE SCAN), PURCHASE_REQ_LINE1_IX (IFSAPP) 
    231  VIEW, MRP_PART_SUPPLY_DEMAND_EXT (IFSAPP) 
    230  SORT (UNIQUE)
    229  UNION-ALL
    209  FILTER
    208  NESTED LOOPS (ANTI)
    196  TABLE ACCESS (BY INDEX ROWID), MRP_PART_SUPPLY_DEMAND_TAB (IFSAPP) 
    195  INDEX (RANGE SCAN), MRP_PART_SUPPLY_DEMAND_PK (IFSAPP) 
    207  VIEW, LINE_SCHED_COMP_EXT (IFSAPP) 
    206  UNION-ALL (PARTITION)
    200  NESTED LOOPS
    198  TABLE ACCESS (BY INDEX ROWID), LINE_SCHED_RECEIPT_MTRL_TAB (IFSAPP) 
    197  INDEX (RANGE SCAN), LINE_SCHED_RECEIPT_MTRL_1_IX (IFSAPP) 
    199  INDEX (UNIQUE SCAN), LINE_SCHED_RECEIPT_PK (IFSAPP) 
    205  NESTED LOOPS
    202  TABLE ACCESS (BY INDEX ROWID), PRODUCTION_RECEIPT_MTRL_TAB (IFSAPP) 
    201  INDEX (RANGE SCAN), PRODUCTION_RECEIPT_MTRL_1_IX (IFSAPP) 
    204  TABLE ACCESS (BY INDEX ROWID), PRODUCTION_RECEIPT_TAB (IFSAPP) 
    203  INDEX (UNIQUE SCAN), PRODUCTION_RECEIPT_PK (IFSAPP) 
    228  FILTER
    227  NESTED LOOPS (ANTI)
    214  NESTED LOOPS
    211  TABLE ACCESS (BY INDEX ROWID), MRP_PART_SUPPLY_DEMAND_TAB (IFSAPP) 
    210  INDEX (RANGE SCAN), MRP_PART_SUPPLY_DEMAND_PK (IFSAPP) 
    213  TABLE ACCESS (BY INDEX ROWID), INVENTORY_PART_PLANNING_TAB (IFSAPP) 
    212  INDEX (UNIQUE SCAN), INVENTORY_PART_PLANNING_PK (IFSAPP) 
    226  VIEW, LINE_SCHED_COMP_EXT (IFSAPP) 
    225  UNION-ALL (PARTITION)
    219  NESTED LOOPS
    216  TABLE ACCESS (BY INDEX ROWID), LINE_SCHED_RECEIPT_MTRL_TAB (IFSAPP) 
    215  INDEX (RANGE SCAN), LINE_SCHED_RECEIPT_MTRL_1_IX (IFSAPP) 
    218  TABLE ACCESS (BY INDEX ROWID), LINE_SCHED_RECEIPT_TAB (IFSAPP) 
    217  INDEX (UNIQUE SCAN), LINE_SCHED_RECEIPT_PK (IFSAPP) 
    224  NESTED LOOPS
    221  TABLE ACCESS (BY INDEX ROWID), PRODUCTION_RECEIPT_MTRL_TAB (IFSAPP) 
    220  INDEX (RANGE SCAN), PRODUCTION_RECEIPT_MTRL_1_IX (IFSAPP) 
    223  TABLE ACCESS (BY INDEX ROWID), PRODUCTION_RECEIPT_TAB (IFSAPP) 
    222  INDEX (UNIQUE SCAN), PRODUCTION_RECEIPT_PK (IFSAPP) 
    236  FILTER
    235  NESTED LOOPS
    232  INDEX (UNIQUE SCAN), INVENTORY_PART_PLANNING_PK (IFSAPP) 
    234  TABLE ACCESS (BY INDEX ROWID), SHOP_ORDER_PROP_TAB (IFSAPP) 
    233  INDEX (RANGE SCAN), SHOP_ORDER_PROP_1_IX (IFSAPP) 
    242  FILTER
    241  NESTED LOOPS
    238  TABLE ACCESS (BY INDEX ROWID), LEVEL_1_PART_TAB (IFSAPP) 
    237  INDEX (UNIQUE SCAN), LEVEL_1_PART_PK (IFSAPP) 
    240  TABLE ACCESS (BY INDEX ROWID), LEVEL_1_FORECAST_TAB (IFSAPP) 
    239  INDEX (RANGE SCAN), LEVEL_1_FORECAST_PK (IFSAPP) 
    248  FILTER
    245  FILTER
    244  TABLE ACCESS (BY INDEX ROWID), DOP_ORDER_TAB (IFSAPP) 
    243  INDEX (RANGE SCAN), DOP_ORDER_1_IX (IFSAPP) 
    247  TABLE ACCESS (BY INDEX ROWID), DOP_ORDER_TAB (IFSAPP) 
    246  INDEX (UNIQUE SCAN), DOP_ORDER_PK (IFSAPP) 
    251  FILTER
    250  TABLE ACCESS (BY INDEX ROWID), DOP_ORDER_TAB (IFSAPP) 
    249  INDEX (RANGE SCAN), DOP_ORDER_1_IX (IFSAPP) 
    264  VIEW, LINE_SCHED_COMP_EXT (IFSAPP) 
    263  UNION-ALL
    256  FILTER
    255  NESTED LOOPS
    253  TABLE ACCESS (BY INDEX ROWID), LINE_SCHED_RECEIPT_MTRL_TAB (IFSAPP) 
    252  INDEX (RANGE SCAN), LINE_SCHED_RECEIPT_MTRL_1_IX (IFSAPP) 
    254  INDEX (UNIQUE SCAN), LINE_SCHED_RECEIPT_PK (IFSAPP) 
    262  FILTER
    261  NESTED LOOPS
    258  TABLE ACCESS (BY INDEX ROWID), PRODUCTION_RECEIPT_MTRL_TAB (IFSAPP) 
    257  INDEX (RANGE SCAN), PRODUCTION_RECEIPT_MTRL_1_IX (IFSAPP) 
    260  TABLE ACCESS (BY INDEX ROWID), PRODUCTION_RECEIPT_TAB (IFSAPP) 
    259  INDEX (UNIQUE SCAN), PRODUCTION_RECEIPT_PK (IFSAPP) 
    269  FILTER
    268  NESTED LOOPS
    265  INDEX (UNIQUE SCAN), INVENTORY_PART_PLANNING_PK (IFSAPP) 
    267  TABLE ACCESS (BY INDEX ROWID), LINE_SCHED_RECEIPT_TAB (IFSAPP) 
    266  INDEX (RANGE SCAN), LINE_SCHED_RECEIPT_2_IX (IFSAPP) 
    272  FILTER
    271  TABLE ACCESS (BY INDEX ROWID), ACTIVE_WORK_ORDER_TAB (IFSAPP) 
    270  INDEX (RANGE SCAN), ACTIVE_WORK_ORDER_IX2 (IFSAPP) 
    275  FILTER
    274  TABLE ACCESS (BY INDEX ROWID), SPARE_PART_FORECAST_TAB (IFSAPP) 
    273  INDEX (RANGE SCAN), SPARE_PART_FORECAST_PK (IFSAPP) 
    278  FILTER
    277  TABLE ACCESS (BY INDEX ROWID), CUST_SCHED_PLAN_DEMAND_TAB (IFSAPP) 
    276  INDEX (RANGE SCAN), CUST_SCHED_PLAN_DEMAND_1_IX (IFSAPP) 
    290  FILTER
    289  HASH JOIN (ANTI)
    287  HASH JOIN (ANTI)
    285  NESTED LOOPS
    282  NESTED LOOPS
    280  TABLE ACCESS (BY INDEX ROWID), MATERIAL_PROCUREMENT_LIST_TAB (IFSAPP) 
    279  INDEX (RANGE SCAN), MPL_AK1 (IFSAPP) 
    281  INDEX (UNIQUE SCAN), ACTIVITY_PK (IFSAPP) 
    284  TABLE ACCESS (BY INDEX ROWID), PROJECT_PRODUCT_STRUCTURE_TAB (IFSAPP) 
    283  INDEX (UNIQUE SCAN), PROJECT_PRODUCT_STRUCTURE_PK (IFSAPP) 
    286  TABLE ACCESS (FULL), PROCURED_MATERIAL_TAB (IFSAPP) 
    288  TABLE ACCESS (FULL), PROCURED_MATERIAL_TAB (IFSAPP) 
    293  FILTER
    292  TABLE ACCESS (BY INDEX ROWID), HPM_PART_SUPPLY_DEMAND_TAB (IFSAPP) 
    291  INDEX (RANGE SCAN), HPM_PART_SUPPLY_DEMAND_PK (IFSAPP) 
    296  FILTER
    295  TABLE ACCESS (BY INDEX ROWID), SUPP_SCHED_PLAN_SUPPLY_TAB (IFSAPP) 
    294  INDEX (RANGE SCAN), SUPP_SCHED_PLAN_SUPPLY_1_IX (IFSAPP) 
    299  FILTER
    298  TABLE ACCESS (BY INDEX ROWID), ORDER_QUOTATION_LINE_TAB (IFSAPP) 
    297  INDEX (RANGE SCAN), ORDER_QUOTATION_LINE_2_IX (IFSAPP) 
    302  FILTER
    301  TABLE ACCESS (BY INDEX ROWID), PROMISE_INVENTORY_ORDER_TAB (IFSAPP) 
    300  INDEX (FULL SCAN), PROMISE_INVENTORY_ORDER_PK (IFSAPP) 
    327  FILTER
    326  CONNECT BY (WITH FILTERING)
    315  FILTER
    314  COUNT
    313  HASH JOIN
    307  TABLE ACCESS (FULL), INVENTORY_PART_TAB (IFSAPP) 
    312  HASH JOIN (OUTER)
    310  HASH JOIN
    308  TABLE ACCESS (FULL), INVENTORY_PART_PLANNING_TAB (IFSAPP) 
    309  TABLE ACCESS (FULL), MANUF_STRUCTURE_TAB (IFSAPP) 
    311  TABLE ACCESS (FULL), PURCHASE_PART_SUPPLIER_TAB (IFSAPP) 
    325  HASH JOIN
    316  CONNECT BY PUMP
    324  COUNT
    323  HASH JOIN
    317  TABLE ACCESS (FULL), INVENTORY_PART_TAB (IFSAPP) 
    322  HASH JOIN (OUTER)
    320  HASH JOIN
    318  TABLE ACCESS (FULL), INVENTORY_PART_PLANNING_TAB (IFSAPP) 
    319  TABLE ACCESS (FULL), MANUF_STRUCTURE_TAB (IFSAPP) 
    321  TABLE ACCESS (FULL), PURCHASE_PART_SUPPLIER_TAB (IFSAPP) 
    Step Description Est Cost Est Row Count Est Byte Count
    1 This operation retrieves multiple ROWIDs by scanning index INVENTORY_PART_CONFIG_PK (ascending by key). 3 1 15
    2 This operation retrieves a single ROWID by an index lookup of INVENTORY_PART_PK. 1 1 
    3 This operation retrieves a row of table INVENTORY_PART_TAB based on its ROWID. 1 1 17
    4 This operation performs an outer join by comparing each row of its first child row source with all rows of its second child row source, joining those row pairs for which some condition holds.   
    5 This operation takes a row source and rejects some of the rows, returning the accepted rows.   
    6 This operation retrieves multiple ROWIDs by scanning index SHOP_MATERIAL_ALLOC_1_IX (ascending by key). 3 106 
    7 This operation retrieves a row of table SHOP_MATERIAL_ALLOC_TAB based on its ROWID. 11 1 41
    8 This operation represents an iteration over each element in the list represented by its child node.   
    9 This operation takes a row source and rejects some of the rows, returning the accepted rows.   
    10 This operation retrieves multiple ROWIDs by scanning index CUSTOMER_ORDER_LINE_2_IX (ascending by key). 3 10 
    11 This operation retrieves a row of table CUSTOMER_ORDER_LINE_TAB based on its ROWID. 2 1 48
    12 This operation represents an iteration over each element in the list represented by its child node.   
    13 This operation takes a row source and rejects some of the rows, returning the accepted rows.   
    14 This operation retrieves multiple ROWIDs by scanning index PURCHASE_ORDER_LINE_1_IX (ascending by key). 3 2 
    15 This operation retrieves a row of table PURCHASE_ORDER_LINE_TAB based on its ROWID. 1 1 48
    16 This operation represents an iteration over each element in the list represented by its child node.   
    17 This operation takes a row source and rejects some of the rows, returning the accepted rows.   
    18 This operation retrieves multiple ROWIDs by scanning index SHOP_ORD_TAB_1_IX (ascending by key). 1 21 
    19 This operation retrieves a row of table SHOP_ORD_TAB based on its ROWID. 2 1 46
    20 This operation takes a row source and rejects some of the rows, returning the accepted rows.   
    21 This operation retrieves multiple ROWIDs by scanning index PURCHASE_ORDER_LINE_COMP_1_IX (ascending by key). 1 12 
    22 This operation retrieves a row of table PURCHASE_ORDER_LINE_COMP_TAB based on its ROWID. 1 1 43
    23 This operation retrieves a single ROWID by an index lookup of PURCHASE_ORDER_LINE_PK. 1 1 
    24 This operation retrieves a row of table PURCHASE_ORDER_LINE_TAB based on its ROWID. 1 1 25
    25 This operation compares each row of its first child row source with all rows of its second child row source, joining those row pairs for which some condition holds. 2 1 68
    26 This operation takes a row source and rejects some of the rows, returning the accepted rows.   
    27 This operation retrieves multiple ROWIDs by scanning index MATERIAL_REQUIS_LINE_1_IX (ascending by key). 2 1 
    28 This operation retrieves a row of table MATERIAL_REQUIS_LINE_TAB based on its ROWID. 1 1 37
    29 This operation represents an iteration over each element in the list represented by its child node.   
    30 This operation takes a row source and rejects some of the rows, returning the accepted rows.   
    31 This operation retrieves multiple ROWIDs by scanning index MAINT_MATERIAL_REQ_LINE_IX2 (ascending by key). 1 1 
    32 This operation retrieves a row of table MAINT_MATERIAL_REQ_LINE_TAB based on its ROWID. 1 1 79
    33 This operation retrieves a single ROWID by an index lookup of MAINT_MATERIAL_REQUISITION_PK.  1 
    34 This operation retrieves a row of table MAINT_MATERIAL_REQUISITION_TAB based on its ROWID. 1 1 43
    35 This operation compares each row of its first child row source with all rows of its second child row source, joining those row pairs for which some condition holds. 2 1 122
    36 This operation retrieves a single ROWID by an index lookup of ACTIVE_WORK_ORDER_PK.  1 
    37 This operation retrieves a row of table ACTIVE_WORK_ORDER_TAB based on its ROWID. 1 1 30
    38 This operation compares each row of its first child row source with all rows of its second child row source, joining those row pairs for which some condition holds. 3 1 152
    39 This operation takes a row source and rejects some of the rows, returning the accepted rows.   
    40 This operation retrieves multiple ROWIDs by scanning index PURCHASE_REQ_LINE1_IX (ascending by key). 3 3 
    41 This operation retrieves a row of table PURCHASE_REQ_LINE_TAB based on its ROWID. 1 1 40
    42 This operation takes a row source and rejects some of the rows, returning the accepted rows.   
    43 This operation retrieves multiple ROWIDs by scanning index MRP_PART_SUPPLY_DEMAND_PK (ascending by key). 3 17 
    44 This operation retrieves a row of table MRP_PART_SUPPLY_DEMAND_TAB based on its ROWID. 2 1 49
    45 This operation retrieves multiple ROWIDs by scanning index LINE_SCHED_RECEIPT_MTRL_1_IX (ascending by key). 1 1 
    46 This operation retrieves a row of table LINE_SCHED_RECEIPT_MTRL_TAB based on its ROWID. 1 1 48
    47 This operation retrieves a single ROWID by an index lookup of LINE_SCHED_RECEIPT_PK.  1 8
    48 This operation compares each row of its first child row source with all rows of its second child row source, joining those row pairs for which some condition holds. 2 1 56
    49 This operation retrieves multiple ROWIDs by scanning index PRODUCTION_RECEIPT_MTRL_1_IX (ascending by key). 1 1 
    50 This operation retrieves a row of table PRODUCTION_RECEIPT_MTRL_TAB based on its ROWID. 1 1 39
    51 This operation retrieves a single ROWID by an index lookup of PRODUCTION_RECEIPT_PK.  1 
    52 This operation retrieves a row of table PRODUCTION_RECEIPT_TAB based on its ROWID. 1 1 25
    53 This operation compares each row of its first child row source with all rows of its second child row source, joining those row pairs for which some condition holds. 2 1 64
    54 This operation accepts two sets of rows and returns the conglomerate of both sets, including all duplicates.   
    55 This operation yields the result of performing the query of views. 1 1 40
    56 This operation compares each row of its first child row source with all rows of its second child row source, joining those row pairs for which some condition holds. 3 1 89
    57 This operation takes a row source and rejects some of the rows, returning the accepted rows.   
    58 This operation retrieves multiple ROWIDs by scanning index MRP_PART_SUPPLY_DEMAND_PK (ascending by key). 3 17 
    59 This operation retrieves a row of table MRP_PART_SUPPLY_DEMAND_TAB based on its ROWID. 2 1 49
    60 This operation retrieves a single ROWID by an index lookup of INVENTORY_PART_PLANNING_PK. 1 1 
    61 This operation retrieves a row of table INVENTORY_PART_PLANNING_TAB based on its ROWID. 1 1 17
    62 This operation compares each row of its first child row source with all rows of its second child row source, joining those row pairs for which some condition holds. 3 1 66
    63 This operation retrieves multiple ROWIDs by scanning index LINE_SCHED_RECEIPT_MTRL_1_IX (ascending by key). 1 1 
    64 This operation retrieves a row of table LINE_SCHED_RECEIPT_MTRL_TAB based on its ROWID. 1 1 39
    65 This operation retrieves a single ROWID by an index lookup of LINE_SCHED_RECEIPT_PK.  1 
    66 This operation retrieves a row of table LINE_SCHED_RECEIPT_TAB based on its ROWID. 1 1 22
    67 This operation compares each row of its first child row source with all rows of its second child row source, joining those row pairs for which some condition holds. 2 1 61
    68 This operation retrieves multiple ROWIDs by scanning index PRODUCTION_RECEIPT_MTRL_1_IX (ascending by key). 1 1 
    69 This operation retrieves a row of table PRODUCTION_RECEIPT_MTRL_TAB based on its ROWID. 1 1 26
    70 This operation retrieves a single ROWID by an index lookup of PRODUCTION_RECEIPT_PK.  1 
    71 This operation retrieves a row of table PRODUCTION_RECEIPT_TAB based on its ROWID. 1 1 25
    72 This operation compares each row of its first child row source with all rows of its second child row source, joining those row pairs for which some condition holds. 2 1 51
    73 This operation accepts two sets of rows and returns the conglomerate of both sets, including all duplicates.   
    74 This operation yields the result of performing the query of views. 1 1 32
    75 This operation compares each row of its first child row source with all rows of its second child row source, joining those row pairs for which some condition holds. 4 1 98
    76 This operation takes a row source and rejects some of the rows, returning the accepted rows.   
    77 This operation accepts two sets of rows and returns the conglomerate of both sets, including all duplicates.   
    78 This operation returns the distinct rows from its child row source, in order. 11 2 187
    79 This operation yields the result of performing the query of views. 11 2 80
    80 This operation retrieves a single ROWID by an index lookup of INVENTORY_PART_PLANNING_PK. 2 1 15
    81 This operation retrieves multiple ROWIDs by scanning index SHOP_ORDER_PROP_1_IX (ascending by key). 2 30 
    82 This operation retrieves a row of table SHOP_ORDER_PROP_TAB based on its ROWID. 2 1 44
    83 This operation compares each row of its first child row source with all rows of its second child row source, joining those row pairs for which some condition holds. 3 1 59
    84 This operation takes a row source and rejects some of the rows, returning the accepted rows.   
    85 This operation retrieves a single ROWID by an index lookup of LEVEL_1_PART_PK. 1 1 
    86 This operation retrieves a row of table LEVEL_1_PART_TAB based on its ROWID. 1 1 17
    87 This operation retrieves multiple ROWIDs by scanning index LEVEL_1_FORECAST_PK (ascending by key). 1 16 
    88 This operation retrieves a row of table LEVEL_1_FORECAST_TAB based on its ROWID. 1 1 31
    89 This operation compares each row of its first child row source with all rows of its second child row source, joining those row pairs for which some condition holds. 2 1 48
    90 This operation takes a row source and rejects some of the rows, returning the accepted rows.   
    91 This operation retrieves multiple ROWIDs by scanning index DOP_ORDER_1_IX (ascending by key). 1 1 
    92 This operation retrieves a row of table DOP_ORDER_TAB based on its ROWID. 1 1 96
    93 This operation takes a row source and rejects some of the rows, returning the accepted rows.   
    94 This operation retrieves a single ROWID by an index lookup of DOP_ORDER_PK.  1 
    95 This operation retrieves a row of table DOP_ORDER_TAB based on its ROWID. 1 1 43
    96 This operation takes a row source and rejects some of the rows, returning the accepted rows.   
    97 This operation retrieves multiple ROWIDs by scanning index DOP_ORDER_1_IX (ascending by key). 1 1 
    98 This operation retrieves a row of table DOP_ORDER_TAB based on its ROWID. 1 1 69
    99 This operation takes a row source and rejects some of the rows, returning the accepted rows.   
    100 This operation retrieves multiple ROWIDs by scanning index LINE_SCHED_RECEIPT_MTRL_1_IX (ascending by key). 1 1 
    101 This operation retrieves a row of table LINE_SCHED_RECEIPT_MTRL_TAB based on its ROWID. 1 1 48
    102 This operation retrieves a single ROWID by an index lookup of LINE_SCHED_RECEIPT_PK.  1 8
    103 This operation compares each row of its first child row source with all rows of its second child row source, joining those row pairs for which some condition holds. 2 1 56
    104 This operation takes a row source and rejects some of the rows, returning the accepted rows.   
    105 This operation retrieves multiple ROWIDs by scanning index PRODUCTION_RECEIPT_MTRL_1_IX (ascending by key). 1 1 
    106 This operation retrieves a row of table PRODUCTION_RECEIPT_MTRL_TAB based on its ROWID. 1 1 39
    107 This operation retrieves a single ROWID by an index lookup of PRODUCTION_RECEIPT_PK.  1 
    108 This operation retrieves a row of table PRODUCTION_RECEIPT_TAB based on its ROWID. 1 1 25
    109 This operation compares each row of its first child row source with all rows of its second child row source, joining those row pairs for which some condition holds. 2 1 64
    110 This operation takes a row source and rejects some of the rows, returning the accepted rows.   
    111 This operation accepts two sets of rows and returns the conglomerate of both sets, including all duplicates.   
    112 This operation yields the result of performing the query of views. 4 2 80
    113 This operation retrieves a single ROWID by an index lookup of INVENTORY_PART_PLANNING_PK. 2 1 15
    114 This operation retrieves multiple ROWIDs by scanning index LINE_SCHED_RECEIPT_2_IX (ascending by key).  1 
    115 This operation retrieves a row of table LINE_SCHED_RECEIPT_TAB based on its ROWID. 1 1 53
    116 This operation compares each row of its first child row source with all rows of its second child row source, joining those row pairs for which some condition holds. 2 1 68
    117 This operation takes a row source and rejects some of the rows, returning the accepted rows.   
    118 This operation retrieves multiple ROWIDs by scanning index ACTIVE_WORK_ORDER_IX2 (ascending by key). 1 1 
    119 This operation retrieves a row of table ACTIVE_WORK_ORDER_TAB based on its ROWID. 1 1 73
    120 This operation takes a row source and rejects some of the rows, returning the accepted rows.   
    121 This operation retrieves multiple ROWIDs by scanning index SPARE_PART_FORECAST_PK (ascending by key).  1 
    122 This operation retrieves a row of table SPARE_PART_FORECAST_TAB based on its ROWID. 1 1 53
    123 This operation takes a row source and rejects some of the rows, returning the accepted rows.   
    124 This operation retrieves multiple ROWIDs by scanning index CUST_SCHED_PLAN_DEMAND_1_IX (ascending by key). 1 1 
    125 This operation retrieves a row of table CUST_SCHED_PLAN_DEMAND_TAB based on its ROWID. 1 1 40
    126 This operation takes a row source and rejects some of the rows, returning the accepted rows.   
    127 This operation retrieves multiple ROWIDs by scanning index MPL_AK1 (ascending by key). 2 3 
    128 This operation retrieves a row of table MATERIAL_PROCUREMENT_LIST_TAB based on its ROWID. 1 1 52
    129 This operation retrieves a single ROWID by an index lookup of ACTIVITY_PK.  1 7
    130 This operation compares each row of its first child row source with all rows of its second child row source, joining those row pairs for which some condition holds. 2 1 59
    131 This operation retrieves a single ROWID by an index lookup of PROJECT_PRODUCT_STRUCTURE_PK.  1 
    132 This operation retrieves a row of table PROJECT_PRODUCT_STRUCTURE_TAB based on its ROWID. 1 1 12
    133 This operation compares each row of its first child row source with all rows of its second child row source, joining those row pairs for which some condition holds. 3 1 71
    134 This operation retrieves all rows of table PROCURED_MATERIAL_TAB using a full table scan. 2 77 616
    135 This operation takes its two child row sources and hashes their join columns to find row pairs which satisfy the join condition. 6 1 79
    136 This operation retrieves all rows of table PROCURED_MATERIAL_TAB using a full table scan. 2 273 2730
    137 This operation takes its two child row sources and hashes their join columns to find row pairs which satisfy the join condition. 9 1 89
    138 This operation takes a row source and rejects some of the rows, returning the accepted rows.   
    139 This operation retrieves multiple ROWIDs by scanning index HPM_PART_SUPPLY_DEMAND_PK (ascending by key).  1 
    140 This operation retrieves a row of table HPM_PART_SUPPLY_DEMAND_TAB based on its ROWID. 1 1 64
    141 This operation takes a row source and rejects some of the rows, returning the accepted rows.   
    142 This operation retrieves multiple ROWIDs by scanning index SUPP_SCHED_PLAN_SUPPLY_1_IX (ascending by key). 1 1 
    143 This operation retrieves a row of table SUPP_SCHED_PLAN_SUPPLY_TAB based on its ROWID. 1 1 27
    144 This operation takes a row source and rejects some of the rows, returning the accepted rows.   
    145 This operation retrieves multiple ROWIDs by scanning index ORDER_QUOTATION_LINE_2_IX (ascending by key). 3 27 
    146 This operation retrieves a row of table ORDER_QUOTATION_LINE_TAB based on its ROWID. 3 1 48
    147 This operation takes a row source and rejects some of the rows, returning the accepted rows.   
    148 This operation retrieves all ROWIDs via a full index lookup of PROMISE_INVENTORY_ORDER_PK.  1 
    149 This operation retrieves a row of table PROMISE_INVENTORY_ORDER_TAB based on its ROWID. 1 1 46
    150 This operation takes a row source and rejects some of the rows, returning the accepted rows.   
    151 This operation accepts two sets of rows and returns the conglomerate of both sets, including all duplicates.   
    152 This operation yields the result of performing the query of views. 61 25 1000
    153 This plan step has no supplementary description information. 62 25 1000
    154 This operation denotes a cartesian product between its two children row sources. Cartesian products are extremely inefficient. 63 8 576
    155  63 8 576
    156 This operation retrieves a single ROWID by an index lookup of PURCHASE_PART_PK. 2 1 
    157 This operation retrieves a row of table PURCHASE_PART_TAB based on its ROWID. 1 1 22
    158 This operation retrieves multiple ROWIDs by scanning index SHOP_MATERIAL_ALLOC_1_IX (ascending by key). 3 106 
    159 This operation retrieves a row of table SHOP_MATERIAL_ALLOC_TAB based on its ROWID. 11 1 41
    160 This operation represents an iteration over each element in the list represented by its child node.   
    161 This operation takes a row source and rejects some of the rows, returning the accepted rows.   
    162 This operation retrieves multiple ROWIDs by scanning index CUSTOMER_ORDER_LINE_2_IX (ascending by key). 3 10 
    163 This operation retrieves a row of table CUSTOMER_ORDER_LINE_TAB based on its ROWID. 2 1 48
    164 This operation represents an iteration over each element in the list represented by its child node.   
    165 This operation takes a row source and rejects some of the rows, returning the accepted rows.   
    166 This operation retrieves multiple ROWIDs by scanning index PURCHASE_ORDER_LINE_1_IX (ascending by key). 3 2 
    167 This operation retrieves a row of table PURCHASE_ORDER_LINE_TAB based on its ROWID. 1 1 48
    168 This operation represents an iteration over each element in the list represented by its child node.   
    169 This operation takes a row source and rejects some of the rows, returning the accepted rows.   
    170 This operation retrieves multiple ROWIDs by scanning index SHOP_ORD_TAB_1_IX (ascending by key). 1 21 
    171 This operation retrieves a row of table SHOP_ORD_TAB based on its ROWID. 2 1 46
    172 This operation takes a row source and rejects some of the rows, returning the accepted rows.   
    173 This operation retrieves multiple ROWIDs by scanning index PURCHASE_ORDER_LINE_COMP_1_IX (ascending by key). 1 12 
    174 This operation retrieves a row of table PURCHASE_ORDER_LINE_COMP_TAB based on its ROWID. 1 1 43
    175 This operation retrieves a single ROWID by an index lookup of PURCHASE_ORDER_LINE_PK. 1 1 
    176 This operation retrieves a row of table PURCHASE_ORDER_LINE_TAB based on its ROWID. 1 1 25
    177 This operation compares each row of its first child row source with all rows of its second child row source, joining those row pairs for which some condition holds. 2 1 68
    178 This operation takes a row source and rejects some of the rows, returning the accepted rows.   
    179 This operation retrieves multiple ROWIDs by scanning index MATERIAL_REQUIS_LINE_1_IX (ascending by key). 2 1 
    180 This operation retrieves a row of table MATERIAL_REQUIS_LINE_TAB based on its ROWID. 1 1 37
    181 This operation represents an iteration over each element in the list represented by its child node.   
    182 This operation takes a row source and rejects some of the rows, returning the accepted rows.   
    183 This operation retrieves multiple ROWIDs by scanning index MAINT_MATERIAL_REQ_LINE_IX2 (ascending by key). 1 1 
    184 This operation retrieves a row of table MAINT_MATERIAL_REQ_LINE_TAB based on its ROWID. 1 1 79
    185 This operation retrieves a single ROWID by an index lookup of MAINT_MATERIAL_REQUISITION_PK.  1 
    186 This operation retrieves a row of table MAINT_MATERIAL_REQUISITION_TAB based on its ROWID. 1 1 43
    187 This operation compares each row of its first child row source with all rows of its second child row source, joining those row pairs for which some condition holds. 2 1 122
    188 This operation retrieves a single ROWID by an index lookup of ACTIVE_WORK_ORDER_PK.  1 
    189 This operation retrieves a row of table ACTIVE_WORK_ORDER_TAB based on its ROWID. 1 1 30
    190 This operation compares each row of its first child row source with all rows of its second child row source, joining those row pairs for which some condition holds. 3 1 152
    191 This operation takes a row source and rejects some of the rows, returning the accepted rows.   
    192 This operation retrieves multiple ROWIDs by scanning index PURCHASE_REQ_LINE1_IX (ascending by key). 3 3 
    193 This operation retrieves a row of table PURCHASE_REQ_LINE_TAB based on its ROWID. 1 1 40
    194 This operation takes a row source and rejects some of the rows, returning the accepted rows.   
    195 This operation retrieves multiple ROWIDs by scanning index MRP_PART_SUPPLY_DEMAND_PK (ascending by key). 3 17 
    196 This operation retrieves a row of table MRP_PART_SUPPLY_DEMAND_TAB based on its ROWID. 2 1 49
    197 This operation retrieves multiple ROWIDs by scanning index LINE_SCHED_RECEIPT_MTRL_1_IX (ascending by key). 1 1 
    198 This operation retrieves a row of table LINE_SCHED_RECEIPT_MTRL_TAB based on its ROWID. 1 1 48
    199 This operation retrieves a single ROWID by an index lookup of LINE_SCHED_RECEIPT_PK.  1 8
    200 This operation compares each row of its first child row source with all rows of its second child row source, joining those row pairs for which some condition holds. 2 1 56
    201 This operation retrieves multiple ROWIDs by scanning index PRODUCTION_RECEIPT_MTRL_1_IX (ascending by key). 1 1 
    202 This operation retrieves a row of table PRODUCTION_RECEIPT_MTRL_TAB based on its ROWID. 1 1 39
    203 This operation retrieves a single ROWID by an index lookup of PRODUCTION_RECEIPT_PK.  1 
    204 This operation retrieves a row of table PRODUCTION_RECEIPT_TAB based on its ROWID. 1 1 25
    205 This operation compares each row of its first child row source with all rows of its second child row source, joining those row pairs for which some condition holds. 2 1 64
    206 This operation accepts two sets of rows and returns the conglomerate of both sets, including all duplicates.   
    207 This operation yields the result of performing the query of views. 1 1 40
    208 This operation compares each row of its first child row source with all rows of its second child row source, joining those row pairs for which some condition holds. 3 1 89
    209 This operation takes a row source and rejects some of the rows, returning the accepted rows.   
    210 This operation retrieves multiple ROWIDs by scanning index MRP_PART_SUPPLY_DEMAND_PK (ascending by key). 3 17 
    211 This operation retrieves a row of table MRP_PART_SUPPLY_DEMAND_TAB based on its ROWID. 2 1 49
    212 This operation retrieves a single ROWID by an index lookup of INVENTORY_PART_PLANNING_PK. 1 1 
    213 This operation retrieves a row of table INVENTORY_PART_PLANNING_TAB based on its ROWID. 1 1 17
    214 This operation compares each row of its first child row source with all rows of its second child row source, joining those row pairs for which some condition holds. 3 1 66
    215 This operation retrieves multiple ROWIDs by scanning index LINE_SCHED_RECEIPT_MTRL_1_IX (ascending by key). 1 1 
    216 This operation retrieves a row of table LINE_SCHED_RECEIPT_MTRL_TAB based on its ROWID. 1 1 39
    217 This operation retrieves a single ROWID by an index lookup of LINE_SCHED_RECEIPT_PK.  1 
    218 This operation retrieves a row of table LINE_SCHED_RECEIPT_TAB based on its ROWID. 1 1 22
    219 This operation compares each row of its first child row source with all rows of its second child row source, joining those row pairs for which some condition holds. 2 1 61
    220 This operation retrieves multiple ROWIDs by scanning index PRODUCTION_RECEIPT_MTRL_1_IX (ascending by key). 1 1 
    221 This operation retrieves a row of table PRODUCTION_RECEIPT_MTRL_TAB based on its ROWID. 1 1 26
    222 This operation retrieves a single ROWID by an index lookup of PRODUCTION_RECEIPT_PK.  1 
    223 This operation retrieves a row of table PRODUCTION_RECEIPT_TAB based on its ROWID. 1 1 25
    224 This operation compares each row of its first child row source with all rows of its second child row source, joining those row pairs for which some condition holds. 2 1 51
    225 This operation accepts two sets of rows and returns the conglomerate of both sets, including all duplicates.   
    226 This operation yields the result of performing the query of views. 1 1 32
    227 This operation compares each row of its first child row source with all rows of its second child row source, joining those row pairs for which some condition holds. 4 1 98
    228 This operation takes a row source and rejects some of the rows, returning the accepted rows.   
    229 This operation accepts two sets of rows and returns the conglomerate of both sets, including all duplicates.   
    230 This operation returns the distinct rows from its child row source, in order. 11 2 187
    231 This operation yields the result of performing the query of views. 11 2 80
    232 This operation retrieves a single ROWID by an index lookup of INVENTORY_PART_PLANNING_PK. 2 1 15
    233 This operation retrieves multiple ROWIDs by scanning index SHOP_ORDER_PROP_1_IX (ascending by key). 2 30 
    234 This operation retrieves a row of table SHOP_ORDER_PROP_TAB based on its ROWID. 2 1 44
    235 This operation compares each row of its first child row source with all rows of its second child row source, joining those row pairs for which some condition holds. 3 1 59
    236 This operation takes a row source and rejects some of the rows, returning the accepted rows.   
    237 This operation retrieves a single ROWID by an index lookup of LEVEL_1_PART_PK. 1 1 
    238 This operation retrieves a row of table LEVEL_1_PART_TAB based on its ROWID. 1 1 17
    239 This operation retrieves multiple ROWIDs by scanning index LEVEL_1_FORECAST_PK (ascending by key). 1 16 
    240 This operation retrieves a row of table LEVEL_1_FORECAST_TAB based on its ROWID. 1 1 31
    241 This operation compares each row of its first child row source with all rows of its second child row source, joining those row pairs for which some condition holds. 2 1 48
    242 This operation takes a row source and rejects some of the rows, returning the accepted rows.   
    243 This operation retrieves multiple ROWIDs by scanning index DOP_ORDER_1_IX (ascending by key). 1 1 
    244 This operation retrieves a row of table DOP_ORDER_TAB based on its ROWID. 1 1 96
    245 This operation takes a row source and rejects some of the rows, returning the accepted rows.   
    246 This operation retrieves a single ROWID by an index lookup of DOP_ORDER_PK.  1 
    247 This operation retrieves a row of table DOP_ORDER_TAB based on its ROWID. 1 1 43
    248 This operation takes a row source and rejects some of the rows, returning the accepted rows.   
    249 This operation retrieves multiple ROWIDs by scanning index DOP_ORDER_1_IX (ascending by key). 1 1 
    250 This operation retrieves a row of table DOP_ORDER_TAB based on its ROWID. 1 1 69
    251 This operation takes a row source and rejects some of the rows, returning the accepted rows.   
    252 This operation retrieves multiple ROWIDs by scanning index LINE_SCHED_RECEIPT_MTRL_1_IX (ascending by key). 1 1 
    253 This operation retrieves a row of table LINE_SCHED_RECEIPT_MTRL_TAB based on its ROWID. 1 1 48
    254 This operation retrieves a single ROWID by an index lookup of LINE_SCHED_RECEIPT_PK.  1 8
    255 This operation compares each row of its first child row source with all rows of its second child row source, joining those row pairs for which some condition holds. 2 1 56
    256 This operation takes a row source and rejects some of the rows, returning the accepted rows.   
    257 This operation retrieves multiple ROWIDs by scanning index PRODUCTION_RECEIPT_MTRL_1_IX (ascending by key). 1 1 
    258 This operation retrieves a row of table PRODUCTION_RECEIPT_MTRL_TAB based on its ROWID. 1 1 39
    259 This operation retrieves a single ROWID by an index lookup of PRODUCTION_RECEIPT_PK.  1 
    260 This operation retrieves a row of table PRODUCTION_RECEIPT_TAB based on its ROWID. 1 1 25
    261 This operation compares each row of its first child row source with all rows of its second child row source, joining those row pairs for which some condition holds. 2 1 64
    262 This operation takes a row source and rejects some of the rows, returning the accepted rows.   
    263 This operation accepts two sets of rows and returns the conglomerate of both sets, including all duplicates.   
    264 This operation yields the result of performing the query of views. 4 2 80
    265 This operation retrieves a single ROWID by an index lookup of INVENTORY_PART_PLANNING_PK. 2 1 15
    266 This operation retrieves multiple ROWIDs by scanning index LINE_SCHED_RECEIPT_2_IX (ascending by key).  1 
    267 This operation retrieves a row of table LINE_SCHED_RECEIPT_TAB based on its ROWID. 1 1 53
    268 This operation compares each row of its first child row source with all rows of its second child row source, joining those row pairs for which some condition holds. 2 1 68
    269 This operation takes a row source and rejects some of the rows, returning the accepted rows.   
    270 This operation retrieves multiple ROWIDs by scanning index ACTIVE_WORK_ORDER_IX2 (ascending by key). 1 1 
    271 This operation retrieves a row of table ACTIVE_WORK_ORDER_TAB based on its ROWID. 1 1 73
    272 This operation takes a row source and rejects some of the rows, returning the accepted rows.   
    273 This operation retrieves multiple ROWIDs by scanning index SPARE_PART_FORECAST_PK (ascending by key).  1 
    274 This operation retrieves a row of table SPARE_PART_FORECAST_TAB based on its ROWID. 1 1 53
    275 This operation takes a row source and rejects some of the rows, returning the accepted rows.   
    276 This operation retrieves multiple ROWIDs by scanning index CUST_SCHED_PLAN_DEMAND_1_IX (ascending by key). 1 1 
    277 This operation retrieves a row of table CUST_SCHED_PLAN_DEMAND_TAB based on its ROWID. 1 1 40
    278 This operation takes a row source and rejects some of the rows, returning the accepted rows.   
    279 This operation retrieves multiple ROWIDs by scanning index MPL_AK1 (ascending by key). 2 3 
    280 This operation retrieves a row of table MATERIAL_PROCUREMENT_LIST_TAB based on its ROWID. 1 1 52
    281 This operation retrieves a single ROWID by an index lookup of ACTIVITY_PK.  1 7
    282 This operation compares each row of its first child row source with all rows of its second child row source, joining those row pairs for which some condition holds. 2 1 59
    283 This operation retrieves a single ROWID by an index lookup of PROJECT_PRODUCT_STRUCTURE_PK.  1 
    284 This operation retrieves a row of table PROJECT_PRODUCT_STRUCTURE_TAB based on its ROWID. 1 1 12
    285 This operation compares each row of its first child row source with all rows of its second child row source, joining those row pairs for which some condition holds. 3 1 71
    286 This operation retrieves all rows of table PROCURED_MATERIAL_TAB using a full table scan. 2 77 616
    287 This operation takes its two child row sources and hashes their join columns to find row pairs which satisfy the join condition. 6 1 79
    288 This operation retrieves all rows of table PROCURED_MATERIAL_TAB using a full table scan. 2 273 2730
    289 This operation takes its two child row sources and hashes their join columns to find row pairs which satisfy the join condition. 9 1 89
    290 This operation takes a row source and rejects some of the rows, returning the accepted rows.   
    291 This operation retrieves multiple ROWIDs by scanning index HPM_PART_SUPPLY_DEMAND_PK (ascending by key).  1 
    292 This operation retrieves a row of table HPM_PART_SUPPLY_DEMAND_TAB based on its ROWID. 1 1 64
    293 This operation takes a row source and rejects some of the rows, returning the accepted rows.   
    294 This operation retrieves multiple ROWIDs by scanning index SUPP_SCHED_PLAN_SUPPLY_1_IX (ascending by key). 1 1 
    295 This operation retrieves a row of table SUPP_SCHED_PLAN_SUPPLY_TAB based on its ROWID. 1 1 27
    296 This operation takes a row source and rejects some of the rows, returning the accepted rows.   
    297 This operation retrieves multiple ROWIDs by scanning index ORDER_QUOTATION_LINE_2_IX (ascending by key). 3 27 
    298 This operation retrieves a row of table ORDER_QUOTATION_LINE_TAB based on its ROWID. 3 1 48
    299 This operation takes a row source and rejects some of the rows, returning the accepted rows.   
    300 This operation retrieves all ROWIDs via a full index lookup of PROMISE_INVENTORY_ORDER_PK.  1 
    301 This operation retrieves a row of table PROMISE_INVENTORY_ORDER_TAB based on its ROWID. 1 1 46
    302 This operation takes a row source and rejects some of the rows, returning the accepted rows.   
    303 This operation accepts two sets of rows and returns the conglomerate of both sets, including all duplicates.   
    304 This operation yields the result of performing the query of views. 61 25 1000
    305 This operation compares each row of its first child row source with all rows of its second child row source, joining those row pairs for which some condition holds. 62 25 1550
    306  62 25 1550
    307 This operation retrieves all rows of table INVENTORY_PART_TAB using a full table scan. 169 138200 6633600
    308 This operation retrieves all rows of table INVENTORY_PART_PLANNING_TAB using a full table scan. 56 137844 3721788
    309 This operation retrieves all rows of table MANUF_STRUCTURE_TAB using a full table scan. 107 132824 5844256
    310 This operation takes its two child row sources and hashes their join columns to find row pairs which satisfy the join condition. 358 133076 9448396
    311 This operation retrieves all rows of table PURCHASE_PART_SUPPLIER_TAB using a full table scan. 103 128836 3607408
    312 This operation performs an anti join by taking its two child row sources and hashing their join columns to find row pairs which satisfy the join condition. 708 133076 13174524
    313 This operation takes its two child row sources and hashes their join columns to find row pairs which satisfy the join condition. 1228 133674 19650078
    314 This operation counts the number of rows in its child row source.   
    315 This operation takes a row source and rejects some of the rows, returning the accepted rows.   
    316 This plan step has no supplementary description information.   
    317 This operation retrieves all rows of table INVENTORY_PART_TAB using a full table scan. 169 138200 6633600
    318 This operation retrieves all rows of table INVENTORY_PART_PLANNING_TAB using a full table scan. 56 137844 3721788
    319 This operation retrieves all rows of table MANUF_STRUCTURE_TAB using a full table scan. 107 132824 5844256
    320 This operation takes its two child row sources and hashes their join columns to find row pairs which satisfy the join condition. 358 133076 9448396
    321 This operation retrieves all rows of table PURCHASE_PART_SUPPLIER_TAB using a full table scan. 103 128836 3607408
    322 This operation performs an anti join by taking its two child row sources and hashing their join columns to find row pairs which satisfy the join condition. 708 133076 13174524
    323 This operation takes its two child row sources and hashes their join columns to find row pairs which satisfy the join condition. 1228 133674 19650078
    324 This operation counts the number of rows in its child row source.   
    325 This operation takes its two child row sources and hashes their join columns to find row pairs which satisfy the join condition.   
    326 This operation reorders the rows so that they are retrieved hierarchically (parent rows precede their children rows).   
    327 This operation takes a row source and rejects some of the rows, returning the accepted rows.   
    328 This step in the plan designates this statement as a SELECT statement.
    and
    SELECT l.*
        FROM (SELECT ms.component_part, ip."DESCRIPTION", ms.qty_per_assembly, ipp.
                     mrp_order_code, ip.planner_buyer, ip.type_code, pps.vendor_no,
                     pps.vendor_manuf_leadtime, ipp.min_order_qty, ipp.
                     maxweek_supply period_order_quantity, ipp.safety_stock,
                     ifsapp.inventory_part_in_stock_api.GET_INVENTORY_QTY_ONHAND(
                     ms.contract, ms.component_part, NULL) qty_onhand,
                     ip.estimated_material_cost, (SELECT SUM(ex.qty_demand)
                                                      FROM ifsinfo.km_order_supply_demand_mfg ex
                                                      WHERE ex.date_required
                                                            BETWEEN TO_DATE(SYSDATE)
                                                             AND TO_DATE(
                                                            '01/05/2007',
                                                            'DD/MM/YYYY') + 1 - 1 /
                                                            ((60 * 60) * 24)
                                                        AND ex.part_no = ms.
                                                            component_part
                                                        AND ex.contract = ms.
                                                            contract
                                                      GROUP BY ex.part_no)
                     manu_sum_dmd, (SELECT SUM(ex.qty_demand)
                                        FROM ifsinfo.km_order_supply_demand_pur ex
                                        WHERE ex.date_required BETWEEN TO_DATE(
                                              SYSDATE) AND TO_DATE('01/05/2007',
                                              'DD/MM/YYYY') + 1 - 1 / ((60 * 60) *
                                              24)
                                          AND ex.part_no = ms.component_part
                                          AND ex.contract = ms.contract
                                        GROUP BY ex.part_no) purch_sum_dmd
                  FROM ifsapp.manuf_structure ms, ifsapp.inventory_part ip, ifsapp.
                       inventory_part_planning ipp, ifsapp.purchase_part_supplier
                       pps
                  WHERE ms.component_part = ip.part_no
                    AND ms.contract = ip.contract
                    AND ms.component_part = ipp.part_no
                    AND ms.contract = ipp.contract
                    AND ms.component_part = pps.part_no(+)
                    AND ms.contract = pps.contract(+)
                    AND NVL(pps.primary_vendor_db, 'Y') = 'Y'
                  CONNECT BY PRIOR ms.component_part = ms.part_no
                         AND PRIOR ms.contract = ms.contract
                         AND ms.eff_phase_in_date <= SYSDATE
                         AND NVL(ms.eff_phase_out_date, SYSDATE) >= SYSDATE
                  START WITH ms.part_no = 'K7501890'
                        AND ms.contract = 'OKMMN'
                        AND ms.bom_type = 'Manufacturing'
                        AND ms.eng_chg_level = '1') l
    Get Explain Plan By:
       Cost All Rows
    Execution Steps:
    23  SELECT STATEMENT
    22  VIEW
    21  FILTER
    20  CONNECT BY (WITH FILTERING)
    9  FILTER
    8  COUNT
    7  HASH JOIN
    1  TABLE ACCESS (FULL), INVENTORY_PART_TAB (IFSAPP) 
    6  HASH JOIN (OUTER)
    4  HASH JOIN
    2  TABLE ACCESS (FULL), INVENTORY_PART_PLANNING_TAB (IFSAPP) 
    3  TABLE ACCESS (FULL), MANUF_STRUCTURE_TAB (IFSAPP) 
    5  TABLE ACCESS (FULL), PURCHASE_PART_SUPPLIER_TAB (IFSAPP) 
    19  HASH JOIN
    10  CONNECT BY PUMP
    18  COUNT
    17  HASH JOIN
    11  TABLE ACCESS (FULL), INVENTORY_PART_TAB (IFSAPP) 
    16  HASH JOIN (OUTER)
    14  HASH JOIN
    12  TABLE ACCESS (FULL), INVENTORY_PART_PLANNING_TAB (IFSAPP) 
    13  TABLE ACCESS (FULL), MANUF_STRUCTURE_TAB (IFSAPP) 
    15  TABLE ACCESS (FULL), PURCHASE_PART_SUPPLIER_TAB (IFSAPP) 
    Step Description Est Cost Est Row Count Est Byte Count
    1 This operation retrieves all rows of table INVENTORY_PART_TAB using a full table scan. 169 138200 6633600
    2 This operation retrieves all rows of table INVENTORY_PART_PLANNING_TAB using a full table scan. 56 137844 3721788
    3 This operation retrieves all rows of table MANUF_STRUCTURE_TAB using a full table scan. 107 132824 5844256
    4 This operation takes its two child row sources and hashes their join columns to find row pairs which satisfy the join condition. 358 133076 9448396
    5 This operation retrieves all rows of table PURCHASE_PART_SUPPLIER_TAB using a full table scan. 103 128836 3607408
    6 This operation performs an anti join by taking its two child row sources and hashing their join columns to find row pairs which satisfy the join condition. 708 133076 13174524
    7 This operation takes its two child row sources and hashes their join columns to find row pairs which satisfy the join condition. 1228 133674 19650078
    8 This operation counts the number of rows in its child row source.   
    9 This operation takes a row source and rejects some of the rows, returning the accepted rows.   
    10 This plan step has no supplementary description information.   
    11 This operation retrieves all rows of table INVENTORY_PART_TAB using a full table scan. 169 138200 6633600
    12 This

    I really do not understand.
    If I use a simple example, it keeps the cost and explain plan the same.
    Ie
    SELECT part_no, "DESCRIPTION"
        FROM inventory_partand
    SELECT l.*
        FROM (SELECT part_no, "DESCRIPTION"
                  FROM inventory_part) lhave the same cost plan.
    This is what I would have expected.
    How can it change so dramatically in my other example?

  • T-code SUIM taking much more time for generating output for profie change.

    Hi All
    We want to extract report for profile addition and deletion for Users in ECC 6. While executing the the t-code SUIM it is taking much more time (taking more than 20 hrs). This problem is coming after patch application
    Please give the solution/Suggest to minimize the time taken in report generation.
    Thanks-
    Guru Prasad Dwivedi

    Hello Prasad,
    The reason for the performance trouble is a new feature regarding the user change documents. Since note 874850 and 1015043 you will get a more complete overview about the changes regarding a user.
    The disadvantage of that new feature is, that in some customer system usage scenario, the performance is very poor. That's the case, if the central change documents are intensivly used also by other applications and the tables CDPOS, CDHDR, ... contains a very big count of rows. Unfortunatly the user change documents can not be searched by the key columns of the central change docs. - so the bad response time can explained.
    What now ... ?
    There are some work arounds to get the change documents on faster way.
    1st. - You can get the former report output and performance if you
           would use the report RSUSR100 instead of the new RSUSR100N in
           separate mode.
    2nd. - If you want to use the new report RSUSR100N directly and only
           want to get the information about the traditional topics
           (content of USH* tables) you should only mark the search areas
           on the tabstrip 'user attributes') to get a better performance.
         - furthermore limit the date range, if possible
    3rd. - You should regulary (monthly) archive the user relevant documents
           for PFCG and IDENTITY from the central change documents.
           As per our note 1079207 chapter 3 you can reload that archives
           into more selective tables.
           The selection for change documents will be rather faster over
           reloaded archived documents than the documents in the
           central change documents tables.
    Best Regards,
    Guilherme de Oliveira.

  • AUDIO TO SCORE is gone and it was much more precise for drum doubling than the doubling function itself.

    AUDIO TO SCORE. I used that all the time for drum doubling for the following reasons:
    In Logic 9 i always used audio to score for drum doubling because it had much more control over essential parameters than the drum replacement window. Parameters like: Granulation, Smooth Release and Attack Range made sure that i didn't have any flams, too few notes, too many notes etc etc. AND you could see in the sample editor (below the waveform) immediately the effect of the changes made in those parameters!
    Now with these parameters gone and only the drum doubling function left, what was a real pro function has become much more cumbersome to use. You can no longer see in detail what changes in parameters does to the out-coming midi. And the lack of the detailed parameters makes drum doubling drop or miss notes, makes flams with the original drum track etc etc.... In short. The drum doubling function is inadequate for pro results.
    So this is my suggestion: Apple probably wont reinstate audio to score as it was (i'd love it if they did, it's essential to me and others who does rock mixes in logic instead of protools). But you can do something that's even better:
    In the audio file editor (previously the sample editor) make the old audio to score into an advanced drum doubling/replacement editor. Take the audio to score window and parameters and reinstate them BUT instead of outputting different note values make them output to a desired note of the users choice (e.g C1). Without opening the library. It cluters the window and often people want to use their own drum software than apples samples.
    It's the realtime view in the bottom of the audiofile editor that makes a difference. And the missing parameters. Without these things a good outcome is based on luck rather than visual reference.

    I was doing drum replacement ( adding ) with Audio-to-score for years, and must say, drum replacement is working for me without any flams and much better and 2x faster. I think it is pro feature, with advanced transient detector. Only problem is velocity,as in Audio-to-score.
    If automatic threshold not working on some material, you can do  fine transient edits in audio editor with visual realtime feedback, you can change output note and delay globally. Also you can hear ( in compare with Audio-to-score), that's why library is opened and sample replacement -after, not difficult to do.

  • What is much more efficient for building Web Services: RSS or Axis

    Hi ,
    i am focusing on a new feature in our web seftware product and we wish to integrate a web service communication allowing our customers to retrieve all needed data.
    Ok now the problem, as far as the technical choice is concerned , i heard a lot about RSS and also about some SOAP engines ( axis, xfire,...) , si my question is which the best choice? what make one better then the other ? which is much more secure once implemented ?
    please i am eager to hear your advises!!
    thanks

    Hello, has anyone done any integration with Java api or web services? Is any information available?

  • Several encrypted .dmg files show much more free space that the total size of the file.

    I have several encrypted .dmg files on my macbook air running OS X 10.10.1  I have had them for years with no problems. Now suddenly, in the finder, at the bottom of the finder window where it shows the number of items and free space for a disk, it shows more free space than the full size of the .dmg file. Typically it will show about 200MB for a 100 MB file. Obviously, this is a bug, but I can find no information or discussions about it anywhere.
    Does anyone have the same problem? Any ideas how to fix it?

    Thanks for the ideas. Unfortunately, it didn't work.
    I rebuilt the spotlight index as suggested.
    I tried it twice, rebooting the computer a couple of time along the way.
    Below you can see the actual file as it occurs in the finder in its unopened form.
    Now, below here is what the finder reports at the bottom of the finder window when the file is opened and added as a virtual disk.
    Note that the total file size is 102.5 Mb
    Yet the finder says it has 234.5 Mb free!
    The actual size of the files on the disk add up to about 60 Mb
    This occurs with several similar dmg files.
    Any other ideas or experiences would be appreciated.

  • New Photos App take a very long time to upload 20 Pictures, while the Activity Monitor is showing much more data sent (MB) than these two pictues

    The New photos app is taking a very long time to upload images. It stays a very long time at 20,104 for example. When I check the Activity Monitor (Network) it shows that the computer is actually uploading stuff. After about 2 hours, only 20 Pics&Videos are uploaded. The uploaded pics and videos are about 500MB while the data sent is around 1GB. I am positive that Photos is the only thing uploading data at the moment.
    Anyone else facing this problem?

    It can take days, even weeks.
    Tell me 2 things and I will tell you the estimated upload time.
    1 How big is your Library (in GB)
    2 How fast is your upload speed.
    Or you can just use the upload time calculator and do it yourself

  • CLI/ASDM shows much more traffic on FWSM than via SNMP?

    Hi!
    I've noticed a strange behaviour of our FWSM (Release 3.1.3). When starting the ASDM or using CLI (show interface XY stats), both ways show the same amount of traffic. It's the same amount of traffic the 6513 router beyond also measures.
    But when i try to use SNMP on the OIDs ifOutOctets/ifInOctets, i get way too little traffic. Also the packet counter shows way too little packets than i get via CLI or the ASDM frontend.
    Is it a bug of the firmware or does the FSWM count the traffic and packets in a different way?
    Can someone please verify this?
    Thanks!

    Hi,
    Do you see any errors on ASA Eth0/1(to switch)?  Running the similar speed tests with wired and wifi? Client traffic on network is same as well?
    Thx
    MS

  • How come geekbench shows 13% more performance for mbp

    Hello
    So i compared geekbench results for both mbp retina 13 with 2.9ghz processor and the mba 13 with 2.0 ghz processor
    And on average the mbp scored 13% more.
    So my question is , how come while its processor is 45% faster, the mbp scored only 13% more in geekbench?
    E

    A couple of points I can think of:
    1) Vmware or other emulations can run apps at native speed on the intel based macs, so I concur that there shouldn't be any lag using Windows app through Vmware
    2) Powerpoint and other Office apps, to my knowledge, need Rosetta to work on Leopard. This has been shown in various benchmark tests to start up and function much slower than the PowerPC based macs. As you may already know, Rosetta works in the background and you are not aware of it working. It is done automatically when opening the apps in Leopard
    3) As for Powerpoint files being saved as Keynote and the resultant keynote being dreadfully slow. Try this: Open Keynote and make a quick presentation with lots of processor intensive builds/actions and see if you notice the lag. If you do, then the problem lies with your computer and you should have a Mac Genius look at it. If you do NOT notice any performance issues with it, then you should look at the particular keynote file (the one that was exported from Powerpoint). Right click the file and make sure "open with Rosetta" is NOT checked off. Uncheck it and open the file again and you should see performance improvement
    Good luck
    RezF

  • New network (and much more) monitor for XFCE panel

    A few years ago I wrote a tiny app to show a text network monitor in the XFCE panel, resembling the previous one I was familiarized with (in KDE?).
    The past month I started fixing a bug and ended in a full rewrite, but keeping the original simplicity (at least in the panel bar) despite that now reports far more than the network activity.
    The installation instructions are the same: download a single file (no dependencies), compile it, add a Generic Monitor Applet (XFCE) to the panel and configure it to load the new executable.
    I have updated the wiki page, but the full instructions and code is now hosted at github: "Hacker's Monitor for XFCE". Yes, it has a new name also.
    Here follows a screenshot with the mouse over the applet to open the tooltip (yes, I was intentionally doing a dd from /dev/sda into /dev/null ):
    https://github.com/lightful/xfce-hkmon/ … /hkmon.png
    -- mod edit: read the Forum Etiquette and only post thumbnails http://wiki.archlinux.org/index.php/For … s_and_Code [jwr] --
    Last edited by cgarcia (2015-01-07 22:40:54)

    Moving to Community Contributions...

  • Can I punish mybratty kid by suspending his phone use for say one or two days and then turn it back on how hard is it to turn it back on or will it end up just being more work for me

    So my kids got it all figured out but I pay for the phone so I thought I would turn it off for a few days and see if his attitude changed when I go to suspend service it makes me think how hard it might be to reactivate service so what are your thoughts on that and if you have any ideas to help

    I am not sure if this will work, but you could look in Family Base.  With this source you can control who they call, text, and what website they go to. It is just $5 per month.  That may control their usage.  Try calling Customer Service (*611) about it.
    I hope it helps! Good Luck!
    Here are some links about it:
    FamilyBase FAQs | Verizon Wireless
    How to Use Guide: Verizon FamilyBase | Verizon Wireless

  • FF-6 is not working for Bank statement View

    Hi SAP Friends,
    Could you please tell me how we need  to print the bank statement in FF_6,
    I have given then application type as 0001 and i have given the all the house bank and statement number and date, But i am not getting any statement in FF_6.
    I am getting the error like LIST CONTAINS NO DATA.
    Please suggest the same.
    Regards,
    Anand Y

    Hello,
    Give application as 0001
    Do not give any other things
    Just give statement number from 1 to 9999
    then give 01 for GL and 02 for bank sub ledger
    You will get it.
    This is only problem in the selection parameters. If you correct the selection parameters surely you will get the statement.
    Regards,
    Ravi

  • How much future useage for CS6 for a stand-alone photographer?

    I'm a semi professional small-scale photographer. It's a hobby, but I do some commercial work. It certainly isn't a living (I have other income)
    I've been on CS6 for some time. It does absolutely everything that I need, and in fact it's too much. I could do with an application that's somewhere between Lightroom+Elements and CS6. It doesn't exist.
    But as I've paid for CS6 I'm quite happy to keep on using it ad infinitum - after all, with no more upgrades (CS7 etc)  it's free now! But at a realistic level how long can I run it for, do you think? I run a good spec desktop PC with Windows 7. I use CS6 in 64bit mode, and also Bridge. Assuming my PC fails in 12 months time (it's three years old) I will get a new destop using Windows 8. CS6 will run under Windows 8, so no problems there. My new desktop may last 5 years? That gives me a total of 6 years using CS6.
    Of course, there will need to be support from Adobe for CS6, in particular if any significant bugs arise. But why should there be new bugs, unless they are in relation to third-party plugins etc? CS6 has been out for some time. Adobe are not going to change it (they have their head stuck in a cloud) so it shouldn't get broken. Or am I wrong in thinking that?
    Any thoughts?
    To upgrade to CS6  http://www.adobe.com/uk/products/catalog/cs6._sl_id-contentfilter_sl_catalog_sl_software_s l_creativesuite6.html?start=10
    In the Photoshop CS6 row, click the Buy link
    "I want to buy:", click on the dropdown menu and select Upgrade
    click "I own" and on the dropdown menu select the relevant product which you already own
    Follow the prompts from there to complete the purchase

    Curt Y wrote:
    That is the problem you have with any upgrade if you use the new features. 
    CC is more a trap then an upgrade.
    A Photoshop only user is better off staying  with CS6 and not be being trap.
    While I would prefer to have the new features being added to ACR.  I do not need the new improved old features with their new interfaces, new icons and new bugs. These change post processing work flow they only seem to slow user down and make more work for them.  I also do not need or want the 3D tools. Photoshop is not a 3D program by design. Photoshop 3D feature is more an add-on and lacks features found in real 3D creation programs.
    I want a stable image editor. While CS6 has bugs I know which bugs effect my work and know my way around most.   Photoshop CS6 still occasionally crashes from time to time but now on my new machine it only seems to happen in SciptUIFlex and I can use Photoshop  for days without a crash.  Today was not one of them. 
    To tell you the truth all upgrade after CS3 have been plagued with bugs. I was not looking forward to having to upgrade to CS7.
    It look like CC has its share of bugs too.  Though CC seems to be starting off better then CS6 did.  While there have been a few dozen bugs reported in Adobe's Photoshop Family problem forum. That is not a large number and most are not problems with CC crashing.

  • Since loading Lion, I've experienced much more instability than Snow Leopard. In particular, Mail crashes with regularity, full-screen apps seem to run slower and show the beach ball more often for longer, etc.  I'm disappointed with the performance. Any

    Since loading Lion, I've experienced much more instability than Snow Leopard. In particular, Mail crashes with regularity, full-screen apps seem to run slower and show the beach ball more often for longer, etc. I love the features, but I'm disappointed with the performance. Any help coming from Apple?  I've been sending them so many reports after crashes, that their file must be full!

    Summoning max. courage, I did what you advised. Here is the result. What does this tell you? My Lion 7.2 (mid 2011 iMac) has several annoying glitches (which I have so far tolerated through gritted teeth) but none that have actually stopped me working.
    BTW, I see several items involving CleanMyMac which I did not know I had. It is generally villified as a trouble-maker. Spotlight can't find an app. or a utility of that name. How can I get rid of what's there please? Just delete?
    Last login: Thu Nov  3 20:55:11 on console
    Steve-Kirkbys-iMac:~ stevekirkby$ kextstat -kl | awk ' !/apple/ { print $6 $7 } '
    com.AmbrosiaSW.AudioSupport(4.0)
    Steve-Kirkbys-iMac:~ stevekirkby$ sudo launchctl list | sed 1d | awk ' !/0x|apple|com\.vix|edu\.|org\./ { print $3 } '
    Password:
    com.openssh.sshd
    com.stclairsoft.DefaultFolderXAgent
    com.microsoft.office.licensing.helper
    com.bombich.ccc.scheduledtask.067493DB-2728-4DF3-87D8-092EF69086E8
    com.bombich.ccc
    com.adobe.SwitchBoard
    Steve-Kirkbys-iMac:~ stevekirkby$ launchctl list | sed 1d | awk ' !/0x|apple|edu\.|org\./ { print $3 } '
    com.sony.PMBPortable.AutoRun
    uk.co.markallan.clamxav.freshclam
    com.veoh.webplayer.startup
    com.macpaw.CleanMyMac.volumeWatcher
    com.macpaw.CleanMyMac.trashSizeWatcher
    com.adobe.ARM.202f4087f2bbde52e3ac2df389f53a4f123223c9cc56a8fd83a6f7ae
    com.adobe.AAM.Scheduler-1.0
    Steve-Kirkbys-iMac:~ stevekirkby$ ls -1A {,/}Library/{Ad,Compon,Ex,Fram,In,La,Mail/Bu,P*P,Priv,Qu,Scripti,Sta}* 2> /dev/null
    /Library/Components:
    /Library/Extensions:
    /Library/Frameworks:
    AEProfiling.framework
    AERegistration.framework
    ApplicationEnhancer.framework
    AudioMixEngine.framework
    FxPlug.framework
    NyxAudioAnalysis.framework
    PluginManager.framework
    ProFX.framework
    ProMetadataSupport.framework
    TSLicense.framework
    iLifeFaceRecognition.framework
    iLifeKit.framework
    iLifePageLayout.framework
    iLifeSQLAccess.framework
    iLifeSlideshow.framework
    /Library/Input Methods:
    /Library/Internet Plug-Ins:
    AdobePDFViewer.plugin
    EPPEX Plugin.plugin
    Flash Player.plugin
    Flip4Mac WMV Plugin.plugin
    JavaAppletPlugin.plugin
    Quartz Composer.webplugin
    QuickTime Plugin.plugin
    SharePointBrowserPlugin.plugin
    SharePointWebKitPlugin.webplugin
    Silverlight.plugin
    flashplayer.xpt
    iPhotoPhotocast.plugin
    nsIQTScriptablePlugin.xpt
    /Library/LaunchAgents:
    com.adobe.AAM.Updater-1.0.plist
    com.sony.PMBPortable.AutoRun.plist
    /Library/LaunchDaemons:
    com.adobe.SwitchBoard.plist
    com.apple.remotepairtool.plist
    com.bombich.ccc.plist
    com.bombich.ccc.scheduledtask.067493DB-2728-4DF3-87D8-092EF69086E8.plist
    com.microsoft.office.licensing.helper.plist
    com.stclairsoft.DefaultFolderXAgent.plist
    /Library/PreferencePanes:
    .DS_Store
    Application Enhancer.prefPane
    Default Folder X.prefPane
    DejaVu.prefPane
    Flash Player.prefPane
    Flip4Mac WMV.prefPane
    /Library/PrivilegedHelperTools:
    com.bombich.ccc
    com.microsoft.office.licensing.helper
    com.stclairsoft.DefaultFolderXAgent
    /Library/QuickLook:
    iWork.qlgenerator
    /Library/QuickTime:
    AppleIntermediateCodec.component
    AppleMPEG2Codec.component
    DesktopVideoOut.component
    DivX 6 Decoder.component
    FCP Uncompressed 422.component
    Flip4Mac WMV Advanced.component
    Flip4Mac WMV Export.component
    Flip4Mac WMV Import.component
    LiveType.component
    /Library/ScriptingAdditions:
    .DS_Store
    Adobe Unit Types.osax
    Default Folder X Addition.osax
    /Library/StartupItems:
    Library/Address Book Plug-Ins:
    Library/Frameworks:
    EWSMac.framework
    Library/Input Methods:
    .localized
    Library/Internet Plug-Ins:
    Library/LaunchAgents:
    com.adobe.AAM.Updater-1.0.plist
    com.adobe.ARM.202f4087f2bbde52e3ac2df389f53a4f123223c9cc56a8fd83a6f7ae.plist
    com.macpaw.CleanMyMac.trashSizeWatcher.plist
    com.macpaw.CleanMyMac.volumeWatcher.plist
    com.veoh.webplayer.startup.plist
    uk.co.markallan.clamxav.freshclam.plist
    Library/PreferencePanes:
    .DS_Store
    Perian.prefPane
    WindowShade X.prefPane
    Library/QuickTime:
    AC3MovieImport.component
    Perian.component
    Library/ScriptingAdditions:
    Steve-Kirkbys-iMac:~ stevekirkby$

Maybe you are looking for