Do not use the index

Hi all
DB version is 10.2.0.4
Have a query as below
SQL> explain plan for SELECT GS.LOT_NO , GS.LOT_ID , ILI.ITEM_ID ITEM_ID,
  2               GR.RESULT_VALUE_CHAR QUALITATIVE_VALUE , ITM.ITEM_NO FROM
             GMD_QC_TESTS GQT, GMD_RESULTS GR, GMD_SAMPLES GS , IC_LOCT_INV
  3    4               ILI, IC_ITEM_MST_B ITM WHERE GQT.TEST_CODE = 'ISON' AND
  5               GR.TEST_ID = GQT.TEST_ID AND GR.RESULT_VALUE_CHAR LIKE :B3
  6               ||'-'||:B2 ||'%' AND GR.SAMPLE_ID = GS.SAMPLE_ID AND ITM.ITEM_ID
  7               = GS.ITEM_ID AND ILI.WHSE_CODE = UPPER(:B1 ) AND ILI.ITEM_ID =
  8               GS.ITEM_ID AND ILI.LOT_ID = GS.LOT_ID AND ILI.LOCT_ONHAND > 0
  9               AND ILI.LOT_ID > 0 AND ILI.LOT_STATUS = 'GOOD' AND NOT EXISTS (
 10               SELECT 1 FROM IC_TRAN_PND ITP WHERE ITP.LOT_ID = GS.LOT_ID AND
 11               ITP.ITEM_ID = GS.ITEM_ID AND ITP.DELETE_MARK = 0 AND
 12               ITP.DOC_TYPE = 'OMSO' AND ITP.WHSE_CODE = UPPER(:B1 ) AND LOT_ID
 13               <> 0 ) ORDER BY 4
 14  /

Explained.

SQL> select * from table(dbms_xplan.display);

PLAN_TABLE_OUTPUT
------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
Plan hash value: 2952119331

---------------------------------------------------------------------------------------------------------
| Id  | Operation                          | Name               | Rows  | Bytes | Cost (%CPU)| Time     |
---------------------------------------------------------------------------------------------------------
|   0 | SELECT STATEMENT                   |                    |    55 |  7095 | 13614   (1)| 00:02:51 |
|   1 |  SORT ORDER BY                     |                    |    55 |  7095 | 13614   (1)| 00:02:51 |
|   2 |   NESTED LOOPS ANTI                |                    |    55 |  7095 | 13613   (1)| 00:02:51 |
|   3 |    NESTED LOOPS                    |                    |    55 |  5940 | 13393   (1)| 00:02:49 |
|*  4 |     HASH JOIN                      |                    |    55 |  4730 | 13283   (1)| 00:02:47 |
|*  5 |      TABLE ACCESS BY INDEX ROWID   | IC_LOCT_INV        | 17498 |   410K|  4056   (1)| 00:00:51 |
|*  6 |       INDEX RANGE SCAN             | IC_LOCT_INV_I1     | 52570 |       |   137   (0)| 00:00:02 |
|*  7 |      HASH JOIN                     |                    | 14944 |   904K|  9226   (1)| 00:01:56 |
|   8 |       NESTED LOOPS                 |                    | 14944 |   452K|   212   (0)| 00:00:03 |
|   9 |        NESTED LOOPS                |                    |     1 |    19 |     2   (0)| 00:00:01 |
|  10 |         TABLE ACCESS BY INDEX ROWID| GMD_QC_TESTS_B     |     1 |    12 |     2   (0)| 00:00:01 |
|* 11 |          INDEX UNIQUE SCAN         | GMD_QC_TESTS_B_U1  |     1 |       |     1   (0)| 00:00:01 |
|* 12 |         INDEX UNIQUE SCAN          | GMD_QC_TESTS_TL_PK |   508 |  3556 |     0   (0)| 00:00:01 |
|  13 |        TABLE ACCESS BY INDEX ROWID | GMD_RESULTS        | 14944 |   175K|   210   (0)| 00:00:03 |
|* 14 |         INDEX RANGE SCAN           | GMD_RESULTS_N3     |   228 |       |     3   (0)| 00:00:01 |
|* 15 |       TABLE ACCESS FULL            | GMD_SAMPLES        |  1642K|    48M|  9007   (1)| 00:01:54 |
|  16 |     TABLE ACCESS BY INDEX ROWID    | IC_ITEM_MST_B      |     1 |    22 |     2   (0)| 00:00:01 |
|* 17 |      INDEX UNIQUE SCAN             | IC_ITEM_MST_B_PK   |     1 |       |     1   (0)| 00:00:01 |
|* 18 |    TABLE ACCESS BY INDEX ROWID     | IC_TRAN_PND        |     1 |    21 |     4   (0)| 00:00:01 |
|* 19 |     INDEX RANGE SCAN               | IC_TRAN_PNDI1      |     1 |       |     3   (0)| 00:00:01 |
---------------------------------------------------------------------------------------------------------
In the table full scan that happens on GMD_SAMPLES. Lot_id is selected in this table. On this column, there are indexes in the table. But this is not used?
SQL> select dbms_metadata.get_ddl('INDEX','GMD_SAMPLES_N3','GMD') from dual;

  CREATE INDEX "GMD"."GMD_SAMPLES_N3" ON "GMD"."GMD_SAMPLES" ("LOT_ID")
  PCTFREE 10 INITRANS 2 MAXTRANS 255 COMPUTE STATISTICS
  STORAGE(INITIAL 131072 NEXT 131072 MINEXTENTS 1 MAXEXTENTS 2147483645
  PCTINCREASE 0 FREELISTS 1 FREELIST GROUPS 1 BUFFER_POOL DEFAULT)
  TABLESPACE "APPS_TS_TX_DATA"
How can I lower the cost of the query. ?. This query runs for more than two hours in the comic book...

Thank you
Baskar.l

The counties to answer your question, now?
LOT_ID returns 99 + % of the lines so Full Table Scan is 100% justified & more efficient execution plan

Tags: Database

