What is "KQR M PO" in shared pool
Hi,
I am using oracle version 10.2.0.4. I fired below SQL.
select * from ( select pool,
name,
bytes/1024/1024 bytes
from v$sgastat
where pool='shared pool'
order by 3 desc
where rownum < 6;
POOL NAME BYTES/1024/1024
shared pool KQR M PO 404.138763
shared pool free memory 152.80159
shared pool KQR L PO 130.926659
shared pool sql area 114.5914
shared pool obj stat memo 84.535881
shared pool KQR ENQ 65.2046814
Any idea what is this "KQR M PO" in shared pool? Reason why i am asking this I am getting ora-4031 while executing below command.
drop user <user name> cascade;
So I was trying to monitor who is eating up this much space in shared pool.
Thanks in advance.
Best Regards,
oratest
If you still want to know why, poke about on Tanel Poder's blog and knowledgebase, he shows how to see all the subpool components and how to investigate these things.
X$KQR* tables describe rowcache, performance and parent/subordinate objects in the data dictionary.
select kqftanam from x$kqfta where kqftanam like 'X$KQR%'
SYS@TTST> /
KQFTANAM
X$KQRST
X$KQRPD
X$KQRSD
X$KQRFP
X$KQRFSSo wild speculation would be some bad mojo in recursive code for parent/child drop.
Similar Messages
-
Oracle RAC 10.2.0.3 increasing shared pool KQR L PO
Hi,
I've got ORA-04031 on my 4 node 10.2.0.3 Linux RAC.
The top 3 shared pool occupants are:
SQL> r
1 select * from (
2 select * from v$sgastat where pool = 'shared pool' order by 3 desc)
3 where
4* rownum <= 3
POOL NAME BYTES
shared pool KQR L PO 714319616
shared pool sql area 326563888
shared pool free memory 220592728Any idea what is KQR L PO responsible for ?
Regards.
GregHi,
CauseThe shared pool is stressed and memory need to be freed for the new cursors. As a consequence, the dictionary cache is reduced in size by the LCK process causing a temporal hang of the instance since the LCK can't do other activity during that time. Since the dictionary cache is a memory area protected clusterwide in RAC, the LCK is responsible to free it in collaboration with the dictionary cache users (the sessions using cursors referenced in the dictionary cache). This process can be time consuming when the dictionary cache is big.
Solutiona. reduce the stress on the shared pool
=> by increasing it above the automatically reached value with dynamic sga, e.g.
when sga_target is set to 16G and the shared_pool_size was 6G during the hang time, set it to e.g. 8G.
=> by reducing the number of big cursors entering the shared pool, e.g. cursors using more than 1M sharable_mem e.g. via binding
select sql_text from v$sqlarea where sharable_mem > 1M;
b. reduce the dictionary cache usage in order to reduce the size of the dictionary cache, e.g.
=> when dc_histogram_defs is too high, it can point towards histograms calculations on all columns
of the tables. histograms should only be calculated on indexed columns
=> when dc_segments is high compared to dc_object_ids, it can point towards excessive partitioning usage. Reducing the partitions/subpartition usage will help reduce the dictionary cache usage to manage it.
c. set enableshared_pool_durations = false to avoid that one duration (a memory area in the shared pool used for a specific usage) need to give all space required for that usage, i.e. in case the duration containing the dictionary cache need to free memory, then that duration is extra stressed since no other type of memory from other durations can be used. Setting it to false make that any type of memory can be used to free space (i.e. any type of memory in the subpool). As a consequence, the number of subpools will be reduced by the factor of the number of durations (4 in 10gR2). Hence tuning the kghdsidxcount is advisable, e.g. increasing it to have manageable subpool sizes (see note:396940.1).
d. check patch:8666117 has been applied. This patch speedup the processing to free memory
Best regards,
Rafi.
http://rafioracledba.blogspot.com/ -
Hi,
ALTER SYSTEM FLUSH SHARED POOL;
when we issue the above command, it will fulsh the shared pool. it means, it will remove all the stored/parsed sql statements from shared pool. if any new query comes, first it has to parse and execute and show it to user.which will take time....
So, in what scenarios we do flush the shared pool...how do we know there is fragmentation is shared pool....
i am not experienced Performance Analayist..please share your experience.How can you reconcile what you wrote with the above statement from the Oracle docs?Um, because it's true?
It's realy clear to me that you don't have much job experience with Oracle (also evidence by your hiding your credentials and work history).
Back before cursor_sharing, the only way to relieve library cache stress was to make the shared_pool very small (see Metaink for the official recommendation), and the same holds true today for systems with ad-hoc query tools that can take-up 90% of the library cache with executions=1.
BTW, Mr. Morgan, I WANT MY MONEY BACK for your con-job on me.
When you told me that PSOUG was offering RAC classes, you knew that I believed that you were graciously volunteering a sevice to the community, and that's why you got all of those RAC books for your class at-cost, I wanted to help a good cause.
Of course, now we know that it was all a ruse, and that you were profiting from the PSOUG training.
When are you going to pay me back for those books that you conned me out of?
Message was edited by:
burleson -
What server side objects to pin in shared pool?
On the first invocation of Java-based image.process(...), processing can take up to 30 seconds. Second run takes less than a second, but a final invocation a few hours later is back to 30 seconds. My DBA suspects that the server side objects are cached in the shared pool by the time of the second invocation, and then flushed out by the time the code is run a few hours later.
We tried "pinning" ORDSYS.OrdImage pl/sql package in the shared pool using dbsm_shared_pool.keep , but no success. What are the the Java server-side objects referred to the Intermedia Java Client that really does the work when the client-side image.process(..) is executed?
Thanks,
Brandonhi Mr.kesavan!
i tried .but i am getting some error.
when i give lookup (jndi) that time it is giving some error.
for example :
ic.lookup("Bean2");exactly this line i am getting some unmarshalling error.
Can u give me some sample code.?
thank u...
Shalinipriya. -
Explain one query in 256M shared pool and ORA-4031 .
Hi,
looks like Oracle 9.2.0.8 got some problems with explaining huge (1000 lines) queries, here
goes ORA-4031 dump, shared pool is about 256 M but there are no other sessions in that DB only mine .
I can reproduce that in 1GB shared pool as well .
*** 2010-09-06 09:43:24.005
*** SESSION ID:(13.24) 2010-09-06 09:43:23.997
=================================
Begin 4031 Diagnostic Information
=================================
The following information assists Oracle in diagnosing
causes of ORA-4031 errors. This trace may be disabled
by setting the init.ora parameter _4031_dump_bitvec = 0
======================================
Allocation Request Summary Information
======================================
Current information setting: 00654fff
Dump Interval=300 seconds SGA Heap Dump Interval=3600 seconds
Last Dump Time=09/06/2010 09:43:22
Allocation request for: qknAllocate : qkn
Heap: 70000002aa6f4e8, size: 640
HEAP DUMP heap name="sga heap" desc=700000000000058
extent sz=0xfe0 alt=200 het=32767 rec=9 flg=-126 opc=0
parent=0 owner=0 nex=0 xsz=0x0
HEAP DUMP heap name="sql area" desc=70000002aa6f4e8
extent sz=0x1040 alt=32767 het=32 rec=0 flg=2 opc=2
parent=700000000000058 owner=0 nex=0 xsz=0x1
Subheap has 102506016 bytes of memory allocated
====================
Process State Object
====================
SO: 7000000222fe540, type: 2, owner: 0, flag: INIT/-/-/0x00
(process) Oracle pid=12, calls cur/top: 700000021736ba0/700000021736ba0, flag: (0) -
int error: 0, call error: 0, sess error: 0, txn error 0
(post info) last post received: 199 0 4
last post received-location: kslpsr
last process to post me: 7000000222fca88 1 6
last post sent: 0 0 16
last post sent-location: ksasnd
last process posted by me: 7000000222fca88 1 6
(latch info) wait_event=0 bits=0
Process Group: DEFAULT, pseudo proc: 7000000212e7290
O/S info: user: oracle, term: UNKNOWN, ospid: 6766752
OSD pid info: Unix process pid: 6766752, image: oracle@prod3 (TNS V1-V3)
=========================
User Session State Object
=========================
SO: 7000000226ee540, type: 4, owner: 7000000222fe540, flag: INIT/-/-/0x00
(session) trans: 0, creator: 7000000222fe540, flag: (100045) USR/- BSY/-/-/-/-/-
DID: 0001-000C-00000002, short-term DID: 0000-0000-00000000
txn branch: 0
oct: 50, prv: 0, sql: 70000002aa7fbf8, psql: 0, user: 2622/INSTALL
program: sqlplus.exe
application name: SQL*Plus, hash value=3669949024
last wait for 'db file sequential read' blocking sess=0x0 seq=93 wait_time=11432
file#=1, block#=106e8, blocks=1
temporary object counter: 0
=========================
Current Parent KGL Object
=========================
LIBRARY OBJECT HANDLE: handle=70000002aa7fbf8
name=
explain plan for
select *
from salda
where saldo <> 0
and konta in ('361','362','363','371','372','373','380','381','382','383','384','385','386','387','388','389','390','391','392','393',
'394','395','396','397','398','399','400','401','402','403','404','405','406','407','408','409','410','411','412','413',
hash=ff099bfd timestamp=09-06-2010 09:41:45
namespace=CRSR flags=RON/KGHP/TIM/PN0/[10010000]
kkkk-dddd-llll=0000-0001-0001 lock=N pin=X latch#=7
lwt=70000002aa7fc28[70000002aa7fc28,70000002aa7fc28] ltm=70000002aa7fc38[70000002aa7fc38,70000002aa7fc38]
pwt=70000002aa7fc58[70000002aa7fc58,70000002aa7fc58] ptm=70000002aa7fce8[70000002aa7fce8,70000002aa7fce8]
ref=70000002aa7fc08[70000002aa7fc08, 70000002aa7fc08] lnd=70000002aa7fd00[70000002aa7fd00,70000002aa7fd00]
LIBRARY OBJECT: object=70000002aa6fc98
type=CRSR flags=EXS[0001] pflags= [00] status=VALD load=0
CHILDREN: size=16
child# table reference handle
0 70000002aa6ff08 70000002aa6fbc0 70000002aa6f7a0
==================
Current KGL Object
==================
LIBRARY OBJECT HANDLE: handle=70000002aa6f7a0
namespace=CRSR flags=RON/KGHP/PN0/[10010000]
kkkk-dddd-llll=0000-0000-0000 lock=N pin=X latch#=7
lwt=70000002aa6f7d0[70000002aa6f7d0,70000002aa6f7d0] ltm=70000002aa6f7e0[70000002aa6f7e0,70000002aa6f7e0]
pwt=70000002aa6f800[70000002aa6f800,70000002aa6f800] ptm=70000002aa6f890[70000002aa6f890,70000002aa6f890]
ref=70000002aa6f7b0[70000002aa6fbc0, 70000002aa6fbc0] lnd=70000002aa6f8a8[70000002aa6f8a8,70000002aa6f8a8]
LIBRARY OBJECT: object=70000002aa6f3b8
type=CRSR flags=EXS[0001] pflags= [00] status=VALD load=0
===========================
Current Instatiation Object
===========================
INSTANTIATION OBJECT: object=1102fa2e0
type="cursor"[2] lock=70000002865ffe0 handle=70000002aa7fbf8 body=0 level=0
flags=FST[60] executions=0
cursor name:
explain plan for
select *
from salda
where saldo <> 0
and nr_konta in ('361','362','363','371','372','373','380','381','382','383','384','385','386','387','388','389','390','391','392','393',
'394','395','396','397','398','399','400','401','402','403','404','405','406','407','408','409','410','411','412','413',
'414','432','450','453','454','455','456','457','458','459','460','461','462','463','464','465','466','467','468','469',
'470','471','472','473','474','475','476','477','478','479','480','481')
and (
(umowa = lpad('2169725150',10) and nr_klasy = lpad('7',3)) or
(umowa = lpad('2170639147',10) and nr_klasy = lpad('13',3)) or
(umowa = lpad('2170815147',10) and nr_klasy = lpad('13',3)) or
(umowa = lpad('2170991138',10) and nr_klasy = lpad('13',3)) or
(umowa = lpad('2173034150',10) and nr_klasy = lpad('7',3)) or
(umowa = lpad('2173821138',10) and nr_klasy = lpad('13',3)) or
(umowa = lpad('2174491138',10) and nr_klasy = lpad('13',3)) or
(umowa = lpad('2176065138',10) and nr_klasy = lpad('13',3)) or
(umowa = lpad('2177180150',10) and nr_klasy = lpad('7',3)) or
(umowa = lpad('2178183150',10) and nr_klasy = lpad('7',3)) or
(umowa = lpad('2178609150',10) and nr_klasy = lpad('7',3)) or
(umowa = lpad('2180241147',10) and nr_klasy = lpad('27',3)) or
(umowa = lpad('2180252147',10) and nr_klasy = lpad('13',3)) or
(umowa = lpad('2180377148',10) and nr_klasy = lpad('13',3)) or
(umowa = lpad('2180787148',10) and nr_klasy = lpad('13',3)) or
(umowa = lpad('2181011148',10) and nr_klasy = lpad('13',3)) or
(umowa = lpad('2183314150',10) and nr_klasy = lpad('9',3)) or
(umowa = lpad('2187754150',10) and nr_klasy = lpad('9',3)) or
(umowa = lpad('2189036150',10) and nr_klasy = lpad('9',3)) or
(umowa = lpad('2189362150',10) and nr_klasy = lpad('9',3)) or
(umowa = lpad('2189685150',10) and nr_klasy = lpad('27',3)) or
(umowa = lpad('2191061124',10) and nr_klasy = lpad('7',3)) or
(umowa = lpad('2194768150',10) and nr_klasy = lpad('27',3)) or
(umowa = lpad('2195063150',10) and nr_klasy = lpad('9',3)) or
(umowa = lpad('2195568150',10) and nr_klasy = lpad('9',3)) or
(umowa = lpad('2196774143',10) and nr_klasy = lpad('7',3)) or
(umowa = lpad('2196872143',10) and nr_klasy = lpad('7',3)) or
(umowa = lpad('2196964143',10) and nr_klasy = lpad('7',3)) or
.... a lot off similar lines
child pin: 0, child lock: 70000002865fb18, parent lock: 70000002865ffe0
xscflg: 4004, parent handle: 70000002aa7fbf8, xscfl2: 0
----- Call Stack Trace -----
calling call entry argument values in hex
location type point (? means dubious value)
ksm_4031_dump+065c bl ksedst 110006450 ?
ksmasg+0084 bl ksm_4031_dump FFFFFFFFFFF5F60 ? 10299AAF8 ?
000000000 ? 70000002A9007F8 ?
000000000 ? 000000000 ?
kghnospc+0178 bl _ptrgl
kghalp+00f0 bl kghnospc FFFFFFFFFFF6150 ?
422222247FFFFFFC ?
100107620 ? 080000000 ?
000000000 ?
kksalc+0048 bl kghalp 100107620 ? 000000000 ?
FFFFFFFFFFF62C0 ? 000000000 ?
000000080 ? 000000003 ?
qknAllocate+0040 bl kksalc 70000002AC2E1C0 ?
70000002C873DD8 ?
70000002AC2E1C0 ?
qknltAllocate+00d0 bl qknAllocate FFFFFFFFFFF65C0 ?
7000000345292A0 ? 000000000 ?
000000003 ?
qkatab+0ec8 bl qknltAllocate 000000000 ? 000000000 ?
000000000 ? 000000000 ?
000000000 ? 000000000 ?
000000000 ? 000000000 ?
70000002C874170 ?
qkajoi+0b30 bl qkatab 000000000 ? 110378F00 ?
000000000 ? 000000042 ?
100002100050000 ? 110378530 ?
qkaqkn+08d0 bl qkajoi 000000000 ? 000000000 ?
000000000 ? 000000000 ?
000000000 ? 000000000 ?
000000000 ? 000000000 ?
qkadrv+07a0 bl qkaqkn 000000000 ? 10299B690 ?
===============================
Memory Utilization of Subpool 1
===============================
Allocation Name Size
"free memory " 148632616
"miscellaneous " 3998104
"qmps connections " 1454200
"errors " 0
"txncallback " 246640
"PL/SQL MPCODE " 506520
"enqueue " 6054632
"KSXR pending messages que" 853952
"KQR L PO " 221192
"parameters " 1064
"Checkpoint queue " 1026560
"1M buffer " 528384
"db_block_hash_buckets " 589824
"fixed allocation callback" 1112
"sim trace entries " 196608
"KGLS heap " 374728
"KGK heap " 552
"channel handle " 780672
"MTTR advisory " 34088
"DML lock " 1022032
"trigger source " 2288
"trigger defini " 280
"dictionary cache " 2137216
"table definiti " 456
"KQR X PO " 28352
"transaction " 2747760
"constraints " 824960
"library cache " 2030512
"message pool freequeue " 213264
"sql area " 1546168
"sessions " 4467008
"replication session stats" 1004720
"event statistics per sess" 18791304
"KQR S SO " 5632
"sim memory hea " 157768
"PL/SQL DIANA " 80104
"KQR M PO " 141320
"messages " 624000
===============================
Memory Utilization of Subpool 2
===============================
Allocation Name Size
"free memory " 6285488
"miscellaneous " 8927008
"log_buffer " 1056800
"FileOpenBlock " 16270720
"sim memory hea " 162008
"KQR S SO " 9472
"transaction " 3297312
"PL/SQL DIANA " 0
"KGLS heap " 47776
"table definiti " 0
"db_handles " 3480000
"KQR L PO " 213056
"Temporary Tables State Ob" 775488
"trigger inform " 0
"message pool freequeue " 558720
"trigger defini " 0
"fixed allocation callback" 1168
"branch " 1180120
"ktlbk state objects " 1948360
"PLS non-lib hp " 2088
"KGK heap " 6448
"KQR M SO " 1024
"dictionary cache " 2137216
"parameters " 0
"Checkpoint queue " 1026560
"trigger source " 0
"enqueue resources " 768192
"library cache " 1798152
"KSXR receive buffers " 1034000
"sql area " 105380864
"processes " 4104000
"sessions " 4469712
"joxs heap init " 4240
"errors " 0
"event statistics per sess" 18779936
"PL/SQL MPCODE " 0
"KQR M PO " 173592
"UNDO INFO SEGMENTED ARRAY" 649856
LIBRARY CACHE STATISTICS:
namespace gets hit ratio pins hit ratio reloads invalids
CRSR 3184 0.874 12550 0.950 97 11
TABL/PRCD/TYPE 1917 0.871 2293 0.811 0 0
BODY/TYBD 52 0.788 52 0.788 0 0
TRGR 33 0.939 33 0.939 0 0
INDX 74 0.514 43 0.140 0 0
CLST 353 0.977 489 0.980 0 0
OBJE 0 0.000 0 0.000 0 0
PIPE 0 0.000 0 0.000 0 0
LOB 0 0.000 0 0.000 0 0
DIR 0 0.000 0 0.000 0 0
QUEU 0 0.000 0 0.000 0 0
OBJG 0 0.000 0 0.000 0 0
PROP 0 0.000 0 0.000 0 0
JVSC 0 0.000 0 0.000 0 0
JVRE 0 0.000 0 0.000 0 0
ROBJ 0 0.000 0 0.000 0 0
REIP 0 0.000 0 0.000 0 0
CPOB 0 0.000 0 0.000 0 0
EVNT 8 0.750 91 0.978 0 0
SUMM 0 0.000 0 0.000 0 0
DIMN 0 0.000 0 0.000 0 0
CTX 0 0.000 0 0.000 0 0
OUTL 0 0.000 0 0.000 0 0
RULS 0 0.000 0 0.000 0 0
RMGR 0 0.000 0 0.000 0 0
IFSD 0 0.000 0 0.000 0 0
PPLN 0 0.000 0 0.000 0 0
PCLS 0 0.000 0 0.000 0 0
SUBS 0 0.000 0 0.000 0 0
LOCS 0 0.000 0 0.000 0 0
RMOB 0 0.000 0 0.000 0 0
RSMD 0 0.000 0 0.000 0 0
JVSD 0 0.000 0 0.000 0 0
ENPR 0 0.000 0 0.000 0 0
RELC 0 0.000 0 0.000 0 0
STREAM 0 0.000 0 0.000 0 0
APPLY 0 0.000 0 0.000 0 0
APPLY SOURCE 0 0.000 0 0.000 0 0
APPLY DESTN 0 0.000 0 0.000 0 0
TEST 0 0.000 0 0.000 0 0
CUMULATIVE 5621 0.874 15551 0.928 97 11
Permanent space allocted for Load Locks
LATCH:0 TOTAL SPACE: 4248
FREELIST CHUNK COUNT:59 OBJECT SIZE:72
Permanent space allocted for KGL pins
LATCH:0 TOTAL SPACE: 4224
FREELIST CHUNK COUNT:13 OBJECT SIZE:128
LATCH:1 TOTAL SPACE: 4224
FREELIST CHUNK COUNT:15 OBJECT SIZE:128
LATCH:2 TOTAL SPACE: 4224
FREELIST CHUNK COUNT:18 OBJECT SIZE:128
LATCH:3 TOTAL SPACE: 4224
FREELIST CHUNK COUNT:19 OBJECT SIZE:128
LATCH:4 TOTAL SPACE: 4224
FREELIST CHUNK COUNT:21 OBJECT SIZE:128
LATCH:5 TOTAL SPACE: 4224
FREELIST CHUNK COUNT:27 OBJECT SIZE:128
LATCH:6 TOTAL SPACE: 4224
FREELIST CHUNK COUNT:16 OBJECT SIZE:128
Permanent space allocted for KGL locks
LATCH:0 TOTAL SPACE: 4216
FREELIST CHUNK COUNT:11 OBJECT SIZE:136
LATCH:1 TOTAL SPACE: 4216
FREELIST CHUNK COUNT:13 OBJECT SIZE:136
LATCH:2 TOTAL SPACE: 4216
FREELIST CHUNK COUNT:16 OBJECT SIZE:136
...<snipped>...any ideas ?GregG wrote:
Thanks,
but I'm interested in what is the particular problem. Looks like sql area is short on free chunks .I can't say if it is an oracle bug so feel free to ignore my post.
select *
from salda
where saldo 0
and nr_konta in ('361','362','363','371','372','373','380','381','382','383','384','385','386','387','388','389','390','391','392','393',
'394','395','396','397','398','399','400','401','402','403','404','405','406','407','408','409','410','411','412','413',
'414','432','450','453','454','455','456','457','458','459','460','461','462','463','464','465','466','467','468','469',
'470','471','472','473','474','475','476','477','478','479','480','481')
and (
(umowa = lpad('2169725150',10) and nr_klasy = lpad('7',3)) or
(umowa = lpad('2170639147',10) and nr_klasy = lpad('13',3)) or
(umowa = lpad('2170815147',10) and nr_klasy = lpad('13',3)) or
(umowa = lpad('2170991138',10) and nr_klasy = lpad('13',3)) or
(umowa = lpad('2173034150',10) and nr_klasy = lpad('7',3)) or
(umowa = lpad('2173821138',10) and nr_klasy = lpad('13',3)) or
(umowa = lpad('2174491138',10) and nr_klasy = lpad('13',3)) or
(umowa = lpad('2176065138',10) and nr_klasy = lpad('13',3)) or
(umowa = lpad('2177180150',10) and nr_klasy = lpad('7',3)) or
(umowa = lpad('2178183150',10) and nr_klasy = lpad('7',3)) or
(umowa = lpad('2178609150',10) and nr_klasy = lpad('7',3)) or
(umowa = lpad('2180241147',10) and nr_klasy = lpad('27',3)) or
(umowa = lpad('2180252147',10) and nr_klasy = lpad('13',3)) or
(umowa = lpad('2180377148',10) and nr_klasy = lpad('13',3)) or
(umowa = lpad('2180787148',10) and nr_klasy = lpad('13',3)) or
(umowa = lpad('2181011148',10) and nr_klasy = lpad('13',3)) or
(umowa = lpad('2183314150',10) and nr_klasy = lpad('9',3)) or
(umowa = lpad('2187754150',10) and nr_klasy = lpad('9',3)) or
(umowa = lpad('2189036150',10) and nr_klasy = lpad('9',3)) or
(umowa = lpad('2189362150',10) and nr_klasy = lpad('9',3)) or
(umowa = lpad('2189685150',10) and nr_klasy = lpad('27',3)) or
(umowa = lpad('2191061124',10) and nr_klasy = lpad('7',3)) or
(umowa = lpad('2194768150',10) and nr_klasy = lpad('27',3)) or
(umowa = lpad('2195063150',10) and nr_klasy = lpad('9',3)) or
(umowa = lpad('2195568150',10) and nr_klasy = lpad('9',3)) or
(umowa = lpad('2196774143',10) and nr_klasy = lpad('7',3)) or
(umowa = lpad('2196872143',10) and nr_klasy = lpad('7',3)) or
(umowa = lpad('2196964143',10) and nr_klasy = lpad('7',3)) or
.... a lot off similar linesThis looks like an ideal candidate for using a Global Temporary table (if you can).
So if you can insert all combination of valid values for "umowa" and "nr_klasy" columns in a GTT,
you can simplify your query as
select *
from salda
where saldo 0
and nr_konta in ('361','362','363','371','372','373','380','381','382','383','384','385','386','387','388','389','390','391','392','393',
'394','395','396','397','398','399','400','401','402','403','404','405','406','407','408','409','410','411','412','413',
'414','432','450','453','454','455','456','457','458','459','460','461','462','463','464','465','466','467','468','469',
'470','471','472','473','474','475','476','477','478','479','480','481')
and (umowa, nr_klasy) in (select lpad(col1,10), lpad(col2,3) from gtt_temp) -
Shared Pool error in Oracle 10.1.0.5
Setup : 3-node RAC clustered databases
OS version : RHEL 4.5
DB version : 10.1.0.5
Storage : ASM diskgroups for C/R/D files & archivelogs on SAN box
applications : no. of OLTP applications running on a separate app server
We are getting ORA-04031 SHARED POOL MEMORY error . There are three nodes : node1, node2 & node3 each running on RHEL AS4 OS . The sga components are not tuned automatically i mean there is no automated sga tuning or resizing . We have set each SGA component manuallay when required. All the c/r/d files are stored on ASM Diskgroups .
From last night we are facing the SHARED POOL MEMORY issue . There are number of OLTP applications running at front end and the load is more on node3 . Due to the saturation of shared pool it affected the applications and the CPU utilization on App server was almost 90%. But the CPU utilization on each rac node was just below 30%. The Client's complained slow performance of applications and in fact few user sessions hung up.
What we found in the alert log is the ORA-04031 shared pool error . Which was casuing the problem and the applications started to work very slowly . For workaround we increased the size of the SHARED_POOL_SIZE parameter as well as we flushed the shared pool memory . Now the applications were running fine. I have also observed that there were 454 INACTIVE sessions in the node3. Will these sessions have any impact on performance?
But i dont know whether it will be fixed for future as well. But Can anyone suggest me how could i approach for resolving this issue permanently ?
I know that we are still using 10.1.0.5 release and also one more thing is that the SWAP space in one of the node is 4GB short compared to other two nodes swap space. I cant post you the logs please.Whatever i have observed and done i have posted here.
Any suggestions will be hugely appreciate. Thanks taking out sometime to helping me out.
Regards,
imran khanI understand SB and i know that 10gr1 is going to be de-supported in dec,2011. But for atleast we can fix the problem for more two months . There are few critical applications which required minimal downtime but at present the client doesn't want to have any outage. Please help.
Thanks. -
12c - limited space in shared pool
HI ,
I am creating a Container Database in 12C and dbca errors out with
Due to limited space in shared pool (need 6094848 bytes, have 4194112 bytes), limiting Resource Manager entities from 2048 to 32 LICENSE_MAX_SESSION = 0 LICENSE_SESSIONS_WARNING = 0 Initial number of CPU is 2 CELL communication is configured to use 0 interface(s): CELL IP affinity details: NUMA status: non-NUMA system cellaffinity.ora status: N/A CELL communication will use 1 IP group(s): Grp 0: Picked latch-free SCN scheme 3 Autotune of undo retention is turned on. IMODE=BR ILAT =51 LICENSE_MAX_USERS = 0 SYS auditing is disabled NOTE: remote asm mode is local (mode 0x1; from cluster type)
Due to limited space in shared pool (need 6094848 bytes, have 3981120 bytes), limiting Resource Manager entities from 2048 to 32
Due to limited space in shared pool (need 6094848 bytes, have 3981120 bytes), limiting Resource Manager entities from 2048 to 32
Due to limited space in shared pool (need 6094848 bytes, have 3981120 bytes), limiting Resource Manager entities from 2048 to 32
ORA-01501: CREATE DATABASE failed
ORA-01519: error while processing file '?/rdbms/admin/dcore.bsq' near line 1065
ORA-01519: error while processing file '?/rdbms/admin/dcore.bsq' near line 76
ORA-00604: error occurred at recursive SQL level 1
ORA-01119: error in creating database file '/oraceledata01/RND1/datafile/pdbseed/RND1_system_01.dbf'
ORA-27040: file create error, unable to create file
I am using RHEL 6 host
Thanks"ORA-27040: file create error, unable to create file" is pretty explicit. Either the path doesn't exist or permissions for the path don't exist.
Also, I suggest that you verify if the target path has enough disk space for the database you are creating.
What about the memory allocation you have specified ? Is it adequate ?
Hemant K Chitale -
Should I use shared pool advisor?
Hi, I am new to the Oracle DB and preparing for the first test of the OCA. If there is a SQL statement that is parsing repeatly, should I use shared pool advisor or SGA advisor?
thanks a lot for helpuser592813 wrote:
Hi, I am new to the Oracle DB and preparing for the first test of the OCA. If there is a SQL statement that is parsing repeatly, should I use shared pool advisor or SGA advisor?
thanks a lot for helpYou need to tell us that what do you mean by "parse" here? Is it a soft parse or hard parse? If its a hard parse, and you have made sure that your application has not used literals , you may look at the shared pool for being undersized by its sizing advisory. If you have a bad code in the application throwing unsharable queries, there is no point of increasing the shared pool as at any one point of time,it would become useless. For this, the fix would be tune the queries and not to resize the shared pool.
If on the other hand, you have soft parsing happening, you can further try to optimize it by making it "no parsing" using the parameter session_cached_cursors . But for this as well, there is no need to increase the size of the shared pool.
HTH
Aman.... -
hi friends i have a procedure
and its have *(AD IS NULL OR NVAD LIKE AD||'%') AND (SOYAD IS NULL OR NVSOYAD LIKE SOYAD||'%')*
if i use this query and pass different things for AD ; is it become a brand new query for oracle because of ||'%' or its parse and put in shared pool and for a sometime this query don't parse and take from shared pool
PROCEDURE P_YENI_TALEP_LISTELE(RC_CURSOR OUT SYS_REFCURSOR,TOPLAM_TALEP OUT NUMBER,SAYFA_INDEX IN NUMBER,SAYFA_BUYUKLUK IN NUMBER,TC_NO IN NVARCHAR2,AD IN NVARCHAR2,SOYAD IN NVARCHAR2,ONAY IN NUMBER,H_TIP_ID IN NUMBER)
AS
BEGIN
OPEN RC_CURSOR FOR SELECT TA.NT_ID,TA.NTC_NO,HI.NVHIZMET_TUR AS NVARM_KONU,TA.NVOPRTR_CVP,TA.NVGRSM_SURE,TA.NVGRSM_DRM,
TA.NHIZMET,TA.BONAY,TA.DTLP_TRH,TH.NVAD,TH.NVSOYAD,TH.NVILCE ,TA.DALINAN_TRH,
TA.DBRKLAN_TRH,TA.NG_ID,GU.NVAD1||' - '||GU.NVAD2 AS GUZERGAH,HI.NH_TIP_ID,HT.NVHIZMET_TIP,
FROM H_TALEP TA,TNM_HASTA_BILGI TH,TNM_HIZMET HI,SBT_HIZMET_TIP HT,TNM_GUZERGAH GU
WHERE TA.NTC_NO=TH.NTC_NO AND TA.NH_ID=HI.NH_ID AND HI.NH_TIP_ID=HT.NH_TIP_ID AND(TC_NO IS NULL OR TA.NTC_NO=TO_NUMBER(TC_NO)) AND TA.NG_ID=GU.NG_ID AND
*(AD IS NULL OR NVAD LIKE AD||'%') AND (SOYAD IS NULL OR NVSOYAD LIKE SOYAD||'%')*...............The code you have posted has no DYNAMIC SQL in it.... Static SQL inside PL/SQL will bind all the variables for you.
So what you are saying does not compute.
What is making you think a 'brand new query' is being parsed for each execution?
Edited by: Tubby on Nov 8, 2008 4:19 PM -
Hi,
In recent we are getting shared pool exhaust issue. I am interested to know which objects occupying more share pool.Do we have any queries which can show the most space occupied objects in shared pool
do we have any monitoring tools(or queries) using which we can findout once shared pool usage has gone to 70%.I guess OEM automatically alert this if we confgiure it for
I heard that "alter system flush share_pool" doesn't work properly.there is bug in that.After executing this also it wont release shared pool.Is it true ??
Thanks for your information.
Thanks
AnandIn recent we are getting shared pool exhaust issue. I am interested to know which objects occupying more share pool.Do we have any queries which can show the most space occupied objects in shared poolThis if V$DB_OBJECT_CACHE helps for this.
I heard that "alter system flush share_pool" doesn't work properly.there is bug in that.After executing this also it wont release shared pool.Is it true ??Not sure about the bug, do you have the bug number handy. Also, what do you mean by - "it wont release shared pool"...it doesn't release the entire memory allocated to shared pool.
Thanks
Chandra -
Keeping Large Objects in shared pool
Hi,
what is my doubt is the following mention objects
1) DBMS_Application_info
2) Trigger
3) Dbms_space_admin
4) DBMS_RCVCAT
5) DBMS_RCVMAN
6) DBMS_Shared_pool
7) dbms_standard
8) dbms_utility
9) dbms_backup_resotre
10) standard
the above mention object i keep in shared pool, IS it ok? or anythink peformance problems plz reply as soon as possiblehi,
Loading large objects is the primary source of fragmentations. Users' response time is affected because of the large number of small objects that need to be aged out from the shared pool to make room. To prevent these situations Keep these large or frequently required objects in the shared pool to make sure that they are never aged out of the shared pool.
thanking u -
InterMedia Image Import & Shared Pool Problem
Hi All
I have a SYS.ImagePkg.ImportImage stored procedure that its body described below:
(dest_nid number, filename varchar2, img_date varchar2) is
img_blob BLOB;
ctx raw(64) := null;
file_string varchar2(4) := 'file';
dir_string varchar2(8) := 'IMAGEDIR';
begin
delete from ImageTable where NID = dest_nid;
insert into ImageTable (NID, Image, ImageDate)
values (dest_nid, empty_blob(), img_date)
returning Image into img_blob;
ORDSYS.ORDImage.importFrom(ctx, img_blob,
file_string, dir_string, filename);
update ImageTable set image=img_blob where
NID=dest_nid;
commit;
end;
this stored procedure inserts an image into database. Also we have a VB
application that includes this code:
Set prm1 = cmd.CreateParameter("dest_nid", adNumeric, adParamInput)
Set prm2 = cmd.CreateParameter("filename", adVarChar, adParamInput, 14)
Set prm3 = cmd.CreateParameter("img_date", adVarChar, adParamInput, 8)
'-- Append parameters to command object
cmd.Parameters.Append prm1
cmd.Parameters.Append prm2
cmd.Parameters.Append prm3
For Each tFil In fld.Files
temp = Mid(fld.Path + "\", 7)
temp = RemoveCharacters(temp, "\")
nid = temp
crDate = Format(tFil.DateLastModified, "yyyy/MM/DD")
crDate = RemoveCharacters(crDate, "/")
cmd.CommandText = " call sys.ImagePkg.ImportImage(?, ?, ?) "
'-- Assign Parameter Values
cmd(0).Value = Val(nid)
cmd(1).Value = nid + ".jpg"
cmd(2).Value = crDate
cmd.Execute
Next
Automatic Shared Memory Management is Enabled and Shared pool size is 400M at startup. Also library cache size is 4M. But when we start application run, Insertion rate decreses from 45000 records per hour to 14000 records per hour after 44 hours and library cache size increases to 116M.
If continue running of application, approximatly after 5 days I recieve below error:
ORA-04031: unable to allocate 4096 bytes of shared memory ("shared pool","select /*+ rule */ bucket, e...","Typecheck heap","kgghteInit")
and application can not insert any record.
Please help me to solve this problem.Also, I would like to pitch the use of the image type rather than use of a database blob.
The media types, such as ORDImage, are native server datatypes. These
datatypes allows the database, and media aware tools and applications to
understand that a column or table contains media. This is similar to the
way that the DATE datatype allows the understanding that a column contains
a date.
The media types include the most common meta-data, such as mimetype, that is
needed by media applications. Without this meta-data, an application must
decide where and how this meta-data is to be stored and retreived. Perhaps extra
columns or tables in the database, or an application header in the binary data.
It is possible to store media in simple BLOBs, but by doing this, we take the
understanding of what is in the database out of the database, and put it into
the your application realm. Media aware applications and tools, existing
and future, will not be able to work easily with the media. Only your
application, or a new application you write specifically without the
advantage of media aware programming wizards, will be able to work well with
your media.
Storing media data into a BLOB is like storing a date in a text column, you
lose the intrinsic knowlege of what the column represents with the adverse
effect of media aware applications, tools and wizards not being able to work
effectively with the column, if at all. -
Hi All,
DB:oracle9iR2
os:solaris
how to get the shared_pool usage,free total size and hit ratio in oracle 9i R2?,can any one help to me....
POOL BYTES MB
shared pool used :
shared pool free :
shared pool (Total):
=================
Shared_pool hit ratio:
thanks.Hi All,
thank you for all the responses..
Db:oracle 9iR2
os :solaris
Actually i am facing below problem..
prob: ORA-00604: error occurred at recursive SQL level 2
ORA-04031: unable to allocate 4224 bytes of shared memory ("shared pool","select obj#,type#,ctime,mtim...","sga heap(1,0)","library ca
che")
Wed Feb 8 19:33:43 2012
Errors in file /ora/admin/cddp/bdump/cddp_cjq0_2601.trc:
ORA-00604: error occurred at recursive SQL level 2
ORA-04031: unable to allocate 4224 bytes of shared memory ("shared pool","select obj#,type#,ctime,mtim...","sga heap(1,0)","library ca
che")
Wed Feb 8 19:33:43 2012
Errors in file /ora/admin/cddp/bdump/cddp_cjq0_2601.trc:
ORA-00604: error occurred at recursive SQL level 2
ORA-04031: unable to allocate 4224 bytes of shared memory ("shared pool","select obj#,type#,ctime,mtim...","sga heap(1,0)","library ca
che")
Wed Feb 8 19:33:48 2012
Errors in file /ora/admin/cddp/bdump/cddp_cjq0_2601.trc:
ORA-00604: error occurred at recursive SQL level 2
ORA-04031: unable to allocate 4224 bytes of shared memory ("shared pool","select obj#,type#,ctime,mtim...","sga heap(1,0)","library ca
che")
========================================
i was running with 200MB size of share pool....couple of days back un expectdly i got above error....for temparory solution i did shared pool flush...
again nexday same error got repeated....for that i increased shared pool size to 420 MB....
while monitoring db it is using shared pool memory up to 400MB with avg shared pool hit ratio of 94.5 %..(database started recently)...
Earlier shared_pool size:200MB
Now:420 MB
Avg usage:up to 400MB
my question is :
1)if we have many different sql statements in shared pool ..won't
oracle flush share pool (ie aged out based on LRU or some alogorithm) if any program need memory in shared pool?
2) Any data Fragmentation will cause@above error?
3)can any one please explain..... how to check whats going on in Shared_pool(internally)...why it is using 400MB while compare to erlier avg usage 170MB .....any idea...(how to find root cause)..?
4)will plan table cause any issue ?
can any one explain to me...
thanks..
Edited by: kk001 on Feb 11, 2012 4:54 PM
Edited by: kk001 on Feb 11, 2012 4:56 PM -
Hi experts,
How could i check current shared pool size in my 8i instance? i want to increase the size of these memory what would be the command?
Regards,
SKPSumit,
How could i check current shared pool size in my 8iif you're just interested in the size, a "show parameter shared_p" in SQL*Plus would fit your needs. A look at init.ora is also sufficient as you can neither grow or shrink the shared pool in 8i, so "shared_pool_size" will show your current settings.
Regards,
--==/ Uwe \==-- -
Is result cache, part of PGA or SGA(Shared Pool)
Is result cache, part of PGA or SGA(Shared Pool). whats is its stand when is is in a dedicated server or a RAC environment
Server query result cache can only be in SGA otherwise it could not be shared: http://download.oracle.com/docs/cd/E11882_01/server.112/e16638/memory.htm#BGBGEACF
Edited by: P. Forstmann on 28 sept. 2010 09:30
Maybe you are looking for
-
Itunes 10.6.3 not supporting video
I tried to add my persnonal video to my itunes then to my iphone. However itunes 10.6.3 recently updated is not allowing me to add any of my videos though i converted it to iphone mp4 format using various video converting tools (any video converter,
-
Why can't I read a camera card with Touchsmart
I have a Touchsmart 610 & when I insert a camera card it wants to format the card. All I want to do is import the photos. What am I doing wrong?
-
Hi, I am having a weired issue in OIM 11g. when I am provising a resource directly after checking "auto save checkbox" the task system validation is going to pending state but all fields are getting pre-populated as per the logs and they are NOT comi
-
HI, IN VOV7 what is the diffrence between Billing Relevance B/C/F B Relevant for order-related billing - status acc.to order qty C Relevant for ord.-related billing - status acc.to target qty F Order-related billing doc. - status accordin
-
Why, when I have PSCC and Bridge CC already installed and working, yet the desktop CC wants me to install them again, which always fails. Error code 7. I have been trying to get mini bridge into photoshop.