slow queries with high_value inappropriate for partition interval

Hello

yesterday, I defined a partitioned table with a single initial partition interval. The partition key was an id of value with a (generated sequence) run around, the interval was 1 - and since I didn't know the value of the id, I put the high value of initial partition 1. Then I inserted a few lines, started a query simple - and waited a long time for the result. 10046 trace showed, that the query was using a lot of cpu - but I had no idea what he was doing.

Today, I created a simple test case (in 11.1.0.7 on a Centos 5-server; but I got similar results on my Windows 11.2.0.1 database):
-- test_interval.sql

set verify off
undefine high_value

drop table test_interval_p1_&&high_value;

create table test_interval_p1_&high_value
  partition by range (id)
  interval (1)
  (partition test_p1 values less than (&high_value))
as
select 100000 id
     , t.*
  from all_objects t
 where 1 = 0;

insert into test_interval_p1_&high_value
select 100000 id
     , t.*
  from all_objects t;

commit;

-- pause
  
select id, count(*)
  from test_interval_p1_&high_value
 group by id;
When I choose a high_value > 100000 grouping query runs < 1 sec.
With high_value = 100000: 1 < s
With high_value = 90000: 1 sec
With high_value = 80000: 3 sec
With high_value = 70000: 9 dry
With high_value = 60000: 17 dry
With high_value = 50000: 28 dry
With high_value = 40000: 34 dry
With high_value = 30000: 47 dry
With high_value = s 20000: 61
With high_value = 10000: 76 s
With high_value = s 1: 102

When I take pictures of the v$ sesstat before and after execution of the statement, I see that the slow queries show signifikant higher values for "CPU used when calling has begun", "CPU used by this session,"DB time","uga session in memory","pga session in memory.

