Force index query?

i don't have any index on subscriber_all table, but i am still using /*+ index(SUBSCRIBER_ALL, SUBSCRIBER_ALL_I1)*/ in a select statement
in that case will oracle create automatic index on SUBSCRIBER_ALL table (index name-SUBSCRIBER_ALL_I1) based on (Subscriber_ID) where clause?
select /*+index(SUBSCRIBER_ALL, SUBSCRIBER_ALL_I1)*/ to_char(Acc_type) from SUBSCRIBER_ALL where Subscriber_ID = :1                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                   

No!
You should create index (to determine btree, bitmap, combine etc) by yourself.
Ex: SQL> create index SUBSCRIBER_ALL_subscr_id_idx on SUBSCRIBER_ALL(Subscriber_ID);
firstly provide us your table structure and size, also how often DML action happens on this table?
If your table has unique, primary key, automatically index was created!!!

Similar Messages

  • Exchange Server Information Store has encountered an error while executing a full-text index query

    Hi Team need help
    Exchange 2013 EAC doesnt show the databases and it gives message
    "Your request couldn't be completed. Please try again in a few minutes."
    Its a 9 Node DAG and I stopped and diabled Search and Search Host controller on all of them
    in the event viewer see a lot of Event id 1012
    Log Name:      Application
    Source:        MSExchangeIS
    Date:          4/1/2013 9:23:48 AM
    Event ID:      1012
    Task Category: General
    Level:         Error
    Keywords:      Classic
    User:          N/A
    Computer:      ex1301.dagdc.com
    Description:
    Exchange Server Information Store has encountered an error while executing a full-text index query ("and(or(itemclass:string("IPM.Note*", mode="and"), itemclass:string("IPM.Schedule.Meeting*", mode="and"), itemclass:string("IPM.OCTEL.VOICE*",
    mode="and"), itemclass:string("IPM.VOICENOTES*", mode="and")), subject:string("SearchQueryStxProbe*", mode="and"), folderid:string("48A300C7FBA4DA408B80EB019A1CE94900000000000E0000"))"). Error
    information: System.TimeoutException: Failed to open a channel.
       at Microsoft.Exchange.Search.OperatorSchema.PagingImsFlowExecutor.ExecuteServiceCall(IProcessingEngineChannel& serviceProxy, Action`1 call, Int32 retryCount)
       at Microsoft.Exchange.Search.OperatorSchema.PagingImsFlowExecutor.ExecuteSearchFlow(String flowName, Dictionary`2 inputData)
       at Microsoft.Exchange.Search.OperatorSchema.PagingImsFlowExecutor.<ExecuteInternal>d__18.MoveNext()
       at Microsoft.Exchange.Search.OperatorSchema.PagingImsFlowExecutor.<ExecuteSimple>d__a.MoveNext()
       at Microsoft.Exchange.Server.Storage.FullTextIndex.FullTextIndexQuery.ExecutePagedFullTextIndexQuery(Guid databaseGuid, Guid mailboxGuid, Int32 mailboxNumber, String query, CultureInfo culture, Guid correlationId, QueryLoggingContext loggingContext,
    PagedQueryResults pagedQueryResults)
       at Microsoft.Exchange.Server.Storage.StoreCommonServices.StoreFullTextIndexHelper.ExecuteFullTextIndexQuery(Context context, MailboxState mailboxState, QueryParameters queryParameters, PagedQueryResults pagedQueryResults, ExchangeId searchFolderId,
    SearchExecutionDiagnostics diagnostics)
    Event Xml:
    <Event xmlns="http://schemas.microsoft.com/win/2004/08/events/event">
      <System>
        <Provider Name="MSExchangeIS" />
        <EventID Qualifiers="49156">1012</EventID>
        <Level>2</Level>
        <Task>1</Task>
        <Keywords>0x80000000000000</Keywords>
        <TimeCreated SystemTime="2013-04-01T16:23:48.000000000Z" />
        <EventRecordID>192599</EventRecordID>
        <Channel>Application</Channel>
        <Computer>ex1301.dagdc.com</Computer>
        <Security />
      </System>
      <EventData>
        <Data>and(or(itemclass:string("IPM.Note*", mode="and"), itemclass:string("IPM.Schedule.Meeting*", mode="and"), itemclass:string("IPM.OCTEL.VOICE*", mode="and"), itemclass:string("IPM.VOICENOTES*",
    mode="and")), subject:string("SearchQueryStxProbe*", mode="and"), folderid:string("48A300C7FBA4DA408B80EB019A1CE94900000000000E0000"))</Data>
        <Data>System.TimeoutException: Failed to open a channel.
       at Microsoft.Exchange.Search.OperatorSchema.PagingImsFlowExecutor.ExecuteServiceCall(IProcessingEngineChannel&amp; serviceProxy, Action`1 call, Int32 retryCount)
       at Microsoft.Exchange.Search.OperatorSchema.PagingImsFlowExecutor.ExecuteSearchFlow(String flowName, Dictionary`2 inputData)
       at Microsoft.Exchange.Search.OperatorSchema.PagingImsFlowExecutor.&lt;ExecuteInternal&gt;d__18.MoveNext()
       at Microsoft.Exchange.Search.OperatorSchema.PagingImsFlowExecutor.&lt;ExecuteSimple&gt;d__a.MoveNext()
       at Microsoft.Exchange.Server.Storage.FullTextIndex.FullTextIndexQuery.ExecutePagedFullTextIndexQuery(Guid databaseGuid, Guid mailboxGuid, Int32 mailboxNumber, String query, CultureInfo culture, Guid correlationId, QueryLoggingContext loggingContext,
    PagedQueryResults pagedQueryResults)
       at Microsoft.Exchange.Server.Storage.StoreCommonServices.StoreFullTextIndexHelper.ExecuteFullTextIndexQuery(Context context, MailboxState mailboxState, QueryParameters queryParameters, PagedQueryResults pagedQueryResults, ExchangeId searchFolderId,
    SearchExecutionDiagnostics diagnostics)</Data>
        <Binary>5B444941475F4354585D000084000000FF09000000000000000268000000808A00100000000080CA00100000000080B200100000000080D200100000000030FF001000000000309F00100000000030DF001000000000B09D001000000000B0DD001000000000B0ED001000000000B08D001000000000B095001000000000B0A5001000000000</Binary>
      </EventData>
    </Event>

    Hi,
    Please reenable and start the search engine service and try again.
    The simillar case for your reference:
    http://social.technet.microsoft.com/Forums/en-US/exchangesvrgeneral/thread/4f43ef50-b71f-4ab3-8ced-70f1c36c5509
    Hope it is hlepful.
    Fiona Liao
    TechNet Community Support

  • Java.sql.SQLException: Invalid column index Query: while using ROWNUM

    hi ,
    i am getting the invalid column index query error while executing following query .i m able to run it properly without using rownum but when i append rownum i m getting error.i m using apache queryrunner for execution of query.
    java.sql.SQLException: Invalid column index Query: select * from (
    SELECT
    TO_CHAR(A.REQ_FOR_RATING_ID) RFQID,
    TO_CHAR(F.COV_PLAN_ID) COVPLANID,
    B.FIRM_NAME FIRMNAME,
    B.PRIMARY_ZIP_CD ZIP,
    A.PRODUCR_CD PRODUCERCD,
    A.PRODUCR_NAME PRODUCER,
    H.COV_NAME COVDESP,
    C.SALE_OFFC_CD SALEOFFCCD,
    C.USR_OFFC_NAME USROFFC,
    C.USR_NAME USR,
    C.USR_REP_CD USRREPCD,
    to_char((SELECT TO_CHAR(COUNT(EMP_NBR)) COUNT FROM ROSTR_DATA WHERE ROSTR_ID = F.ROSTR_ID)) AS count,
    TO_CHAR(B.SIC_CD) SICCD,
    F.INDSTRY_TYPE_IND INDTYPEIND,
    TO_CHAR(F.MANL_SIC_FCTR_NBR) MANSICFACTOR,
    TO_CHAR(F.UW_OVERD_SIC_FCTR_NBR) UWOVERDSICFACTOR,
    TO_CHAR(G.AREA_FCTR_NBR) STRAREAFACTOR,
    G.COV_ID COVID,
    F.PLAN_APPRVL_STATUS_CD PLANAPPRVLCD,
    F.PLAN_PROGRS_STATUS_CD PLANPROGRESSSTATUSCD ,
    F.PLAN_SALE_ASSMNT_CD PLANSALEASSMTCD,
    F.CREATD_DT CREATEDDT,
    NVL(to_char(F.PLAN_RELSED_DT),' ') PLANRELSEDDT,
    TO_CHAR(F.PLAN_RELSED_BY_ID) PLANRELSEDBYID,
    TO_CHAR(F.PROPOSD_EFF_DT) PROPOSDEFFECTIVEDT,
    TO_CHAR(A.GRACE_PERIOD_NBR) GRACEPERIOD,
    A.RNWL_15_MONTH_IND FIFTEENMONTHRNWLIND ,
    I.CO_DESC_TXT COMPANYNAME ,
    NVL(to_char(F.PLAN_APPRVL_DT),' ') approvedDt,
                   (Select U.USR_NAME from USR_DETL U WHERE U.USR_ID = F.PLAN_RELSED_BY_ID) as planRelsedByName,
    (Select U.USR_NAME from USR_DETL U WHERE U.USR_ID = F.PLAN_APPRVR_ID) as approvedByName,
    '' createdByName,
    ROWNUM rnum
    FROM
    REQ_FOR_RATING A,
    FIRM B,
    USR_DETL C,          
    SALE_OFFICE D,
    QUOTE_SCENRIO E,
    QUOTE_COV G,
    COV_PLAN F,
    COV_LKUP H,      
    CO_LKUP I
    WHERE
    A.FIRM_ID = B.FIRM_ID AND
    A.SALE_REP_ID = C.USR_ID AND
    C.SALE_OFFC_CD = D.SALE_OFFC_CD AND
    A.REQ_FOR_RATING_ID=E.REQ_FOR_RATING_ID AND
    E.QUOTE_SCENRIO_ID=G.QUOTE_SCENRIO_ID AND
    G.QUOTE_COV_ID=F.QUOTE_COV_ID AND      
    G.COV_ID=H.COV_ID AND
    I.CO_CD = F.CO_CD AND
    TO_CHAR(F.CREATD_DT,'YYYYMMDD') > TO_CHAR(TO_DATE('07/16/2007', 'MM/DD/YYYY HH24:MI:SS'),'YYYYMMDD') AND
    TO_CHAR(F.CREATD_DT,'YYYYMMDD') < TO_CHAR(TO_DATE('10/16/2007', 'MM/DD/YYYY HH24:MI:SS'),'YYYYMMDD')
    and rownum <=?) where rnum >=? Parameters: [07/15/2007 00:00:00, 10/15/2007 23:59:59, 1117, 1]

    That's a SQL fault, not a JDBC/Java fault.

  • INTERMEDIA TEXT INDEX를 사용하는 QUERY의 TUNING

    제품 : ORACLE SERVER
    작성날짜 : 2002-04-12
    INTERMEDIA TEXT INDEX를 사용하는 QUERY의 TUNING
    ===============================================
    Purpose
    Intermedia text를 사용하는 query의 속도를 향상시킬 수 있는 방안을
    알아보자.
    Explanation
    1. Make analyze all the table in the query
    text index를 이용하는 Query 안의 모든 Table을 analyze 해 주십시요.
    예를 들어 다음의 command를 이용할 수 있습니다.
    ANALYZE TABLE <table_name> COMPUTE STATISTICS;
    or
    ANALYZE TABLE <table_name> ESTIMATE STATISTICS 1000 ROWS;
    or
    ANALYZE TABLE <table_name> ESTIMATE STATISTICS 50 PERCENT;
    2. Using FIRST_ROWS hint
    더 좋은 response time 을 위해서 first_rows hint 를 사용해 보십시요.
    database에 기본적으로 설정된 optimizer mode는 choose mode입니다.
    이것은 전체 처리시간(throughput)을 가장 빠르게 하기 위한(all_rows mode)
    plan을 따르기 때문에 user의 입장에서는 first_rows 보다는 늦다고 느낄 수
    있습니다.
    Query에 다음과 같이 hint를 주고 performance를 확인해 보십시요.
    select /*+ FIRST_ROWS */ pk, col from ctx_tab
    where contains(txt_col, 'test', 1) > 0;
    단, first_rows hint를 이용하는 경우 자동으로 score 순서대로
    ordering 되지 않습니다. 왜냐하면 단어에 부합하는 문서를 찾는대로
    즉시 결과로 나타내 주기 때문입니다.
    3. Make sure text index is not fragmented
    insert, delete 가 많이 되는 table의 경우 index fragment를 제거해 주어야
    합니다. Index fragmentation 은 다음과 같이 확인할 수 있습니다.
    select count(*) from dr$<indexname>$i; -> A
    select count(*) from (select distinct(token_text) from dr$<indexname>$i); -> B
    위의 결과가 A/B 의 값이 3:1 보다 크면 optimize_index 를 실행해 주시는
    것이 좋습니다. 다음과 같은 command로 index optimization을 할 수 있습니다.
    alter index <index_name> rebuild online
    parameters('optimize full unlimited');
    index rebuild중에 online option을 주면 rebuild하는 중에도 계속 index를
    사용할 수 있게 됩니다. 하지만, 가능하면 사용자가 없을 때 rebuild하는 것이
    좋습니다.
    4. Check execution plan and sql trace.
    기본적인 여러 가지 작업들에도 속도가 별로 향상되지 않는다면, 직접
    sql trace를 떠서 Execution plan등을 확인해 보는 것이 필요합니다.
    예를 들어 SQL*PLUS에서 다음과 같이 sql trace를 뜹니다.
    alter session set timed_statistics=true;
    alter session set sql_trace=true;
    select ..... -> execute the query
    실행 후,
    exit
    user_dump_dest 에 지정된 directory에 trace 가 떨어지면 다음과 같은
    command로 tkprof 를 떠서 내용을 확인합니다.
    $ tkprof <tracefilename> <outputfilename> explain=username/password
    Referenc Documents
    Bulletin#10134 : SQL trace와 tkprof 사용 방법

  • Non - indexed query's (9I)

    Hello everbody,
    How do I retrieve all the NON indexed query's used in the database? I want to find out which ones I need to optimize.
    thanks John

    Hello
    That's not as easy as it sounds. Creating indexes for every query that does not use one could very easily cause more problems than it fixes. Full table scans are not evil, they are often the fastest way to access a relatively large portion of data in a table.
    If you have issues with performance in your database you need to know exactly what they are, and you can get a very good idea by using statspack.
    http://download-west.oracle.com/docs/cd/B10501_01/server.920/a96533/statspac.htm#21793
    Once you have the right metrics, you can make an informed decision as to what the correct course of action is to solve any performance problems you are having. Without these metrics, you are groping in the dark.
    HTH
    David

  • Oracle Hint on Table MKPF and MSEG : force index MSEG~M to be utilize

    Hi Experts, I'm quite new to ABAP performance tuning, I try to put details as much as I can in my question below, just to have a quick overview of my problem below, I want to use/force in my SQL below to force the utilization of index MSEG~M.
    added an Oracle Hint forcing index MSEG~M
      SELECT MATNR BWART MENGE
      FROM   MKPF
      INNER JOIN MSEG
         ON MKPFMANDT EQ MSEGMANDT
        AND MKPFMBLNR EQ MSEGMBLNR
        AND MKPFMJAHR EQ MSEGMJAHR
       INTO CORRESPONDING FIELDS OF TABLE T_MSEG2
      WHERE MKPF~BUDAT IN S_GSTRP    "(index bud should be used)
       AND  MSEG~MJAHR IN R_DOCYEAR
       AND  BWART IN ('931', '932',
                      '901', '902',
                      '701', '702',
                      '703', '704',
                      '707', '708',
                      '711', '712',
                      '713', '714',
                      '715', '716',
                      '717', '718',
                      '551', '552',
                      '553', '554',
                      '555', '556') "ZZCHK: Constants Not Applicable
             AND  MATNR IN R_MATNR3
             AND  MATNR IN R_COMPNTS
             AND  WERKS EQ P_WERKS
      %_hints oracle u2018INDEX(u201CMKPFu201D u201CMSEG~Mu201D)u2019.
    Note: I'm assuming that you'll take not some comments on further enhancement:
    - " INTO CORRESPONDING FIELDS "
    - use of field symbols
    - I didn't modify it yet since my focus if for MSEG~M
    - cannot make material number as mandatory field
    Objective: Force to use index MSEG~M
    Problem:
    After adding the Oracle Hint, I did the analysis in ST05 and it seems like index M is still not being forcefully
    utilize instead MSEG~0 is being used.
    I replaced the Oracle Hint with:
      %_hints oracle u2018INDEX(u201CT_01u201D u201CMSEG~Mu201D)u2019.
    In ST05, I can get see that index MSEG~M is now being utilize BUT worst thing happened after applying this, the program timed out.
    I already take a look on the following Notes: 129385, 130480, 772497, 162034, 818321 but nothing seems to be helpful in my problem.
    Questions:
    1.  In syntax %_hints oracle u2018INDEX(u201CT_01u201D u201CMSEG~Mu201D)u2019. T_01 stands for MKPF right which is the first table, do you what's the reason for the program time out after adding this Oracle Hint?  Is this the proper syntax?
    2.  How can I force in my code to use index MSEG~M without any program timeout?
    For the whole source code of my question above, please see the link:
    http://rapidshare.com/files/211740852/ZDXX0028.txt.html

    Hi Thomas, thanks with the prompt reply (even if it's Saturday )
    Yes, MKPF~BUD is being used.
    The budat selection is narrowed to 28 days though users can input any date range, a warning message will just be displayed if budat selection exceeded.
    Yes, optimizer usually chooses the right index; I'm not in as the same experience as you are though, but I find it interesting that after I added the Oracle hints (several combination) the performance of the program was optimize up to 40% to 50%.
    I uploaded a detailed SQL trace and the ABAP change done in my program, if you'll notice in the summary of the changes, after adding some hints, the duration of the program was improved..
    (SQL Trace Summary of my program) this worth taking a look
    http://rapidshare.com/files/211870091/ZD28_SQL_Trace.zip.html
    I made a custom index in MSEG, but unfortunately I doubt that it will be approve by our performance capacity team.  But I somehow have a hunch that this will further optimize the program.
    MSEG~Z03
    MANDT     Client
    WERKS     Plant
    BWART     Movement Type (Inventory Management)
    LGORT     Storage Location
    What do you think Thomas and SAP experts?
    **Sorry for pasting the whole ST05 result
         SELECT STATEMENT          ( Estimated Costs = 131.250 , Estimated #Rows = 450 )
                        6          FILTER
                        Filter Predicates
                        5          NESTED LOOPS
                        ( Estim. Costs = 131.249 , Estim. #Rows = 450 )
              Estim. CPU-Costs = 1.885.249.948 Estim. IO-Costs = 129.700
                        2          TABLE ACCESS BY INDEX ROWID          MKPF
                        ( Estim. Costs = 14.442 , Estim. #Rows = 288.570 )
                   Estim. CPU-Costs = 206.401.140 Estim. IO-Costs = 14.272
                   1          INDEX RANGE SCAN          MKPF~BUD
                        ( Estim. Costs = 655 , Estim. #Rows = 519.426 )
              Search Columns: 2
              Estim. CPU-Costs = 30.640.783 Estim. IO-Costs = 630
              Access Predicates          Filter Predicates
                        4          TABLE ACCESS BY INDEX ROWID          MSEG
                        Estim. CPU-Costs = 5.818 Estim. IO-Costs = 0
              Filter Predicates
              3          INDEX RANGE SCAN          MSEG~0
                   Search Columns: 3     
         Estim. CPU-Costs = 1.564 Estim. IO-Costs = 0
         Access Predicates          Filter Predicates

  • Force index not getting picked up while running the SQL Query

    Hi All,
    We are facing an issue with one SQL Query. We have created a custom Index and we are using that index in our query by using the following syntax:
    /*+INDEX(ol XXEXH_ORDER_LINES_N2)*/
    Where
    ol – Table Alias Name
    XXEXH_ORDER_LINES_N2 – Index Name
    But still the index is not getting picked up in the Explain Plan.
    If any one of you have faced a similar issue then please let us know how you had resolved it.
    Appreciate your help.
    DB version:10.2.0.4
    Apps version: 11.5.10.2.0
    Thanks.

    The query and plan are given as:
    SELECT
    /*+INDEX(ol XXEXH_ORDER_LINES_N2)*/
    ol.header_id,
    ol.line_id,
    ol.line_type_id,
    ol.flow_status_code,
    ol.last_update_date,
    ol.inventory_item_id,
    ol.ship_from_org_id,
    oh.order_number,
    ttv.NAME,
    msib.segment1,
    msib.item_type,
    fl.segment1 || '-' || fl.segment2 || '-' || fl.segment3 || '-' || fl.segment4 current_loc,
    ship_to.country
    || '-'
    || NVL (ship_to.state, ship_to.province)
    || '-'
    || DECODE (ship_to.county,
    NULL, ship_to.city,
    ship_to.county
    || DECODE (ship_to.country,
    NULL, NULL,
    '-' || ship_to.city
    ) new_loc,
    mmt.transaction_type_id,
    mtt.transaction_type_name,
    DECODE (mil.segment1,
    UPPER ('Field%'), 'PLEASE VALIDATE FIELD LOCATION',
    hou.country
    || '-'
    || DECODE (mil.segment1,
    UPPER ('Field%'), NULL,
    hou.region_2
    || '-'
    || DECODE (mil.segment1,
    UPPER ('Field%'), NULL,
    hou.region_1
    || '-'
    || DECODE (mil.segment1,
    UPPER ('Field%'), NULL,
    hou.town_or_city
    ) rma_loc,
    ship_su.attribute1 oper_loc,
    msib.organization_id --SC#5878
    ,fa.asset_number --SC#5878
    ,fdh.code_combination_id --SC#5878
    ,fa.asset_id parent_asset_id
    FROM fnd_flex_values_vl ffvv,
    fnd_flex_value_sets ffvs,
    mtl_item_locations mil,
    --hr_organization_units_v hou,
    hr_organization_units o,
    -- hr_lookups l,
    -- hr_lookups l2,
    hr_locations hou,
    hr_locations_all_tl lot,
    mtl_transaction_types mtt,
    mtl_material_transactions mmt,
    hz_locations ship_to,
    hz_cust_acct_sites ship_cas,
    hz_cust_site_uses ship_su,
    hz_party_sites ship_ps,
    fa_distribution_history fdh,
    fa_locations fl,
    fa_additions fa,
    mtl_system_items_b msib,
    oe_transaction_types_tl ttv,
    oe_order_headers oh,
    oe_order_lines ol
    WHERE ol.org_id = TO_NUMBER (fnd_profile.VALUE ('ORG_ID')) --SC#5878
    AND ol.flow_status_code = 'CLOSED'
    AND TRUNC(ol.last_update_date) BETWEEN '01-SEP-2010' AND '31-OCT-2010'
    AND ol.header_id = oh.header_id
    AND ol.line_type_id = ttv.transaction_type_id
    AND ol.inventory_item_id = msib.inventory_item_id
    AND ol.ship_from_org_id = msib.organization_id
    AND msib.item_type = 'REN'
    AND SUBSTR(fa.asset_number,1,DECODE(INSTR(fa.asset_number,'-'),0,LENGTH(fa.asset_number),INSTR(fa.asset_number,'-')-1)) = msib.segment1 -- SC#11824 / added for fetching all assets with any suffix/ on 20-JUL-2011 by MPRAKAS
    AND fdh.asset_id(+) = fa.asset_id
    AND fdh.location_id = fl.location_id(+)
    AND fdh.date_ineffective IS NULL
    AND ol.ship_to_org_id = ship_su.site_use_id
    AND ship_su.cust_acct_site_id = ship_cas.cust_acct_site_id
    AND ship_cas.party_site_id = ship_ps.party_site_id
    AND ship_ps.location_id = ship_to.location_id
    AND mmt.inventory_item_id = ol.inventory_item_id --added new condition
    AND mmt.organization_id = ol.ship_from_org_id --added new condition
    AND mmt.trx_source_line_id = ol.line_id
    AND mmt.transaction_quantity > 0
    AND mmt.transaction_type_id = mtt.transaction_type_id(+)
    AND mtt.transaction_type_name(+) = 'RMA Receipt'
    AND o.organization_id(+) = mmt.organization_id
    AND mil.inventory_location_id(+) = mmt.locator_id
    AND ffvs.flex_value_set_name = 'HCCA_AFF_LOCATION' --added new condition
    AND ffvv.flex_value_set_id = ffvs.flex_value_set_id(+)
    AND ffvv.flex_value(+) = ship_su.attribute1
    AND ttv.LANGUAGE = 'US'
    AND (ol.ordered_item_id IS NULL OR ol.ordered_item_id > 0)
    AND NVL (ol.ship_to_org_id, 1) > 0
    AND NVL (hou.location_id, 1) > 0
    AND o.location_id = hou.location_id(+)
    AND NVL (hou.business_group_id, NVL (hr_general.get_business_group_id, -99)) = NVL (hr_general.get_business_group_id, -99)
    AND hou.location_id = lot.location_id
    AND lot.LANGUAGE = USERENV ('LANG')
    AND (fa.asset_id = fa.parent_asset_id OR fa.parent_asset_id IS NULL)
    Plan
    SELECT STATEMENT ALL_ROWSCost: 4,065 Bytes: 958 Cardinality: 2                                                                                                                                   
         125 CONCATENATION                                                                                                                              
              62 NESTED LOOPS OUTER Cost: 3,140 Bytes: 479 Cardinality: 1                                                                                                                         
                   59 FILTER                                                                                                                    
                        58 NESTED LOOPS OUTER Cost: 3,139 Bytes: 441 Cardinality: 1                                                                                                               
                             55 NESTED LOOPS Cost: 3,131 Bytes: 420 Cardinality: 1                                                                                                          
                                  52 NESTED LOOPS OUTER Cost: 3,130 Bytes: 390 Cardinality: 1                                                                                                     
                                       49 NESTED LOOPS OUTER Cost: 3,128 Bytes: 377 Cardinality: 1                                                                                                
                                            46 NESTED LOOPS Cost: 3,127 Bytes: 351 Cardinality: 1                                                                                           
                                                 44 HASH JOIN Cost: 3,126 Bytes: 342 Cardinality: 1                                                                                      
                                                      42 NESTED LOOPS Cost: 2,443 Bytes: 324 Cardinality: 1                                                                                 
                                                           40 NESTED LOOPS Cost: 2,443 Bytes: 315 Cardinality: 1                                                                            
                                                                38 NESTED LOOPS Cost: 2,443 Bytes: 306 Cardinality: 1                                                                       
                                                                     36 NESTED LOOPS Cost: 2,443 Bytes: 298 Cardinality: 1                                                                  
                                                                          33 NESTED LOOPS Cost: 2,442 Bytes: 268 Cardinality: 1                                                             
                                                                               31 NESTED LOOPS Cost: 2,441 Bytes: 259 Cardinality: 1                                                        
                                                                                    28 NESTED LOOPS Cost: 2,438 Bytes: 238 Cardinality: 1                                                   
                                                                                         25 NESTED LOOPS Cost: 2,437 Bytes: 207 Cardinality: 1                                              
                                                                                              22 NESTED LOOPS Cost: 2,436 Bytes: 194 Cardinality: 1                                         
                                                                                                   19 NESTED LOOPS Cost: 2,435 Bytes: 184 Cardinality: 1                                    
                                                                                                        16 NESTED LOOPS Cost: 2,433 Bytes: 168 Cardinality: 1                               
                                                                                                             13 NESTED LOOPS Cost: 2,432 Bytes: 154 Cardinality: 1                          
                                                                                                                  10 NESTED LOOPS Cost: 2,430 Bytes: 126 Cardinality: 1                     
                                                                                                                       7 NESTED LOOPS Cost: 2,427 Bytes: 102 Cardinality: 1                
                                                                                                                            4 NESTED LOOPS Cost: 779 Bytes: 34,028 Cardinality: 724           
                                                                                                                                 2 TABLE ACCESS BY INDEX ROWID TABLE APPLSYS.FND_FLEX_VALUE_SETS Cost: 2 Bytes: 28 Cardinality: 1      
                                                                                                                                      1 INDEX UNIQUE SCAN INDEX (UNIQUE) APPLSYS.FND_FLEX_VALUE_SETS_U2 Cost: 1 Cardinality: 1
                                                                                                                                 3 TABLE ACCESS FULL TABLE AR.HZ_CUST_SITE_USES_ALL Cost: 777 Bytes: 13,756 Cardinality: 724      
                                                                                                                            6 TABLE ACCESS BY INDEX ROWID TABLE ONT.OE_ORDER_LINES_ALL Cost: 3 Bytes: 55 Cardinality: 1           
                                                                                                                                 5 INDEX RANGE SCAN INDEX ONT.OE_ORDER_LINES_N2 Cost: 2 Cardinality: 1      
                                                                                                                       9 TABLE ACCESS BY INDEX ROWID TABLE INV.MTL_MATERIAL_TRANSACTIONS Cost: 3 Bytes: 24 Cardinality: 1                
                                                                                                                            8 INDEX RANGE SCAN INDEX INV.MTL_MATERIAL_TRANSACTIONS_N1 Cost: 2 Cardinality: 1           
                                                                                                                  12 TABLE ACCESS BY INDEX ROWID TABLE INV.MTL_SYSTEM_ITEMS_B Cost: 2 Bytes: 28 Cardinality: 1                     
                                                                                                                       11 INDEX UNIQUE SCAN INDEX (UNIQUE) INV.MTL_SYSTEM_ITEMS_B_U1 Cost: 1 Cardinality: 1                
                                                                                                             15 TABLE ACCESS BY INDEX ROWID TABLE AR.HZ_CUST_ACCT_SITES_ALL Cost: 1 Bytes: 14 Cardinality: 1                          
                                                                                                                  14 INDEX UNIQUE SCAN INDEX (UNIQUE) AR.HZ_CUST_ACCT_SITES_U1 Cost: 0 Cardinality: 1                     
                                                                                                        18 TABLE ACCESS BY INDEX ROWID TABLE ONT.OE_ORDER_HEADERS_ALL Cost: 2 Bytes: 16 Cardinality: 1                               
                                                                                                             17 INDEX UNIQUE SCAN INDEX (UNIQUE) ONT.OE_ORDER_HEADERS_U1 Cost: 1 Cardinality: 1                          
                                                                                                   21 TABLE ACCESS BY INDEX ROWID TABLE AR.HZ_PARTY_SITES Cost: 1 Bytes: 10 Cardinality: 1                                    
                                                                                                        20 INDEX UNIQUE SCAN INDEX (UNIQUE) AR.HZ_PARTY_SITES_U1 Cost: 0 Cardinality: 1                               
                                                                                              24 TABLE ACCESS BY INDEX ROWID TABLE HR.HR_ALL_ORGANIZATION_UNITS Cost: 1 Bytes: 13 Cardinality: 1                                         
                                                                                                   23 INDEX UNIQUE SCAN INDEX (UNIQUE) HR.HR_ORGANIZATION_UNITS_PK Cost: 0 Cardinality: 1                                    
                                                                                         27 TABLE ACCESS BY INDEX ROWID TABLE ONT.OE_TRANSACTION_TYPES_TL Cost: 1 Bytes: 31 Cardinality: 1                                              
                                                                                              26 INDEX UNIQUE SCAN INDEX (UNIQUE) ONT.OE_TRANSACTION_TYPES_TL_U1 Cost: 0 Cardinality: 1                                         
                                                                                    30 TABLE ACCESS BY INDEX ROWID TABLE APPLSYS.FND_FLEX_VALUES Cost: 3 Bytes: 21 Cardinality: 1                                                   
                                                                                         29 INDEX RANGE SCAN INDEX APPLSYS.FND_FLEX_VALUES_N1 Cost: 2 Cardinality: 1                                              
                                                                               32 INDEX UNIQUE SCAN INDEX (UNIQUE) APPLSYS.FND_FLEX_VALUES_TL_U1 Cost: 1 Bytes: 9 Cardinality: 1                                                        
                                                                          35 TABLE ACCESS BY INDEX ROWID TABLE HR.HR_LOCATIONS_ALL Cost: 1 Bytes: 30 Cardinality: 1                                                             
                                                                               34 INDEX UNIQUE SCAN INDEX (UNIQUE) HR.HR_LOCATIONS_PK Cost: 0 Cardinality: 1                                                        
                                                                     37 INDEX UNIQUE SCAN INDEX (UNIQUE) HR.HR_ALL_ORGANIZATION_UNTS_TL_PK Cost: 0 Bytes: 8 Cardinality: 1                                                                  
                                                                39 INDEX UNIQUE SCAN INDEX (UNIQUE) HR.HR_LOCATIONS_ALL_TL_PK Cost: 0 Bytes: 9 Cardinality: 1                                                                       
                                                           41 INDEX UNIQUE SCAN INDEX (UNIQUE) HR.HR_LOCATIONS_ALL_TL_PK Cost: 0 Bytes: 9 Cardinality: 1                                                                            
                                                      43 TABLE ACCESS FULL TABLE FA.FA_ADDITIONS_B Cost: 683 Bytes: 670,734 Cardinality: 37,263                                                                                 
                                                 45 INDEX UNIQUE SCAN INDEX (UNIQUE) FA.FA_ADDITIONS_TL_U1 Cost: 1 Bytes: 9 Cardinality: 1                                                                                      
                                            48 TABLE ACCESS BY INDEX ROWID TABLE INV.MTL_TRANSACTION_TYPES Cost: 1 Bytes: 26 Cardinality: 1                                                                                           
                                                 47 INDEX UNIQUE SCAN INDEX (UNIQUE) INV.MTL_TRANSACTION_TYPES_U1 Cost: 0 Cardinality: 1                                                                                      
                                       51 TABLE ACCESS BY INDEX ROWID TABLE INV.MTL_ITEM_LOCATIONS Cost: 2 Bytes: 13 Cardinality: 1                                                                                                
                                            50 INDEX RANGE SCAN INDEX (UNIQUE) INV.MTL_ITEM_LOCATIONS_U1 Cost: 1 Cardinality: 1                                                                                           
                                  54 TABLE ACCESS BY INDEX ROWID TABLE AR.HZ_LOCATIONS Cost: 1 Bytes: 30 Cardinality: 1                                                                                                     
                                       53 INDEX UNIQUE SCAN INDEX (UNIQUE) AR.HZ_LOCATIONS_U1 Cost: 0 Cardinality: 1                                                                                                
                             57 TABLE ACCESS BY INDEX ROWID TABLE FA.FA_DISTRIBUTION_HISTORY Cost: 8 Bytes: 126 Cardinality: 6                                                                                                          
                                  56 INDEX RANGE SCAN INDEX FA.FA_DISTRIBUTION_HISTORY_N2 Cost: 2 Cardinality: 6                                                                                                     
                   61 TABLE ACCESS BY INDEX ROWID TABLE FA.FA_LOCATIONS Cost: 1 Bytes: 38 Cardinality: 1                                                                                                                    
                        60 INDEX UNIQUE SCAN INDEX (UNIQUE) FA.FA_LOCATIONS_U1 Cost: 0 Cardinality: 1                                                                                                               
              124 NESTED LOOPS OUTER Cost: 925 Bytes: 479 Cardinality: 1                                                                                                                         
                   121 FILTER                                                                                                                    
                        120 NESTED LOOPS OUTER Cost: 924 Bytes: 441 Cardinality: 1                                                                                                               
                             117 NESTED LOOPS Cost: 916 Bytes: 420 Cardinality: 1                                                                                                          
                                  115 HASH JOIN Cost: 915 Bytes: 411 Cardinality: 1                                                                                                     
                                       113 NESTED LOOPS OUTER Cost: 231 Bytes: 393 Cardinality: 1                                                                                                
                                            110 NESTED LOOPS OUTER Cost: 229 Bytes: 380 Cardinality: 1                                                                                           
                                                 107 NESTED LOOPS Cost: 228 Bytes: 354 Cardinality: 1                                                                                      
                                                      104 NESTED LOOPS Cost: 225 Bytes: 330 Cardinality: 1                                                                                 
                                                           102 NESTED LOOPS Cost: 224 Bytes: 321 Cardinality: 1                                                                            
                                                                99 NESTED LOOPS Cost: 222 Bytes: 293 Cardinality: 1                                                                       
                                                                     96 NESTED LOOPS Cost: 221 Bytes: 263 Cardinality: 1                                                                  
                                                                          93 NESTED LOOPS Cost: 220 Bytes: 253 Cardinality: 1                                                             
                                                                               90 NESTED LOOPS Cost: 218 Bytes: 237 Cardinality: 1                                                        
                                                                                    87 NESTED LOOPS Cost: 217 Bytes: 223 Cardinality: 1                                                   
                                                                                         84 NESTED LOOPS Cost: 216 Bytes: 192 Cardinality: 1                                              
                                                                                              81 NESTED LOOPS Cost: 210 Bytes: 137 Cardinality: 1                                         
                                                                                                   78 NESTED LOOPS Cost: 28 Bytes: 118 Cardinality: 1                                    
                                                                                                        75 NESTED LOOPS Cost: 22 Bytes: 97 Cardinality: 1                               
                                                                                                             73 NESTED LOOPS Cost: 22 Bytes: 88 Cardinality: 1                          
                                                                                                                  71 NESTED LOOPS Cost: 22 Bytes: 79 Cardinality: 1                     
                                                                                                                       69 NESTED LOOPS Cost: 22 Bytes: 71 Cardinality: 1                
                                                                                                                            66 NESTED LOOPS Cost: 19 Bytes: 58 Cardinality: 1           
                                                                                                                                 64 TABLE ACCESS BY INDEX ROWID TABLE APPLSYS.FND_FLEX_VALUE_SETS Cost: 2 Bytes: 28 Cardinality: 1      
                                                                                                                                      63 INDEX UNIQUE SCAN INDEX (UNIQUE) APPLSYS.FND_FLEX_VALUE_SETS_U2 Cost: 1 Cardinality: 1
                                                                                                                                 65 TABLE ACCESS FULL TABLE HR.HR_LOCATIONS_ALL Cost: 17 Bytes: 30 Cardinality: 1      
                                                                                                                            68 TABLE ACCESS BY INDEX ROWID TABLE HR.HR_ALL_ORGANIZATION_UNITS Cost: 3 Bytes: 13 Cardinality: 1           
                                                                                                                                 67 INDEX RANGE SCAN INDEX HR.HR_ORGANIZATION_UNITS_FK3 Cost: 1 Cardinality: 5      
                                                                                                                       70 INDEX UNIQUE SCAN INDEX (UNIQUE) HR.HR_ALL_ORGANIZATION_UNTS_TL_PK Cost: 0 Bytes: 8 Cardinality: 1                
                                                                                                                  72 INDEX UNIQUE SCAN INDEX (UNIQUE) HR.HR_LOCATIONS_ALL_TL_PK Cost: 0 Bytes: 9 Cardinality: 1                     
                                                                                                             74 INDEX UNIQUE SCAN INDEX (UNIQUE) HR.HR_LOCATIONS_ALL_TL_PK Cost: 0 Bytes: 9 Cardinality: 1                          
                                                                                                        77 TABLE ACCESS BY INDEX ROWID TABLE APPLSYS.FND_FLEX_VALUES Cost: 6 Bytes: 2,667 Cardinality: 127                               
                                                                                                             76 INDEX RANGE SCAN INDEX APPLSYS.FND_FLEX_VALUES_N2 Cost: 2 Cardinality: 127                          
                                                                                                   80 TABLE ACCESS BY INDEX ROWID TABLE AR.HZ_CUST_SITE_USES_ALL Cost: 182 Bytes: 19 Cardinality: 1                                    
                                                                                                        79 INDEX RANGE SCAN INDEX APPS.HCCA_HZ_CUST_SITE_USES_ALL_N1 Cost: 1 Cardinality: 489                               
                                                                                              83 TABLE ACCESS BY INDEX ROWID TABLE ONT.OE_ORDER_LINES_ALL Cost: 6 Bytes: 55 Cardinality: 1                                         
                                                                                                   82 INDEX RANGE SCAN INDEX ONT.OE_ORDER_LINES_N2 Cost: 2 Cardinality: 4                                    
                                                                                         86 TABLE ACCESS BY INDEX ROWID TABLE ONT.OE_TRANSACTION_TYPES_TL Cost: 1 Bytes: 31 Cardinality: 1                                              
                                                                                              85 INDEX UNIQUE SCAN INDEX (UNIQUE) ONT.OE_TRANSACTION_TYPES_TL_U1 Cost: 0 Cardinality: 1                                         
                                                                                    89 TABLE ACCESS BY INDEX ROWID TABLE AR.HZ_CUST_ACCT_SITES_ALL Cost: 1 Bytes: 14 Cardinality: 1                                                   
                                                                                         88 INDEX UNIQUE SCAN INDEX (UNIQUE) AR.HZ_CUST_ACCT_SITES_U1 Cost: 0 Cardinality: 1                                              
                                                                               92 TABLE ACCESS BY INDEX ROWID TABLE ONT.OE_ORDER_HEADERS_ALL Cost: 2 Bytes: 16 Cardinality: 1                                                        
                                                                                    91 INDEX UNIQUE SCAN INDEX (UNIQUE) ONT.OE_ORDER_HEADERS_U1 Cost: 1 Cardinality: 1                                                   
                                                                          95 TABLE ACCESS BY INDEX ROWID TABLE AR.HZ_PARTY_SITES Cost: 1 Bytes: 10 Cardinality: 1                                                             
                                                                               94 INDEX UNIQUE SCAN INDEX (UNIQUE) AR.HZ_PARTY_SITES_U1 Cost: 0 Cardinality: 1                                                        
                                                                     98 TABLE ACCESS BY INDEX ROWID TABLE AR.HZ_LOCATIONS Cost: 1 Bytes: 30 Cardinality: 1                                                                  
                                                                          97 INDEX UNIQUE SCAN INDEX (UNIQUE) AR.HZ_LOCATIONS_U1 Cost: 0 Cardinality: 1                                                             
                                                                101 TABLE ACCESS BY INDEX ROWID TABLE INV.MTL_SYSTEM_ITEMS_B Cost: 2 Bytes: 28 Cardinality: 1                                                                       
                                                                     100 INDEX UNIQUE SCAN INDEX (UNIQUE) INV.MTL_SYSTEM_ITEMS_B_U1 Cost: 1 Cardinality: 1                                                                  
                                                           103 INDEX UNIQUE SCAN INDEX (UNIQUE) APPLSYS.FND_FLEX_VALUES_TL_U1 Cost: 1 Bytes: 9 Cardinality: 1                                                                            
                                                      106 TABLE ACCESS BY INDEX ROWID TABLE INV.MTL_MATERIAL_TRANSACTIONS Cost: 3 Bytes: 24 Cardinality: 1                                                                                 
                                                           105 INDEX RANGE SCAN INDEX INV.MTL_MATERIAL_TRANSACTIONS_N1 Cost: 2 Cardinality: 1                                                                            
                                                 109 TABLE ACCESS BY INDEX ROWID TABLE INV.MTL_TRANSACTION_TYPES Cost: 1 Bytes: 26 Cardinality: 1                                                                                      
                                                      108 INDEX UNIQUE SCAN INDEX (UNIQUE) INV.MTL_TRANSACTION_TYPES_U1 Cost: 0 Cardinality: 1                                                                                 
                                            112 TABLE ACCESS BY INDEX ROWID TABLE INV.MTL_ITEM_LOCATIONS Cost: 2 Bytes: 13 Cardinality: 1                                                                                           
                                                 111 INDEX RANGE SCAN INDEX (UNIQUE) INV.MTL_ITEM_LOCATIONS_U1 Cost: 1 Cardinality: 1                                                                                      
                                       114 TABLE ACCESS FULL TABLE FA.FA_ADDITIONS_B Cost: 683 Bytes: 670,734 Cardinality: 37,263                                                                                                
                                  116 INDEX UNIQUE SCAN INDEX (UNIQUE) FA.FA_ADDITIONS_TL_U1 Cost: 1 Bytes: 9 Cardinality: 1                                                                                                     
                             119 TABLE ACCESS BY INDEX ROWID TABLE FA.FA_DISTRIBUTION_HISTORY Cost: 8 Bytes: 126 Cardinality: 6                                                                                                          
                                  118 INDEX RANGE SCAN INDEX FA.FA_DISTRIBUTION_HISTORY_N2 Cost: 2 Cardinality: 6                                                                                                     
                   123 TABLE ACCESS BY INDEX ROWID TABLE FA.FA_LOCATIONS Cost: 1 Bytes: 38 Cardinality: 1                                                                                                                    
                        122 INDEX UNIQUE SCAN INDEX (UNIQUE) FA.FA_LOCATIONS_U1 Cost: 0 Cardinality: 1

  • Materialized views - schedule, indexes, query rewrite, etc.

    I'm trying to get the hang of materialized views and need some help . . .
    running Oracle 10gR2
    I created a materialized view as follows:
    CREATE MATERIALIZED VIEW "MY_SCHEMA"."USERS"
    AS
    SELECT * FROM "USERS"@PRODUCTION -- to copy the USERS table from my production database to this database
    Worked fine. So far so good. Then, I altered it to schedule the refresh:
    ALTER MATERIALIZED VIEW "MY_SCHEMA"."USERS" REFRESH FORCE START WITH SYSDATE NEXT TRUNC(SYSDATE + 1) + 4/24
    -- to schedule a refresh immediately (SYSDATE) and every morning thereafter at 4:00 am (I think)
    then, I wanted to enable query rewrite, so I issued the following command:
    ALTER MATERIALIZED VIEW "MY_SCHEMA"."USERS" ENABLE QUERY REWRITE;
    and I got the
    ALTER MATERIALIZED VIEW succeeded.
    message for both of those commands (I'm doing this in SQL Developer).
    Then, I edit the materialized view in SQL Developer, click on the 'SQL' tab, and get the following:
    CREATE MATERIALIZED VIEW "MY_SCHEMA"."USERS"
    ORGANIZATION HEAP PCTFREE 10 PCTUSED 40 INITRANS 1 MAXTRANS 255 NOCOMPRESS LOGGING
    STORAGE(INITIAL 65536 NEXT 1048576 MINEXTENTS 1 MAXEXTENTS 2147483645
    PCTINCREASE 0 FREELISTS 1 FREELIST GROUPS 1 BUFFER_POOL DEFAULT)
    TABLESPACE "TBLSPC_PHIGH"
    BUILD IMMEDIATE
    USING INDEX PCTFREE 10 INITRANS 2 MAXTRANS 255
    STORAGE(INITIAL 65536 NEXT 1048576 MINEXTENTS 1 MAXEXTENTS 2147483645
    PCTINCREASE 0 FREELISTS 1 FREELIST GROUPS 1 BUFFER_POOL DEFAULT)
    TABLESPACE "TBLSPC_PHIGH"
    REFRESH FORCE ON DEMAND START WITH sysdate+0 NEXT TRUNC(SYSDATE + 1) + 4/24
    WITH PRIMARY KEY USING DEFAULT LOCAL ROLLBACK SEGMENT
    DISABLE QUERY REWRITE
    AS SELECT "USERS"."User" "User","USERS"."Logon" "Logon","USERS"."Name" "Name","USERS"."Password"
    "Password","USERS"."Level" "Level","USERS"."Producer" "Producer","USERS"."Deleted" "Deleted","USERS"."ClaimDoctor"
    "ClaimDoctor","USERS"."UserType" "UserType","USERS"."Locked" "Locked","USERS"."Scheduler"
    "Scheduler","USERS"."RestrictDays" "RestrictDays","USERS"."First" "First","USERS"."DisableAutoChart"
    "DisableAutoChart","USERS"."MaxChartOut" "MaxChartOut","USERS"."MaxHoursOut" "MaxHoursOut","USERS"."EffDate"
    "EffDate","USERS"."ExpDate" "ExpDate","USERS"."SwipeLogon" "SwipeLogon","USERS"."SwipePassword"
    "SwipePassword","USERS"."PwdLastChanged" "PwdLastChanged","USERS"."Audit" "Audit","USERS"."IsInstructor"
    "IsInstructor" FROM "USERS"@PRODUCTION.REGRESS.RDBMS.DEV.US.ORACLE.COM "USERS";
    The problems I've encountered so far:
    1) I created this two days ago and changed the value of one column in one row in the 'source' USERS table
    (USERS@PRODUCTION) as a test case. So far, that change has not propagated over to my materialized view even though
    it has had two chances to do so (yesterday morning at 4:00 am and this morning at 4:00 am).
    2) I enabled QUERY REWRITE. Why does it still show DISABLE?
    3) The primary key of the table came over (as far as I can tell) because it shows in SQL Developer. However, the
    indexed columns are no longer indexed. Do I need to recreate those indexes manually and will they persist?
    4) As you have guessed, I have just taken the plunge into materialized views, and have not been able to find
    anything on the Web along the lines of 'Materialized Views for Dummies'. So, any and all advice/suggestions/help
    will be welcome.
    Thanks,
    Carl

    The Refresh would be executed by a job submitted in the background.
    Query USER_JOBS (or DBA_JOBS) to see if a job has been submitted and if it has been running (you'd be able to see LAST_DATE, LAST_SEC and NEXT_DATE and NEXT_SEC). \
    If the Refresh job has been failing the FAILURES count would be incremented. If there are 16 consecutive failures, the job is marked BROKEN. (if a job fails, Oracle retries it automatically and keeps retrying till it is BROKEN). If the job has been failing you would get messages in the database instance alert log file and trace files.
    If the Refresh job has not been running check the parameter value for JOB_QUEUE_PROCESSES -- a value of 0 would not run in jobs in the USER_JOBS/DBA_JOBS view. Ask the DBA to increase set this parameter to at least 1.
    Hemant K Chitale
    http://hemantoracledba.blogspot.com

  • Forcing a query to use a differnet plan

    I have one database where a sql plan appears to be correct through tests. In another database the join order is flipped. Data is relatively close. Hinting the query would require a code change. What is the easiest to force the plan from the other database?
    if this new plan does not work, what is the easiest way to revert back.

    Hi,
    Another option is SQL Plan Management
    SQL Plan Management (SPM) prevents performance regressions resulting from sudden changes to the execution plan of a SQL statement by providing components for capturing, selecting and evolving SQL plan information. Changes to the execution plan may result from database upgrades, system and data changes, application upgrade or bug fixes. When SPM is enabled, the system maintains a plan history that contains all plans generated by the optimizer and stores them in a component called plan baseline. Among the plan history in the plan baseline, plans that are verified not to cause performance regression are marked as acceptable. The plan baseline is used by the optimizer to decide on the best plan to use when compiling a SQL statement. Repository stored in a data dictionary of plan baselines and statement log maintained by the optimizer is called SQL Management Base (SMB).
    http://www.oracle.com/technology/pub/articles/oracle-database-11g-top-features/11g-sqlplanmanagement.html
    Regards,

  • Oracle Text Index Query

    Hello
    Had a query on oracle Text Index.
    1. I have created a table with column ID as sequence & column description as Varchar2(500)
    2. Inserted 3 records
    3. I created the Oracle Text index on column "description" as INDEXTYPE IS CTXSYS.CONTEXT
    4. Run a select using "contains" , get the records as required.
    5. I insert another new record & commit;
    6. Run the same old query using contains but for the new records I get 0 records
    7. Drop the Index and Recreate the index using same old index on column "description" as INDEXTYPE IS CTXSYS.CONTEXT
    8. Run the same old query using contains but for the new records and now I get the records as required.
    Does that mean every time I insert new records I have to rebuild the Oracle Text Index ?
    Your Help will be much appreciated
    Regards
    Harshad

    You need to use some method of updating your index. You can drop and recreate or you can rebuild or you can use ctx_ddl.sync_index or you can include sync(on commit) in your parameters when you create the index or various other methods of periodic synchronization and optimization.

  • Domain index query takes 12 hours to execute

    Hi Friends,
    My query which uses domain index takes 12 hours to execute. Can you please help me tuning this query?
    select /*+ NO_UNNEST ORDERED index_ffs(Term idx_recanon_term_ysm1) parallel_index(Term, idx_recanon_term_ysm1, 8) */ term.rowid
    from cmpgn.recanon_search_terms,cmpgn.recanon_term_ysm Term
    where cmpgn.recanon_search_terms.search_type=3 and
    contains(Term.RAW_TERM_TEXT,cmpgn.recanon_search_terms.search_text) > 0 and
    Term.pod_id=11
    Thanks in advance.
    Regards
    Bala

    First your driving table is recanon_search_terms to get the required search terms, then use them to query Oracle Text. What you are trying to do is to get a subset of table term first and than run every individual row of table term against the search terms. This approach will take a very long time.
    Not sure what you want to do, but it looks something I have been working on previously. As far I can see there is a table with controlled terms which are matched against other raw terms in a text document using Oracle Text. The issue is that you do a join in the contains clause without knowing the number of query expressions formed. It can be that 7 thousand individual queries run at once, than use indexes of the other predicates, do some sorting, etc. which would explain the long time needed. It will probably run out of memory causing all sorts of issues.
    As a quick fix try first following statement without hints.
    Tell us how many rows you get, the distinct counts for pod_id and search_type and how long it takes.
    CREATE TABLE test_table AS
    select term.pod_id pod_id, cmpgn.recanon_search_terms.search_type search_type, term_primary_key, ....
    from cmpgn.recanon_search_terms,cmpgn.recanon_term_ysm Term
    where contains(Term.RAW_TERM_TEXT,cmpgn.recanon_search_terms.search_text) > 0
    Create index test_idx on test_table(pod_id, search_type) and use test_table instead to get the results, just by providing pod_id and search_type without the join in the contains clause.
    SELECT ..
    FROM test_table
    WHERE pod_id = X
    AND search_type = Y
    Maybe this approach is sufficient for your purpose. For sure, it will give you instant results. In that case a materialized view instead of the table could work for maintenance reasons; I had some issues with materialized views for above scenario.
    However check very carefully the results. I would have some doubts that all rows in search_text form a valid query expression for Oracle Text. If search_text has just single tokens or phrases wrapping curly brackets around will probably resolve the issue.
    Think about to form one query expression through a function call instead of a table join inside the contains clause. Sometimes to run a set of individual queries are faster than one big query.
    select term.rowid --, form_query_exrpession(3) query_exrpession
    from cmpgn.recanon_term_ysm Term
    where contains(Term.RAW_TERM_TEXT, form_query_exrpession(3)) > 0
    The above function will form one valid Oracle Text query expression by using the table recanon_search_terms inside the function. This approach normally helps, at least in debugging and fine-tuning. Avoid using bind variables first in order to identify highly skewed distribution of search_type.
    The other performance issue is the additional predicate of pod_id = X, here the suggestion from radord works very well. If you want to get your hands dirty have a look at user_datastore in the Oracle Text documentation, this will give you all the freedom you want.

  • Force Index and Group By Exception

    Hello,
    I'm using Oracle 8 and PL/SQL Developer 7 and when i want to perform this query :
    select
    /*+ INDEX(gprs_cdr IK_GPRS_CDR_CREAT_DTE) */ trunc(creation_date, 'D')
    from
    gprs_cdr
    where
    creation_date between to_date('26/01/2006', 'DD/MM/YYYY') and to_date('30/06/2006', 'DD/MM/YYYY')
    group by trunc(creation_date, 'D')
    I have the Exception : ORA-00979 : not a GROUP BY expression
    Do you have a solution for this please ?
    Thanks
    Message was edited by:
    user511447

    Hi,
    Index hint will not be a problem for the error. for me its working fine.
    SQL>SELECT /*+ INDEX(EMP,xyz) */ TRUNC(hiredate,'D')
      2  FROM emp
      3  GROUP BY TRUNC(hiredate,'D');
    TRUNC(HIR
    14-DEC-80
    15-FEB-81
    22-FEB-81
    29-MAR-81
    26-APR-81
    07-JUN-81
    06-SEP-81
    27-SEP-81
    15-NOV-81
    29-NOV-81
    19-APR-87
    TRUNC(HIR
    17-MAY-87
    30-JAN-05
    29-JAN-06
    15 rows selected.
    SQL>SELECT * FROM v$version;
    BANNER
    Oracle9i Enterprise Edition Release 9.2.0.6.0 - 64bit Production
    PL/SQL Release 9.2.0.6.0 - Production
    CORE    9.2.0.6.0       Production
    TNS for Solaris: Version 9.2.0.6.0 - Production
    NLSRTL Version 9.2.0.6.0 - Production
    5 rows selected.Check your query or paste the entire query one again.
    Regards

  • After creating index query is taking more

    Hello all,
    I am trying the following..and not getting why the query is taking more time after creating the index
    SQL> SELECT distinct version_no
    2 FROM iefloa_data_anal
    3 WHERE datetime_inserted > to_date('17-02-2004','dd-mm-yyyy');
    VERSION_NO
    999
    Elapsed: 00:00:22.16
    Execution Plan
    0 SELECT STATEMENT Optimizer=CHOOSE (Cost=15 Card=1 Bytes=22)
    1 0 SORT (UNIQUE) (Cost=15 Card=1 Bytes=22)
    2 1 TABLE ACCESS (FULL) OF 'IEFLOA_DATA_ANAL' (Cost=2 Card=1
    Bytes=22)
    /*******************Here I am creating the Index************/
    SQL> create index t_ind_date on iefloa_data_anal(datetime_inserted);
    Index created.
    Elapsed: 00:07:427.38
    SQL> SELECT distinct version_no
    2 FROM iefloa_data_anal
    3 WHERE datetime_inserted > to_date('17-02-2004','dd-mm-yyyy');
    VERSION_NO
    999
    Elapsed: 00:00:40.10
    Execution Plan
    0 SELECT STATEMENT Optimizer=CHOOSE (Cost=14 Card=1 Bytes=22)
    1 0 SORT (UNIQUE) (Cost=14 Card=1 Bytes=22)
    2 1 TABLE ACCESS (BY INDEX ROWID) OF 'IEFLOA_DATA_ANAL' (Cos
    t=1 Card=1 Bytes=22)
    3 2 INDEX (RANGE SCAN) OF 'T_IND_DATE' (NON-UNIQUE) (Cost=
    1 Card=1)
    can anybody explains whats the reason...
    the table is having around 1.5 crore records
    regards

    The execution plan clearly shows that Oracle thinks only one row is going to match that condition on the index ("Card=1"). Is that a true statement? If not, you should make sure your stats are accurate. If the data is highly skewed, you may need to put a histogram on that column.
    Another possibility is that the index is on much slower disks than the table. Although, I can't imagine any range scan on an index that has only one matching value taking that long. How about doing a full trace (SET AUTOTRACE ON) and posting the logical and physical i/o information?

  • Force index not getting picked up while running the SQL Quer

    Hi All,
    We are facing an issue with one SQL Query. We have created a custom Index and we are using that index in our query by using the following syntax:
    /*+INDEX(ol XXEXH_ORDER_LINES_N2)*/
    Where
    ol – Table Alias Name
    XXEXH_ORDER_LINES_N2 – Index Name
    But still the index is not getting picked up in the Explain Plan.
    If any one of you have faced a similar issue then please let us know how you had resolved it.
    Appreciate your help.
    DB version:10.2.0.4
    Apps version: 11.5.10.2.0
    Regards,
    Manpreet
    Edited by: 876912 on Aug 3, 2011 2:49 AM

    Hi;
    For your issue i suggest close your thread here as changing thread status to answered and move it to Forum Home » Database or Forum Home » Database » SQL and PL/SQL which you can get more quick response
    Regard
    Helios

  • Forcing Index use with UPPER or LOWER in the WHERE clause.

    Does anyone know how to force Oracle to use an index/Key when using UPPER or LOWER in the WHERE clause?

    You have to create a function index. Check your documentation on it.

Maybe you are looking for

  • Master Page Gallery contents renders in old Sharepoint 2007 style after upgrade

    I have a site collection that is still rendering the Master Page Gallery items in the Sharepoint 2007 style instead of the Sharepoint 2013 style, and I can't pinpoint where this is coming from.  I'm sure it's from a resource that was customized some

  • Replaced hard drive, now can't boot from install disc to restore backup

    Yesterday, my hard drive died (disk warrior informed me, that HD had irrecoverable errors, and my iMac would shut down unless it was booted from the Disk Warriorr disc). Today, I have a new internal HD professionally installed. And when I brought it

  • How to restore MobileSync Backup from Hard Drive to new iTunes?

    I am in serious need of help! My laptop which had Windows 7 running was crashing down after 4 years. When I brought it to the service center they took my internal drive out to save all the data before too late. The problem is I never had the chance t

  • My computer has a max memory of 8 what can i do to increase this

    Is there anything that I can do to increas the max memory on my computer? I show the max on the s5-1204 is 8G. CanI get a new processor? what is the possible solution if any This question was solved. View Solution.

  • Rental movie has no sound

    I have rented several movies from the itunes store on my apple tv gen1 and it always has sound issues you will be watching and then the sound will cut out this has happened everytime and has done it about 4-8 times per movie. It has now cut out compl