Similar Questions

  • Query is not using the index. (Included execution plan. TKPROF output not available)

    Hi all

    Version of DB: Oracle Database 10g Enterprise Edition Release 10.2.0.1.0 - Prod

    Here is the description of the problem:
    (The statistics are up to date for all tables).

    The query below does not use the index on ACCOUNTS_LIVE (ID). (Unique index)
    SQL> explain plan for
      2  select txn.account_number,to_number(txn.amount_lcy) txn_amt,to_date(booking_date,'YYYYMMDD') TXN_DATE,
      3        sal.latest_sal,sal.sal_date,customer_name,employer_name,
      4       decode(COMMUNICATION_TYPE_1,'MOBILE',COMMUNICATION_NO_1,
      5            decode(COMMUNICATION_TYPE_2,'MOBILE',COMMUNICATION_NO_2)) mob,
      6       txn.CURRENCY, CHEQUE_NUMBER,trans_dets,trans_reference,target,teller_id,acc.category,acc.inactive_marker,
      7            acc.posting_restrict,cus.sector,cus.industry
      8  from coreadmin.Gtxn_dtl_v1 txn,
      9                     (select account_number,round(to_number(nvl(amount_lcy,0)),2) latest_sal,TXN_DATE sal_date,rr
     10                      from
     11                        (select to_date(booking_date,'YYYYMMDD') TXN_DATE,batch_id,account_number,amount_lcy
     12                             ,row_number() over (partition by account_number
     13                                                     order by to_date(booking_date,'YYYYMMDD') desc NULLS LAST,
     14                                                     batch_id desc nulls last) rr,
     15                                     CURRENCY, CHEQUE_NUMBER,trans_dets,trans_reference
     16                             from coreadmin.Gtxn_dtl_v1
     17                             where transaction_code in ('204','938')
     18                  and to_number(amount_lcy) > 0)
     19                             where rr = 1
     20                       ) sal,accounts_live acc,customers_live cus
     21  where to_date(booking_date,'YYYYMMDD') between to_date('030109','DDMMRR') and to_date('020209','DDMMRR')
     22  and txn.account_number = sal.account_number
     23  and txn.account_number = acc.id
     24  and txn.CUSTOMER_ID = cus.CUSTOMER_number
     25  and target in ('30','31','32')
     26  /
    
    Explained.
    
    SQL> select * from table(dbms_xplan.display);
    
    PLAN_TABLE_OUTPUT                                                                                                                                     
    ------------------------------------------------------------------------------------------------------------------------------------------------------
    Plan hash value: 920245766                                                                                                                            
                                                                                                                                                          
    -----------------------------------------------------------------------------------------------------------                                           
    | Id  | Operation                        | Name           | Rows  | Bytes |TempSpc| Cost (%CPU)| Time     |                                           
    -----------------------------------------------------------------------------------------------------------                                           
    |   0 | SELECT STATEMENT                 |                |   363M|   121G|       |   223K  (4)| 00:44:47 |                                           
    |*  1 |  HASH JOIN                       |                |   363M|   121G|  6232K|   223K  (4)| 00:44:47 |                                           
    |*  2 |   VIEW                           |                | 34453 |  5820K|       |   147K  (1)| 00:29:36 |                                           
    |*  3 |    WINDOW SORT PUSHED RANK       |                | 34453 |  1480K|  4072K|   147K  (1)| 00:29:36 |                                           
    |*  4 |     FILTER                       |                |       |       |       |            |          |                                           
    |   5 |      INLIST ITERATOR             |                |       |       |       |            |          |                                           
    |*  6 |       TABLE ACCESS BY INDEX ROWID| GTXN_DTL_V1    | 34453 |  1480K|       |   147K  (1)| 00:29:31 |                                           
    |*  7 |        INDEX RANGE SCAN          | IDX_TXN5       |   707K|       |       |  1815   (2)| 00:00:22 |                                           
    |*  8 |   HASH JOIN                      |                |   598K|   106M|    20M| 63724   (1)| 00:12:45 |                                           
    |*  9 |    MAT_VIEW ACCESS FULL          | CUSTOMERS_LIVE |   227K|    17M|       |  2239   (4)| 00:00:27 |                                           
    |* 10 |    HASH JOIN                     |                |   598K|    59M|  9504K| 57157   (1)| 00:11:26 |                                           
    |  11 |     MAT_VIEW ACCESS FULL         | ACCOUNTS_LIVE  |   249K|  6577K|       |  1832   (2)| 00:00:22 |                                           
    |* 12 |     TABLE ACCESS BY INDEX ROWID  | GTXN_DTL_V1    |   597K|    43M|       | 52319   (1)| 00:10:28 |                                           
    |* 13 |      INDEX RANGE SCAN            | IDX_TXN11_V1   |  1204K|       |       |  3931   (2)| 00:00:48 |                                           
    -----------------------------------------------------------------------------------------------------------                                           
                                                                                                                                                          
    Predicate Information (identified by operation id):                                                                                                   
    ---------------------------------------------------                                                                                                   
                                                                                                                                                          
       1 - access("TXN"."ACCOUNT_NUMBER"="ACCOUNT_NUMBER")                                                                                                
       2 - filter("RR"=1)                                                                                                                                 
       3 - filter(ROW_NUMBER() OVER ( PARTITION BY "ACCOUNT_NUMBER" ORDER BY                                                                              
                  TO_DATE("BOOKING_DATE",'YYYYMMDD') DESC  NULLS LAST,INTERNAL_FUNCTION("BATCH_ID") DESC  NULLS                                           
                  LAST)<=1)                                                                                                                               
       4 - filter(TO_DATE('030109','DDMMRR')<=TO_DATE('020209','DDMMRR'))                                                                                 
       6 - filter(TO_NUMBER("AMOUNT_LCY")>0)                                                                                                              
       7 - access("TRANSACTION_CODE"='204' OR "TRANSACTION_CODE"='938')                                                                                   
       8 - access("TXN"."CUSTOMER_ID"="CUS"."CUSTOMER_NUMBER")                                                                                            
       9 - filter("TARGET"='30' OR "TARGET"='31' OR "TARGET"='32')                                                                                        
      10 - access("TXN"."ACCOUNT_NUMBER"="ACC"."ID")                                                                                                      
      12 - filter("TXN"."CUSTOMER_ID" IS NOT NULL)                                                                                                        
      13 - access(TO_DATE("BOOKING_DATE",'YYYYMMDD')>=TO_DATE('030109','DDMMRR') AND                                                                      
                  TO_DATE("BOOKING_DATE",'YYYYMMDD')<=TO_DATE('020209','DDMMRR'))                                                                         
    
    38 rows selected.
    
    SQL> select index_name
      2  from dba_ind_columns
      3  where table_name = 'ACCOUNTS_LIVE'
      4  and column_name = 'ID';
    
    INDEX_NAME                                                                                                                                            
    ------------------------------                                                                                                                        
    IDX_ACCLIVE                                                                                                                                           
    Line 23 of the query uses accounts_live.id.

    11 the order ID explain plan shows that the index does not use.

    Please suggest.

    Thanks in advance,
    Jac

    What happens when you force the index by using hint and use the hash between txn and acc join?

    See you soon
    Sarma.

  • does not use the INDEX

    I have problem with a query as follows. It does not index when I keep a function on the left side of the comparison in which the condition.

    But when I remove the function is using the index.

    With BLC AS 
    Name                                      Null?    Type
     ----------------------------------------- -------- ----------------------------
     ID                                        NOT NULL NUMBER
     MASTER_VALUE               NOT NULL NUMBER(8)
     DESC_TEXT_ID                                    NUMBER
     GVM                                                     VARCHAR2(50)
     MASTER_LOOKUP_ID    NOT NULL  NUMBER
     WORK_SECTION_ID                          NUMBER
     AUDIT_TRAIL_NO                              NUMBER
     
    
    SQL> SELECT COUNT(*) FROM BLC;
      COUNT(*)
    ----------
          7769
    
    SQL> SELECT COUNT(DISTINCT(GVM)) "distinct" FROM BLC;
      distinct
    ----------
          1350
    
    SQL> SELECT COUNT(*) "nulls" FROM BLC WHERE GVM IS NULL;
    
         nulls
    ----------
          6419
    
    SQL> SELECT COLUMN_NAME,INDEX_NAME FROM DBA_IND_COLUMNS WHERE TABLE_NAME='BLC';
    
    COLUMN_NAME                              INDEX_NAME
    ---------------------------------------- ------------------------------
    MASTER_LOOKUP_ID      LKPCDE_MSTLKP_FK_I
    WORK_SECTION_ID        LKPCDE_WRKSEC_FK_I
    GVM                                   LKPCDE_UK
    MASTER_VALUE              LKPCDE_MASTERID_VALUE_UK
    MASTER_LOOKUP_ID     LKPCDE_MASTERID_VALUE_UK
    ID                                       LKPCDE_PK
    
    SQL> EXPLAIN PLAN FOR SELECT ID FROM BLC WHERE UPPER ( GVM) = 'MAIN_ORG';
    Explained.
    SQL> SELECT * FROM TABLE(DBMS_XPLAN.DISPLAY);
    PLAN_TABLE_OUTPUT
    --------------------------------------------------------------------------------
    Plan hash value: 3196655606
    --------------------------------------------------------------------------------------
    | Id  | Operation         | Name             | Rows  | Bytes | Cost (%CPU)| Time|
    --------------------------------------------------------------------------------------
    
    PLAN_TABLE_OUTPUT
    --------------------------------------------------------------------------------
    |   0 | SELECT STATEMENT  |                  |    78 |   624 |    18   (0)| 00:00:01 |
    |*  1 |  TABLE ACCESS FULL| BLC |    78 |   624 |    18   (0)| 00:00:01 |
    --------------------------------------------------------------------------------------
    
    Predicate Information (identified by operation id):
    PLAN_TABLE_OUTPUT
    -----------------------------------------------------------------------------------------------------------------------------------
       1 - filter(UPPER("GVM")='MAIN_ORG')
    13 rows selected.
    
    
    SQL> EXPLAIN PLAN FOR SELECT ID FROM BLC WHERE GVM
      = 'MAIN_ORG';
    Explained.
    SQL> SELECT * FROM TABLE(DBMS_XPLAN.DISPLAY);
    PLAN_TABLE_OUTPUT
    --------------------------------------------------------------------------------
    Plan hash value: 1620245961
    --------------------------------------------------------------------------------
    ----------------
    | Id  | Operation                   | Name             | Rows  | Bytes | Cost (%
    CPU)| Time     |
    --------------------------------------------------------------------------------
    ----------------
    
    PLAN_TABLE_OUTPUT
    --------------------------------------------------------------------------------
    |   0 | SELECT STATEMENT            |                  |     1 |     8 |     2
     (0)| 00:00:01 |
    |   1 |  TABLE ACCESS BY INDEX ROWID| BLC |     1 |     8 |     2
     (0)| 00:00:01 |
    |*  2 |   INDEX UNIQUE SCAN         | LKPCDE_UK        |     1 |       |     1
     (0)| 00:00:01 |
    --------------------------------------------------------------------------------
    ----------------
    PLAN_TABLE_OUTPUT
    --------------------------------------------------------------------------------
    
    Predicate Information (identified by operation id):
    ---------------------------------------------------
       2 - access("GVM"='MAIN_ORG')
    14 rows selected.
    
    SQL> EXPLAIN PLAN FOR SELECT /* INDEX(LKPCDE_UK) */ ID FROM BLC WHE
    RE UPPER ( GVM ) = 'MAIN_ORG';
    Explained.
    SQL> SELECT * FROM TABLE(DBMS_XPLAN.DISPLAY);
    PLAN_TABLE_OUTPUT
    --------------------------------------------------------------------------------
    Plan hash value: 3196655606
    --------------------------------------------------------------------------------
    ------
    | Id  | Operation         | Name             | Rows  | Bytes | Cost (%CPU)| Time
         |
    --------------------------------------------------------------------------------
    ------
    
    PLAN_TABLE_OUTPUT
    --------------------------------------------------------------------------------
    |   0 | SELECT STATEMENT  |                  |    78 |   624 |    18   (0)| 00:0
    0:01 |
    |*  1 |  TABLE ACCESS FULL| BLC |    78 |   624 |    18   (0)| 00:0
    0:01 |
    --------------------------------------------------------------------------------
    ------
    
    Predicate Information (identified by operation id):
    PLAN_TABLE_OUTPUT
    --------------------------------------------------------------------------------
    ---------------------------------------------------
       1 - filter(UPPER("GVM")='MAIN_ORG')
    13 rows selected.
    

    Please let me know how I can force it to use an index as it is causing the CPU usage.

    I can't change the query in the application it is used in several places.

    Thank you

    And/or read: ORACLE-BASE - Oracle function index

  • If the INSTR function will not use the INDEX o?

    Hi all


    I have a querry as
        Select * from Tab1 Where Instr(Tab1.Col1,'XX') >0 ;
    Is simple index on column Col1. If we use the index will be used or full table scan will happen in this scenario?

    Please give me explanatory answer because I have doubts


    Dhabas

    Hello

    You must use the index function if you want to avoid the full table scan. Check this box

    SQL> create table tab1(col1 varchar(20))
      2  /
    
    Table created.
    
    SQL> insert into tab1 values ('XXAB')
      2  /
    
    1 row created.
    
    SQL> create index col1_idx on tab1(col1);
    
    Index created.
    
    SQL> explain plan for Select * from Tab1 Where Instr(Tab1.Col1,'XX') >0;
    
    Explained.
    
    SQL> set autotrace on
    SQL> Select * from Tab1 Where Instr(Tab1.Col1,'XX') >0;
    XXAB
    
    Execution Plan
    ----------------------------------------------------------
       0      SELECT STATEMENT Optimizer=ALL_ROWS (Cost=5 Card=1 Bytes=12)
       1    0   TABLE ACCESS (FULL) OF 'TAB1' (TABLE) (Cost=5 Card=1 Bytes
              =12)
    
    Statistics
    ----------------------------------------------------------
              4  recursive calls
              0  db block gets
             32  consistent gets
              0  physical reads
              0  redo size
            234  bytes sent via SQL*Net to client
            280  bytes received via SQL*Net from client
              2  SQL*Net roundtrips to/from client
              0  sorts (memory)
              0  sorts (disk)
              1  rows processed
    
    SQL>  create index col1_idx2 on tab1(Instr(Col1,'XX'));
    
    Index created.
    
    SQL> Select * from Tab1 Where Instr(Tab1.Col1,'XX') >0;
    XXAB
    
    Execution Plan
    ----------------------------------------------------------
       0      SELECT STATEMENT Optimizer=ALL_ROWS (Cost=2 Card=1 Bytes=12)
       1    0   TABLE ACCESS (BY INDEX ROWID) OF 'TAB1' (TABLE) (Cost=2 Ca
              rd=1 Bytes=12)
    
       2    1     INDEX (RANGE SCAN) OF 'COL1_IDX2' (INDEX) (Cost=1 Card=1
              )
    
    Statistics
    ----------------------------------------------------------
             28  recursive calls
              0  db block gets
             22  consistent gets
              0  physical reads
              0  redo size
            234  bytes sent via SQL*Net to client
            280  bytes received via SQL*Net from client
              2  SQL*Net roundtrips to/from client
              0  sorts (memory)
              0  sorts (disk)
              1  rows processed
    
    SQL> 
    

    Thank you
    AJ

  • Setting the query: optimizer does not use the index function

    Hello

    I have a request written by a developer that I can't change.

    It is here that the condition:

    (   UPPER(TRIM (CODFSC)) = UPPER (TRIM ( '01923980500'))

           OR UPPER(TRIM (CODUIC)) = UPPER (TRIM ( '01923980500')))

    There is an index on CODFSC and on CODUIC1.

    the plan is:

    Plan

    INSTRUCTION SELECT ALL_ROWS cost: 9 194 bytes: 3 206 502 cardinality: 15 054

    ACCESS FULL ANAGRAFICA cost TABLE TABLE 1: 9 194 bytes: 3 206 502 cardinality: 15 054

    So I created two new index on SUPERIOR (TRIM ()CODFSC)) and SUPERIOR (TRIM ()CODUIC)) but the plan

    complete analysis of STIL.

    Modifing where condition in:

    (   CODFSC = UPPER (TRIM ( '01923980500'))

           OR CODUIC = UPPER (TRIM ( '01923980500')))

    the plan is:

    SELECT STATEMENT ALL_ROWSCost: 157 bytes: 426 cardinality: 2

    CONCATENATION OF 5

    TABLE ACCESS BY INDEX ROWID ANAGRAFICA cost TABLE 2: cardinality of 5 bytes: 213: 1

    1 INDEX RANGE SCAN INDEX ANAGRAFICA_IDX01 cost: cardinality 3: 1

    TABLE ACCESS BY INDEX ROWID ANAGRAFICA cost TABLE 4: cardinality 152 bytes: 213: 1

    3 INDEX SKIP SCAN INDEX ANAGRAFICA_IDX02 cost: cardinality 1: 151

    Why optimizer not use my funct index?

    Thank you.

    Franck,

    I always forget that the default value for the GOLD expansion depends on a path indexed for each branch.

    2 in your use of or_predicates (2) depends on the position of complex predicate which must be expanded.  If you change the order of predicate 'State = 0' to display AFTER the complex predicate, you must change the indicator of "or_predicates (1).

    Outside of the current state of undocumented indicator, it also introduces the disturbing thought that, for a more complex query, a change in the transformation may result in another set of query blocks generated with a different ranking of the predicates. Yet another case to ensure that if you suggest anything suggest you (or create a SQL database).

    Concerning

    Jonathan Lewis

  • query not using the index for some user

    Hello

    I have a query that is running in less than a second for sys, system, or schema owner. However, another user (test_user) take 30 seconds to run the same query.

    I certainly dba and privileges identical to test_user as schmea_user, but the result is the same.

    I checked

    Select * from V$ SYS_OPTIMIZER_ENV;

    Both are the same for both users.

    I have check the plan to explain to both users. I noticed that for sys/system/schema_owner, the query uses an index, but not the test_user.

    All have experience the issue where a user uses an index, but not the other?

    Thank you for any assistance.

    Thank you for the display of formatting output, this output is much easier to read.

    One of the first things you notice about the execution plans that is for the owner non-schema "SQL_ID, 0wcs85uywn72m, number of children 1" appears in the output of DBMS_XPLAN, while "SQL_ID 0wcs85uywn72m, child number 0" (the same SQL_ID but a different number of child) appears for the schema owner. "" Whereas the SQL_ID is the same, which indicates that the client requires exactly the same SQL statement, so it's a good start.

    Then, note that in the predicate for the nonschema owner information section the following appears (sometimes with the order of the two conditions switched in position) as a condition placed on each table that is available in the schema:

    filter(("SEAL_FLAG" IS NULL OR "SEAL_FLAG"'Y'))
    

    The above suggests the presence of the virtual private database (or a superset of private database virtual) generated the predicates. You should be able to confirm that this is the case by querying V$ VPD_POLICY using the SQL_ID which was displayed in the DBMS_XPLAN output:

    SELECT
      *
    FROM
      V$VPD_POLICY
    WHERE
      SQL_ID='0wcs85uywn72m';
    

    As a test, I made a few minor adjustments to the example on this page:
    http://Antognini.ch/2011/09/optimizer_secure_view_merging-and-VPD/
    I changed the name of T to T12 and TESTUSER table specified for the schema names. I then created the function S of this page as follows:

    CREATE OR REPLACE FUNCTION s (schema IN VARCHAR2, tab IN VARCHAR2) RETURN VARCHAR2 AS
    BEGIN
      RETURN 'ID < 10';
    END;
    /
    

    I then added a couple of lines in the T12 test table:

    INSERT INTO T12 VALUES (1,1,NULL);
    INSERT INTO T12 VALUES (4,1,NULL);
    INSERT INTO T12 VALUES (10,1,NULL);
    INSERT INTO T12 VALUES (12,1,NULL);
    
    COMMIT;
    

    With an active 10053 trace, I executed the following SQL statement:

    SELECT id, pad
      FROM t12
      WHERE
      spy(id, pad) = 1
    

    The SQL_ID (in my case, found in the 10053 trace file) was 6hqw5p9d8g8wf, so I checked V$ VPD_POLICY to this SQL_ID:

    SELECT
      *
    FROM
      V$VPD_POLICY
    WHERE
      SQL_ID='6hqw5p9d8g8wf';
    
    ADDRESS          PARADDR            SQL_HASH SQL_ID        CHILD_NUMBER OBJECT_OWNER OBJECT_NAME                    POLICY_GROUP                   POLICY                 POLICY_FUNCTION_OWNER          PREDICATE
    ---------------- ---------------- ---------- ------------- ------------ ------------ ------------------------------ ------------------------------ ---------------------- ------------------------------ ------------------------------------------------------------------------------------
    000007FFB7701608 000007FFB7743350 1518838670 6hqw5p9d8g8wf            0 TESTUSER     T12                            SYS_DEFAULT                    T_SEC                  TESTUSER                       ID < 10
    

    As noted above, the VPD test function named S added the predicate "ID".< 10"="" to="" the="" sql="">

    There are not many clues in the 10053 trace file in my test VPD generated additional predicates. Trace the following was found shortly after the beginning of the file (this is the SQL statement initially presented):

    ----- Current SQL Statement for this session (sql_id=6hqw5p9d8g8wf) -----
    SELECT id, pad
      FROM t12
      WHERE
      spy(id, pad) = 1
    

    I searched then down in the trace for final after changes query file (to be noted that this sentence could be slightly different in different versions of database Oracle). That's what I found:

    Final query after transformations: ******* UNPARSED QUERY IS *******
    SELECT "T12"."ID" "ID","T12"."PAD" "PAD" FROM "TESTUSER"."T12" "T12" WHERE "TESTUSER"."SPY"("T12"."ID","T12"."PAD")=1 AND "T12"."ID"<10
    kkoqbc: optimizing query block SEL$F5BB74E1 (#0)
    

    Note that the final query after transformation shows how the final version of the query that has been rewritten by the query optimizer before the SQL statement has been executed and this version of the query includes AND "T12". "" IDENTITY CARD ".<10. if="" i="" was="" attempting="" to="" determine="" how="" that=""><10 predicate="" was="" added="" to="" the="" sql="" statement,="" i="" would="" start="" at="" the="" "current="" sql="" statement="" for"="" line="" in="" the="" trace="" file="" and="" search="" down="" the="" trace="" file="" for=""><10* -="" in="" this="" case,="" the="" following="" is="" what="" i="" found="" as="" the="" first="" search="" result,="" very="" close="" to="" the="" "current="" sql="" statement="" for"="" line="" in="" the="" trace="">

    **************************
    Predicate Move-Around (PM)
    **************************
    PM:     PM bypassed: Outer query contains no views.
    PM:     PM bypassed: Outer query contains no views.
    query block SEL$F5BB74E1 (#0) unchanged
    FPD: Considering simple filter push in query block SEL$F5BB74E1 (#0)
    "TESTUSER"."SPY"("T12"."ID","T12"."PAD")=1 AND "T12"."ID"<10
    try to generate transitive predicate from check constraints for query block SEL$F5BB74E1 (#0)
    finally: "TESTUSER"."SPY"("T12"."ID","T12"."PAD")=1 AND "T12"."ID"<10
    

    As can be seen from the above (because the predicate again appeared before and after the line containing the word "Finally: '), the AND"T12 ". "" IDENTITY CARD ".<10 predicate="" was="" already="" added="" to="" the="" original="" sql="" statement="" by="" the="" time="" the="" predicate="" move-around="" section="" of="" the="" trace="" file="" was="" written,="" and="" that="" is="" the="" first="" mention="" of=""><10 in="" the="" trace="" file.="" in="" your="" case,="" you="" would="" search="" the="" 10053="" trace="" file="">

    "SEAL_FLAG" IS NULL
    

    If V$ VPD_POLICY revealed that there are virtual private database (VPD) generated predicates applied to the SQL statement, take a look at the following article in the Oracle documentation library:
    http://docs.Oracle.com/CD/B28359_01/network.111/B28531/VPD.htm

    This article lists the different points of view, who can be interviewed to learn more about the VPD rules which are in force in the schema. For example, with my SPV test:

    SELECT
      *
    FROM
      ALL_POLICIES;
    
    OBJECT_OWNER                   OBJECT_NAME                    POLICY_GROUP                  POLICY_NAME                    PF_OWNER                       PACKAGE                       FUNCTION                       SEL INS UPD DEL IDX CHK ENA STA POLICY_TYPE              LON
    ------------------------------ ------------------------------ ----------------------------- ------------------------------ ------------------------------ ----------------------------- ------------------------------ --- --- --- --- --- --- --- --- ------------------------ ---
    TESTUSER                       T12                            SYS_DEFAULT                   T_SEC                          TESTUSER                       S                                                            YES YES YES YES NO  NO  YES NO  DYNAMIC                  NO
    

    He knows performance issues related to the use of VPD, some of which are Oracle Database version-dependent, and some have been fixed in recent versions. Take a look at the following articles if you have access to My Oracle Support:
    MetaLink (MOS) Doc ID 728292.1 ' known performance problems when you use transparent encryption data and indexes on the encrypted columns.
    MetaLink (MOS) Doc ID 967042.1 "How to investigate Query Performance regressions Caused by VPD (FGAC) predicates?"

    You might find working through the second of the above that the problem is caused by a bug in database Oracle.

    On a side note. Execution plans you have published include the 0 value in the column starts many of the operations in the execution plan. 0 indicates that the operation never actually executed. A 0 is included in the column starts on the line that includes the FULL ACCESS of TABLE of PEOPLE_TRANSACTIONS at least to the OPC. Value 123, a full table of PEOPLE_TRANSACTIONS table scan PROPERTY_CONTAINER_ID was not actually performed.

    Charles Hooper
    http://hoopercharles.WordPress.com/
    IT Manager/Oracle DBA
    K & M-making Machine, Inc.

  • SELECT on a table in the INSERT statement uses the INDEX

    Hello world

    I have a strange problem with EA Oracle 10 g (64-bit) running on a Linux system. The situation is, I developed a Java program to migrate one client system to another. One of the steps in the migration fills a new table with the data from the old system. Given that the data on the old system structure is fundamentally different from that new, I have to check each time I read a line from the old system, if I have already created an entity on the new table, and if so, update certain attributes. The WHERE clause of this audit uses a key of the company indexed on the new table. The problem is now, that Oracle does not use the index on the key attribute of the company, but it makes table scans complete to select the line. As you can imagine, the lines first thousand or so go fast, but the amount increases, the program becomes slower and slower.

    If I do a "scan" when executing the migration program, Oracle change the execution plan and use the index on the attribute key and everything works fast and smooth. However, if I do the analysis on the empty table first, nothing changes (which I understand it perfectly, since there is nothing to analyze, at this point). By integrating a hint of 'INDEX' (table) in the statement SELECT does not change the full implementation plan (also table scans).

    Is it possible to change this behavior, in order to SELECT it uses the index of key business from the beginning?

    Greetings from Cologne,

    Thorsten.

    Published by: thkitz on 13.03.2012 18:27

    thkitz wrote:

    SELECT STATEMENT  ALL_ROWSCost: 2  Bytes: 76  Cardinality: 2
         7 TABLE ACCESS BY INDEX ROWID TABLE AIDATINT.PRVVSSCHADENKORRESPONDENZ Cost: 2  Bytes: 76  Cardinality: 2
              6 BITMAP CONVERSION TO ROWIDS
                   5 BITMAP OR
                        2 BITMAP CONVERSION FROM ROWIDS
                             1 INDEX RANGE SCAN INDEX AIDATINT.I_PRVVSSCHADENKORRESPONDENZ_1 Cost: 1
                        4 BITMAP CONVERSION FROM ROWIDS
                             3 INDEX RANGE SCAN INDEX AIDATINT.I_PRVVSSCHADENKORRESPONDENZ_2 Cost: 1  
    

    I would have thought that as a plan as possible. It is not a concatenation, is a btree/bitmap conversion.
    Allude to this plan you need / * + index_combine (table_alias index1 index2) * /.
    For 10g and later the index can be specified by name or by description

    I'm a bit puzzled why the plan changes after truncate - but maybe my comment about not cleared statistics is no longer true. It is easy enough to check if I'm right or wrong on your version of Oracle.

    Concerning
    Jonathan Lewis
    http://jonathanlewis.WordPress.com
    Author: core Oracle

  • How to monitor the SQL perticuler using the INDEX or not?

    I'm running on a long-term quary and the output is coming very late. So, I want to know that the quary sql uses the index or not? How do I know that?

    Hello

    You have not provided your db version?
    You can check v $ object_usage in a simple way. Try to check the explanation of your query if you current sql is by using your existing index or not.
    Check with dbms_xplan.display

    Request to go through the links of Ask tom and jonathan lewis
    http://jonathanlewis.WordPress.com/2007/02/15/index-not-used-10G/
    http://asktom.Oracle.com/pls/asktom/f?p=100:11:0:P11_QUESTION_ID:736825544526

    HTH

    -Pounet N

  • Performance problem on the SQL query that does not use the primary key index

    Hello!

    I have some performance issues on a single SQL query (Oracle 10 g).
    I could solve the problem by using the INDEX indicator, but I would like to know WHY this is happening.

    * Tables *.
    create table jobs)
    ID number (5) not null,
    name varchar2 (100),
    primary key constraint Job_PK (id)
    )
    /
    -Record count: 298

    create table Comp)
    integer ID not null,
    name varchar2 (100),
    primary key constraint Comp_PK (id)
    )
    /
    -Record count: 193

    -Relation m: n
    create table JobComp)
    integer ID not null,
    id_job integer not null,
    id_comp integer not null,
    primary key constraint JobComp_PK (id),
    unique key constraint JobComp_UK (id_job, id_comp),
    Constraint JobComp_FK_Job foreign key (id_job) refers to Job (id),
    Constraint JobComp_FK_Comp foreign key (id_comp) makes reference Comp (id)
    )
    /
    create index JobComp_IX_Comp on JobComp (Cod_Comp)
    /
    create index JobComp_IX_Job on JobComp (Cod_Job)
    /
    -Record count: 6431

    * Ask *.

    When I run this query, the execution plan shows the index using (JobComp_PK and JobComp_IX_Comp).
    No problem.

    Select JobComp.*
    of JobComp
    Join jobs
    on Job.id = JobComp.id_job
    where JobComp.id_comp = 134
    /
    -runs in 0.20 sec

    But when I add the field 'name' of the work table the plan uses full access table to the table of work

    Select JobComp.*, Job.name
    of JobComp
    Join jobs
    on Job.id = JobComp.id_job
    where JobComp.id_comp = 134
    /
    -runs in the 2.70 dry

    With the help of the index

    Select / * + INDEX (Job Job_PK) * /.
    JobComp.*, Job.name
    of JobComp
    Join jobs
    on Job.id = JobComp.id_job
    where JobComp.id_comp = 134
    /
    -runs in 0.20 sec

    * Doubt *.

    This behavior is correct?

    PS. : I tried to recalculate the statistics, but nothing changes:

    analyze the job calculation table statistics.
    /
    change the statistical calculation of index Job_PK reconstruction;
    /
    Start
    dbms_utility.analyze_schema (sys_context ('userenv', 'current_schema'), 'CALCULATE');
    end;
    /

    [of]
    Gustavo Ehrhardt

    Gus.EHR wrote:
    Hello.
    I'm sorry for the plan unformatted.
    The execution time of the querys "without field name' and 'with the field name with suspicion" are equal.
    He has no problem caching, because I get the plans of the sequence different from the querys and repeated the performance. The result is always the same.

    I don't think that there is no problem with oracle crossing LOOP IMBRIQUEE to the HASH JOIN when you include the field name and this should be the expected behavior. But it seems that your WORKING table has a degree of parallelism set against what is causing the query to run in parallel (as JOB table is now available with full table scan, instead of indexed access earlier). It could be that the parallel execution is contributor to extra Runtime.
    (a) do you know why the degree of parallelism on the WORK table has been defined? Do you need it?

    You can see if the following query provides a better response time?

    select /*+ NOPARALLEL(JOB) */ JobComp.*, Job.Name
      from JobComp
      join Job
        on Job.id = JobComp.id_job
     where JobComp.id_comp = 134
    
  • Why an amplification of the RAM does not change the index performnance of windows vista?

    Why an amplification of the RAM does not change the index performnance of windows Vista?

    Hello

    I m not very well, but maybe you have more than 3 GB of RAM and Vista 32 bit.
    Usually the 32 bit OS is capable to manage and send only 3.2 GB.
    The more than 3.2 GB RAM will not operating system used and therefore would not increase the index
    In addition the laptop will be not really faster after upgrading RAM. You will notice better performance using applications at the same time, but this does not affect the index of Vista.
    But this is only my personal hypothesis.

    Welcome them

  • do not loading the index page

    Hello

    I recently made changes to a site in the latest version (site was the previous version) upgrade of site and went on to publish via FTP not loading the index page. All other pages did. Since then I have used time machine and reloaded the previous site. Any help? is this a bug?

    the Web site is cjduncan.com/spacedays

    Hello, have you managed to solve the problem

    Have you managed to solve the problem?

    Your site to load very well to my dissertation

    I checked in several browsers as well.

    -Catherine

  • SDO_NN cannot be assessed without using the index when put inside subquery

    Hi all

    I met a problem when you use the function sdo_nn to find the nearest neighbor. Here is my scenario:

    _ I have 2 customer and store tables.

    Customer table _ a client_ID and a 2D sdo_geom point

    _ Store table has store_ID and a 2D polygon sdo_geom.

    In the beginning, I have this query to find the nearest store to each customer as below:

    Select s.STORE_ID, c.CLIENT_ID

    store customer, s c

    where sdo_nn (s.MYPOLYGON, c.MYPOINT, 'sdo_num_res = 1', 1) = "TRUE";

    _It works as expected when it returns a table showing the nearest store each customer.

    _Now I want to count the number of customers who have the same nearest store:

    Select / * + INDEX (store store_spatial_idx, client_spatial_idx client) * / count (nearest_store. CLIENT_ID)
    from (select s.STORE_ID, c.CLIENT_ID
    store customer, s c
    where sdo_nn (s.MYPOLYGON, c.MYPOINT, 'sdo_num_res = 1', 1) = "TRUE") nearest_store
    Group of nearest_store. STORE_ID;

    This query generates the following error:

    Error report-
    SQL error: ORA-13249: SDO_NN cannot be assessed without using the index
    ORA-06512: at the 'MDSYS. MD", line 1723
    ORA-06512: at the 'MDSYS. MDERR", line 17
    ORA-06512: at the 'MDSYS. PRVT_IDX', line 9
    13249 00000 - '%s '.

    I'm pretty new to spatial databases and hope get help to go further. Thank you in advance!

    Hello Pinball,

    Oracle space tends to be a quite complex with many variables and moving parts.  We chatted about the group to a sort of FAQ or guidelines to help people like you submit questions that actually answers.  First of all, you really have to tell us the version of Oracle you are using.  Particularly the problems involving the optimizer, version down to the exact defined patch number is a good idea.  Secondly, you took the time to submit the question so I guess you want a response.  If you really want to see the answer and then providing an example is one of the most important things that you can do.  I'm going to do here for you, but in general people on this forum come and go and are often pushed into lurkitude, so if you want the coax to provide you with an example of work is the key.

    DROP TABLE store1 PURGE;
    CREATE TABLE store1(
        store_id INTEGER NOT NULL
       ,shape    MDSYS.SDO_GEOMETRY
       ,PRIMARY KEY(store_id)
    );
    
    DROP TABLE client2 PURGE;
    CREATE TABLE client2(
        client_id INTEGER NOT NULL
       ,shape    MDSYS.SDO_GEOMETRY
       ,PRIMARY KEY(client_id)
    );
    
    CREATE OR REPLACE PROCEDURE seeder(
        p_client_count IN NUMBER
       ,p_store_count IN NUMBER
    )
    AS
      sdo_foo MDSYS.SDO_GEOMETRY;
      int_counter NUMBER;
      FUNCTION random_point
      RETURN MDSYS.SDO_GEOMETRY
      AS
          num_x1 NUMBER;
          num_y1 NUMBER;
    
      BEGIN
          num_x1 := dbms_random.value(-179,179);
          num_y1 := dbms_random.value(-89,89);
    
          RETURN MDSYS.SDO_GEOMETRY(
              2001
             ,8265
             ,MDSYS.SDO_POINT_TYPE(
                  num_x1
                 ,num_y1
                 ,NULL
              )
             ,NULL
             ,NULL
          );
    
      END random_point;
    
    BEGIN
      int_counter := 1;
      FOR i IN 1 .. p_client_count
      LOOP
          -- Create a client point
          sdo_foo := random_point();
          INSERT INTO client2
          VALUES (
              int_counter
             ,sdo_foo
          );
          int_counter := int_counter + 1;
    
      END LOOP;
    
      int_counter := 1;
      FOR i IN 1 .. p_store_count
      LOOP
          -- Create a store polygon of some kind
          sdo_foo := MDSYS.SDO_GEOM.SDO_ARC_DENSIFY(
              MDSYS.SDO_GEOM.SDO_BUFFER(
                  random_point()
                 ,5000
                 ,0.05
              )
             ,0.05
             ,'arc_tolerance=0.05'
          );
          INSERT INTO store1
          VALUES (
              int_counter
             ,sdo_foo
          );
          int_counter := int_counter + 1;
    
      END LOOP;
    
      COMMIT;
    
    END seeder;
    /
    
    BEGIN
      seeder(10000,200);
    END;
    /
    
    BEGIN
      INSERT INTO user_sdo_geom_metadata(
          table_name
         ,column_name
         ,diminfo
         ,srid
      ) VALUES (
          'STORE1'
         ,'SHAPE'
         ,MDSYS.SDO_DIM_ARRAY(MDSYS.SDO_DIM_ELEMENT('X',-180,180,.05),MDSYS.SDO_DIM_ELEMENT('Y',-90,90,.05))
         ,8265
      );
    
      COMMIT;
    
    EXCEPTION
      WHEN OTHERS
      THEN
          NULL;
    
    END;
    /
    
    BEGIN
      INSERT INTO user_sdo_geom_metadata(
          table_name
         ,column_name
         ,diminfo
         ,srid
      ) VALUES (
          'CLIENT2'
         ,'SHAPE'
         ,MDSYS.SDO_DIM_ARRAY(MDSYS.SDO_DIM_ELEMENT('X',-180,180,.05),MDSYS.SDO_DIM_ELEMENT('Y',-90,90,.05))
         ,8265
      );
    
      COMMIT;
    
    EXCEPTION
      WHEN OTHERS
      THEN
         NULL;
    
    END;
    /
    
    CREATE INDEX store1_spx ON store1
    (shape)
    INDEXTYPE IS MDSYS.SPATIAL_INDEX
    NOPARALLEL;
    
    CREATE INDEX client2_spx ON client2
    (shape)
    INDEXTYPE IS MDSYS.SPATIAL_INDEX
    NOPARALLEL;
    
    /* Works as expected */
    SELECT
    s.store_id
    ,c.client_id
    ,MDSYS.SDO_NN_DISTANCE(1)
    FROM
    store1 s
    ,client2 c
    WHERE
    MDSYS.SDO_NN(
        s.shape
       ,c.shape
       ,'sdo_num_res=1'
       ,1
    ) = 'TRUE';
    
    /* No worky? Works for me */
    SELECT
    ns.store_id
    ,COUNT(ns.client_id)
    FROM (
       SELECT
        s.store_id
       ,c.client_id
       FROM
        store1 s
       ,client2 c
       WHERE
       MDSYS.SDO_NN(
           s.shape
          ,c.shape
          ,'sdo_num_res=1'
          ,1
       ) = 'TRUE'
    ) ns
    GROUP BY
    ns.store_id
    ORDER BY
    ns.store_id;
    

    So I wrote this about 12 c (12.1.0.2.0) and everything works fine for me.  Then I moved back from 11 GR 2 (11.2.0.4.0) and of course, there are questions.  So I guess that you don't use flavor of 11g.  So at this point we can look at the docs and see for 11g, have you often need to specify which table is the head and that is the one that has the spatial index to use.
    http://docs.Oracle.com/CD/E11882_01/AppDev.112/e11830/sdo_operat.htm#SPATL1032

    Its rather interesting that the optimizer of 12 c knows what you want, when I had to squint myself at your request and to play a little with the refining.  Note that SDO_NN is sensitive, because the geometry of the main table should come second in the operator.  I did not know that on the top of my head.

    
    SELECT
    /*+ LEADING(c) INDEX(s store1_spx)  */
     s.store_id
    ,c.client_id
    ,MDSYS.SDO_NN_DISTANCE(1)
    FROM
     store1 s
    ,client2 c
    WHERE
    MDSYS.SDO_NN(
        s.shape
       ,c.shape
       ,'sdo_num_res=1'
       ,1
    ) = 'TRUE';
    
    SELECT
     ns.store_id
    ,COUNT(ns.client_id)
    FROM (
       SELECT
       /*+ LEADING(c) INDEX(s store1_spx)  */
        s.store_id
       ,c.client_id
       ,MDSYS.SDO_NN_DISTANCE(1)
       FROM
        store1 s
       ,client2 c
       WHERE
       MDSYS.SDO_NN(
           s.shape
          ,c.shape
          ,'sdo_num_res=1'
          ,1
       ) = 'TRUE'
    ) ns
    GROUP BY
    ns.store_id
    ORDER BY
    ns.store_id;
    

    So I think that is your answer.  Give it a shot and see if this fits the Bill.  Of course, moving to 12 c would be useful for such things.  It would be interesting to collect more examples of this kind of space thing where 12 c is the answer. Also, would be nice if we could mark somehow this discussion as applying only to 11g and earlier versions.

    See you soon,.

    Paul

  • Could not use the Brush tool because there is not enough memory (RAM)

    Hello, I found is a problem that I can not use the Brush tool error message could not use the Brush tool as there is not enough memory (RAM) I use photoshop cc here is my system information:

    Adobe Photoshop Version: 2015.1.1 20151209.r.327 2015/12 / 09:23:59:59 CL 1055659 x 64

    Operating system: Windows 64-bit 10

    Version: 10 or higher

    System architecture: Intel CPU Family: 6, model: 12 Stepping: 3 with MMX, SSE whole, FP SSE, SSE2, SSE3, SSE4.1, SSE4.2, AVX, AVX2, HyperThreading

    Physical processor count: 4

    Number of logical processors: 8

    Processor speed: 2494 MHz

    Built-in memory: 16267 MB

    Free memory: 8727 MB

    Memory available to Photoshop: 14479 MB

    Memory used by Photoshop: 55%

    Range of modifier: enabled.

    Space design: disabled.

    Work plans: enabled.

    Multi-frequency 3D printing: disabled.

    HighBeam: enabled.

    Tile image size: 1024K

    Image cache level: 4

    Overview of fonts: medium

    TextComposer: Latin

    Display: 1

    Limits of the display: top = 0, left = 0, low = 1080, right = 1920

    OpenGL drawing: enabled.

    OpenGL allows old GPU: not detected.

    OpenGL drawing mode: Advanced

    OpenGL allows Normal Mode: true.

    OpenGL allows Advanced Mode: true.

    AIFCoreInitialized = 1

    AIFOGLInitialized = 1

    OGLContextCreated = 1

    NumGLGPUs = 1

    NumCLGPUs = 2

    glgpu [0]. GLVersion = "3.0".

    glgpu [0]. IsIntegratedGLGPU = 1

    glgpu [0]. GLMemoryMB = 2048

    glgpu [0]. GLName = "Intel(r) HD 4600 graphics card"

    glgpu [0]. GLVendor = "Intel."

    glgpu [0]. GLVendorID = 32902

    glgpu [0]. GLDriverVersion = "10.18.15.4256".

    glgpu [0]. GLRectTextureSize = 16384

    glgpu [0]. GLRenderer = "Intel(r) HD 4600 graphics card"

    glgpu [0]. GLRendererID = 1046

    glgpu [0]. HasGLNPOTSupport = 1

    glgpu [0]. GLDriver = "igdumdim64.dll, igd10iumd64.dll, igd10iumd64.dll, igd12umd64.dll, igdumdim3 2, igd10iumd32, igd10iumd32, igd12umd32.

    glgpu [0]. GLDriverDate = "20150717000000.000000 - 000.

    glgpu [0]. CanCompileProgramGLSL = 1

    glgpu [0]. GLFrameBufferOK = 1

    glgpu [0] .glGetString [GL_SHADING_LANGUAGE_VERSION] = ' 1.30 - Build 10.18.15.4256.

    glgpu [0] .glGetProgramivARB [GL_FRAGMENT_PROGRAM_ARB] [GL_MAX_PROGRAM_INSTRUCTIONS_ARB] = [1447]

    glgpu [0] .glGetIntegerv [GL_MAX_TEXTURE_UNITS] = [8]

    glgpu [0] .glGetIntegerv [GL_MAX_COMBINED_TEXTURE_IMAGE_UNITS] = [192]

    glgpu [0] .glGetIntegerv [GL_MAX_VERTEX_TEXTURE_IMAGE_UNITS] = [32]

    glgpu [0] .glGetIntegerv [GL_MAX_TEXTURE_IMAGE_UNITS] = [32]

    glgpu [0] .glGetIntegerv [GL_MAX_DRAW_BUFFERS] = [8]

    glgpu [0] .glGetIntegerv [GL_MAX_VERTEX_UNIFORM_COMPONENTS] = [4096]

    glgpu [0] .glGetIntegerv [GL_MAX_FRAGMENT_UNIFORM_COMPONENTS] = [4096]

    glgpu [0] .glGetIntegerv [GL_MAX_VARYING_FLOATS] = [64]

    glgpu [0] .glGetIntegerv [GL_MAX_VERTEX_ATTRIBS] = [16]

    glgpu [0] .extension [AIF::OGL:GL_ARB_VERTEX_PROGRAM] = 1

    glgpu [0] .extension [AIF::OGL:GL_ARB_FRAGMENT_PROGRAM] = 1

    glgpu [0] .extension [AIF::OGL:GL_ARB_VERTEX_SHADER] = 1

    glgpu [0] .extension [AIF::OGL:GL_ARB_FRAGMENT_SHADER] = 1

    glgpu [0] .extension [AIF::OGL:GL_EXT_FRAMEBUFFER_OBJECT] = 1

    glgpu [0] .extension [AIF::OGL:GL_ARB_TEXTURE_RECTANGLE] = 1

    glgpu [0] .extension [AIF::OGL:GL_ARB_TEXTURE_FLOAT] = 1

    glgpu [0] .extension [AIF::OGL:GL_ARB_OCCLUSION_QUERY] = 1

    glgpu [0] .extension [AIF::OGL:GL_ARB_VERTEX_BUFFER_OBJECT] = 1

    glgpu [0] .extension [AIF::OGL:GL_ARB_SHADER_TEXTURE_LOD] = 0

    clgpu [0]. CLPlatformVersion = "1.2".

    clgpu [0]. CLDeviceVersion = "1.2".

    clgpu [0]. IsIntegratedCLGPU = 1

    clgpu [0]. CLMemoryMB = 1921

    clgpu [0]. CLName = "Intel(r) HD 4600 graphics card"

    clgpu [0]. CLVendor = "Intel(r) Corporation"

    clgpu [0]. CLVendorID = 32902

    clgpu [0]. CLDriverVersion = "10.18.15.4256".

    clgpu [0]. CUDASupported = 0

    clgpu [0]. CLBandwidth = 1.68648e + 010

    clgpu [0]. CLCompute = 134,55

    clgpu [1]. CLPlatformVersion = "1.2".

    clgpu [1]. CLDeviceVersion = 'CUDA 1.2.

    clgpu [1]. IsIntegratedCLGPU = 0

    clgpu [1]. CLMemoryMB = 4096

    clgpu [1]. CLName = 'GeForce GTX 850M.

    clgpu [1]. CLVendor = "NVIDIA Corporation".

    clgpu [1]. CLVendorID = 4318

    clgpu [1]. CLDriverVersion = "359.06.

    clgpu [1]. CUDASupported = 1

    clgpu [1]. CUDAVersion = "7.5.0.

    clgpu [1]. CLBandwidth = 2.97347e + 010

    clgpu [1]. CLCompute = 354.272

    Type of license: subscription

    Serial number: 90970505697637150612

    Feature::Photoshop / Extended: WE

    Feature::Photoshop/standard: WE

    Feature::Photoshop/test: OFF

    Feature:32 - Bit layers: WE

    Feature::CountTool: WE

    Feature::Acrobat3D: WE

    Feature::measurement: WE

    Feature::MATLAB: WE

    Feature::VanishingPointMeasurement: WE

    Feature::VanishingPoint3DSExport: WE

    Feature::VanishingPointDXFExport: WE

    Feature::DICOM: WE

    Feature::VideoLayers: WE

    Feature::Timeline: WE

    Feature::ExtendedMenuBar: WE

    Feature::3DPrint App: WE

    Feature::ImageStack creation: WE

    Feature::ImageStack edition: WE

    Feature:32 - Bit painting: WE

    Feature::ACRFilterAllowed: WE

    Feature::ACRFilterAvailable: WE

    Feature::ExportAssetsQueueFeature: OFF

    Feature::creative cloud staged: OFF

    Feature::3DMultitonePrinting: OFF

    Feature::artboards: WE

    Feature::Playground: OFF

    Feature::chording range: WE

    The application folder: G:\Program Files\Adobe\Adobe Photoshop CC 2015\

    Temporary file path: C:\Users\PADREM~1\AppData\Local\Temp\

    Zero Photoshop has async I/O active

    Scratch the volumes:

    G:\, 98.6 G, 13.3 G free

    F:\, 306.5 G, 15.6 G free

    E:\, 234.4 G, 20.7 free G

    Required plugins folder: G:\Program Files\Adobe\Adobe Photoshop CC 2015\Required\Plug-Ins\

    Main Plug-ins folder: G:\Program Files\Adobe\Adobe Photoshop CC 2015\Plug-ins\

    Installed components:

    A3DLIBS.dll A3DLIB 9.2.0.112 dynamic link library

    ACE.dll ACE 2015-09-09 at 18:52:48 79,567158 79.567158

    AdbePM.dll PatchMatch 0000-00-00-00: 00:00 1.  1.

    AdobeLinguistic.dll Adobe linguistic Library version 9.0.0

    AdobeOwl.dll Adobe Owl 5.2.9

    AdobePDFL.dll PDFL 2015/09/12-01: 10: 45 79,156620 79.156620

    Adobe AdobePIP.dll 7.3.1.70 product improvement program

    AdobeSVGAGM.dll AdobeSVGAGM 79.566705 79.566705

    AdobeXMP.dll Adobe XMP Core 2015/09/10-01: 10:20 79,158325 79.158325

    AdobeXMPFiles.dll Adobe XMP files 2015/09/10-01: 10:20 79,158325 79.158325

    Adobe XMP Script 2015/09/10-01: 10 AdobeXMPScript.dll: 20 79,158325 79.158325

    adobe_caps.dll Adobe CAPS 9,0,0,28

    AGM.dll AGM 2015-09-09 at 18:52:48 79,567158 79.567158

    ahclient.dll AdobeHelp Dynamic Link Library 2.0.0.2

    AIDE.dll HELP-2015/15/10-11: 58:31 79,568000 79.568000

    Amtlib.dll AMTLib (64 Bit) 9.0.0.89BuildVersion: 9.0; Brand: Tuesday, August 25, 2015 07:30:38) 1.000000

    ARE.dll ARE 2015-09-09 at 18:52:48 79,567158 79.567158

    Axe8sharedexpat.dll AXE8SharedExpat 2015/03/13-23: 40:54 79,562390 79.562390

    AXEDOMCore.dll AXEDOMCore 2015/03/13-23: 40:54 79,562390 79.562390

    Bib.dll BIB: 2015-09-09 at 18:52:48 79,567158 79.567158

    BIBUtils.dll BIBUtils: 2015-09-09 at 18:52:48 79,567158 79.567158

    boost_date_time.dll photoshopdva 8.0.0

    boost_signals.dll photoshopdva 8.0.0

    boost_system.dll photoshopdva 8.0.0

    boost_threads.dll photoshopdva 8.0.0

    CG.dll NVIDIA Cg Runtime 3.0.00007

    cgGL.dll NVIDIA Cg Runtime 3.0.00007

    Adobe CIT.dll CIT 2.3.7.33275 2.3.7.33275

    Adobe CITThreading.dll CITThreading 2.3.7.33275 2.3.7.33275

    CoolType.dll CoolType 2015-09-09 at 18:52:48 79,567158 79.567158

    c:\windows\system32\dnssd.dll Hello 3,0,0,2

    dvaaudiodevice.dll photoshopdva 8.0.0

    dvacore.dll photoshopdva 8.0.0

    dvamarshal.dll photoshopdva 8.0.0

    dvamediatypes.dll photoshopdva 8.0.0

    dvametadata.dll photoshopdva 8.0.0

    dvametadataapi.dll photoshopdva 8.0.0

    dvametadataui.dll photoshopdva 8.0.0

    dvaplayer.dll photoshopdva 8.0.0

    dvatransport.dll photoshopdva 8.0.0

    dvaui.dll photoshopdva 8.0.0

    dvaunittesting.dll photoshopdva 8.0.0

    Dynamiclink.dll photoshopdva 8.0.0

    ExtendScript.dll ExtendScript 2015/04/17-16: 55.22 80.1017022 80.1017022

    icucnv40.dll International Components for Unicode 2014 10/31-16: 52:45 Build gtlib_6.0.21339

    icudt40.dll International Components for Unicode 2014 10/31-16: 52:45 Build gtlib_6.0.21339

    icuuc40.dll International Components for Unicode 2014 10/31-16: 52:45 Build gtlib_6.0.21339

    igestep30.dll IGES 9.3.0.113 drive

    imslib.dll IMSLib DLL 9.0.1.14

    JP2KLib.dll JP2KLib 2015/08/14-01: 13: 58 79,258941 79.258941

    libifcoremd.dll Intel Visual Fortran compiler 10.0 (A patch)

    libiomp5md.dll Intel(r) OpenMP * Runtime Library 5.0

    libmmd.dll Intel(r) C Compiler, Intel C++ Compiler, Intel Fortran compiler 12.0

    LogSession.dll LogSession 7.3.1.70

    Manta.dll Manta 1.  1.

    mediacoreif.dll photoshopdva 8.0.0

    MPS.dll MPS 2015/08/14-01: 13: 58 79,566687 79.566687

    pdfsettings.dll Adobe PDFSettings 1.04

    Adobe Photoshop CC 2015 16.1.1 Photoshop.dll

    Adobe Photoshop CC 2015 16.1.1 plugin.dll

    PlugPlugExternalObject.dll CEP PlugPlugExternalObject Dll (64-bit) 6.1.0 Standard Adobe

    PlugPlugOwl.dll Adobe CSXS PlugPlugOwl Dll Standard (64 bit) 6.1.0.157

    PSArt.dll Adobe Photoshop CC 2015 16.1.1

    PSViews.dll Adobe Photoshop CC 2015 16.1.1

    SCCore.dll ScCore 2015/04/17-16: 55.22 80.1017022 80.1017022

    SVGRE.dll SVGRE 79.566690 79.566690

    svml_dispmd.dll Intel (r) C Compiler, Intel C++ Compiler, Intel Fortran compiler 12.0

    TBB.dll Intel Threading Building Blocks for Windows 4, 3, 2015, 0408

    tbbmalloc.dll Intel Threading Building Blocks for Windows 4, 3, 2015, 0408

    TfFontMgr.dll FontMgr 9.3.0.113

    TfKernel.dll kernel 9.3.0.113

    Geom TFKGEOM.dll kernel 9.3.0.113

    Adobe TFUGEOM.dll, UGeom © 9.3.0.113

    updaternotifications.dll Adobe Updater Notifications Library 9.0.0.15 (BuildVersion: 1.0;) Brand: BUILDDATETIME) 9.0.0.15

    VulcanControl.dll Vulcan Control Library 5.2.0.35 Application

    VulcanMessage5.dll Vulcan Message Library 5.2.0.35

    WRServices.dll WRServices Friday, July 31, 2015 07:50:10 build 0.21834 0,21834

    U3D writer 9.3.0.113 wu3d.dll

    Required plugins:

    3D Studio 16.1.1 (2015.1.1 x 001 003 x)

    Accented edges 16.1.1

    Adaptive wide-angle 16.1.1

    Angular Strokes 16.1.1

    Average 16.1.1 (2015.1.1 x 001 003 x)

    Bas-relief 16.1.1

    BMP 16.1.1

    Camera Raw 9.3.1

    Camera Raw Filter 9.3.1

    Chalk and charcoal 16.1.1

    16.1.1 charcoal

    Chrome 16.1.1

    16.1.1 Cineon (2015.1.1 x 001 003 x)

    Clouds 16.1.1 (2015.1.1 x 001 003 x)

    16.1.1 COLLADA (2015.1.1 x 001 003 x)

    Halftone color 16.1.1

    Color pencil 16.1.1

    CompuServe GIF 16.1.1

    Pencil tale 16.1.1

    Craquelure 16.1.1

    Crop and straighten Photos 16.1.1 (2015.1.1 x 001 003 x)

    Crop and straighten Photos filter 16.1.1

    Hatch: 16.1.1

    Crystallize 16.1.1

    Cutting 16.1.1

    Dark strokes 16.1.1

    16.1.1 deinterlacing

    DICOM 16.1.1

    Difference clouds 16.1.1 (2015.1.1 x 001 003 x)

    16.1.1 glow

    Move 16.1.1

    Dry brush 16.1.1

    Eazel acquire 16.1.1 (2015.1.1 x 001 003 x)

    16.1.1 entropy (2015.1.1 x 001 003 x)

    NO export VERSION color tables

    Extrude 16.1.1

    FastCore 16.1.1 routines (2015.1.1 x 001 003 x)

    16.1.1 fibers

    Film Grain 16.1.1

    Gallery of filters 16.1.1

    Flash 3D 16.1.1 (2015.1.1 x 001 003 x)

    Fresco 16.1.1

    16.1.1 glass

    Scarlet contours 16.1.1

    Google Earth 4 16.1.1 (2015.1.1 x 001 003 x)

    Grain 16.1.1

    Graphic pen 16.1.1

    Halftone Pattern 16.1.1

    HDRMergeUI 16.1.1

    HSB/HSL 16.1.1

    IFF Format 16.1.1

    16.1.1 IGES (2015.1.1 x 001 003 x)

    Outlines in ink 16.1.1

    JPEG 2000 16.1.1

    16.1.1 flattening coefficient (2015.1.1 x 001 003 x)

    Blur of the lens 16.1.1

    16.1.1 goal correction

    Lens Flare 16.1.1

    Liquefy 16.1.1

    Matlab 16.1.1 operation (2015.1.1 x 001 003 x)

    maximum 16.1.1 (2015.1.1 x 001 003 x)

    Mean 16.1.1 (2015.1.1 x 001 003 x)

    Measure Core 16.1.1 (2015.1.1 x 001 003 x)

    Median 16.1.1 (2015.1.1 x 001 003 x)

    Mezzotint 16.1.1

    Minimum 16.1.1 (2015.1.1 x 001 003 x)

    MMXCore Routines 16.1.1 (2015.1.1 x 001 003 x)

    16.1.1 mosaic tiles

    Multiprocessor support 16.1.1 (2015.1.1 x 001 003 x)

    Neon 16.1.1

    16.1.1 paper

    16.1.1 color NTSC (2015.1.1 x 001 003 x)

    Ocean Ripple 16.1.1

    OpenEXR 16.1.1

    Paint Daubs 16.1.1

    16.1.1 palette knife

    Patchwork 16.1.1

    Paths to Illustrator 16.1.1

    16.1.1 PCX (2015.1.1 x 001 003 x)

    Photocopy 16.1.1

    16.1.1 Photoshop 3D engine (2015.1.1 x 001 003 x)

    Photoshop Touch 14.0

    Photo filter package 16.1.1 (2015.1.1 x 001 003 x)

    Pinch 16.1.1

    Pixar 16.1.1 (2015.1.1 x 001 003 x)

    16.1.1 in plaster

    Plastic wrap 16.1.1

    16.1.1 PLY (2015.1.1 x 001 003 x)

    PNG 16.1.1

    16.1.1 pointillism

    16.1.1 polar coordinates

    Portable Bit map 16.1.1 (2015.1.1 x 001 003 x)

    Poster edges 16.1.1

    People's Republic of CHINA 16.1.1 (2015.1.1 x 001 003 x)

    Radial blur 16.1.1

    16.1.1 radiance (2015.1.1 x 001 003 x)

    16.1.1 range (2015.1.1 x 001 003 x)

    Color research grid NO VERSION rendering

    Crosslinking 16.1.1

    16.1.1 the ripple

    Rough Pastels 16.1.1

    Save for Web 16.1.1

    ScriptingSupport 16.1.1

    Shake Reduction 16.1.1

    16.1.1 shear

    16.1.1 asymmetry (2015.1.1 x 001 003 x)

    Smart Blur 16.1.1

    Smudge Stick 16.1.1

    Solarize 16.1.1 (2015.1.1 x 001 003 x)

    16.1.1 spaces

    16.1.1 splash

    Spherize 16.1.1

    16.1.1 sponge

    Sprayed strokes 16.1.1

    Stained glass 16.1.1

    16.1.1 stamp

    16.1.1 standard deviation (2015.1.1 x 001 003 x)

    STL 16.1.1 (2015.1.1 x 001 003 x)

    16.1.1 Sumi-e

    16.1.1 summation (2015.1.1 x 001 003 x)

    Targa 16.1.1

    16.1.1 texture veneer

    16.1.1 tiles

    Torn edges 16.1.1

    16.1.1 twirl watch

    16.1.1 U3D (2015.1.1 x 001 003 x)

    Draft 16.1.1

    Vanishing point 16.1.1

    16.1.1 variance (2015.1.1 x 001 003 x)

    Virtual Reality Modeling Language. VRML 16.1.1 (2015.1.1 x 001 003 x)

    Water paper 16.1.1

    Watercolor 16.1.1

    16.1.1 wave

    Wavefront | 16.1.1 OBJ (2015.1.1 x 001 003 x)

    WIA support 16.1.1 (2015.1.1 x 001 003 x)

    Wind 16.1.1

    Wireless Bitmap 16.1.1 (2015.1.1 x 001 003 x)

    Zig - zag 16.1.1

    Plug-ins option and the third: NONE

    Plug-ins that could not load: NONE

    Extensions:

    Recent files 1.0.0

    G:\Program Files\Adobe\Adobe Photoshop 2015\Required\CEP\extensions\com.adobe.ccx.start\index.html CC

    2.1.24 libraries

    G:\Program Files\Adobe\Adobe Photoshop 2015\Required\CEP\extensions\com.adobe.DesignLibraryPanel.html\index.html CC

    Beginning 1.0.0

    G:\Program Files\Adobe\Adobe Photoshop 2015\Required\CEP\extensions\com.adobe.ccx.start\index.html CC

    Adobe 6.1.0 color themes

    G:\Program Files\Adobe\Adobe Photoshop 2015\Required\CEP\extensions\com.adobe.KulerPanel.html\index.html CC

    Export as 2.4.0

    G:\Program Files\Adobe\Adobe Photoshop 2015\Required\CEP\extensions\com.adobe.webpa.crema\PSPanel\dialog.html CC

    Overview of the 1.1.3 device

    G:\Program Files\Adobe\Adobe Photoshop 2015\Required\CEP\extensions\com.adobe.preview\PSPanel\panel.html CC

    Share on Behance 3.0.0

    G:\Program Files\Adobe\Adobe Photoshop 2015\Required\CEP\extensions\com.adobe.behance.shareonbehance.html\index.html CC

    Export as 2.4.0

    G:\Program Files\Adobe\Adobe Photoshop 2015\Required\CEP\extensions\com.adobe.webpa.crema\PSPanel\dialog.html CC

    com.adobe.preview.Loader 1.1.3

    G:\Program Files\Adobe\Adobe Photoshop 2015\Required\CEP\extensions\com.adobe.preview\PSLoader\loader.html CC

    Install TWAIN devices: NONE

    Could you please rename the Photoshop CC 2015 preferences and try again.

    Please see the following article: preference file works, names, places | Photoshop CC 2014

  • What is the right time to use the index with force?

    I have an EMPLOYEE table.  I join with the ROLE, and it has only about 200 distinct values on column EMPLOYEE. EMPLOYEE_TYPE_ID.

    Select / * + INDEX (an i_employee_type_id) * / b.SID as EMP_NAME, b.role_cd in the ROLE

    Of

    EMPLOYEE,

    B ROLE

    where

    a.EMPLOYEE_TYPE_ID = b.EMPLOYEE_TYPE_ID

    AND a.EFFECTIVE_END_TS > = systimestamp;

    Is it a good idea to use the index?  .. Or let the full table scan.

    SQL > select distinct EMPLOYEE_TYPE_ID of the EMPLOYEE;

    238 selected lines.

    If you don't know it will help not to use.

    Personally, I found several SQLs with index finger tips (written by programmers thinking index access is ALWAYS GOOD) end up harming performance. Oracle made a reading diluvium full table scan, single index reads as follows, according to the % of the returned array it is actually faster to do a full table scan. The optimizer did a great job to determine this.

    If you think there are cardinality estimation problems, and the optimizer expects a large number of lines when there are actually few being returned, in THIS case a suspicion was justified. Even so, in this case, I prefer that oracle manages the flag itself.

    You can do this by running the SQL tuning advisor. In fact, it will trigger the optimizer checks that the estimates are turned off and it will create a profile for you. (A profile is actually a stored set of advice that set the execution plan for you). If at the point where the underlying data changes significantly and profile ends up hurting performance, you do not need to touch the code like you would with manually added notes, you can just disable or delete the profile and let the optimizer re - analyze the statement.

    Concerning

    EDIT: In case of small tables, it is preferable to just cache the whole table in the POOL to KEEP and let oracle scan if necessary.

    Edit2: With the notable exception of index fast full scans, which are diluvium index readings. But they are only relevant when the request is quite satisfied by the index and has no need to visit the table.

  • SDO_NN giving ORA-13249: SDO_NN cannot be assessed without using the index

    Hi people,

    I do not understand why the SDO_NN gives ORA-13249 in circumstances.

    SQL > SELECT SlavaTest WHERE SDO_NN s s.title (s.geometry, SDO_GEOMETRY (2001, 4326, SDO_POINT (14.0, 49.0, NULL), null, null)) = 'TRUE' and title like '%' and rownum < 10;

    TITLE
    --------------------------------------------------------------------------------
    MultiPoint_305199
    LineString_691779
    MultiPolygon_180478
    MultiPolygon_358113
    MultiPolygon_53008
    MultiPolygon_249905
    MultiPolygon_204076
    MultiPolygon_636994
    MultiPoint_464514

    9 selected lines.

    SQL > SELECT SlavaTest WHERE SDO_NN s s.title (s.geometry, SDO_GEOMETRY (2001, 4326, SDO_POINT (14.0, 49.0, NULL), null, null)) = 'TRUE' and timestamp > = to_timestamp (January 6, 2011 ', ' dd/mm/yyyy') and rownum < 10;
    SELECT SlavaTest WHERE SDO_NN s s.title (s.geometry, SDO_GEOMETRY (2001, 4326, SDO_POINT (14.0, 49.0, NULL), null, null)) = 'TRUE' and timestamp > = to_timestamp (January 6, 2011 ', ' dd/mm/yyyy') and rownum < 10
    *
    ERROR on line 1:
    ORA-13249: SDO_NN cannot be assessed without using the index
    ORA-06512: at the 'MDSYS. MD", line 1723
    ORA-06512: at the 'MDSYS. MDERR", line 17
    ORA-06512: at the 'MDSYS. PRVT_IDX', line 49

    The spatial index is created with:
    CREATE the INDEX SlavaTest_geometry_idx_spatial ON SlavaTest (geometry) INDEXTYPE IS mdsys.spatial_index;

    'Title' and 'timestamp' columns have an index.

    Note the query comes from Hibernate and I can't change it's arbitrary.

    Slava2 wrote:
    What this means - there is a bug in Oracle?

    Well, it could probably be considered a, but [url http://docs.oracle.com/cd/E11882_01/appdev.112/e11830/sdo_operat.htm#i78067] documentation on SDO_NN warns you:

    Documentation says:
    However, if the column in the WHERE clause predicate specifies a non-space column in the table for geometry1 with an associated index, make sure that this index is not used by specifying the NO_INDEX indicator for this index.

    See you soon,.
    Stefan

Maybe you are looking for