But I have still no idea what the query does with all CPUS (maybe browse the possible - but non-existent partitions? "(Mais cela semble un peu ridicule)." In documentation (http://download.oracle.com/docs/cd/E11882_01/server.112/e16541/part_admin001.htm#VLDBG1088), I couldn't find any explanation (and I have no MOS access at the moment).

Can someone explain to me what is happening here?

Thanks and greetings

Martin

Edited by: mpreiss may 25, 2011 20:05

Edited by: mpreiss may 25, 2011 20:45

>

>

But I have still no idea what the query does with all CPUS (maybe browse the possible - but non-existent partitions? "(Mais cela semble un peu ridicule)." In documentation (http://download.oracle.com/docs/cd/E11882_01/server.112/e16541/part_admin001.htm#VLDBG1088), I couldn't find any explanation (and I have no MOS access at the moment).

Can someone explain to me what is happening here?

It looks like a bug - call him in to Oracle with a SR.

I repeated your test but only to insert a row into the table, and it took 15 seconds to run the query on my laptop when I put & high_value 25000.

Check the activity of rowcache $ v - this is where the CPU is going. You will see '100 000 - high_value' Gets the dc_tablespaces and dc_users rank of the cache entries when you run the query (and it's two hits on rowcache latch latch for each get).

Concerning
Jonathan Lewis

Tags: Database

Similar Questions

  • The slow queries with WITH and JOIN

    Hello
    This code takes too long to complete:
    WITH rawData AS -- 563 rows in 0.07s OR 59 rows in 0.02s
    (
    SELECT
         date_releve AS x1,
         index_corrige AS y1,
         LEAD(date_releve) OVER (PARTITION BY id_compteur ORDER BY date_releve) AS x2,
         LEAD(index_corrige) OVER (PARTITION BY id_compteur ORDER BY date_releve) AS y2,
         id AS id_releve,
         id_compteur
    FROM V_relevesCorriges
    ),
    
    meteoData AS -- 1082 rows in 1.34s OR 116 rows in 0.16s
    (
    SELECT avg(meteo.valeur) AS meteoValue, x2 AS dateMeteo, id_variable, id_releve, id_compteur
    FROM meteo, rawData
    WHERE date_meteo <= x2 AND date_meteo > x1
    GROUP BY id_releve, id_variable, x2, id_compteur
    ORDER BY x2
    ),
    
    consoData AS -- 1104 rows in 1.43s, 117 rows in 0.2s
    (
    SELECT
    to_char(x1, 'DD.MM.YYYY') || ' - ' || to_char(x2, 'DD.MM.YYYY') AS periode,
         meteoValue AS meteo_moyenne,
         (y2 - y1) / nullif((x2 - x1),0) AS conso_par_jour,
         (y2 - y1) AS conso,
         rawData.id_releve id_releve,
         meteoData.id_variable id_variable,
         meteoData.id_compteur id_compteur
    FROM rawData LEFT OUTER JOIN meteoData ON rawData.id_releve = meteoData.id_releve
    ORDER BY x2
    )
    
    SELECT periode, meteo_moyenne, conso_par_jour, consoData.id_variable id_variable, consoData.id_releve id_releve, id_compteur -- 1104 rows in 1.51s, 116 rows in 1.34s
    FROM consoData LEFT OUTER JOIN diagnostic2 ON consoData.id_releve = diagnostic2.id_releve AND consoData.id_variable = diagnostic2.id_variable
    WHERE Id_compteur = 4
    If I remove "WHERE Id_compteur = 4" on the last line, there is almost no difference in run time. Without this WHERE clause, it returns 1104 ranks in s 1.51, with her he returned 116 lines s 1.34.

    I say it takes too long because when I put this WHERE 'consoData' clause (WHERE meteoData.consoData = 4), he returns to 0 116rows. 2 sec., to get the same output of data. If I remove the LEFT OUTER JOIN diagnosis2 (last but one line) there are also 0. 2 s.

    I think that the solution would be to force "WHERE Id_compteur =... "to take effect before he joined the"diagnosis2"of the table, but do not know how to do.

    The subquery takes a lot of time when to return all the lines is "meteoData.

    This code is supposed to be a VIEW, so "WHERE Id_compteur =... ' will not be included in it but passed when you query the view. I tested it as a point of VIEW, same problem.

    Explain the plan:
    Plan hash value: 724835998
    -----------------------------------------------------------------------------------------------------------------------
    | Id | Operation | Name | Rows | Bytes |TempSpc| Cost (%CPU)| Time |
    -----------------------------------------------------------------------------------------------------------------------
    | 0 | SELECT STATEMENT | | 16364 | 1342K| | 586 (4)| 00:00:08 |
    | 1 | TEMP TABLE TRANSFORMATION | | | | | | |
    | 2 | LOAD AS SELECT | DIAGNOSTIC2 | | | | | |
    | 3 | WINDOW SORT | | 563 | 15764 | | 12 (25)| 00:00:01 |
    | 4 | VIEW | V_RELEVESCORRIGES | 563 | 15764 | | 11 (19)| 00:00:01 |
    | 5 | SORT GROUP BY | | 563 | 56300 | | 11 (19)| 00:00:01 |
    | 6 | VIEW | | 563 | 56300 | | 10 (10)| 00:00:01 |
    |* 7 | HASH JOIN RIGHT OUTER | | 563 | 25335 | | 10 (10)| 00:00:01 |
    | 8 | TABLE ACCESS FULL | COMPTEURS | 22 | 132 | | 3 (0)| 00:00:01 |
    | 9 | VIEW | | 563 | 21957 | | 7 (15)| 00:00:01 |
    |* 10 | HASH JOIN OUTER | | 563 | 26461 | | 7 (15)| 00:00:01 |
    | 11 | TABLE ACCESS FULL | RELEVES | 563 | 12949 | | 3 (0)| 00:00:01 |
    | 12 | VIEW | V_CORRECTIONDATA | 563 | 13512 | | 3 (0)| 00:00:01 |
    |* 13 | VIEW | | 563 | 28150 | | 3 (0)| 00:00:01 |
    | 14 | WINDOW SORT | | 563 | 67560 | | 3 (0)| 00:00:01 |
    | 15 | VIEW | | 563 | 67560 | | 3 (0)| 00:00:01 |
    | 16 | NESTED LOOPS OUTER| | 563 | 14638 | | 3 (0)| 00:00:01 |
    | 17 | TABLE ACCESS FULL| RELEVES | 563 | 12949 | | 3 (0)| 00:00:01 |
    |* 18 | INDEX UNIQUE SCAN| COMPTEURS_PK | 1 | 3 | | 0 (0)| 00:00:01 |
    |* 19 | HASH JOIN RIGHT OUTER | | 16364 | 1342K| | 573 (4)| 00:00:07 |
    | 20 | INDEX FULL SCAN | DIAGNOSTIC2_PK | 4 | 24 | | 1 (0)| 00:00:01 |
    | 21 | VIEW | | 16364 | 1246K| | 572 (4)| 00:00:07 |
    | 22 | SORT ORDER BY | | 16364 | 1661K| 3864K| 572 (4)| 00:00:07 |
    |* 23 | HASH JOIN | | 16364 | 1661K| | 179 (9)| 00:00:03 |
    | 24 | VIEW | | 1157 | 55536 | | 3 (0)| 00:00:01 |
    | 25 | TABLE ACCESS FULL | SYS_TEMP_0FD9D6657_90A96D1D | 1157 | 55536 | | 3 (0)| 00:00:01 |
    |* 26 | VIEW | | 7963 | 435K| | 175 (8)| 00:00:03 |
    | 27 | SORT GROUP BY | | 7963 | 311K| 1768K| 175 (8)| 00:00:03 |
    | 28 | MERGE JOIN | | 26409 | 1031K| | 23 (48)| 00:00:01 |
    | 29 | SORT JOIN | | 1157 | 28925 | | 4 (25)| 00:00:01 |
    | 30 | VIEW | | 1157 | 28925 | | 3 (0)| 00:00:01 |
    | 31 | TABLE ACCESS FULL | SYS_TEMP_0FD9D6657_90A96D1D | 1157 | 55536 | | 3 (0)| 00:00:01 |
    |* 32 | FILTER | | | | | | |
    |* 33 | SORT JOIN | | 9130 | 133K| | 11 (19)| 00:00:01 |
    | 34 | TABLE ACCESS FULL | METEO | 9130 | 133K| | 9 (0)| 00:00:01 |
    -----------------------------------------------------------------------------------------------------------------------
    Predicate Information (identified by operation id):
    ---------------------------------------------------
    7 - access("RELEVES"."ID_COMPTEUR"="COMPTEURS"."ID"(+))
    10 - access("RELEVES"."ID_COMPTEUR"="V_CORRECTIONDATA"."ID_COMPTEUR"(+))
    filter("RELEVES"."DATE_RELEVE">="V_CORRECTIONDATA"."DATE_CHANGEMENT"(+))
    13 - filter("CHG_COMPTEUR"=1 AND "ID_COMPTEUR"="ID_COMPTEUR_CORR")
    18 - access("RELEVES"."ID_COMPTEUR"="COMPTEURS"."ID"(+))
    19 - access("CONSODATA"."ID_VARIABLE"="DIAGNOSTIC2"."ID_VARIABLE"(+) AND
    "CONSODATA"."ID_RELEVE"="DIAGNOSTIC2"."ID_RELEVE"(+))
    23 - access("RAWDATA"."ID_RELEVE"="METEODATA"."ID_RELEVE")
    26 - filter("METEODATA"."ID_COMPTEUR"=4)
    32 - filter("DATE_METEO">"X1")
    33 - access(INTERNAL_FUNCTION("DATE_METEO")<=INTERNAL_FUNCTION("X2"))
    filter(INTERNAL_FUNCTION("DATE_METEO")<=INTERNAL_FUNCTION("X2"))
    Oracle database version: 10.2.0.4.0, I'm accessing through the APEX version 4.1.1.00.23

    I hope that my question is not too blurred...

    Ah, sorry, I missed that bit in your original post. I had a similar problem where I was adamant that the predicate must be pushed into the view (despite the use of analytical functions - they used the conditions that would allow the predicate be pushed): http://www.orchestrapit.co.uk/?p=55

    In the end, I solved my problem by using joins to inline, rather than the subquery factoring - maybe you can try to convert your view online views and see if that helps?

  • Did a system restore complete with built-in recovery partition on the hard drive, the recovery went well, but the computer is still slow and freezing.

    Original title: computer always slow and freezing after clean install

    It is a compaq 2007 desktop running windows vista premium, I work on it for a friend, they said he was running slow and freezing up all the time so I just went ahead and did a system restore complete with built-in recovery partition on the hard drive, the recovery went well but still have the same problems with the computer being slow and freezing up. any help would be appreciated thanks.

    Hello

    Step 2: You can also check if the problem persists in the clean boot state.

    Put your boot system helps determine if third-party applications or startup items are causing the problem.
     
    Try the steps in step 1 in the article to put your computer in clean boot mode.
    http://support.Microsoft.com/kb/929135

    Thanks and greetings
    Umesh P - Microsoft technical support.

    Visit our Microsoft answers feedback Forum and let us know what you think.
    [If this post can help solve your problem, please click the 'Mark as answer' or 'Useful' at the top of this message.] [Marking a post as answer, or relatively useful, you help others find the answer more quickly.]

  • Disable LOGGING for partition table based on the automatic INTERVAL

    Hello

    I created a database table of paritioned range interval with NOLOGGING as the default attribute for the table as well as the tablespace definition.

    When ORACLE automatically creates a new partition for this table, it activates the LOGGING for this automatic partition even if the table definition says anything else.

    How can I go about changing this behavior? Is it still possible?

    FYI my platform is 11 GR 1 (11.1.0.7) material on SUN SOLARIS 10 SPARC.

    Any help will be appreciated.

    Right, so refer to a new feature of Oracle 11 g partitioning called 'partitioning interval. "

    +"+
    + The interval partitioning: A new strategy of partitioning in Oracle Database 11g, +.
    + Interval partitioning extends the functionality of the method range to define equipartitioned +.
    + ranges using a definition of the interval. Rather than specify individual +.
    + going to explicitly, Oracle will create any partition automatically as needed.
    + every time the data of a partition are inserted for the first time. Interval +.
    + a lot of partitioning improves maneuverability of a partitioned table. For +.
    example, + a partitioned table interval could be set so that Oracle creates a +.
    + new partition for each month in a calendar year; a partition is then automatically +.
    + created for "September 2007" as soon as the first record in this month is inserted.
    + in the database. +
    + The techniques available for a partitioned table interval are interval, interval-+.
    + List, range-Hash, and interval range. +
    +"+

    In order to disable interval partitioning on the transactions table, use:
    
    ALTER TABLE transactions SET INTERVAL ();
    

    http://download.Oracle.com/docs/CD/B28359_01/server.111/b32024/part_admin.htm

    Disable partitioning interval on this table, create a procedure to run every day we'll say, to create a new partition and chop the old partition of the appropriate table. I presume that the automatic partitioning interval creates the partition with the logging by default option without checking the parameters in the table. I have seen no information on this in the Oracle documentation.

    Hope that helps.

    Ogan

  • Since the installation on my Windows 7 64 - bit installed, Firefox has constantly gotten slow that hour passes, hangs for 10-15 seconds at a time and just gets worse over time with updates and all.

    Since the installation on my Windows 7 64 - bit installed, Firefox has constantly gotten slow that hour passes, hangs for 10-15 seconds at a time and just gets worse over time with updates and all. It was fast when I installed first, but of the six latest mos has slown to a crawl.

    upgrade your browser Firefox 8 and try

  • Reg: Cardinality Feedback for queries with variable bind

    Hi all

    One of my query (having no bind variables) takes a lot of time (10 minutes) to run for the second run.

    I came to know that its due to the feedback of the cardinality.

    I disabled _optimer_use_feedback for help and the query has been run within 2 seconds.

    If I disable _optimizer_use_feedback at the instance level, is there a problem for queries with variable bind?

    > Sorry! I'm not suppose to disclose the NAMES OF THE TABLES

    OK, no problem and I take this restriction as a chance to learn what is cardinality comments, and similar expressions.  Now, since you can't explain post program for our help, I would try to explain what is comments of cardinality and similar expressions: (since you did not mention Oracle version, so I guess it's 11.2.0.1)

    In the Oracle 11.2.0.1 database some SQL statements returns significantly different lines i.e. for some SQL statements earlier execution plan there are has 100 lines by optimizer in the first plan of execution and, where the same SQL statement executed, based optimizer 1000 lines.  This happens because of several cursors for child for a single SQL statement and change bind peeking, collection of statistics, characteristic of re-optimizing 11.2.0.1, permission to referenced objects, ACS (Adaptive Cursor sharing) etc.  The preaching of changes to lines due to above reasons as well regarding also the SQL statements that are not contains the variable i.e. AKA vibration cardinality of liaison function.

    I will highly recommend to read other links below:

    Cardinality feedback | Notebook of the Oracle

    http://www.centrexcc.com/tuning%20by%20Cardinality%20Feedback.ppt.PDF

    https://blogs.Oracle.com/optimizer/entry/cardinality_feedback

    Concerning

    Girish Sharma

  • Partitioning interval. How to choose the name of the partition

    Hi all

    Is there a wat to choose the name of the partition when new partitions are created?
    Instead of "SYS_P101", I mean something like CUSTOMRES_P_256, where 256 is the new value that caused the creation of the partition.

    The reason is that, before you launch a long process I need to collect statistics on the partition based on this number

    Thanks in advance,

    You can rename a partition with your preferred naming convention:

    alter table CUSTOMER rename partition SYS_P101 to CUSTOMRES_P_256;
    

    But you first need to know the name of the partition. One thing I have used in cases when a partition interval has not created yet is to insert a record with the new partition key value so that the partition interval is created, then get the name of the partition and then push the insert. In this way, you know the name of partition before any data is loaded.

    Of course, you can query dba_tab_partitions and examine the high_value column to select the correct partition. However, I prefer the method of obtaining the name of the next partition. It gives you the name of the partition for a row in a table. This is also useful for existing data (not only new partitions) If you need to find the partition where a certain rank.

    select subobject_name
    into v_partition
    from ALL_OBJECTS
    where OWNER = 'SCHEMA_OWNER'
    AND data_object_id in (select dbms_rowid.rowid_object(rowid)
                                     from FACT_TABLE
                                     where PARTITION_KEY_COL = MY_VALUE
                                     and rownum = 1);
    

    You can then use the name of the partition to load your facts, statistics or rename the partition.

  • partition interval on the data type TIMESTAMP PrimaryKey

    question:
    Need example of Oracle Interval partitioning on the TIMESTAMP data type of primary key, including the LOCAL INDEX generated by partitioned interval key functional

    Published by: oracletune on April 17, 2013 07:51

    >
    * It seems that interval of time STAMP partitioning is not supported:
    >
    This is not correct.
    >
    Partitioning interval is limited to a partition key unique to a numeric or date range.
    >
    The above is YOUR text and is NOT what the doc.

    The VLDB and partitioning Guide
    http://docs.Oracle.com/CD/E18283_01/server.112/e16541/part_admin001.htm#BAJHFFBE
    >
    For the partitioning of the interval, the partitioning key can be a single column of the table name, and it must be the number or DATE type.
    >
    Which must be read carefully. It is said should be "NUMBER or DATE type. Note that 'DATE type' does NOT mean 'Type of DATE data. A TIMESTAMP (but not TIMESTAMP WITH TIMEZONE) are a type of DATE. It's confusing and the doc must could be formulated differently.

    This code is very well:

    drop table test_part_timestamp
    
    CREATE TABLE TEST_PART_TIMESTAMP
    (
    PRODUCT_ID NUMBER,
    DESCRIPTION VARCHAR2(20 BYTE),
    CREATE_DATE TIMESTAMP(6)
    )
    PARTITION BY RANGE (CREATE_DATE)
    INTERVAL(NUMTOYMINTERVAL(1, 'MONTH'))
    (
    PARTITION OLD_DATA VALUES LESS THAN (TIMESTAMP' 2013-01-01 00:00:00'),
    PARTITION P_2013_JAN VALUES LESS THAN (TIMESTAMP' 2013-02-01 00:00:00')
    )
    
  • modify an existing table to selectively the partition interval range

    I'm using Oracle 11.2.0.3.

    I have an existing table that has parition interval range.

    example:
     
    create table Log( ts date, level  varchar2(20), scr varchar2(2000))PARTITION BY RANGE (TS)
    INTERVAL( NUMTODSINTERVAL(1,'DAY'))
    Currently, we have the log of the table that is the partition of the range by day and we drop old parition to a week. However, we want to change this to persist the records in the table of WHICH = LEVEL "IMPORTANT."

    What is the best way to achieve this?

    >
    Is it possible to modify the existing interval partition table to add partition in the list?
    >
    Only using the DBMS_REDEFINITION to do online. And that always involves the creation of a "provisional" table

    If you have a window of failure just to create a new partitioned table the way you want to and INSERT the data into it. You should be able to use a DEC to do if you want. You may not use swap partition since all data must be physically moved.
    >
    Can we do list-interval partition table i.e. (with partition interval as partition sup)?
    >
    No - subpartitioning of interval is not currently supported.

    Here is the code example of a partitioned table by using the RANGE-interval LIST. It uses a VIRTUAL column, but you can ignore it for your use case

    DROP TABLE mytable;
    
    CREATE TABLE mytable
    (
    CREATION_DATE TIMESTAMP(6),
    LAST_MODIFIED_DATE TIMESTAMP(6),
    CREATION_DAY NUMBER(2) GENERATED ALWAYS AS (TO_NUMBER(TO_CHAR(CREATION_DATE, 'DD'))) VIRTUAL
    )
    PARTITION BY RANGE (LAST_MODIFIED_DATE) INTERVAL(NUMTOYMINTERVAL(1, 'MONTH'))
    SUBPARTITION BY LIST (CREATION_DAY)
       SUBPARTITION TEMPLATE
       ( SUBPARTITION days_1_5 VALUES (1,2,3,4,5)
       , SUBPARTITION days_6_10 VALUES (6,7,8,9,10)
       , SUBPARTITION days_11_15 VALUES (11,12,13,14,15)
       , SUBPARTITION days_16_20 VALUES (16,17,18,19,20)
       , SUBPARTITION days_21_25 VALUES (21,22,23,24,25)
       , SUBPARTITION days_26_31 VALUES (26,27,28,29,30,31)
       )
    (
       PARTITION prior_to_2013 VALUES LESS THAN (TO_DATE('2013-01-01', 'YYYY-MM-DD'))
    )
    
  • Tips on how to make a business case for partitioning

    Hello world

    I am the architect of a team of business intelligence/data warehouse. We have grown to the point where I think that we need database partitioning. I believe that we are at approximately 1.5 TB of data. Our larger tables are the counts of 100 million lines with relatively large lengths Records (~ 100 columns). Our just a sort of large tables are of the order of 10 million to 50 million, however, they have very long line lengths (~ 300 columns). Based on the plans of our future source system, our data will become even more granular, and it is always necessary to maintain our historical data.

    Those who are not the only reasons, but are some conduct issues that make most of our team members think it's time we purchased database partitioning. Our team is fairly unanimous for partitioning, many of our partners from the source system also deem an 'evidence', however, we get a push back of our CIO saying that 1.5 TB and 100 million records is not only the large amount of data compared to other 'big Data' businesses and that it requires no partitioning.

    Anyone has any advice on how to make a business case for the purchase of partitioning? Is there a good way to demonstrate the value of profitability-vs?

    Thanks for your comments.

    -= Joe

    The best cost c. analysis of benefits is that you put together based on points regardless of the pain you feel.

    For example, you have pain around your evening of meeting load ALS? If you do, you can watch how (and if) partitioning would allow you to streamline your loading process and how much time you would save probably every night. If you have no problem hitting your evening load ALS today, however, this probably isn't something you want to focus on.

    You have pain around query response time? If Yes, you can watch how (and if) partitioning would improve some of the queries and most important reports. Or, perhaps, he would have you to allow users to do an ad hoc analysis more than you can't afford today because the cost would be prohibitive.

    Although you will find no doubt generic cost v. benefit whitepapers, it tends to make a much better case if you focus on what causes the pain of the company and what you as the application developers are willing to commit to. It is easy for a CIO watch a generic white paper saying "partitioning reduces ETL time up to 99%" and the question of what improvements he or she would have actually see and how this is marketing hype. It is much more difficult to look at a document put in place by the data warehouse team saying "partitioning would allow us to reduce the load of X of Y hours on Z hours every night. "That would allow us to hit our SLA w % more often without adding hardware / additional treatment for A project that we have been postpone / let Department B start to work with the data more early every morning / what causes the pain of the IOC. Of course, this means that he must be willing to make such commitments (and, of course, to meet).

    Justin

  • Why don't XMLIndex not used in slow queries against an XMLType Table?

    We have a slow queries based on XML with the help of XMLTable shown here running on 11 g Rel 2 (11.2.0.1) - basis for SUNOS:

    select xcust.eid, xmi.ami, xmi.memberNum, xmi.accountNum
    from CROUTREACH.acme_cust cust,
       XMLTable( XMLNAMESPACES(default 'http://www.cigna.com/acme/domains/customer/customerprofile/2011/11'),
           '$doc/customerProfile'
            passing cust.object_value as "doc"
            columns 
               eid varchar2(50) path '@eid'
       ) xcust,
       XMLTable(XMLNAMESPACES(default 'http://www.cigna.com/acme/domains/customer/customerprofile/2011/11'),
           'for $i in /customerProfile/memberInfos/memberInfo return $i'
            passing cust.object_value
            columns
               ami varchar2(15) path 'ami',
               memberNum varchar(20) path 'clientRelationship/memberNum',
               accountNum varchar(20) path 'clientRelationship/accountNum'
      ) xmi
    *where xmi.accountNum = '3174016'*
    *and xmi.memberNum = '07646258301'*
    The development team noted:

    "It worked for a while (minutes)." I'm not familiar with indexing on XML tables, but if we can somehow index by Member num/acct num (even temporarily), I think that it would speed up the process considerably. »

    We have team added Oracle DBA fields num num/acct members to this xmlindex to recreate:
    CREATE INDEX ACME_CUST_XMLINDEX_IX ON ACME_CUST (OBJECT_VALUE) 
          INDEXTYPE IS XDB.XMLINDEX  PARAMETERS ('XMLTABLE ACME_CUST_IDX_TAB 
             XMLNamespaces (''http://www.cigna.com/acme/domains/commoncontact/2011/11'' as "cm",
                 default ''http://www.cigna.com/acme/domains/customer/customerprofile/2011/11''),
             ''/customerProfile'' 
            columns
               DOB date  PATH ''personInformation/cm:birthDate'',
               FIRSTNAME varchar2(40)    PATH ''name/cm:givenName'',
               LASTNAME varchar2(40)  PATH ''name/cm:surName'', 
               SSN varchar2(30) PATH ''identifiers/ssn'',
               MEMBERINFOS XMLType path ''memberInfos/memberInfo'' VIRTUAL 
    
           XMLTable acme_cust_lev2_idx_tab 
           XMLNAMESPACES(default ''http://www.cigna.com/acme/domains/customer/customerprofile/2011/11''),
           ''/memberInfo'' passing MEMBERINFOS 
           columns 
              ami varchar2(40) PATH ''ami'',
              subscId varchar2(50) PATH ''clientRelationship/subscriberInformation/subscriberId'', 
              employeeId varchar2(50) PATH ''systemKeys/employeeId'', 
              clientId varchar2(50) PATH ''clientRelationship/clientId'',
              *accountNum varchar2(50) PATH ''clientRelationship/accountNum''*,
              *memberNum varchar2(50) PATH ''clientRelationship/memberNum'''*) PARALLEL 16;
    Unfortunately, when we run the query XML is slow; a full table scan occurs on the query and the xmlindex do not get used.
    We are at a lost as to why the xmlindex serves not - before and after collecting pass them on the underlying table for the ACME_CUST?
    Especially with highly selective predicates in the WHERE clause.


    Here is the definition of table ACME_CUST:
    CREATE TABLE "CROUTREACH"."ACME_CUST" OF XMLTYPE
      (
        CONSTRAINT "ACME_CUST_ID_PK" PRIMARY KEY ("ACME_CUST_ID") USING INDEX
        PCTFREE 10 INITRANS 2 MAXTRANS 255 COMPUTE STATISTICS STORAGE(INITIAL 65536
        NEXT 1048576 MINEXTENTS 1 MAXEXTENTS 2147483645 PCTINCREASE 0 FREELISTS 1
        FREELIST GROUPS 1 BUFFER_POOL DEFAULT FLASH_CACHE DEFAULT CELL_FLASH_CACHE
        DEFAULT) TABLESPACE "ACME_DATA" ENABLE
      )
      XMLTYPE STORE AS SECUREFILE BINARY XML
      (
        TABLESPACE "ACME_DATA" ENABLE STORAGE IN ROW CHUNK 8192 CACHE READS LOGGING
        NOCOMPRESS KEEP_DUPLICATES STORAGE(INITIAL 106496 NEXT 1048576 MINEXTENTS 1
        MAXEXTENTS 2147483645 PCTINCREASE 0 BUFFER_POOL DEFAULT FLASH_CACHE DEFAULT
        CELL_FLASH_CACHE DEFAULT)
      )
      ALLOW NONSCHEMA ALLOW ANYSCHEMA VIRTUAL COLUMNS
      (
        "EID" AS (CAST(SYS_XQ_UPKXML2SQL(SYS_XQEXVAL(XMLQUERY(
        'declare default element namespace "http://www.cigna.com/acme/domains/customer/customerprofile/2011/11"; (::)                               
    /customerProfile/@eid'
        PASSING BY VALUE SYS_MAKEXML(128,"XMLDATA") RETURNING CONTENT ),0,0,
        16777216,0),50,1,2) AS VARCHAR2(15))),
        "ACME_CUST_ID" AS (CAST(SYS_XQ_UPKXML2SQL(SYS_XQEXVAL(XMLQUERY(
        'declare default element namespace "http://www.cigna.com/acme/domains/customer/customerprofile/2011/11"; (::)                               
    /customerProfile/@id'
        PASSING BY VALUE SYS_MAKEXML(128,"XMLDATA") RETURNING CONTENT ),0,0,
        16777216,0),50,1,2) AS VARCHAR2(50))),
        "CRET_DT" AS (SYS_EXTRACT_UTC(CAST(TO_TIMESTAMP_TZ(SYS_XQ_UPKXML2SQL(
        SYS_XQEXVAL(XMLQUERY(
        'declare default element namespace "http://www.cigna.com/acme/domains/customer/customerprofile/2011/11"; (::)                                                                                                       
    /customerProfile/@create_dt'
        PASSING BY VALUE SYS_MAKEXML(128,"XMLDATA") RETURNING CONTENT ),0,0,
        16777216,0),50,1,2),'SYYYY-MM-DD"T"HH24:MI:SS.FFTZH:TZM') AS TIMESTAMP
    WITH
      TIME ZONE)))
      )
      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 FLASH_CACHE DEFAULT
        CELL_FLASH_CACHE DEFAULT
      )
      TABLESPACE "ACME_DATA" ;
    Any help on this is much appreciated to say the least!

    Kind regards
    Rick Blanchard

    Could you post an explain plan?

  • PC running slow increadibly with 128 MB of RAM - recommended to increase the RAM

    Original title: pc running slow increadibly with 128 MB of RAM

    My mother's PC runs incredibley slowly.
    After you perform a clean installation of win xp and addition of firefox, and avast antivirus, pc still increadibly slow.
    His laptop is a HP Omnibook xe4100 and has 128 MB of ram.
    What I do need to update the ram of the laptop computer or is the problem of something that can be fixed with software recording cleaning?
    Thanks for any help on this!

    If you did a clean install, it is not the registry slow down your computer. A clean installation removes all and back windows on the system with just windows files, so the registry is only what is absolutely need to run.

    128 MB of RAM is incredibly low, so even if the slowness is caused by something else, you should buy more in any case, because it will help the computer a little.

  • OKR preserved with the implementation form/partition conversion?

    I am a new owner of an Ideapad S12 - as well as new to this forum, so I apologize if I didn't search well enough, but I could not find explicit answers to what I'm wondering.

    I understand that OneKey Recovery will continue to work as long as the disk partition HARD sizes remain unchanged. But let's OKR also continue working if I format and/or to change the file system, but leave the partitions and partition sizes unchanged? Specifically, I want to maintain the Restore Factory Default option when you press the OKR when arrested.

    Here are the current provision of the HARD drive:

    • Primary partition (C:, FAT32)
    • Extended partition (logical drive D:, NTFS)
    • (Inaccessible from Windows, NTFS) recovery partition

    I am considering the following actions:

    • convert C: from FAT32 to NTFS by using the command line in Windows
    • do a clean install of Windows, C: to NTFS formatting, leaving only the D:
    • do a clean installation of Windows, try to convert an extended in a primary partition partition D:

    I read on the people who make the first action without any problem, but OKR still work? I also have never worked with extended partitions, so I don't even know if the second and third actions are possible, a fortiori if they preserve OKR.

    I was quite surprised that the HARD disk has been partitioned so archaically, with FAT32 and extended partitions. I hope someone can tell me how can I go with formatting without losing the ability to restore my default HARD drive!

    Hello

    There is a big NO...

    Sentence: Small things could change the world... full up here

    ... But a full backup is always the best solution... When you invest a couple of hours after the backup

    You can do what you want... fresh install XP Home or Prof.... or Multiboot... Windows 7... Vista... SnowLeo... anything...

    but when you want to change something on the hard disk before the backup, you are alone in the dark .

    No one could help you easily or, in the case of bad tie...! Its your own risk!

    I prefer once again...

    Without costs high, why not use it... But needs a key-USB-DVD!

    EASEUS to do the backup will do likewise.

    the difference is, you need a CD player to start the rescue media program

    & minimum a 8 GB USB stick / HARD drive for the backupfile... & more time... but it's free...

    cordially KalvinKlein

    If you want to see what can happen Ive wrote a small article in German map S-series, translated by google

    Press F11 for lack of operating system

    Original article in German language, if you can read German

    Not translated Press F11 for lack of operating system

    In short repeat... it's S10e doesn't come with OKR but always symptom even on all S-Series...

    That's what you get after partitioning or re-formatting change

    First look seems OK...

    To start on the rescue and the recovery environment. Press F11

    But when press F11... you got it... uuuppps...

    Missing operating system

    So, what are you waiting for

    Trust people, not machines

  • Time of very slow start with SSD

    Hello

    I spent the last few days the net trying to find a solution to the boot of win7 very slow but have led to nothing so far trawling.
    Im running Win7 Pro in bootcamp on a Macbook Pro with an SSD and 16 GB of RAM, but don't get a time horribly slow start, including a screen black (with usable mouse) for a long time before the watch office. I am not able to do a reinstall but would like to get the issue resolved if possible.

    So far, I checked the event viewer to see there are problems and I don't see anything significant that the mere fact that each entry includes an 'Error' level, but I don't see what this error. I also used the process monitor to see what takes so long and there are a couple of processes which are time consuming and show a result 'Cancelled', one being svchost.exe 110secs (path: ...system32\drivers\etc) and the other 23secs Explorer.exe (path: ...appdata\roaming\microsoft\systemcertificates\my)
    I should mention that I'm very new to this kind of troubleshooting but would appreciate any help I can get!
    Thank you!

    The problem is that windows has been hanged in trying to restore network connections. Problem solved!

  • Slow WiFi with Broadcom 4322

    After upgrading my laptop HP DV7 with Windows 8, I found my wireless connection was extremely slow. My card is a Broadcom 4322AG. This seems to be the same problem as has been in the forum


    Slow WiFi with Broadcom 4322 and Windows 8 CP.

    Following the advice in this forum, I changed to TKIP AES security and everything seems to work properly.

    Thanks a lot for sharing your solution! My problem was that I downloaded at least 1 Mbit/s and transferred approximately 15 Mbps. Then I changed to TKIP, just as you said and now I'm moving 21 Mbps of download and 19 Mbps downloading. All this on a MacBook 5.1 :)

Maybe you are looking for

  • Update to iTunes 12.4 freezes to halfway

    According to the subject line... I tried to update my iTunes to version 12.4, but it won't get past 85.9 MB. Here is a screenshot: I have a MacBook Pro 2.5 GHz Intel Core i7, bought in September 2015 15 ". I can't suspend or cancel the update, and of

  • HP Pavilion Touchsmart 23 All in One, drops WiFI

    If I look at You Tube or delete the similar Wifi computer in about a minute.  I've sent to HP twice for this problem and it always does. They gave me a numbver to call if I had a new problem.  The person said that my router went down the signal to th

  • The process Web Kit 2 Web, exe has stopped working? What is this and how do I get rid of him.

    Whenever I send an email that the warning box appears - WebKit2 process Web, exe has stopped working. I hit close program, then he gets me out of my Inbox. If I do not close the warning box my computer would you like s in limbo. What is is? It is not

  • I use Outlook Exress 6 to retrieve gmail; Unable to send or receive.

    SE error message: "your server has ended suddenly the connection. The possible causes for this include server problems, network problems, or a long period of inactivity. Account: Gmail 'XXX', server: 'smtp.gmail.com', Protocol: SMTP, Port: 465, secur

  • Cannot uninstall Knctr - there is no such thing as Unins000.dat

    I want to uninstall the software name is "Knctr", the Publisher is "Itibiti Inc.".  I went into the control panel and tried to uninstall.  When I clicked on "Uninstall", a dialog box came up and showed - file ' C:/Program Files/Itibiti app Phone/Unin