Which consistent get for which block

Hello Experts,
I have conducted an experiment at SQL*PLUS. I created a small table with 100 rows and then create an ununique index on the id column.
SQL> alter system flush shared_pool;
Sistem dei■tirildi.
SQL> create table small as
2 select rownum id, 'BOWIE' name from dual connect by level <= 100;
SQL> create index small_id_i on small(id);
SQL> alter session set tracefile_identifier = '100114_deneme2';
Oturum dei■tirildi.
SQL> exec dbms_monitor.session_trace_enable(waits => true);
PL/SQL yordam² ba■ar²yla tamamland².
SQL> select * from small where id = 44;
        ID NAME
        44 BOWIE
SQL> exec dbms_monitor.session_trace_disable;
PL/SQL yordam² ba■ar²yla tamamland².
After executed the above, I looked the trace file. The following excerpt was taken from end of the trace file.
=====================
PARSING IN CURSOR #4 len=210 dep=1 uid=0 oct=3 lid=0 tim=7391216619 hv=864012087 ad='7ff5f8385a8' sqlid='96g93hntrzjtr'
select /*+ rule */ bucket_cnt, row_cnt, cache_cnt, null_cnt, timestamp#, sample_size, minimum, maximum, distcnt, lowval, hival, density, col#, spare1, spare2, avgcln from hist_head$ where obj#=:1 and intcol#=:2
END OF STMT
EXEC #4:c=0,e=19,p=0,cr=0,cu=0,mis=0,r=0,dep=1,og=3,plh=2239883476,tim=7391216618
FETCH #4:c=0,e=10,p=0,cr=2,cu=0,mis=0,r=0,dep=1,og=3,plh=2239883476,tim=7391216713
CLOSE #4:c=0,e=2,dep=1,type=3,tim=7391216749
=====================
PARSING IN CURSOR #5 len=33 dep=0 uid=85 oct=3 lid=85 tim=7391217024 hv=1889534919 ad='7ff5f503f40' sqlid='c97q0gdsa00y7'
select * from small where id = 44
END OF STMT
PARSE #5:c=46800,e=121273,p=0,cr=52,cu=0,mis=1,r=0,dep=0,og=1,plh=1841720936,tim=7391217023
EXEC #5:c=0,e=17,p=0,cr=0,cu=0,mis=0,r=0,dep=0,og=1,plh=1841720936,tim=7391217119
WAIT #5: nam='SQL*Net message to client' ela= 1 driver id=1111838976 #bytes=1 p3=0 obj#=-1 tim=7391217185
FETCH #5:c=0,e=21,p=0,cr=2,cu=0,mis=0,r=1,dep=0,og=1,plh=1841720936,tim=7391217243
WAIT #5: nam='SQL*Net message from client' ela= 304 driver id=1111838976 #bytes=1 p3=0 obj#=-1 tim=7391217590
FETCH #5:c=0,e=13,p=0,cr=1,cu=0,mis=0,r=0,dep=0,og=1,plh=1841720936,tim=7391217673
STAT #5 id=1 cnt=1 pid=0 pos=1 obj=76014 op='TABLE ACCESS BY INDEX ROWID SMALL (cr=3 pr=0 pw=0 time=0 us cost=2 size=20 card=1)'
STAT #5 id=2 cnt=1 pid=1 pos=1 obj=76015 op='INDEX RANGE SCAN SMALL_ID_I (cr=2 pr=0 pw=0 time=0 us cost=1 size=0 card=1)'
WAIT #5: nam='SQL*Net message to client' ela= 1 driver id=1111838976 #bytes=1 p3=0 obj#=-1 tim=7391217792
*** 2014-01-10 15:10:36.712
WAIT #5: nam='SQL*Net message from client' ela= 23061079 driver id=1111838976 #bytes=1 p3=0 obj#=-1 tim=7414278895
CLOSE #5:c=0,e=27,dep=0,type=0,tim=7414279115
=====================
PARSING IN CURSOR #1 len=48 dep=0 uid=85 oct=47 lid=85 tim=7414281226 hv=3585424577 ad='7ff5f6ea810' sqlid='fypj2tgavag61'
BEGIN dbms_monitor.session_trace_disable; END;
END OF STMT
PARSE #1:c=15600,e=2045,p=0,cr=0,cu=0,mis=1,r=0,dep=0,og=1,plh=0,tim=7414281224
EXEC #1:c=0,e=1052,p=0,cr=0,cu=0,mis=0,r=1,dep=0,og=1,plh=0,tim=7414282442
My question is; Although this is very small table, I created an index. As you can see there are 3 consistent gets arise (cr=3). There is no doubt that the first consistent get happen on leaf block and the other on the table block. However, Does the third consistent get happen on which block?
In my opinion, The last consistent get should be on table block. Becacuse, according to the following thread  (https://community.oracle.com/message/10711767). As far as I know from Solomon, there is fetch and there is prefetch. SQL*PLUS is written in OCI and in OCI prefetch defaults to 1. So, if you issue a query on SQL*PLUS and if this query returns one or more rows the first fetch and the second fetch should be on the same table block.
Also, can't we say that the last cr happen on table block by looking explain plan? Because, as it can be seen, cr was icreamented when table access by index rowid small line.
STAT #5 id=1 cnt=1 pid=0 pos=1 obj=76014 op='TABLE ACCESS BY INDEX ROWID SMALL (cr=3 pr=0 pw=0 time=0 us cost=2 size=20 card=1)'
STAT #5 id=2 cnt=1 pid=1 pos=1 obj=76015 op='INDEX RANGE SCAN SMALL_ID_I (cr=2 pr=0 pw=0 time=0 us cost=1 size=0 card=1)'
My second question, What can we do in order to understand which consistent get happen on which block (file# block# etc.)? Can't we understand by looking the trace file?
My third question is, before issue the select query on table. I flushed the shared pool. Does it make the parse 52 cr (Because of recursive calls)???
PARSE #5:c=46800,e=121273,p=0,cr=52,cu=0,mis=1,r=0,dep=0,og=1,plh=1841720936,tim=7391217023
I also trace 10200 event, if you want I also can show 10200 trace file. I didn't show it because I don't know how to read 10200 trace event.
Thanks in advance.

For example following 10200 trace event arised by select * from small where id = 42;
*** 2014-01-10 14:56:58.492
*** SESSION ID:(135.468) 2014-01-10 14:56:58.492
*** CLIENT ID:() 2014-01-10 14:56:58.492
*** SERVICE NAME:(SYS$USERS) 2014-01-10 14:56:58.492
*** MODULE NAME:(SQL*Plus) 2014-01-10 14:56:58.492
*** ACTION NAME:() 2014-01-10 14:56:58.492
ktrget2(): started for block  <0x0004 : 0x010006bb> objd: 0x000128ee
env: (scn: 0x0000.004d5549  xid: 0x0000.000.00000000  uba: 0x00000000.0000.00  statement num=0  parent xid: xid: 0x0000.000.00000000  scn: 0x0000.00000000 97sch: scn: 0x0000.00000000  mascn: (scn: 0x0000.004d550c)
ktrexf(): returning 9 on:  0000000021DD1524  scn: 0xffff.ffffffff  xid: 0x0000.000.00000000  uba: 0x00000000.0000.00  scn: 0xffff.ffffffff  sfl: 0
ktrgcm(): completed for block  <0x0004 : 0x010006bb> objd: 0x000128ee
ktrget2(): completed for  block <0x0004 : 0x010006bb> objd: 0x000128ee
ktrgtc2(): started for block <0x0004 : 0x010006c3> objd: 0x000128ef
  env: (scn: 0x0000.004d5549  xid: 0x0000.000.00000000  uba: 0x00000000.0000.00  statement num=0  parent xid: xid: 0x0000.000.00000000  scn: 0x0000.00000000 97sch: scn: 0x0000.00000000  mascn: (scn: 0x0000.004d550c)
ktrexc(): returning 8 on:  0000000021DD1524  scn: 0xffff.ffffffff  xid: 0x0000.000.00000000  uba: 0x00000000.0000.00  scn: 0xffff.ffffffff  sfl: 0
ktrgtc2(): completed for block <0x0004 : 0x010006c3> objd: 0x000128ef
ktrgtc2(): started for block <0x0000 : 0x00400b49> objd: 0x000001aa
  env: (scn: 0x0000.004d5549  xid: 0x0000.000.00000000  uba: 0x00000000.0000.00  statement num=0  parent xid: xid: 0x0000.000.00000000  scn: 0x0000.00000000 96sch: scn: 0x0000.00000000  mascn: (scn: 0x0000.004d550c)
ktrexc(): returning 2 on:  0000000021DD1524  scn: 0xffff.ffffffff  xid: 0x0000.000.00000000  uba: 0x00000000.0000.00  scn: 0xffff.ffffffff  sfl: 0
ktrgtc2(): completed for block <0x0000 : 0x00400b49> objd: 0x000001aa
ktrget2(): started for block  <0x0000 : 0x00415c82> objd: 0x000001aa
env: (scn: 0x0000.004d5549  xid: 0x0000.000.00000000  uba: 0x00000000.0000.00  statement num=0  parent xid: xid: 0x0000.000.00000000  scn: 0x0000.00000000 96sch: scn: 0x0000.00000000  mascn: (scn: 0x0000.004d550c)
ktrexf(): returning 9 on:  0000000021DD1524  scn: 0xffff.ffffffff  xid: 0x0000.000.00000000  uba: 0x00000000.0000.00  scn: 0xffff.ffffffff  sfl: 0
ktrgcm(): completed for block  <0x0000 : 0x00415c82> objd: 0x000001aa
ktrget2(): completed for  block <0x0000 : 0x00415c82> objd: 0x000001aa
ktrgtc2(): started for block <0x0004 : 0x010006c3> objd: 0x000128ef
  env: (scn: 0x0000.004d5549  xid: 0x0000.000.00000000  uba: 0x00000000.0000.00  statement num=0  parent xid: xid: 0x0000.000.00000000  scn: 0x0000.00000000 97sch: scn: 0x0000.00000000  mascn: (scn: 0x0000.004d550c)
ktrexc(): returning 8 on:  0000000021DD1524  scn: 0xffff.ffffffff  xid: 0x0000.000.00000000  uba: 0x00000000.0000.00  scn: 0xffff.ffffffff  sfl: 0
ktrgtc2(): completed for block <0x0004 : 0x010006c3> objd: 0x000128ef
ktrget2(): started for block  <0x0004 : 0x010006bb> objd: 0x000128ee
env: (scn: 0x0000.004d5549  xid: 0x0000.000.00000000  uba: 0x00000000.0000.00  statement num=0  parent xid: xid: 0x0000.000.00000000  scn: 0x0000.00000000 97sch: scn: 0x0000.00000000  mascn: (scn: 0x0000.004d550c)
ktrexf(): returning 9 on:  0000000021DD1524  scn: 0xffff.ffffffff  xid: 0x0000.000.00000000  uba: 0x00000000.0000.00  scn: 0xffff.ffffffff  sfl: 0
ktrgcm(): completed for block  <0x0004 : 0x010006bb> objd: 0x000128ee
ktrget2(): completed for  block <0x0004 : 0x010006bb> objd: 0x000128ee
ktrget2(): started for block  <0x0004 : 0x010006c3> objd: 0x000128ef
env: (scn: 0x0000.004d5549  xid: 0x0000.000.00000000  uba: 0x00000000.0000.00  statement num=0  parent xid: xid: 0x0000.000.00000000  scn: 0x0000.00000000 96sch: scn: 0x0000.00000000  mascn: (scn: 0x0000.004d550c)
ktrexf(): returning 9 on:  0000000021DD1524  scn: 0xffff.ffffffff  xid: 0x0000.000.00000000  uba: 0x00000000.0000.00  scn: 0xffff.ffffffff  sfl: 0
ktrgcm(): completed for block  <0x0004 : 0x010006c3> objd: 0x000128ef
ktrget2(): completed for  block <0x0004 : 0x010006c3> objd: 0x000128ef

Similar Messages

  • Consistent gets and db block gets

    Hi...
    I wanted to know the difference between consistent gets and db block gets in v$sess_io.I have read that consistent gets is the blocks in consistent mode..so here what does consistent mode means????
    Thanks in Advance,
    Anand

    Here's the complete text of the answer I originally wrote nearly 5 years ago on the Oracle-L mailing list:
    A 'db block get' is a current mode get. That is, it's the most up-to-date copy of the data in that block, as it is right now, or currently. There can only be one current copy of a block in the buffer cache at any time. Db block gets generally are used when DML changes data in the database. In that case, row-level locks are implicitly taken on the updated rows. There is also at least one well-known case where a select statement does a db block get, and does not take a lock. That is, when it does a full table scan or fast full index scan, Oracle will read the segment header in current mode (multiple times, the number varies based on Oracle version).
    A 'consistent get' is when Oracle gets the data in a block which is consistent with a given point in time, or SCN. The consistent get is at the heart of Oracle's read consistency mechanism. When blocks are fetched in order to satisfy a query result set, they are fetched in consistent mode. If no block in the buffer cache is consistent to the correct point in time, Oracle will (attempt to) reconstruct that block using the information in the rollback segments. If it fails to do so, that's when a query errors out with the much dreaded, much feared, and much misunderstood ORA-1555 "snapshot too old".
    As to latching, and how it relates, well, consider that the block buffers are in the SGA, which is shared memory. To avoid corruption, latches are used to serialize access to many linked lists and data structures that point to the buffers as well as the buffers themselves. It is safe to say that each consistent get introduces serialization to the system, and by tuning SQL to use more efficient access paths, you can get the same answer to the same query but do less consistent gets. This not only consumes less CPU, it also can significantly reduce latching which reduces serialization and makes your system more scalable.
    Well, that turned out longer than I planned. If you're still reading, I hope it helped!
    Hope that helps,
    -Mark
    PS The original question asked about latching as well, which explains the reason for the third paragraph.
    Edited by: mbobak on Sep 2, 2008 11:07 PM

  • Which power supply for which switch

    have 2 different switchs with 2 different power supplys.
    EZXS88W v3 andEZXS16W v2.1 - i have a 9v and a 12v linksys power brick both @1000mha. which one goes to which?
    i also have a BEFSR81 v3 - with no powersupply. can anyone linkme to a GOOD seller on ebay or amazon for one please?

    EZXS88W power specs is 5V 6A, 3 PRONG and 100~240V.
    EZXS16W v2.1 Power specs is 12V 1000MA, BIG BARREL and 120VAC.
    BEFSR81 v3 Power specs is 12VDC 1000ma, BIG BARREL and 120VAC. 
    This are the specs for the power adapter for this devices. You will find this power adapter on any of the stores, or else you get a Universal Power Adapter which is compatible with all the Router and the Electronic Device. Just you need to adjust the power as per your Routers power specs. 

  • Which HDD interface for which drives?

    Hello,
    I have read Harm's and others' excellent advice on drive configuration, but am not sure about which drives to put on which interfaces.  Assuming an X99 motherboard has 2 M.2 PCIE sockets, 1 SATA Express port, 1 SATA Express controller with 1 port, 8 SATA 6 GBs, and possibly a PCT RAID card.  Which of these connectors would you use for which drive, and why?  (I suppose another way to ask this might be which hdd uses benefit the most from increased speed--OS, application, pagefile, media, etc?)
    Also, closely related, one thing I cannot discern from what I have read so far is where lies the point of diminishing returns. For a system used for a mix of Premiere/Photoshop/AE, using as HaswellE, 32Gb, and say a 980, how many drives and how much drive throughput is required to prevent HDD from being a significant bottleneck?
    Thanks for any thoughts!!

    Normally PCI-E slots are a premium for editing systems and config options so I don't recommend wasting those on NVMe drives or adapter cards. I would suggest the Sata ports for storage usage and a SSD OS drive for sure. A SSD cache drive is a good idea as well provided it's big enough. Normally you want a 256GB Cache drive if so.
    Eric
    ADK

  • Which tools best for which tasks and project workflow planning?

    I am just getting comfortable with the basics of several CS tools and often need to use more than one to build a final product. Since I don't have a long history with the tools I still struggle learning which tool to use for specific tasks and then how best to use the variety of created assets in the various programs.
    Currently using CS4 After Effects, Flash, and Photoshop to create web flash swf files. Most books, forums, tutorials, etc. focus on a given tool and how to use its features. I have looked but not found books that take you through a project start to end that spans several tools and using the best parts of each to accomplish pieces of the finished project.
    Also, I find getting assets from one tool to the next does not always work out so well. For example, a text layer in AE can be exported a couple ways but by the time it gets into Flash it no longer retains the original text layer and is either rasterized or broekn up. So that is where better understanding workflow, if that is the right term, might help me ensure I use the right tool at the right time in the right order to minimize these kinds of problems.

    The guys from Waterloo labs did something similar: http://goo.gl/JkOy
    They used a sbRIO, which is very similar to myRIO and you should have no problem doing this with myRIO.  More info on their setup can be found here: http://www.ni.com/white-paper/11966/en/.  You may even be able to re-use some of their code.
    -Sam K
    LabVIEW Hacker
    Join / Follow the LabVIEW Hacker Group on google+

  • Which drive is for which?

    I'm new to FCP, want to head off right. I've got a Final Cut Pro Documents folder on a 2nd drive set up as the scratch disk. My boot drive has the FCP Projects folder. Which one should my original .mov files live in, as well as the compressed
    versions I bring into FCP...as well as the media files I eventually create?
    Of course, I understand EVERYTHING there is to know other than that.
    Thanks very much.

    ALL media of all sorts should reside an any drive other than your boot drive.

  • Which logical partition for which physical one ??

    Dears,
    I have a linux machine and 4 harddrives on RAID 5.
    Now when i run $ df -k I have:
    Filesystem 1K-blocks Used Available Use% Mounted on
    /dev/mapper/VolGroup00-LogVol00
    411043104 225881224 164282112 58% /
    /dev/cciss/c0d0p1 101086 15962 79905 17% /boot
    none 3113092 0 3113092 0% /dev/shm
    You have new mail in /var/spool/mail/root
    Now from above i can see that almost 400GB is mounted on / .
    How could i know how they are distributed over the 4 harddrives?
    lets say i have Oracle Apps in /u01/oracle, now i need to put the archives, copy of control file in a different disk other than the Applications disk?
    Firas

    You are welcome.
    If you need more details about LVM, you may have a look at Chapter 7 and 8 of Red Hat Enterprise Linux 4: System Administration Guide
    http://www.redhat.com/docs/manuals/enterprise/RHEL-4-Manual/sysadmin-guide/ch-lvm-intro.html

  • Reduce Logical IO [db block gets/consistent gets]

    Hi,
    Still I'm unsure about the Logical IO (db block gets + consistent gets).
    I want to reduce 'consistent gets' for this query
    SQL> set autotrace traceonly
    SQL> select * from cm_per_phone_vw;
    905 rows selected.
    Execution Plan
    Plan hash value: 524433310
    | Id  | Operation                    | Name         | Rows  | Bytes | Cost (%CPU)| Time     |
    |   0 | SELECT STATEMENT             |              |   868 | 38192 |     8   (0)| 00:00:01 |
    |   1 |  SORT GROUP BY NOSORT        |              |   868 | 38192 |     8   (0)| 00:00:01 |
    |   2 |   TABLE ACCESS BY INDEX ROWID| CI_PER_PHONE |  1238 | 54472 |     8   (0)| 00:00:01 |
    |   3 |    INDEX FULL SCAN           | CM172C0      |  1238 |       |     1   (0)| 00:00:01 |
    Statistics
              8  recursive calls
              0  db block gets
            922  consistent gets
              4  physical reads
              0  redo size
          39151  bytes sent via SQL*Net to client
           1045  bytes received via SQL*Net from client
             62  SQL*Net roundtrips to/from client
              0  sorts (memory)
              0  sorts (disk)
            905  rows processedFollowing is the view it's accessing
    CREATE OR REPLACE VIEW CM_PER_PHONE_VW
    AS
    SELECT
      per_id
      , MAX(DECODE(TRIM(phone_type_cd), 'MOB', phone)) AS MOB
      , MAX(DECODE(TRIM(phone_type_cd), 'HOME', phone)) AS HOME
      , MAX(DECODE(TRIM(phone_type_cd), 'BUSN', TRIM(phone) || ' ' || TRIM(extension))) AS BUSN
      , MAX(DECODE(TRIM(phone_type_cd), 'FAX', phone)) AS FAX
      , MAX(DECODE(TRIM(phone_type_cd), 'INT', phone)) AS INT
    FROM
      ci_per_phone
    GROUP BY
      per_idI have following indexes on table ci_per_phone
    INDEX_NAME                     COLUMN_NAME                    COLUMN_POSITION
    XM172P0                        PER_ID                                       1
    XM172P0                        SEQ_NUM                                      2
    XM172S1                        PHONE                                        1
    CM172C0                        PER_ID                                       1I tried creating indexes on PER_ID and PHONE_TYPE_CD but the consistent gets reduces to 920 instead of 922.
    Just for curiosity, how can I reduce this?
    secondly, is there any explanation on 'OPERATION' break of the plan, e.g. TABLE ACCESS BY INDEX ROWID ?
    Please advice.
    Luckys.

    Further I'm having problem with another query which is a view
    CREATE OR REPLACE VIEW CM_PER_CHAR_VW
    AS
    SELECT
    /*+ full (a) */
      a.acct_id
      , MAX(DECODE(a.char_type_cd, 'ACCTYPE', a.char_val)) acct_type
      , MAX(DECODE(a.char_type_cd, 'PRVBLCYC', a.adhoc_char_val)) prev_bill_cyc
    FROM
      ci_acct_char a
    WHERE
      a.effdt =
        (SELECT
          MAX(a1.effdt)
        FROM
          ci_acct_char a1
        WHERE a1.acct_id = a.acct_id
        AND a1.char_type_cd = a.char_type_cd)
    GROUP BY
      a.acct_idI'm not able to reduce the consistent gets and even the filter appears.
    I've analyzed the table as well as the index on the table.
    cisadm@CCBDEV> select * from cm_acct_char_vw;
    2649 rows selected.
    Execution Plan
    Plan hash value: 132362271
    | Id  | Operation              | Name         | Rows  | Bytes | Cost (%CPU)| Time     |
    |   0 | SELECT STATEMENT       |              |    27 |  4536 |    14   (8)| 00:00:01 |
    |   1 |  HASH GROUP BY         |              |    27 |  4536 |    14   (8)| 00:00:01 |
    |   2 |   VIEW                 |              |    27 |  4536 |    14   (8)| 00:00:01 |
    |*  3 |    FILTER              |              |       |       |            |          |
    |   4 |     HASH GROUP BY      |              |    27 |  2916 |    14   (8)| 00:00:01 |
    |   5 |      NESTED LOOPS      |              |  2686 |   283K|    13   (0)| 00:00:01 |
    |   6 |       TABLE ACCESS FULL| CI_ACCT_CHAR |  2686 |   157K|    12   (0)| 00:00:01 |
    |*  7 |       INDEX RANGE SCAN | XM064P0      |     1 |    48 |     1   (0)| 00:00:01 |
    Predicate Information (identified by operation id):
       3 - filter("A"."EFFDT"=MAX("A1"."EFFDT"))
       7 - access("A1"."ACCT_ID"="A"."ACCT_ID" AND
                  "A1"."CHAR_TYPE_CD"="A"."CHAR_TYPE_CD")
    Statistics
              0  recursive calls
              0  db block gets
           2754  consistent gets
              0  physical reads
              0  redo size
          76517  bytes sent via SQL*Net to client
           2321  bytes received via SQL*Net from client
            178  SQL*Net roundtrips to/from client
              0  sorts (memory)
              0  sorts (disk)
           2649  rows processedhere's the tkprof
    select *
    from
    cm_acct_char_vw
    call     count       cpu    elapsed       disk      query    current        rows
    Parse        2      0.00       0.00          0          0          0           0
    Execute      1      0.00       0.00          0          0          0           0
    Fetch      178      0.07       0.05          0       2754          0        2649
    total      181      0.07       0.05          0       2754          0        2649
    Misses in library cache during parse: 1
    Optimizer mode: CHOOSE
    Parsing user id: 63  (CISADM)
    Rows     Execution Plan
          0  SELECT STATEMENT   MODE: CHOOSE
          0   HASH (GROUP BY)
          0    VIEW
          0     FILTER
          0      HASH (GROUP BY)
          0       NESTED LOOPS
          0        TABLE ACCESS   MODE: ANALYZED (FULL) OF 'CI_ACCT_CHAR'
                       (TABLE)
          0        INDEX   MODE: ANALYZED (RANGE SCAN) OF 'XM064P0'
                       (INDEX (UNIQUE))
    Elapsed times include waiting on following events:
      Event waited on                             Times   Max. Wait  Total Waited
      ----------------------------------------   Waited  ----------  ------------
      SQL*Net message to client                     179        0.00          0.00
      SQL*Net message from client                   179        0.00          0.08
    ********************************************************************************I've an similar query for another table, where there are 1110 rows, but in the explain, no filter appears in the predicate
    Predicate Information (identified by operation id):
       2 - access("P"."EFFDT"="VW_COL_1" AND "PER_ID"="P"."PER_ID" AND
                  "CHAR_TYPE_CD"="P"."CHAR_TYPE_CD")Both the queries have somewhat similar views.
    I've got 2 questions,
    Is there a way I can reduce the consistent gets( I've tried with/without HINTS),
    secondly whats the predicate access shows as 'VW_COL_1'
    please advice.

  • Flatcable of iPhone 3GS? Which for which purpose??

    Hello
    When you open the iPhone 3GS. (Lift the LCD). The LCD/Thoughscreen ist connected to the mainboard with 3 cable.
    Can someone tell me which cable is for which purpose. They are numbered as 1), 2) and 3)
    Who is able to inform me?
    Gérard

    In some countries, Apple offers trade-in discounts.  Taking advantage of them is not fiscally responsible for the user as you can get significantly more value for the device through other sites or by selling it yourself.

  • Which Mac Pro for print and which for web

    My department is going to be purchasing new computers in the next month. I want to make an informed decision on which ones to buy.
    We have both print and web designers. All will be getting new computers. However, I think that print and web probably have different technical needs.
    So, of the three available: Quad-Core, 8-Core and 12-Core...which is best for which medium?

    You could get along fine with an iMac.
    You could wait and be forced to use Lion compliant apps
    Do you need heavy grapic cabability you probably want 24GB RAM, not 8-12 cores  but fastest single cpu available. Or even stock 4-core 2.8 (you don't want more and slower though like 2.4 or 2.6 or even 2.93GHz models).
    Mac Performance Guide Reviews

  • Consistent gets/physical reads issue

    Dear all,
    There are not any of DML on table tb_hxl_user.
    First Select:
    SQL> select count(1) from tb_hxl_user;
      COUNT(1)                                                                     
    286435658                                                                     
    Elapsed: 00:04:03.67                                                       
    Statistics
            357  recursive calls                                                   
              0  db block gets                                                     
        2106478  consistent gets                                                   
        2106316  physical reads                                                    
              0  redo size                                                         
            422  bytes sent via SQL*Net to client                                  
            416  bytes received via SQL*Net from client                            
              2  SQL*Net roundtrips to/from client                                 
              6  sorts (memory)                                                    
              0  sorts (disk)                                                      
              1  rows processed                                                     Second Select:
    SQL> select count(1) from tb_hxl_user;
      COUNT(1)                                                                     
    286435658                                                                     
    Elapsed: 00:03:02.29
    Statistics
              0  recursive calls                                                   
              0  db block gets                                                     
        2106395  consistent gets                                                   
        2106273  physical reads                                                    
              0  redo size                                                         
            422  bytes sent via SQL*Net to client                                  
            416  bytes received via SQL*Net from client                            
              2  SQL*Net roundtrips to/from client                                 
              0  sorts (memory)                                                    
              0  sorts (disk)                                                      
              1  rows processed                                                     After the first,I know that all the blocks have been flushed to SGA,
    but the second select,it generated many " 2106395 consistent gets" and " 2106273 physical reads" also,
    why?

    What exactly is consistent gets read below link:
    http://jonathanlewis.wordpress.com/2009/06/12/consistent-gets-2/
    Which is similar to docs clearity and authenticity.
    What exactly is physical read read below link:
    http://download.oracle.com/docs/cd/B16240_01/doc/doc.102/e16282/oracle_database_help/oracle_database_instance_throughput_physreads_ps.html
    Regards
    Girish Sharma

  • High Consistent Gets and memory settings

    What is actually high consistent gets?
    I get High Consistent Gets for certain sessions. Following are some of my parameter settings.
    db_16k_cache_size = 0
    db_2k_cache_size = 0
    db_32k_cache_size = 0
    db_4k_cache_size = 0
    db_8k_cache_size = 0
    db_block_size = 8192
    sga_max_size = 7632M
    sga_target = 7632M
    shared_pool_reserved_size = 119957094
    shared_pool_size = 48M
    pga_aggregate_target = 1500M
    Will setting AMM by configuring following parameter help Oracle to manage the memory in terms of workload and reduce CONSISTENT GETS?
    Or do I need to manually configure parameter such as "db_8k_cache_size".?
    memory_max_target = my SGA+PGA: 9.5G
    memory_target = my SGA+PGA: 9.5G
    sga_target = 0
    pga_agreegate_target =0
    Regards, Lily

    Lily wrote:
    What is actually high consistent gets?These are the logical IO's . If the logical IOs are high, it may mean that you have selected a lot of data which is now supposed to be given back to you. The high Logical IOs is not something that you should try to minimize using a high amount of memory since its already cached data. That sort of workaround works or would work if the physical IOs are high. If the session is doing more logical IO's check the query and the selectivity of the data and see if you can limit it further.
    I get High Consistent Gets for certain sessions. Following are some of my parameter settings.
    db_16k_cache_size = 0
    db_2k_cache_size = 0
    db_32k_cache_size = 0
    db_4k_cache_size = 0
    db_8k_cache_size = 0
    db_block_size = 8192
    sga_max_size = 7632M
    sga_target = 7632M
    shared_pool_reserved_size = 119957094
    shared_pool_size = 48M
    pga_aggregate_target = 1500M
    Will setting AMM by configuring following parameter help Oracle to manage the memory in terms of workload and reduce CONSISTENT GETS?
    Or do I need to manually configure parameter such as "db_8k_cache_size".?
    memory_max_target = my SGA+PGA: 9.5G
    memory_target = my SGA+PGA: 9.5G
    sga_target = 0
    pga_agreegate_target =0
    As I said, instance tuning is not something that you should aim for .
    Aman....

  • Trying to understand consistent gets

    1. We were very surprised to observe that the consistent gets for a query (shown below) changed (from 120K to 18K) when the only modification was adding a comment to it. How can this happen?
    2. Furthermore, the plans for the two queries were identical. How can consistent gets differ if the plan is the same?
    3. Is consistent gets the best metric for comparing the performance of two versions of a query, or is there a better one? (In the past we've tried to use execution timing for comparison, but the timing of a single query can vary greatly between runs.)
    select
           count(*) from (
    SELECT source_id, project_id,
           max_score,
           fields_matched
    FROM (SELECT source_id, project_id, MAX(scoring) as max_score,
                 apidb.tab_to_string(set(CAST(COLLECT(table_name) AS apidb.varchartab)), ', ')  fields_matched,
                 max(index_name) keep (dense_rank first order by scoring desc, source_id, table_name) as index_name,
                 max(oracle_rowid) keep (dense_rank first order by scoring desc, source_id, table_name) as oracle_rowid
          FROM (  SELECT  SCORE(1) * (select nvl(max(weight), 1) from apidb.TableWeight where table_name = 'Blastp')
                           as scoring,
                        'apidb.blastp_text_ix' as index_name, b.rowid as oracle_rowid, b.source_id, b.project_id,
                        external_database_name as table_name
                  FROM apidb.Blastp b
                  WHERE CONTAINS(b.description, 'protein', 1) > 0
                    AND 'Blastp' IN ('Product', 'Notes', 'Comments', 'InterPro', 'EcNumber', 'GoTerms', 'Phenotype', 'Notes', 'and the rest')
                    AND 'gene' = 'gene'
                    AND b.pvalue_exp < -30
                    AND b.query_organism IN ('Plasmodium falciparum', 'Plasmodium vivax', 'Plasmodium yoelii', 'Plasmodium berghei', 'Plasmodium chabaudi', 'Plasmodium knowlesi')
                UNION
                  SELECT
                         SCORE(1)* nvl(tw.weight, 1)
                           as scoring,
                         'apidb.gene_text_ix' as index_name, gt.rowid as oracle_rowid, gt.source_id, gt.project_id, gt.field_name as table_name
                  FROM apidb.GeneDetail gt, apidb.TableWeight tw, apidb.GeneAttributes ga
                  WHERE CONTAINS(content, 'protein', 1) > 0
                    AND gt.field_name IN ('Product', 'Notes', 'Comments', 'InterPro', 'EcNumber', 'GoTerms', 'Phenotype')
                    AND 'gene' = 'gene'
                    AND gt.field_name = tw.table_name(+)
                    AND gt.source_id = ga.source_id
                    AND ga.species IN ('Plasmodium falciparum', 'Plasmodium vivax', 'Plasmodium yoelii', 'Plasmodium berghei', 'Plasmodium chabaudi', 'Plasmodium knowlesi')
                UNION
                  SELECT SCORE(1) * nvl(tw.weight, 1) 
                           as scoring,
                        'apidb.isolate_text_ix' as index_name, wit.rowid as oracle_rowid, wit.source_id, wit.project_id, wit.field_name as table_name
                  FROM apidb.IsolateDetail wit, apidb.TableWeight tw
                  WHERE CONTAINS(content, 'protein', 1) > 0
                    AND wit.field_name in ('fred')
                    AND 'gene' = 'isolate'
                    AND wit.field_name = tw.table_name(+)
          GROUP BY source_id, project_id
          ORDER BY max_score desc, source_id
    );

    1. We were very surprised to observe that the consistent gets for a query (shown below) changed (from 120K to 18K) when the only modification was adding a comment to it. How can this happen?Adding a comment and getting a different anything makes no sense, but you already know this. Did you toggle the comment on and off to see any changes in performance?
    2. Furthermore, the plans for the two queries were identical. How can consistent gets differ if the plan is the same?Clearly something odd happened. Possibilities include
    * wrong execution plan reported in one case (unlikely, but possible)
    * system resource availability was different at different times
    3. Is consistent gets the best metric for comparing the performance of two versions of a queryI use consistent gets, but also look at disk reads (not useful after data has been cached), CPU, and overall execution time. On rare occasions queries can be CPU-bound
    Edited by: riedelme on Mar 3, 2010 1:06 PM

  • New to imac, used a pc before and am used to windows Vista.  what can i get for my imac which will allow me to continue using windows?  doesn't have to be vista in fact would prefer it if its the newest windows application

    what window programme can i get for my new imac.  would like the latest windows with outlook and all the other stuff.  also bought it from a friend and need to remove his name from it, but have followed all the instructions and its still there, can anyone advise please?

    If you have an intel Mac, you can use BootCamp, which is part of your OS and allows you to run Windows.

  • I am not able to get name of the person when he is calling for which i have already saved the no. on my contact list i have reseted my phone twice help me out

    hello i have started using iphone 5 for which i downloaded my contacts from i clouds i am not able to get name of the person when he is calling for which i have already saved the no. on my contact list i have reseted my phone twice  its only showing the names of the person whose no. i have saved it with the country code i am staying in india new delhi pls help me i am fed up not able to get the name of person who is calling

    Sir, your Apple ID can be used as an iCloud account as well. They are both the same thing.
    You can learn more from --> Set up your Apple ID for iCloud and iTunes - Apple Support

Maybe you are looking for

  • How to align text in drawstring method

    hai, i'm using drawString method in my application. i'm using it to draw certain data in a editorpane. in that i have to align the text content but i don't know how to align the text in it such as right alignment,left alignment and center alignment..

  • Change Security Level by the program.

    Hello folks. I'm trying on Lookout 6.0.2 to return to the lowest security level 30 minutes later after someone entered a high level security login. I do not want that operators have access inside the computer if the supervisor or the technical person

  • ScrollPane Flow Layout

    Hi Guys, I am at my wits end as to how I can solve this. I really can't find a solution, I hope you can help. I have a gui layout thus: JTabbedPane -> JScrollPane -> JPanel -> JPanel (instead of awt.canvas) I have multiple java2d 'graphs' that I wish

  • Uneven color-rendition due to contrast film on Macbook Pro?

    I've used my Macbook Pro now for a couple of weeks, and have noticed that evenly colored areas and gradients seem to be plagued by "noise"- most likely from the contrast film on top of the lcd-panel. This is getting frustrating as I work on photos an

  • WHAT IS GOING ON?! help me please

    2006 new black macbook 80GB: I have had this computer for less than a week and already, the keyboard is not responding (numlock is not pressed) and the trackpad also doesnt register at all. I plugged in an external usb mouse, and it worked- I dont kn