Imporving the performance of a query

Hi,
I have the following query in Oracle:
SELECT distinct VECTOR_ID FROM SUMMARY_VECTOR where CASE_NAME like 'BASECASE_112_ECLIPSE100'
"SUMMARY_VECTOR" contains approximately 120 million records or tuples. So the total time for this query is about 62 seconds
I want to improve the performance of this query. How can I achieve this ?
any hint ?
Thanks

PLAN_TABLE_OUTPUT
Plan hash value: 3042243244
| Id | Operation | Name | Rows | Bytes | Cost (%CPU)| Time
|
PLAN_TABLE_OUTPUT
| 0 | SELECT STATEMENT | | 1 | 29 | 182K (3)| 00:36
:28 |
| 1 | SORT AGGREGATE | | 1 | 29 | |
|
|* 2 | TABLE ACCESS FULL| SUMMARY_VECTOR | 4323K| 119M| 182K (3)| 00:36
:28 |
PLAN_TABLE_OUTPUT
Predicate Information (identified by operation id):
2 - filter("CASE_NAME"='BASECASE_112_ECLIPSE100')
14 rows selected.

Similar Messages

  • Need help in optimising the performance of a query

    Need help in optimising the performance of a query. Below is the query that is executed on TABLE_A, TABLE_B and TABLE_C with record counts as 10M, 10m and 42 (only) respectively and it takes around 5-7 minutes to get 40 records:
    SELECT DISTINCT a.T_ID_, a.FIRSTNAME, b.T_CODE, b.PRODUCT,
    CASE WHEN TRUNC(b.DATE) +90 = TRUNC(SYSDATE) THEN -90 WHEN TRUNC(b.DATE) +30 = TRUNC(SYSDATE) THEN -30 ELSE 0 END AS T_DATE FROM TABLE_B b
    INNER JOIN TABLE_A a ON (a.T_ID_ = b.T_ID_) LEFT JOIN TABLE_C c ON b.PRODUCT = c.PRODUCT
    WHERE b.STATUS = 'T' AND (b.TYPE = 'ACTION'
    AND ( TRUNC(b.DATE) + 1 = TRUNC(SYSDATE) ) ) AND b.PRODUCT = 2;
    Note: Indices on the join columns are available in the respective tables
    Please let me know if there is any better way to write it.
    Edited by: 862944 on Aug 18, 2011 9:52 AM

    862944 wrote:
    Need help in optimising the performance of a query. Below is the query that is executed on TABLE_A, TABLE_B and TABLE_C with record counts as 10M, 10m and 42 (only) respectively and it takes around 5-7 minutes to get 40 records:
    SELECT DISTINCT a.T_ID_, a.FIRSTNAME, b.T_CODE, b.PRODUCT,
    CASE WHEN TRUNC(b.DATE) +90 = TRUNC(SYSDATE) THEN -90 WHEN TRUNC(b.DATE) +30 = TRUNC(SYSDATE) THEN -30 ELSE 0 END AS T_DATE FROM TABLE_B b
    INNER JOIN TABLE_A a ON (a.T_ID_ = b.T_ID_) LEFT JOIN TABLE_C c ON b.PRODUCT = c.PRODUCT
    WHERE b.STATUS = 'T' AND (b.TYPE = 'ACTION'
    AND ( TRUNC(b.DATE) + 1 = TRUNC(SYSDATE) ) ) AND b.PRODUCT = 2;
    Note: Indices on the join columns are available in the respective tables
    Please let me know if there is any better way to write it.
    Edited by: 862944 on Aug 18, 2011 9:52 AM[When Your Query Takes Too Long|https://forums.oracle.com/forums/thread.jspa?messageID=1812597]

  • HI All, How to improve the performance in given query?

    HI All,
    How to improve the performance in given query?
    Query is..
    PARAMETERS : p_vbeln type lips-vbeln.
    DATA : par_charg TYPE LIPS-CHARG,
    par_werks TYPE LIPS-WERKS,
    PAR_MBLNR TYPE MSEG-MBLNR .
    SELECT SINGLE charg
    werks
    INTO (par_charg, par_werks)
    FROM lips
    WHERE vbeln = p_vbeln.
    IF par_charg IS NOT INITIAL.
    SELECT single max( mblnr )
    INTO par_mblnr
    FROM mseg
    WHERE bwart EQ '101'
    AND werks EQ par_werks (index on werks only)
    AND charg EQ par_charg.
    ENDIF.
    Regards
    Steve

    Hi steve,
    Can't you use the material in your query (and not only the batch)?
    I am assuming your system has an index MSEG~M by MANDT + MATNR + WERKS (+ other fields). Depending on your system (how many different materials you have), this will probably speed up the query considerably.
    Anyway, in our system we ended up by creating an index by CHARG, but leave as a last option, only if selecting by matnr and werks is not good enough for your scenario.
    Hope this helps,
    Rui Dantas

  • Please help me how to improve the performance of this query further.

    Hi All,
    Please help me how to improve the performance of this query further.
    Thanks.

    Hi,
    this is not your first SQL tuning request in this community -- you really should learn how to obtain performance diagnostics.
    The information you posted is not nearly enough to even start troubleshooting the query -- you haven't specified elapsed time, I/O, or the actual number of rows the query returns.
    The only piece of information we have is saying that your query executes within a second. If we believe this, then your query doesn't need tuning. If we don't, then we throw it away
    and we're left with nothing.
    Start by reading this blog post: Kyle Hailey » Power of DISPLAY_CURSOR
    and applying this knowledge to your case.
    Best regards,
      Nikolay

  • Ways to improve the performance of my query?

    Hi all,
    I have created a multi provider which enables to fetch the data from 3 ods. And each ods contains huge amount of data. As a result my query performance is very slow..
    apart from creating indexes on ods? is there any other to be carried out to improve the performance of my query. Since all the 3 info providers are ods.
    thanxs
    haritha

    Haritha,
    If you still need more info, just have a look below:
    There are few ways your queries can be improved:
    1. Your Data volume in your InfoProviders.
    2. Dim table, how you have manage your objects into your dim table.
    3. Query that runs from multiprovider vs cube itself. when running from multiproviders at the time of execution the system has to create more tables hence the query performance will be affected.
    4. Aggregates into the cube, and they perfection of designing the aggregates.
    5. OLAPCHACHE
    6. Calculation formula
    etc.
    and also you can go thru the links below:
    https://www.sdn.sap.com/irj/servlet/prt/portal/prtroot/docs/library/uuid/cccad390-0201-0010-5093-fd9ec8157802
    https://www.sdn.sap.com/irj/servlet/prt/portal/prtroot/docs/library/uuid/ce7fb368-0601-0010-64ba-fadc985a1f94
    https://www.sdn.sap.com/irj/servlet/prt/portal/prtroot/docs/library/uuid/c8c4d794-0501-0010-a693-918a17e663cc
    Hope this helps you.
    ****Assign Points*******
    Gattu

  • How to measure the performance of sql query?

    Hi Experts,
    How to measure the performance, efficiency and cpu cost of a sql query?
    What are all the measures available for an sql query?
    How to identify i am writing optimal query?
    I am using Oracle 9i...
    It ll be useful for me to write efficient query....
    Thanks & Regards

    psram wrote:
    Hi Experts,
    How to measure the performance, efficiency and cpu cost of a sql query?
    What are all the measures available for an sql query?
    How to identify i am writing optimal query?
    I am using Oracle 9i... You might want to start with a feature of SQL*Plus: The AUTOTRACE (TRACEONLY) option which executes your statement, fetches all records (if there is something to fetch) and shows you some basic statistics information, which include the number of logical I/Os performed, number of sorts etc.
    This gives you an indication of the effectiveness of your statement, so that can check how many logical I/Os (and physical reads) had to be performed.
    Note however that there are more things to consider, as you've already mentioned: The CPU bit is not included in these statistics, and the work performed by SQL workareas (e.g. by hash joins) is also credited only very limited (number of sorts), but e.g. it doesn't cover any writes to temporary segments due to sort or hash operations spilling to disk etc.
    You can use the following approach to get a deeper understanding of the operations performed by each row source:
    alter session set statistics_level=all;
    alter session set timed_statistics = true;
    select /* findme */ ... <your query here>
    SELECT
             SUBSTR(LPAD(' ',DEPTH - 1)||OPERATION||' '||OBJECT_NAME,1,40) OPERATION,
             OBJECT_NAME,
             CARDINALITY,
             LAST_OUTPUT_ROWS,
             LAST_CR_BUFFER_GETS,
             LAST_DISK_READS,
             LAST_DISK_WRITES,
    FROM     V$SQL_PLAN_STATISTICS_ALL P,
             (SELECT *
              FROM   (SELECT   *
                      FROM     V$SQL
                      WHERE    SQL_TEXT LIKE '%findme%'
                               AND SQL_TEXT NOT LIKE '%V$SQL%'
                               AND PARSING_USER_ID = SYS_CONTEXT('USERENV','CURRENT_USERID')
                      ORDER BY LAST_LOAD_TIME DESC)
              WHERE  ROWNUM < 2) S
    WHERE    S.HASH_VALUE = P.HASH_VALUE
             AND S.CHILD_NUMBER = P.CHILD_NUMBER
    ORDER BY ID
    /Check the V$SQL_PLAN_STATISTICS_ALL view for more statistics available. In 10g there is a convenient function DBMS_XPLAN.DISPLAY_CURSOR which can show this information with a single call, but in 9i you need to do it yourself.
    Note that "statistics_level=all" adds a significant overhead to the processing, so use with care and only when required:
    http://jonathanlewis.wordpress.com/2007/11/25/gather_plan_statistics/
    http://jonathanlewis.wordpress.com/2007/04/26/heisenberg/
    Regards,
    Randolf
    Oracle related stuff blog:
    http://oracle-randolf.blogspot.com/
    SQLTools++ for Oracle (Open source Oracle GUI for Windows):
    http://www.sqltools-plusplus.org:7676/
    http://sourceforge.net/projects/sqlt-pp/

  • Hpw to tune the performance of following query?

    Hi all,
               I want a particular set of G/L acct nos for the list of billing documents that i have in an internal table ie. pt_vbrk. I am using table BSIS.However ,when i use the following query it is taking  very very long time .I even tried using LOOP...ENDLOOP statement.Can anyone tell me how to enhance the performance of the query?Thanks in advance.
    i = 0.
    loop at pt_vbrk.
    i = i + 1.
    endloop.
    while j <= i.
    read table pt_vbrk index j.
    select single hkont  from bsis into  corresponding fields of
    pt_vbrk where
    ( hkont = '0013100000' or hkont = '0013105000'
    or hkont = '0013110000' or hkont = '0013112000'
    or hkont = '0013115000' or hkont = '0013120000'
    or hkont = '0013125000' or hkont = '0013135500'
    or hkont = '0013140000' or hkont = '0013145000'
    or hkont = '0013155000' or hkont = '0013165000'
    or hkont = '0013175000' or hkont = '0013170000' )
    and belnr = pt_vbrk-belnr and  gjahr = pt_vbrk-gjahr   . "#EC CI_NOFIRST
    modify pt_vbrk from pt_vbrk index j.
    j = j + 1.
    endwhile.
    Moderator message - Moved to the correct forum
    Edited by: Rob Burbank on Sep 22, 2009 9:06 AM

    Try the following approach.
    TYPES: BEGIN OF ty_bsis,
             bukrs TYPE bsis-bukrs,
             hkont TYPE bsis-hkont,
             augdt TYPE bsis-augdt,
             augbl TYPE bsis-augbl,
             zuonr TYPE bsis-zuonr,
             gjahr TYPE bsis-gjahr,
             belnr TYPE bsis-belnr,
             buzei TYPE bsis-buzei,
           END OF ty_bsis.
    DATA: w_bsis     TYPE                 ty_bsis ,
          w_index    TYPE                 sy-tabix,
          t_bsis     TYPE SORTED TABLE OF ty_bsis
            WITH NON-UNIQUE KEY bukrs belnr gjahr ,
          t_vbrk_tmp LIKE        TABLE OF pt_vbrk .
    RANGES: r_hkont FOR bsis-hkont.
    IF NOT pt_vbrk[] IS INITIAL.
      REFRESH r_hkont.
      r_hkont-sign   = 'I'.
      r_hkont-option = 'EQ'.
      r_hkont-low = '0013100000'.
      APPEND r_hkont.
      r_hkont-low = '0013105000'.
      APPEND r_hkont.
      r_hkont-low = '0013110000'.
      APPEND r_hkont.
      r_hkont-low = '0013112000'.
      APPEND r_hkont.
      r_hkont-low = '0013115000'.
      APPEND r_hkont.
      r_hkont-low = '0013120000'.
      APPEND r_hkont.
      r_hkont-low = '0013125000'.
      APPEND r_hkont.
      r_hkont-low = '0013135500'.
      APPEND r_hkont.
      r_hkont-low = '0013140000'.
      APPEND r_hkont.
      r_hkont-low = '0013145000'.
      APPEND r_hkont.
      r_hkont-low = '0013155000'.
      APPEND r_hkont.
      r_hkont-low = '0013165000'.
      APPEND r_hkont.
      r_hkont-low = '0013175000'.
      APPEND r_hkont.
      r_hkont-low = '0013170000'.
      APPEND r_hkont.
      t_vbrk_tmp[] = pt_vbrk[].
      SORT t_vbrk_tmp BY bukrs gjahr belnr.
      DELETE ADJACENT DUPLICATES FROM t_vbrk_tmp
        COMPARING bukrs gjahr belnr.
      SELECT bukrs
             hkont
             augdt
             augbl
             zuonr
             gjahr
             belnr
             buzei
        FROM bsis
        INTO TABLE t_bsis
        FOR ALL ENTRIES IN t_vbrk_tmp
        WHERE bukrs EQ t_vbrk_tmp-bukrs
        AND   hkont IN r_hkont
        AND   gjahr EQ t_vbrk_tmp-gjahr
        AND   belnr EQ t_vbrk_tmp-belnr.
      IF sy-subrc EQ 0.
        LOOP AT pt_vbrk.
          w_index = sy-tabix.
          READ TABLE t_bsis INTO w_bsis
            WITH KEY bukrs = pt_vbrk-bukrs
                     belnr = pt_vbrk-belnr
                     gjahr = pt_vbrk-gjahr
                     TRANSPORTING
                       hkont.
          IF sy-subrc EQ 0.
            pt_vbrk-hkont = w_bsis-hkont.
            MODIFY pt_vbrk INDEX w_index
              TRANSPORTING
                hkont.
          ENDIF.
        ENDIF.
      ENDIF.

  • Improving the performance of this query

    Hi, Do you see any change we could do on this to improve its performance, pls, I appreciate you taking few minutes to help with analysing and tuining it
    select hoc.hoc_id,
    hoc.mstr_key_id,
    address.DISP_NME,
    blck.st_blck_id,
    blck.mstr_key_id as blck_mstr_key,
    bldg.BLDG_ID,
    hoc.BLDG_KEY_ID,
    address.OCPD_IND,
    address.TP_TYPE_CDE,
    '' as cmbcNumber,
    '' as tpSiteNumber,
    case
    when address.cmbc_id is not null then amsowner.ams_038_direct_connect.GetMobilierForCMB(address.cmbc_id)
    when address.lbc_id is not null and address.cmbc_id is null then amsowner.ams_038_direct_connect.GetMobilierForLBC(address.lbc_id)
    END as Mobilier,
    choice.cnsmr_chce_ind,
    hoc.SRT_IND,
    hoc.DLVRY_IND,
    case valRES_STAT_CDE
    when 123444 then hoc.cse_sprtn_wdth
    when 123555 then hoc_pend.cse_sprtn_wdth
    when 123666 then hoc_pend.cse_sprtn_wdth
    end as cse_sprtn_wdth,
    case valRES_STAT_CDE
    when 123444 then hoc.admail_color_id
    when 123555 then hoc.admail_color_id
    when 123666 then hoc_pend.admail_color_id
    end as admail_color_id,
    case valRES_STAT_CDE
    when 123444 then hoc.tieout
    when 123555 then hoc_pend.tieout
    when 123666 then hoc_pend.tieout
    end as tieout,
    hoc.callr_Ind,
    hoc.PCKUP_ind,
    case
    when hldout.hld_out_id > 0 then 33
    else 34
    end as HLDOUT_IND,
    case valRES_STAT_CDE
    when 123444 then hoc.BREAKER_CARD_NUM
    when 123555 then hoc_pend.BREAKER_CARD_NUM
    when 123666 then hoc_pend.BREAKER_CARD_NUM
    end as BREAKER_CARD_IND,
    Case
    when valRES_STAT_CDE = 123444 and hoc.MP_ID is not null and hoc.MP_ID <> 0 then 33
    when valRES_STAT_CDE = 123555 and hoc_pend.MP_ID is not null and hoc_pend.MP_ID <> 0 then 33
    when valRES_STAT_CDE = 123666 and hoc_pend.MP_ID is not null and hoc_pend.MP_ID <> 0 then 33
    else 34 END as MP_IND,
    case
    when valRES_STAT_CDE = 123444 then hoc.LCRMS_SEQ_NUM
    when valRES_STAT_CDE = 123555 then hoc_pend.DEL_SEQ
    when valRES_STAT_CDE = 123666 then hoc_pend.DEL_SEQ
    END as DEL_SEQ,
    case
    when (hoc_type_cde = 154 and hoc.MP_ID is not null ) then (NVL(mp.SLCLRES_RATE , 0)+ NVL(mp.OSSDRES_RATE,0))
    when (hoc_type_cde = 154 and hoc.MP_ID is null ) then (NVL(asmt.SLCLRES_RATE , 0)+ NVL(asmt.OSSDRES_RATE,0))
    when (hoc_type_cde = 156 and hoc.MP_ID is not null )then (NVL(mp.SLCLCOM_RATE,0) + NVL(mp.OSSDCOM_RATE,0))
    when (hoc_type_cde = 156 and hoc.MP_ID is null ) then (NVL(asmt.SLCLCOM_RATE,0) + NVL(asmt.OSSDCOM_RATE,0))
    else 0
    END As AvgMail,
    Case
    when valRES_STAT_CDE = 123444 then hoc.drct_ind
    when valRES_STAT_CDE = 123555 then hoc_pend.drct_ind
    when valRES_STAT_CDE = 123666 then hoc_pend.drct_ind
    END as drct_ind,
    Case
    when pc.ldu_type_cde in (492, 564, 565, 566, 567 ) then 33
    else 34
    end as lvr_ind,
    hoc.A12_CARD_IND,
    hoc.DNC_CARD_IND,
    hoc.CARD_IND,
    hoc.FRCE_CARD_IND,
    hoc.EXTRA_CARD_NBR,
    hoc.TTL_HOC_CNT,
    --(select BSNS_NME_EN from occupant where occupant.ADDR_MAIL_ID = address.addr_id and occupant.prmry_ind = 33 and rownum <= 1 )as PRIMARY_BUS_NME_EN,
    --(select BSNS_NME_FR from occupant where occupant.ADDR_MAIL_ID = address.addr_id and occupant.prmry_ind = 33 and rownum <= 1 )as PRIMARY_BUS_NME_FR,
    blck.blck_seq,
    address.ADDR_NUM,
    address.ADDR_SFX_CDE,
    address.ADDR_STE_NUM,
    hoc.HOC_TYPE_CDE,
    hoc.CSE_SPRTN_GRP_ID,
    pc.pc_id As pc_id,
    pc.disp_nme as pc_disp_nme,
    hoc.bag_ind,
    hoc.CASETAG,
    occupant.BSNS_NME_EN as PRIMARY_BUS_NME_EN , occupant.BSNS_NME_FR as PRIMARY_BUS_NME_FR
    from amsowner.AMS_038_HOC hoc
    left join amsowner.ams_038_hoc_pndng hoc_pend
    on hoc.MSTR_KEY_ID = hoc_pend.MSTR_KEY_ID
    inner join amsowner.AMS_038_ST_BlCK blck
    on hoc.st_blck_key_id = blck.mstr_key_id
    inner join amsowner.postal_code pc
    on blck.pc_id = pc.pc_id
    left join amsowner.AMS_038_bldg bldg
    on hoc.BLDG_KEY_ID = bldg.MSTR_KEY_ID
    inner join amsowner.address address
    on address.addr_id = hoc.addr_mail_id
    inner join amsowner.addr_lctn_to_mail locToMail
    on locToMail.addr_mail_id = address.addr_id
    inner join amsowner.addr_chce choice
    on choice.addr_id = locToMail.addr_lctn_id
    left join occupant on (occupant.ADDR_MAIL_ID = address.addr_id and occupant.prmry_ind = 33)
    left join amsowner.ams_038_hld_out hldout
    on (hldout.mstr_key_id = hoc.mstr_key_id and hldout.end_dte is null)
    left join amsowner.ams_038_dm dm
    on dm.dm_id = blck.dm_id
    left join ams_038_assmt asmt
    on blck.pc_id = asmt.pc_id and asmt.dpt_cde_nme = valDpt_cde_nme and ((asmt.case_type_cde = 1220 and dm.a62_cse_ind = 33) or (asmt.case_type_cde = 1219 and dm.a62_cse_ind = 34))
    left join ams_038_mail_prfl mp
    on hoc.mp_id = mp.mp_id and ((mp.case_type_cde = 1220 and dm.a62_cse_ind = 33) or (mp.case_type_cde = 1219 and dm.a62_cse_ind = 34))
    where hoc.mstr_key_id = valMSTR_KEY_ID and blck.DPT_CDE_NME = valDpt_cde_nme and hoc.DPT_CDE_NME = valDpt_cde_nme and blck.RSTRCTR_STAT_CDE = restCode;
    Thanks a lot :)

    Hi and welcome to the forum.
    I appreciate you taking few minutes to help with analysing and tuining itUnfortunatly it's not that simple.
    We would need some more input here, like:
    - database version
    - optimizer settings
    - execution plans
    -etc..
    Tuning is a complex matter, since many parameters come into play here.
    If you want some useful responses then see:
    [When your query takes too long...|http://forums.oracle.com/forums/thread.jspa?messageID=3299435]
    [How to post a SQLStatement tuning request|http://forums.oracle.com/forums/thread.jspa?threadID=863295&tstart=0]
    to understand what information would also be very useful to us (and, if needed, have your DBA participating in this as well).

  • I'm trying to improve the performance on a query that is running very slowly.

    SELECT p.book_id AS payment_book_id, b.status AS book_status,
           p.status AS payment_status, p.supplier_ref_no AS data_cash_ref,
           f.train_pnr_no AS train_pnr, f.train_id AS train_ref_id,
           f.service_no AS train_service_no, h.hotel_pnr_no AS hotel_pnr,
           h.hotel_id AS hotel_ref_id, h.service_no AS hotel_service_no,
           b.total_book_amt AS hotel_amt, c.car_pnr_no AS car_pnr,
           c.car_id AS car_ref_id, c.service_no AS car_service_no,
           b.book_date, b.promo_code
      FROM gk_payment p
      LEFT JOIN gk_book b ON b.book_id = p.book_id
      LEFT JOIN gk_train_itiner_det f ON p.book_id = f.book_id
      LEFT JOIN gk_hotel_itiner_det h ON p.book_id = h.book_id
      LEFT JOIN gk_car_itiner_det c ON p.book_id = c.book_id
    WHERE ((b.status IN ('8') AND p.status IN ('2', '0', '1', '8', '7')) OR
           (b.status IN ('5') AND p.status IN ('3')) OR
           (b.status IN ('11') AND p.status IN ('4', '5')))
           AND p.service_no IS NOT NULL
           AND b.book_type = 1
    ORDER BY train_id, car_id

    Some small comments about the query.
    1) The first left join is not needed, since the where filter "  AND b.book_type = 1" eliminates all cases where table b would be outer join (=empty).
    FROM gk_payment p
      LEFT JOIN gk_book b ON b.book_id = p.book_id
    2) The status comparison can be written in a different way. This will probably not change anything performancewise
    instead of
    WHERE ((b.status IN ('8') AND p.status IN ('2', '0', '1', '8', '7')) OR
           (b.status IN ('5') AND p.status IN ('3')) OR
           (b.status IN ('11') AND p.status IN ('4', '5')))
    you can write
    WHERE ((b.status,p.status))
        IN (('8','0')
            ,('8','1')
            ,('8','2')
            ,('8','7')
            ,('8','8')
            ,('5','3')
            ,('11','4')
            ,('11',53')
    Which is imo much easier to read, maintain and checkable for completeness.
    Furthermore: If the status fields are number columns then by all means compare them with numbers and not as strings.
    3) Remove the order by condition
    Is it faster without it? If yes, do you really need to order the output?

  • When thread-count 65 /thread-count can imporve the performance

    We are using very classical way get / put object with key for our application on embedding mode.
    Application run on top Weblogic Server, Tangosol as embedding Lib.
    in this case, tunning this parameter can improve performance or non?
    Best regards.
    Jerome
    <invocation-scheme>
    <scheme-name>InvocationScheme</scheme-name>
    <service-name>InvocationService</service-name>
    <thread-count>65</thread-count>
    <autostart>true</autostart>
    </invocation-scheme>

    Hi,
    if I understand well: When we are using embedding mode with Weblogic Server, we are using the thread distributed by WLS, we don't need any thread by invocable Service thread, Am I right?
    attached is one Thread dump, we are seeing a lot of wait lock, some one can give a more clear explanation? Sorry, it's quite long, but i can't use attach mode. I can send the summary
    Best regards.
    Jerome
    ========================================================================
    Dump Files
    Stat Count
    Thread/Locks     Dump_0     Dump_1     Dump_2     Dump_3     Dump_4     Total      Average     Lock Type
    Total Active ExecuteThread     25     18     31     119     138     331          
    Total Waiting thread among Active ExecuteThread and with respect to Coherence related locks     22     15     28     116     134     315          
    1. Locks waiting by IMPI_IMPU_DAO.get_all_IMPU_of_IMSU_with_User_State(IMPI_IMPU_DAO.java:178)          25          DistributedCache$GetRequest$Poll
    2. Locks waiting by IMPI_IMPU_DAO.get_all_IMPU_of_IMSU_with_User_State(IMPI_IMPU_DAO.java:186)          33          DistributedCache$GetRequest$Poll
    3. Locks waiting by IMPI_IMPU_DAO.get_all_IMPU_of_IMSU_with_User_State(IMPI_IMPU_DAO.java:201)          40          DistributedCache$GetRequest$Poll
    4. Locks waiting by IMPI_IMPU_DAO.get_by_IMPI_and_IMPU_ID(IMPI_IMPU_DAO.java:74)          8          DistributedCache$GetRequest$Poll
    5. Locks waiting by IMPU_DAO.get_by_Identity(IMPU_DAO.java:201)     0     0     3     10     16     29     5.8     DistributedCache$GetRequest$Poll
    6. Locks waiting by IMPU_DAO.get_by_Identity(IMPU_DAO.java:206)     0     0     7     23     1     31     6.2     DistributedCache$GetRequest$Poll
    7. Locks waiting by IMPI_DAO.get_by_Identity(IMPI_DAO.java:105)     0     0     1     6     3     10     2     DistributedCache$GetRequest$Poll
    8. Locks waiting by IMPI_DAO.get_by_Identity(IMPI_DAO.java:110)     0     0     0     3     7     10     2     DistributedCache$GetRequest$Poll
    9. Locks waiting by IMSU_DAO.get_by_ID(IMSU_DAO.java:86)     2     0     2     4     9     17     3.4     DistributedCache$GetRequest$Poll
    10. Locks waiting by Preferred_SCSCF_Set_DAO.get_all_from_set(Preferred_SCSCF_Set_DAO.java:81)     2     5     2     20     9     38     7.6     distributedCacheRequest.PartialRequest$Poll
    11. Locks waiting by Preferred_SCSCF_Set_DAO.get_all_from_set(Preferred_SCSCF_Set_DAO.java:77)     1     5     0     0     12     18     3.6     distributedCacheRequest.PartialRequest$Poll
    12. Locks waiting by CapabilitiesSet_DAO.get_all_from_set(CapabilitiesSet_DAO.java:77)     0     2     3     10     5     20     4     distributedCacheRequest.PartialRequest$Poll
    13. Locks waiting by VisitedNetwork_DAO.get_by_Identity(VisitedNetwork_DAO.java:73)     0     0     2     15     5     22     4.4     distributedCacheRequest.PartialRequest$Poll
    14. Locks waiting by IMPU_VisitedNetwork_DAO.get_by_IMPU_and_VisitedNetwork_ID(IMPU_VisitedNetwork_DAO.java:65)     1     0     3     4     6     14     2.8     DistributedCache$GetRequest$Poll
    ========================================================================

  • Performace problem in a select statment how to imporve the performance

    fist select statment
    SELECT    a~extno
              a~guid_lclic       " for next select
              e~ctsim
              e~ctsex
    *revised spec 3rd
              f~guid_pobj
              f~amnt_flt
              f~amcur
              f~guid_mobj
              e~srvll     "pk
              e~ctsty     "PK
              e~lgreg  "PK
      INTO TABLE gt_sagmeld
      FROM /SAPSLL/LCLIC  as a
      INNER JOIN /sapsll/tlegsv as e on elgreg = algreg
    * revised spec 3rd
      inner join /sapsll/legcon as f on fguid_lclic = aguid_lclic   " for ccngn1 selection
      inner join /sapsll/corcts as g on gguid_pobj = fguid_pobj
                               where   a~extno in s_extno.
      sort gt_sagmeld by guid_lclic guid_pobj.
    lgreg ctsty srvll
      delete adjacent duplicates from gt_sagmeld comparing guid_lclic guid_pobj.
    it selects about 20 lakh records
    belos select statment whichs is taking time as it is based on the entreis of gt_sagmeld
    select /sapsll/corpar~guid_mobj
                /sapsll/corpar~PAFCT
                but000~bpext
                but000~partner
                /sapsll/corpar~parno
                into table gt_but001
        from    /sapsll/corpar
        INNER join but000  on  but000partner = /sapsll/corparparno
        for all entries in gt_sagmeld
        where  /sapsll/corpar~guid_mobj = gt_sagmeld-guid_mobj
        and    /sapsll/corpar~PAFCT = 'SH'.
       SELECT /sapsll/cuit~guid_cuit         " PK
              /sapsll/cuit~QUANT_FLT         " to be displayed
              /sapsll/cuit~QUAUM             " to be displayed
              /sapsll/cuit~RPTDT             " to be displayed
             /sapsll/cuhd~guid_cuhd         " next select
              /sapsll/cuit~guid_pr           " next select
      INTO table gt_sapsllcuit
      FROM  /sapsll/cuit
    inner join /sapsll/cuhd on /sapsll/cuitguid_cuhd = /sapsll/cuhdguid_cuhd
      FOR all entries in gt_sagmeld
      WHERE /sapsll/cuit~guid_cuit = gt_sagmeld-guid_pobj.
      Delete adjacent duplicates from gt_sapsllcuit[].
           if not gt_sapsllcuit[] is initial.

    hi navenet
    that didnt worked
    we need to try ur range options
    but not sure what you told in the last mail as not clear with range can u pls eloboragte more i am pasting the full code here
    SELECT     a~extno
               a~guid_lclic       " for next select but000
               e~ctsim
               e~ctsex
               e~srvll
               e~ctsty
               e~lgreg
      INTO TABLE gt_sagmeld
      FROM /SAPSLL/LCLIC  as a
      INNER JOIN /sapsll/tlegsv as e on elgreg = algreg
                               where   a~extno in s_extno.
    sort gt_sagmeld by guid_lclic.
    delete adjacent duplicates from gt_sagmeld comparing all fields.
      IF not gt_sagmeld[] is initial.
      SELECT  /sapsll/legcon~guid_lclic
              /sapsll/legcon~guid_pobj
              /sapsll/legcon~amnt_flt
              /sapsll/legcon~amcur
               but000~bpext
               *revised spec
               /sapsll/corpar~PAFCT
              /sapsll/legcon~guid_mobj
             /sapsll/cuit~guid_cuit
      INTO TABLE gt_but000
      FROM /SAPSLL/LEGCON
      for all entries in gt_sagmeld
      where /SAPSLL/legcon~guid_lclic = gt_sagmeld-guid_lclic.
            IF NOT GT_BUT000[] IS INITIAL.
           sort gt_but000 by guid_mobj.
           delete adjacent duplicates from gt_but000 comparing guid_mobj.
         select /sapsll/corpar~guid_mobj
                /sapsll/corpar~PAFCT
                /sapsll/corpar~parno
                into table gt_but001
        from    /sapsll/corpar
        for all entries in gt_but000
        where  /sapsll/corpar~guid_mobj = gt_but000-guid_mobj.
       and    /sapsll/corpar~PAFCT = 'SH'.
    DELETE gt_but001 where PAFCT <> 'SH'.
    *sort gt_corpar by parno.
    *delete adjacent duplicates from gt_corpar comparing parno.
    *select gd000~partner
          gd000~bpext
         from gd000 into table gt_but001
    for all entries in gt_corpar
    where  gd000~partner = gt_corpar-parno.
    my ultimat aim is to select bpext from gd000
    can u please explain how to use ranges here and what is the singnificance and how ill i read the data from the final  table if we use ranges
    regards
    Nishant

  • Please guide to improve the performance of XML column reading query.

    Hi Experts,
    The below query is taking 45 seconds to return 170 records.
    Due to selecting XMLTYPE column in query.
    select *
    from RANGE where WSNO = 3
    order by PREFERENCE desc;
    The total number of records in the table is 1060.
    Even it's a very small table why it's taking 45 seconds.
    Can anybody please help me on how to get the output in 2 to 3 seconds.
    I want all the columns from the table.
    The problem only with REST column XMLTYPE.
    If I am not selecting this column I am getting output in 1 to 2 seconds.
    I am posting the execution plan and DDL for table and index.
    PLAN_TABLE_OUTPUT
    Plan hash value: 3593186720
    | SNO  | Operation                    | EMPNAME                   | Rows  | Bytes | Cost (%CPU)| Time     |
    |   0 | SELECT STATEMENT             |                        |    31 | 23281 |    21   (5)| 00:00:01 |
    |   1 |  SORT ORDER BY               |                        |    31 | 23281 |    21   (5)| 00:00:01 |
    |   2 |   TABLE ACCESS BY INDEX ROWID | RANGE                 |    31 | 23281 |    20   (0)| 00:00:01 |
    |*  3 |    INDEX RANGE SCAN          | INDX_WSNO              |    31 |       |     1   (0)| 00:00:01 |
    Predicate Information (SNOentified by operation SNO):
       3 - access("WSNO"=3)
    CREATE TABLE RANGE
      SNO                              NUMBER,
      BUSNO                            NUMBER,
      EMPNAME                          NVARCHAR2(64),
      PREFERENCE                       NUMBER,
      TSNO                             NUMBER,
      MEMBER                          CHAR(1 CHAR) ,
      EQU                             CHAR(1 CHAR) ,
      REMAIL                          CHAR(1 CHAR) ,
      SSR                             CHAR(1 CHAR) ,
      SUB                             CHAR(1 CHAR) ,
      SPN                             CHAR(1 CHAR) ,
      SEMPNAME                        NVARCHAR2(128),
      FVL                             NUMBER(32),
      TVL                             NUMBER(32),
      ISD                             CHAR(1 CHAR),
      CHANGED                         NVARCHAR2(64),
      CDATE                           TIMESTAMP(6) ,
      UDBY                            NVARCHAR2(64),
      UDATE                           TIMESTAMP(6),
      LSTU                            CLOB,
      WSNO                            NUMBER,
      ASTN                            CHAR(1 CHAR),
      ASTNPL                          CHAR(1 CHAR),
      AVAF                            CHAR(1 CHAR),
      REST                            SYS.XMLTYPE
    TABLESPACE USERS
    PCTUSED    0
    PCTFREE    10
    INITRANS   11
    MAXTRANS   255
    STORAGE    (
                INITIAL          64K
                NEXT             1M
                MINEXTENTS       1
                MAXEXTENTS       UNLIMITED
                PCTINCREASE      0
                BUFFER_POOL      DEFAULT
    XMLTYPE REST STORE AS CLOB
          ( TABLESPACE  USERS
            ENABLE      STORAGE IN ROW
            CHUNK       8192
            PCTVERSION  10
            NOCACHE
            INDEX       (
              TABLESPACE USERS
              STORAGE    (
                          INITIAL          64K
                          NEXT             1
                          MINEXTENTS       1
                          MAXEXTENTS       UNLIMITED
                          PCTINCREASE      0
                          BUFFER_POOL      DEFAULT
            STORAGE    (
                        INITIAL          64K
                        NEXT             1M
                        MINEXTENTS       1
                        MAXEXTENTS       UNLIMITED
                        PCTINCREASE      0
                        BUFFER_POOL      DEFAULT
      LOB (LSTU) STORE AS
          ( TABLESPACE  USERS
            ENABLE      STORAGE IN ROW
            CHUNK       8192
            RETENTION
            NOCACHE
            INDEX       (
              TABLESPACE USERS
              STORAGE    (
                          INITIAL          64K
                          NEXT             1
                          MINEXTENTS       1
                          MAXEXTENTS       UNLIMITED
                          PCTINCREASE      0
                          BUFFER_POOL      DEFAULT
            STORAGE    (
                        INITIAL          64K
                        NEXT             1M
                        MINEXTENTS       1
                        MAXEXTENTS       UNLIMITED
                        PCTINCREASE      0
                        BUFFER_POOL      DEFAULT
    NOCACHE
    NOPARALLEL
    MONITORING;
    CREATE INDEX INDX_WSNO ON RANGE(WSNO);
    CREATE UNIQUE INDEX RULE_EMPNAME ON RANGE(BUSNO, EMPNAME);
    Please help me how to improve the performance of this query.
    Thanks.

    Can you try something like this and check if its faster? (this is just my guess as I dont have your data )
    SELECT SNO,
           BUSNO,
           EMPNAME,
           PREFERENCE,
           TSNO,
           MEMBER,
           EQU,
           REMAIL,
           SSR,
           SUB,
           SPN,
           SEMPNAME,
           FVL,
           TVL,
           ISD,
           CHANGED,
           CDATE,
           UDBY,
           UDATE,
           LSTU,
           WSNO,
           ASTN,
           ASTNPL,
           AVAF,
           xmltype.getclobval (rest) rest
      FROM RANGE
    WHERE wsno = 3
    order by PREFERENCE desc;
    Cheers,
    Manik.

  • How can I best improve the performance of my Mac Book Pro?

    I have a 1st generation MBP running OS X Tiger (that's right, 10.4.11) and it is really showing it's age, mostly when I'm switching back and forth between multiple programs and when I'm browsing online. It will get tremendously slow (sometimes I'll have to wait 30 seconds to 1 minute just to be able to click a link). I'm wondering, will upgrading my operating system (and adding more RAM) substantially prolong the life of my MBP or do I need to do some more drastic upgrade?

    Actually the best thing you can do is wipe the drive, that is after you save all your important files, and reinstal the OS and programs.
    Get a Fresh start. this will imporve the performance of the computer back to as it was when it was new. All computer get bogged down overtime with unneeded files, caches and updates. When you start fresh all those old files will be gone and the updates you do will be the newest.
    Yes a faster hard drive will help but still a fresh install is the way to go. Especially with the new faster HDD.

  • Bad performance of af:query

    I am working on Oracle Jdeveloper 11g Release 1
    I have a VO which gets executed when the first page gets loaded. suppose the VO is RuleLibraryVO
    I have a view criteria RuleLibraryVOCriteria in the VO which is used in the af:query panel in the page.
    When i do search for any attribute using the query panel the VO gets executed again everytime even if the VO is in the memory. This is hampering the performance of my query panel as it is again calling getters for all 2000+ rows and then searching. The VO Criteria used is:
    <ViewCriteria
        Name="RuleLibraryVOCriteria"
        ViewObjectName="oracle.sysman.core.gccompliance.model.library.rule.view.RuleLibraryVO"
        Conjunction="AND"
        Mode="3">
        <Properties>
          <CustomProperties>
            <Property
              Name="displayOperators"
              Value="InAdvancedMode"/>
            <Property
              Name="autoExecute"
              Value="true"/>
            <Property
              Name="allowConjunctionOverride"
              Value="true"/>
            <Property
              Name="showInList"
              Value="false"/>
            <Property
              Name="mode"
              Value="Basic"/>
            <Property
              Name="displayName"
              ResId="DEFAULT_SEARCH"/>
          </CustomProperties>
        </Properties>
        <ViewCriteriaRow
          Name="vcrow3"
          UpperColumns="1">
          <ViewCriteriaItem
            Name="RuleDnameTransient"
            ViewAttribute="RuleDnameTransient"
            Operator="CONTAINS"
            Conjunction="AND"
            Required="Optional">
            <CompOper
              Name="LessThan"
              ToDo="-1"
              Oper="&lt;"
              MinCardinality="0"
              MaxCardinality="0"/>
            <CompOper
              Name="LessThanOrEqualTo"
              ToDo="-1"
              Oper="&lt;="
              MinCardinality="0"
              MaxCardinality="0"/>
            <CompOper
              Name="GreaterThan"
              ToDo="-1"
              Oper=">"
              MinCardinality="0"
              MaxCardinality="0"/>
            <CompOper
              Name="GreaterThanOrEqualTo"
              ToDo="-1"
              Oper=">="
              MinCardinality="0"
              MaxCardinality="0"/>
          </ViewCriteriaItem>
          <ViewCriteriaItem
            Name="DescriptionTransient"
            ViewAttribute="DescriptionTransient"
            Operator="CONTAINS"
            Conjunction="AND"
            Required="Optional">
            <CompOper
              Name="LessThan"
              ToDo="-1"
              Oper="&lt;"
              MinCardinality="0"
              MaxCardinality="0"/>
            <CompOper
              Name="LessThanOrEqualTo"
              ToDo="-1"
              Oper="&lt;="
              MinCardinality="0"
              MaxCardinality="0"/>
            <CompOper
              Name="GreaterThan"
              ToDo="-1"
              Oper=">"
              MinCardinality="0"
              MaxCardinality="0"/>
            <CompOper
              Name="GreaterThanOrEqualTo"
              ToDo="-1"
              Oper=">="
              MinCardinality="0"
              MaxCardinality="0"/>
          </ViewCriteriaItem>
          <ViewCriteriaItem
            Name="IsSystem"
            ViewAttribute="IsSystem"
            Operator="="
            Conjunction="AND"
            Required="Optional"/>
          <ViewCriteriaItem
            Name="RuleType"
            ViewAttribute="RuleType"
            Operator="="
            Conjunction="AND"
            Required="Optional"/>
          <ViewCriteriaItem
            Name="TargetType"
            ViewAttribute="TargetType"
            Operator="="
            Conjunction="AND"
            Required="Optional"
            Value=":targetType"
            IsBindVarValue="true"/>
          <ViewCriteriaItem
            Name="KeywordsTransient"
            ViewAttribute="KeywordsTransient"
            Operator="CONTAINS"
            Conjunction="AND"
            Required="Optional"/>
        </ViewCriteriaRow>
      </ViewCriteria>The query panel in jspx is:
    <af:query id="qryId2"
                      headerText="#{coregccomplianceuiBundle.COMPLIANCE_SEARCH}"
                      disclosed="false"
                      value="#{bindings.RuleLibraryVOCriteriaQuery.queryDescriptor}"
                      model="#{bindings.RuleLibraryVOCriteriaQuery.queryModel}"
                      queryListener="#{bindings.RuleLibraryVOCriteriaQuery.processQuery}"
                      queryOperationListener="#{bindings.RuleLibraryVOCriteriaQuery.processQueryOperation}"
                      resultComponentId="::pc1:ruleLib" rows="3" maxColumns="2"
                      saveQueryMode="hidden"/>How can i optimize the search behavior so that it only searches using the vo data already loaded in memory.

    Hi Frank,
    Thanks for quick response,
    As suggested i made the Query Execution Mode to - In-Memory. And my view criteria now is:
    <ViewCriteria
        Name="RuleLibraryVOCriteria"
        ViewObjectName="oracle.sysman.core.gccompliance.model.library.rule.view.RuleLibraryVO"
        Conjunction="AND"
        Mode="2">
        <Properties>
          <CustomProperties>
            <Property
              Name="displayOperators"
              Value="InAdvancedMode"/>
            <Property
              Name="autoExecute"
              Value="true"/>
            <Property
              Name="allowConjunctionOverride"
              Value="true"/>
            <Property
              Name="showInList"
              Value="false"/>
            <Property
              Name="mode"
              Value="Basic"/>
            <Property
              Name="displayName"
              ResId="DEFAULT_SEARCH"/>
          </CustomProperties>
        </Properties>
        <ViewCriteriaRow
          Name="vcrow3"
          UpperColumns="1">
          <ViewCriteriaItem
            Name="RuleDnameTransient"
            ViewAttribute="RuleDnameTransient"
            Operator="CONTAINS"
            Conjunction="AND"
            Required="Optional">
            <CompOper
              Name="LessThan"
              ToDo="-1"
              Oper="&lt;"
              MinCardinality="0"
              MaxCardinality="0"/>
            <CompOper
              Name="LessThanOrEqualTo"
              ToDo="-1"
              Oper="&lt;="
              MinCardinality="0"
              MaxCardinality="0"/>
            <CompOper
              Name="GreaterThan"
              ToDo="-1"
              Oper=">"
              MinCardinality="0"
              MaxCardinality="0"/>
            <CompOper
              Name="GreaterThanOrEqualTo"
              ToDo="-1"
              Oper=">="
              MinCardinality="0"
              MaxCardinality="0"/>
          </ViewCriteriaItem>
          <ViewCriteriaItem
            Name="DescriptionTransient"
            ViewAttribute="DescriptionTransient"
            Operator="CONTAINS"
            Conjunction="AND"
            Required="Optional">
            <CompOper
              Name="LessThan"
              ToDo="-1"
              Oper="&lt;"
              MinCardinality="0"
              MaxCardinality="0"/>
            <CompOper
              Name="LessThanOrEqualTo"
              ToDo="-1"
              Oper="&lt;="
              MinCardinality="0"
              MaxCardinality="0"/>
            <CompOper
              Name="GreaterThan"
              ToDo="-1"
              Oper=">"
              MinCardinality="0"
              MaxCardinality="0"/>
            <CompOper
              Name="GreaterThanOrEqualTo"
              ToDo="-1"
              Oper=">="
              MinCardinality="0"
              MaxCardinality="0"/>
          </ViewCriteriaItem>
          <ViewCriteriaItem
            Name="IsSystem"
            ViewAttribute="IsSystem"
            Operator="="
            Conjunction="AND"
            Required="Optional"/>
          <ViewCriteriaItem
            Name="RuleType"
            ViewAttribute="RuleType"
            Operator="="
            Conjunction="AND"
            Required="Optional"/>
          <ViewCriteriaItem
            Name="TargetType"
            ViewAttribute="TargetType"
            Operator="="
            Conjunction="AND"
            Required="Optional"
            Value=":targetType"
            IsBindVarValue="true"/>
          <ViewCriteriaItem
            Name="KeywordsTransient"
            ViewAttribute="*KeywordsTransient*"
            Operator="CONTAINS"
            Conjunction="AND"
            Required="Optional"
            UpperColumns="0"/>
        </ViewCriteriaRow>
      </ViewCriteria>
      The performance hit is when i search for attribute: KeywordsTransient.
    The attribute is as :
      <ViewAttribute
        Name="KeywordsTransient"
        IsSelected="false"
        IsPersistent="false"
        PrecisionRule="true"
        Type="java.lang.String"
        ColumnType="VARCHAR2"
        AliasName="VIEW_ATTR"
        SQLType="VARCHAR">
        <RecalcCondition><![CDATA[return (adf.object.isAttributeChanged("Keywords")]]></RecalcCondition>
        <TransientExpression><![CDATA[object.Keywords]]></TransientExpression>
        <Dependencies>
          <Item
            Value="Keywords"/>
        </Dependencies>
        <Properties>
          <SchemaBasedProperties>
            <LABEL
              ResId="KEYWORDS"/>
          </SchemaBasedProperties>
        </Properties>
      </ViewAttribute>
      This attribute is dependent on Keywords attribute of the VO , The keyword getter is as below:
         * Gets the attribute value for the calculated attribute Keywords.
         * @return the Keywords
        public String getKeywords() {
            if (((String) getAttributeInternal(KEYWORDS)) == null)
                        long startTime = System.currentTimeMillis();
                        String keyword = "";
                        CSRUtil csrUtil = new CSRUtil();
                       // get the keyword name list from RuleKeywordTableVO which stores ruleGuid to KeywordName mapping. This VO is Loaded in memory as soon as bean initailizes.
                        Set<String> keywordList =
                            csrUtil.getRuleKeywordListFromKeywordMapVO(getRuleGuid());
                        if (keywordList != null)
                            Iterator rowIter = keywordList.iterator();
                            while (rowIter.hasNext())
                                keyword =
                                        keyword.concat(csrUtil.getKeywordNlsIdFromTable((String) rowIter.next())) +
                        if (keyword.endsWith(", "))
                            keyword = keyword.substring(0, keyword.length() - 2);
                        setKeywords(keyword);
                        setKeywordsTransient(keyword);
                        long endTime = System.currentTimeMillis();
                        logger.severe("Time taken for this rule in millis : "+ (endTime-startTime));
                    return (String) getAttributeInternal(KEYWORDS);
      This getter is creating keyword list using nlsid translation based on other tables data for a rule.
    Also, I have loaded the rule vo data in memory using invokeAction on my page as below:
        <invokeAction id="ExecuteRuleInvoke" Binds="ExecuteRULE"
                      Refresh="renderModel" RefreshCondition="#{sdk_core_uifwk_refresh_ctrl.executeNeeded}"/>
         <action IterBinding="RuleLibraryVO1Iterator" id="ExecuteRULE"
                InstanceName="ComplianceLibraryAMDataControl.RuleLibraryVO1"
                DataControl="ComplianceLibraryAMDataControl"
                RequiresUpdateModel="true" Action="iteratorExecute"/>
      So now when i search for a keywordTransient attribute using query panel the getter is always called for keywords even if the VO data is in memory.
    So what am i missing, is the data loaded by invokeAction not visible to the query, or i have to use some other optimization.

  • Performance of my query based on cube ? and ods?

    hi all,
    how to identify the performance of my query based on a cube nor ods. I have requirement which enables to do flat file extraction and the extraction is only once and the records are less too. I need to sort whether my query will be faster based upon cube nor on ods.
    Can anyone let me know how to measure the performance of my query based upon cube and ods and how to find out which one will be faster. bcos i need to explain them the entire process of going to load the data directly to ods and do reporting from there nor data loaded directly to cube and do reporting from cube.
    thanxs
    haritha

    Hi,
    ODS is 2 Dimensional  so avoid reporting on ODS,
    Cube is MultiDim, for analysis perpose we can go reporting on Cube only
    Records in ODS are Overwritten whereas in Cube records are Aggregated
    and can also do compression on Cube, which will increase the query performance and so data retrieval in cube is faster
    Thanks

Maybe you are looking for

  • Failure to launch...audio configuration issue!

    I just upgraded to 7.0.2 and now iTunes will not launch. When I try to open iTunes I get the following message: "iTunes cannot run because it has detected a problem with your audio configuration." This has never ocurred before and I don't know how to

  • Date-Time stamp on CQ published pages

    Hello, How do I display last-published-date-time stamp for published CQ pages. This is critical to customers, as the date-time stamp determines the relevance of articles. Thanks, Suhas Yogin

  • ı want to unlock my iphone 4

    ı want to unlock my iphone 4

  • "Siri" & calendar, task list

    I am considering changing from my iPhone 4 to a 5.  Will Siri allow with voice commands to add calendar events.  I would also like to be able to add or mark complete, items in the task list.

  • Temporarily disabling Duplicate Check

    All, We're in the middle of DEMO's for our CRM 7 project in QA.  Currently when we create a new customer via the Web UI, we get a long response time.  After doing some analysis I noticed that when the save function is executed in the Web UI, the prog