Hello Tom:
Thanks for all your help to everybody.
We have just upgrade Oracle Applicaiton to Oracle 11i Applications. After that we are running into problem with Shared pool.
My Shared pool is as bellow
shared pool - 912MB ( I would like to say it used to be around 700 MB , then we increase it to 800 and now it is 912 mb, still it fills up)
We are flushing it every 30 minutes, becuase withing 30 minutes,It drops to around 60 MB free Memory.
Our Cursor_sharing parameter is set to EXACT
I would like to give you my statspack report as follow :
Snap Id Snap Time Sessions Curs/Sess Comment
--------- ------------------ -------- --------- -------------------
Begin Snap: 191 11-Jul-06 11:02:08 678 64.5
End Snap: 201 11-Jul-06 11:31:44 622 62.1
Elapsed: 29.60 (mins)
Cache Sizes (end)
~~~~~~~~~~~~~~~~~
Buffer Cache: 1,008M Std Block Size: 8K
Shared Pool Size: 800M Log Buffer: 10,240K
Load Profile
~~~~~~~~~~~~ Per Second Per Transaction
--------------- ---------------
Redo size: 121,997.06 10,815.49
Logical reads: 484,261.11 42,931.55
Block changes: 784.82 69.58
Physical reads: 2,408.13 213.49
Physical writes: 88.90 7.88
User calls: 597.23 52.95
Parses: 176.09 15.61
Hard parses: 10.31 0.91
Sorts: 98.82 8.76
Logons: 0.88 0.08
Executes: 849.23 75.29
Transactions: 11.28
% Blocks changed per Read: 0.16 Recursive Call %: 81.41
Rollback per transaction %: 5.26 Rows per Sort: 17.72
Instance Efficiency Percentages (Target 100%)
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Buffer Nowait %: 100.00 Redo NoWait %: 100.00
Buffer Hit %: 99.51 In-memory Sort %: 100.00
Library Hit %: 98.75 Soft Parse %: 94.15
Execute to Parse %: 79.27 Latch Hit %: 99.95
Parse CPU to Parse Elapsd %: 42.84 % Non-Parse CPU: 99.36
Shared Pool Statistics Begin End
------ ------
Memory Usage %: 92.67 92.83
% SQL with executions>1: 78.82 68.97
% Memory for SQL w/exec>1: 77.76 72.61
----------------------------------------------------------
LSQL ordered by Parse Calls for DB: FA1DB Instance: FA1DB Snaps: 191 -201
-> End Parse Calls Threshold: 1000
% Total
Parse Calls Executions Parses Hash Value
------------ ------------ -------- ----------
11,845 11,845 3.79 1307778841
select condition from cdef$ where rowid=:1
5,480 5,482 1.75 3468666020
select text from view$ where rowid=:1
3,623 3,623 1.16 2266133025
Module: RGRARG
SELECT child_flex_value_low, child_flex_value_high,
nvl(structured_hierarchy_level,'-1') from fnd_flex_valu
e_hierarchies fvh, fnd_flex_values fv where fv.flex_value_set_
id = :v_set_id and fv.flex_value_set_id = fvh.flex_value_set
_id and fv.flex_value = :p_value and fvh.parent_flex_val
2,380 2,380 0.76 803659160
Module: POXRQERQ
begin FND_FLEX_WORKFLOW_APIS.START_GENERATION (:v1, :v2, :v3, :v
4, :v5); end;
2,314 2,314 0.74 453101415
Module: POXRQERQ
begin FND_FLEX_WORKFLOW_APIS.END_GENERATION (:v1, :v2, :v3, :v4,
:v5); end;
2,292 2,292 0.73 1867339551
Module: RGRARG
SELECT nvl(sum(rows_this_value),0) FROM GL_SEGMENT_FREQUENCIES
WHERE SEGMENT_NAME = 'SEGMENT4' AND ( (segment_value >= '000' A
ND segment_value <= '999') )
2,290 2,291 0.73 21081923
Module: RGRARG
SELECT nvl(sum(rows_this_value),0) FROM GL_SEGMENT_FREQUENCIES
-> End Sharable Memory Threshold: 1048576
Sharable Mem (b) Executions % Total Hash Value
---------------- ------------ ------- ------------
4,584,547 1 0.5 1748159938
Module: RCVDLPDT
SELECT rrp . item_id , rrp . organization_id rrp_organization_id
, MSI.SEGMENT1 C_FLEX_ITEM , MCA.SEGMENT1||' '||MCA.SEGMENT2
C_FLEX_CAT , rrp . revision_num , rrp . category_id , decode ( m
si . segment1 , null , rrp . item_description , msi . segment1 |
| '-' || rrp . item_description ) item_description , rrp . un_nu
2,183,700 3 0.2 2981817383
Module: RCVRCVRC
select * from RCV_VRC_TXS_VENDINT_V where shipment_header_id = :
1 order by transaction_id
1,534,766 9 0.2 391693727
Module: ARXTWMAI
SELECT ROW_ID,APBA_INACTIVE_DATE,DEFAULT_TAX_EXEMPT_FLAG,BS_BATC
H_SOURCE_NAME,TRX_NUMBER,RA_BILLING_NUMBER,SOA_AGREEMENT_NAME,RA
B_BATCH_NAME,RAC_BILL_TO_CUSTOMER_NAME,RAC_BILL_TO_CUSTOMER_NUM,
RAA_BILL_TO_CONCAT_ADDRESS,RAA_BILL_TO_ADDRESS1,RAA_BILL_TO_ADDR
ESS2,RAA_BILL_TO_ADDRESS3,RAA_BILL_TO_ADDRESS3_DB,RAA_BILL_TO_CI
1,426,880 25 0.1 3214151870
Module: FNDRSRUN
INSERT INTO FND_CONCURRENT_REQUESTS ( REQUEST_ID,SECURITY_GROUP_
ID,PHASE_CODE,STATUS_CODE,PRIORITY,PARENT_REQUEST_ID,PRIORITY_RE
QUEST_ID,DESCRIPTION,REQ_INFORMATION,IS_SUB_REQUEST,HAS_SUB_REQU
EST,UPDATE_PROTECTED,HOLD_FLAG,ENFORCE_SERIALITY_FLAG,SINGLE_THR
EAD_FLAG,ARGUMENT_INPUT_METHOD_CODE,IMPLICIT_CODE,REQUEST_DATE,R
1,416,967 3 0.1 2363270862
SELECT decode(psp.manual_req_num_type,'NUMERIC',null,prh.segment
1) , decode(psp.manual_req_num_type,'NUMERIC',to_number(p
rh.segment1), null) , prh.segment1 Requisition
, psp.manual_req_num_type req_num_type , ppf.f
ull_name Preparer , prh.creation_date C
=======================================================
I have also created one of your script to populate the table with similiar kind of statements and replacing from following site.
</code>
http://asktom.oracle.com/pls/asktom/f?p=100:11:::::P11_QUESTION_ID:1163635055580 <code>
Output from this query is as below:
SELECT /*+ ORDERED INDEX(GL_CODE_COMBINATIONS GL_CODE_COMBINATIONS_N@) INDEX(GL_BALANCES GL_BALANCES_N@) */ NVL(BAL.PERIOD_TYPE, '#'), NVL(BAL.PERIOD_YEAR, -@), BAL.PERIOD_NAME, NVL(BAL.PERIOD_NUM, -@), NVL(BAL.PERIOD_NUM, -@), BAL.ACTUAL_FLAG, DECODE(CC.TEMPLATE_ID, NULL, '#', '#'), -@, NVL(BAL.BUDGET_VERSION_ID, -@), -@, NVL(BAL.ENCUMBRANCE_TYPE_ID, -@), BAL.CURRENCY_CODE, BAL.SET_OF_BOOKS_ID, NVL(BAL.TRANSLATED_FLAG, '#'), NVL(BAL.PERIOD_NET_DR, @) - NVL(BAL.PERIOD_NET_CR, @), NVL(BAL.PERIOD_NET_DR, @), NVL(BAL.PERIOD_NET_CR, @), NVL(BAL.QUARTER_TO_DATE_DR,@)-NVL(BAL.QUARTER_TO_DATE_CR, @), NVL(BAL.QUARTER_TO_DATE_DR, @), NVL(BAL.QUARTER_TO_DATE_CR, @), NVL(BAL.BEGIN_BALANCE_DR, @) - NVL(BAL.BEGIN_BALANCE_CR, @), NVL(BAL.BEGIN_BALANCE_DR, @), NVL(BAL.BEGIN_BALANCE_CR, @), NVL(BAL.PROJECT_TO_DATE_DR, @) - NVL(BAL.PROJECT_TO_DATE_CR, @), NVL(BAL.PROJECT_TO_DATE_DR, @), NVL(BAL.PROJECT_TO_DATE_CR, @) , NVL(SEGMENT@,'#'), NVL(SEGMENT@,'#'), NVL(SEGMENT@,'#'), |113
SAVEPOINT ORACLE_SVPT_@|119
SELECT NVL(SUM(ROWS_THIS_VALUE),@) FROM GL_SEGMENT_FREQUENCIES WHERE SEGMENT_NAME = '#' AND ( (SEGMENT_VALUE = '#') ) |250
INSERT INTO SYCLOSMARTREMOTELABTRANS (LABTRANSID, LABORCODE, LASTUPDATE, ACTION, SERVERID) VALUES ('#', '#', TO_DATE('#', '#'), NULL, '#')|307
BEGIN FND_PROFILE.PUT('#','#'); END;|342
SELECT /*+ ORDERED INDEX(GL_BALANCES GL_BALANCES_N@) INDEX(GL_CODE_COMBINATIONS GL_CODE_COMBINATIONS_U@) */ NVL(BAL.PERIOD_TYPE, '#'), NVL(BAL.PERIOD_YEAR, -@), BAL.PERIOD_NAME, NVL(BAL.PERIOD_NUM, -@), NVL(BAL.PERIOD_NUM, -@), BAL.ACTUAL_FLAG, DECODE(CC.TEMPLATE_ID, NULL, '#', '#'), -@, NVL(BAL.BUDGET_VERSION_ID, -@), -@, NVL(BAL.ENCUMBRANCE_TYPE_ID, -@), BAL.CURRENCY_CODE, BAL.SET_OF_BOOKS_ID, NVL(BAL.TRANSLATED_FLAG, '#'), NVL(BAL.PERIOD_NET_DR, @) - NVL(BAL.PERIOD_NET_CR, @), NVL(BAL.PERIOD_NET_DR, @), NVL(BAL.PERIOD_NET_CR, @), NVL(BAL.QUARTER_TO_DATE_DR,@)-NVL(BAL.QUARTER_TO_DATE_CR, @), NVL(BAL.QUARTER_TO_DATE_DR, @), NVL(BAL.QUARTER_TO_DATE_CR, @), NVL(BAL.BEGIN_BALANCE_DR, @) - NVL(BAL.BEGIN_BALANCE_CR, @), NVL(BAL.BEGIN_BALANCE_DR, @), NVL(BAL.BEGIN_BALANCE_CR, @), NVL(BAL.PROJECT_TO_DATE_DR, @) - NVL(BAL.PROJECT_TO_DATE_CR, @), NVL(BAL.PROJECT_TO_DATE_DR, @), NVL(BAL.PROJECT_TO_DATE_CR, @) , NVL(SEGMENT@,'#'), NVL(SEGMENT@,'#'), NVL(SEGMENT@,'#'), |367
Could you please give some hints what else I need to look at and why shared pool is filled up so fast?
I have also one question, If we dont flush and we have only let's say 30 MB and new statement come with the size of 50 mb how Oracle Handles it.
Thank you
~Keyur