AWR in-memory
Hi,
I am upgrading my certification from Oracle9i to Oracle10g. I am currently studying AWR and its structure. A book that I am reading is saying, "The total size of the AWR memory area cannot exceed more than 5 percent of the share pool size"
I know that there is a parameter which use to set share pool size but I don't know how to set AWR memory area in the share pool or SGA. Is there any parameter for setting AWR memory area?
It would be great if anyone answer me, please.
Thanks.
Asif
Hi Asif,
Are you talking about size ASH buffers?
The minimum size for ASH in-memory buffer is 1 MB.
SQL> select nam.ksppinm NAME,val.KSPPSTVL VALUE from x$ksppi nam, x$ksppsv val where nam.indx = val.indx and nam.ksppinm like '%_ash_size%' order by 1;
NAME VALUE
_ash_size 1048618
It is calculated as Max( Min ( No. of CPU * 2 M, 5% of SHARED_POOL_SIZE, 2% of SGA_TARGET) ,1M) gives the value for ASH size. You can increase it to the desired size as well.
SQL> alter system set "_ash_size" = 10000000;
System altered.
SQL> select * from v$sgastat where name = 'ASH buffers';
POOL NAME BYTES
shared pool ASH buffers 10000000
You also have a dynamic performance view v$ASH_INFO, which would provide more details.
Regards,
Suntrupth
Similar Messages
-
I have the following memory advisors from the AWR; I would like to know how to interpret these results?
PGA Memory Advisory:
"PGA Target Est (MB)","Size Factr","W/A MB Processed","Estd Extra W/A MB Read/ Written to Disk ","Estd PGA Cache Hit %","Estd PGA Overalloc Count","Estd Time"
"138","0.99","90,700.12","11,521.57","84.00","214","788.090,200"
"326","0.15","90,700.12","18,015.29","86.00","94","937,669,120"Hi,
These table function in a 'what-if' manner.
If you would increase the shared_pool size with a factor 2 then what would happen to the e.g. the number of physical reads.
Your output looks a bit strange to me however. It's either a very perfectly tuned system, or one that has no resources left.
In our 11g db the SGA_TARGET_ADVICE looks e.g. like below. It has more deviation between the several size factor values:
ESTD_DB_TIME ESTD_DB_TIME_FACTOR ESTD_PHYSICAL_READS SGA_SIZE SGA_SIZE_FACTOR
8988151 1 789178493 13312 1
11408661 1.2693 1282888558 4992 .375
10053248 1.1185 1006360414 6656 .5
9700014 1.0792 936518118 8320 .625
9304536 1.0352 855311651 9984 .75
9099608 1.0124 812301423 11648 .875
8937822 .9944 781286708 14976 1.125
8886590 .9887 769527949 16640 1.25
8834460 .9829 758163778 18304 1.375
8762557 .9749 745536922 19968 1.5
8583693 .955 702132127 21632 1.625
8568413 .9533 702132127 23296 1.75
8567514 .9532 676483826 24960 1.875
8567514 .9532 676483826 26624 2HTH
FJFranken -
ORA 04030 Out of process memory error
Dear experts,
I know there are multiple discussions around this error and I have been reading through most of them in the past one week or so, but looks like we are running out of options or are missing the color altogether. Ok, we are getting ORA-04030 - out of process memory while allocating....while one of our batch process runs in the night. It simply tries to insert/update to a table. Our installation is 11.2.0.1.0 with no RAC configuration and on 64-bit AIX having 6 cores, 12 CPUs and 16 GB memory.
We have checked the Workarea_Size_Policy is set to be as Auto so Oracle decides how much memory to allocate to PGA automatically on run-time based on the demand. And based on the AWR report it doesnt look like we are anywhere near the country having a PGA-deficit!! I am attaching the AWR report in a word document here for your reference.
Also attached below are the configurations and the ulimit values.
IKBTRN1> show parameter workarea;
NAME TYPE VALUE
workarea_size_policy string AUTO
oraipeikbtrn1:/home/oracle-> ulimit -a
time(seconds) unlimited
file(blocks) unlimited
data(kbytes) unlimited
stack(kbytes) 4194304
memory(kbytes) unlimited
coredump(blocks) unlimited
nofiles(descriptors) unlimited
threads(per process) unlimited
processes(per user) unlimited
Now, nothing seems to have contributed to the out of process memory issue from Oracle standpoint. I would be happy to be proved wrong here, if I am wrong.
So, whats going wrong here? A possible memory leak which we cannot zero down to, a OS memory limit or something else?
Seeking expert's advise on this, and also sincerely appreciate your time in looking at this.
Thanks.
P.S - I am pasting the whole AWR report since there is no 'upload file' option here that I can see.
WORKLOAD REPOSITORY report for
DB Name DB Id Instance Inst num Startup Time Release RAC
IKBTRN1 54659199 IKBTRN1 1 06-Jun-11 02:06 11.2.0.1.0 NO
Host Name Platform CPUs Cores Sockets Memory (GB)
oraipeikbtrn1.******.com AIX-Based Systems (64-bit) 12 6 16.00
Snap Id Snap Time Sessions Cursors/Session
Begin Snap: 5952 26-Aug-11 03:00:48 34 2.0
End Snap: 5953 26-Aug-11 04:00:52 32 1.9
Elapsed: 60.07 (mins)
DB Time: 1.93 (mins)
Report Summary
Cache Sizes
Begin End
Buffer Cache: 1,056M 704M Std Block Size: 8K
Shared Pool Size: 3,456M 3,456M Log Buffer: 7,184K
Load Profile
Load Profile
Per Second Per Transaction Per Exec Per Call
DB Time(s): 0.0 2.0 0.02 0.02
DB CPU(s): 0.0 0.5 0.00 0.00
Redo size: 556.1 34,554.8
Logical reads: 151.4 9,407.6
Block changes: 1.9 119.8
Physical reads: 14.2 882.6
Physical writes: 9.5 590.4
User calls: 1.8 112.8
Parses: 1.5 93.7
Hard parses: 0.1 8.9
W/A MB processed: -0.1 -6.9
Logons: 0.0 1.6
Executes: 1.9 115.4
Rollbacks: 0.0 0.0
Transactions: 0.0
Instance Efficiency Percentages (Target 100%)
Buffer Nowait %: 100.00 Redo NoWait %: 100.00
Buffer Hit %: 96.63 In-memory Sort %: 99.97
Library Hit %: 95.68 Soft Parse %: 90.49
Execute to Parse %: 18.74 Latch Hit %: 100.00
Parse CPU to Parse Elapsd %: 57.23 % Non-Parse CPU: 86.28
Shared Pool Statistics
Begin End
Memory Usage %: 85.72 85.76
% SQL with executions>1: 93.91 96.66
% Memory for SQL w/exec>1: 89.07 87.04
Top 5 Timed Foreground Events
Event Waits Time(s) Avg wait (ms) % DB time Wait Class
DB CPU 29 24.66
db file scattered read 3,456 17 5 14.92 User I/O
db file sequential read 4,304 17 4 14.77 User I/O
direct path read temp 764 17 22 14.31 User I/O
direct path write temp 259 5 21 4.70 User I/O
Host CPU (CPUs: 12 Cores: 6 Sockets: )
Load Average Begin Load Average End %User %System %WIO %Idle
1.39 1.37 0.2 0.2 0.2 99.6
Instance CPU
%Total CPU %Busy CPU %DB time waiting for CPU (Resource Manager)
0.1 20.5 0.0
Memory Statistics
Begin End
Host Mem (MB): 16,384.0 16,384.0
SGA use (MB): 4,704.0 4,352.0
PGA use (MB): 196.1 188.4
% Host Mem used for SGA+PGA: 29.91 27.71
Main Report
• Report Summary
• Wait Events Statistics
• SQL Statistics
• Instance Activity Statistics
• IO Stats
• Buffer Pool Statistics
• Advisory Statistics
• Wait Statistics
• Undo Statistics
• Latch Statistics
• Segment Statistics
• Dictionary Cache Statistics
• Library Cache Statistics
• Memory Statistics
• Streams Statistics
• Resource Limit Statistics
• Shared Server Statistics
• init.ora Parameters
Back to Top
Wait Events Statistics
• Time Model Statistics
• Operating System Statistics
• Operating System Statistics - Detail
• Foreground Wait Class
• Foreground Wait Events
• Background Wait Events
• Wait Event Histogram
• Wait Event Histogram Detail (64 msec to 2 sec)
• Wait Event Histogram Detail (4 sec to 2 min)
• Wait Event Histogram Detail (4 min to 1 hr)
• Service Statistics
• Service Wait Class Stats
Back to Top
Time Model Statistics
• Total time in database user-calls (DB Time): 115.9s
• Statistics including the word "background" measure background process time, and so do not contribute to the DB time statistic
• Ordered by % or DB time desc, Statistic name
Statistic Name Time (s) % of DB Time
sql execute elapsed time 101.69 87.75
DB CPU 28.58 24.66
parse time elapsed 10.14 8.75
hard parse elapsed time 9.92 8.56
failed parse elapsed time 4.92 4.25
hard parse (sharing criteria) elapsed time 4.27 3.68
connection management call elapsed time 0.42 0.36
PL/SQL compilation elapsed time 0.34 0.30
PL/SQL execution elapsed time 0.18 0.15
sequence load elapsed time 0.00 0.00
repeated bind elapsed time 0.00 0.00
DB time 115.88
background elapsed time 86.01
background cpu time 5.06
Back to Wait Events Statistics
Back to Top
Operating System Statistics
• *TIME statistic values are diffed. All others display actual values. End Value is displayed if different
• ordered by statistic type (CPU Use, Virtual Memory, Hardware Config), Name
Statistic Value End Value
NUM_LCPUS 0
NUM_VCPUS 0
AVG_BUSY_TIME 1,260
AVG_IDLE_TIME 360,705
AVG_IOWAIT_TIME 534
AVG_SYS_TIME 483
AVG_USER_TIME 679
BUSY_TIME 16,405
IDLE_TIME 4,329,811
IOWAIT_TIME 7,284
SYS_TIME 7,092
USER_TIME 9,313
LOAD 1 1
OS_CPU_WAIT_TIME 503,900
PHYSICAL_MEMORY_BYTES 17,179,869,184
NUM_CPUS 12
NUM_CPU_CORES 6
GLOBAL_RECEIVE_SIZE_MAX 1,310,720
GLOBAL_SEND_SIZE_MAX 1,310,720
TCP_RECEIVE_SIZE_DEFAULT 16,384
TCP_RECEIVE_SIZE_MAX 9,223,372,036,854,775,807
TCP_RECEIVE_SIZE_MIN 4,096
TCP_SEND_SIZE_DEFAULT 16,384
TCP_SEND_SIZE_MAX 9,223,372,036,854,775,807
TCP_SEND_SIZE_MIN 4,096
Back to Wait Events Statistics
Back to Top
Operating System Statistics - Detail
Snap Time Load %busy %user %sys %idle %iowait
26-Aug 03:00:48 1.39
26-Aug 04:00:52 1.37 0.38 0.21 0.16 99.62 0.17
Back to Wait Events Statistics
Back to Top
Foreground Wait Class
• s - second, ms - millisecond - 1000th of a second
• ordered by wait time desc, waits desc
• %Timeouts: value of 0 indicates value was < .5%. Value of null is truly 0
• Captured Time accounts for 78.2% of Total DB time 115.88 (s)
• Total FG Wait Time: 62.08 (s) DB CPU time: 28.58 (s)
Wait Class Waits %Time -outs Total Wait Time (s) Avg wait (ms) %DB time
User I/O 8,949 0 56 6 48.74
DB CPU 29 24.66
System I/O 1,916 0 3 1 2.18
Other 506 88 1 2 0.92
Configuration 2 50 1 500 0.86
Commit 37 0 1 18 0.56
Application 20 0 0 17 0.29
Network 4,792 0 0 0 0.01
Concurrency 1 0 0 0 0.00
Back to Wait Events Statistics
Back to Top
Foreground Wait Events
• s - second, ms - millisecond - 1000th of a second
• Only events with Total Wait Time (s) >= .001 are shown
• ordered by wait time desc, waits desc (idle events last)
• %Timeouts: value of 0 indicates value was < .5%. Value of null is truly 0
Event Waits %Time -outs Total Wait Time (s) Avg wait (ms) Waits /txn % DB time
db file scattered read 3,456 0 17 5 59.59 14.92
db file sequential read 4,304 0 17 4 74.21 14.77
direct path read temp 764 0 17 22 13.17 14.31
direct path write temp 259 0 5 21 4.47 4.70
control file sequential read 1,916 0 3 1 33.03 2.18
ADR block file read 38 0 1 28 0.66 0.92
log buffer space 2 50 1 500 0.03 0.86
log file sync 37 0 1 18 0.64 0.56
enq: RO - fast object reuse 14 0 0 24 0.24 0.29
local write wait 44 0 0 1 0.76 0.03
SQL*Net message to client 4,772 0 0 0 82.28 0.01
Disk file operations I/O 110 0 0 0 1.90 0.00
ADR block file write 7 0 0 0 0.12 0.00
SQL*Net message from client 4,773 0 15,396 3226 82.29
Streams AQ: waiting for messages in the queue 720 100 3,600 5000 12.41
Back to Wait Events Statistics
Back to Top
Background Wait Events
• ordered by wait time desc, waits desc (idle events last)
• Only events with Total Wait Time (s) >= .001 are shown
• %Timeouts: value of 0 indicates value was < .5%. Value of null is truly 0
Event Waits %Time -outs Total Wait Time (s) Avg wait (ms) Waits /txn % bg time
control file sequential read 4,950 0 35 7 85.34 40.74
control file parallel write 1,262 0 31 25 21.76 36.46
log file parallel write 383 0 4 10 6.60 4.37
db file parallel write 627 0 2 3 10.81 2.36
change tracking file synchronous read 56 0 2 34 0.97 2.21
os thread startup 17 0 1 88 0.29 1.74
ADR block file read 135 0 1 7 2.33 1.04
change tracking file synchronous write 56 0 1 15 0.97 0.98
SGA: allocation forcing component growth 8 100 1 100 0.14 0.93
db file sequential read 112 0 1 6 1.93 0.75
process diagnostic dump 94 0 0 1 1.62 0.09
ADR block file write 92 0 0 1 1.59 0.07
LGWR wait for redo copy 11 0 0 1 0.19 0.01
log file sync 2 0 0 3 0.03 0.01
ADR file lock 92 22 0 0 1.59 0.01
Parameter File I/O 24 0 0 0 0.41 0.01
direct path write 6 0 0 1 0.10 0.00
Disk file operations I/O 54 0 0 0 0.93 0.00
rdbms ipc message 17,637 97 61,836 3506 304.09
Streams AQ: waiting for time management or cleanup tasks 5 60 11,053 2210602 0.09
DIAG idle wait 7,203 100 7,203 1000 124.19
PX Idle Wait 1,802 100 3,604 2000 31.07
pmon timer 1,212 99 3,603 2973 20.90
Space Manager: slave idle wait 726 99 3,603 4963 12.52
smon timer 12 100 3,600 300004 0.21
Streams AQ: qmn slave idle wait 128 0 3,583 27993 2.21
Streams AQ: qmn coordinator idle wait 256 50 3,583 13996 4.41
SQL*Net message from client 293 0 2 5 5.05
Back to Wait Events Statistics
Back to Top
Wait Event Histogram
• Units for Total Waits column: K is 1000, M is 1000000, G is 1000000000
• % of Waits: value of .0 indicates value was <.05%; value of null is truly 0
• % of Waits: column heading of <=1s is truly <1024ms, >1s is truly >=1024ms
• Ordered by Event (idle events last)
% of Waits
Event Total Waits <1ms <2ms <4ms <8ms <16ms <32ms <=1s >1s
ADR block file read 173 80.3 5.2 2.3 5.8 1.7 4.6
ADR block file write 99 96.0 3.0 1.0
ADR file lock 102 100.0
Disk file operations I/O 165 100.0
LGWR wait for redo copy 11 90.9 9.1
Parameter File I/O 24 100.0
SGA: allocation forcing component growth 8 100.0
SQL*Net break/reset to client 6 100.0
SQL*Net message to client 4992 100.0
SQL*Net more data from client 20 100.0
asynch descriptor resize 541 100.0
change tracking file synchronous read 56 83.9 1.8 14.3
change tracking file synchronous write 56 80.4 7.1 1.8 10.7
control file parallel write 1262 80.3 1.7 .6 .6 .8 1.3 14.7
control file sequential read 6866 94.1 .9 .7 .7 .3 .4 2.9
db file parallel write 628 94.3 2.1 1.0 .8 .3 .3 1.3
db file scattered read 3457 72.6 7.2 5.4 6.9 5.7 .5 1.6
db file sequential read 4525 78.7 2.7 1.8 9.6 5.3 .4 1.5
direct path read temp 764 40.2 18.6 9.4 6.2 11.0 5.8 8.9
direct path sync 1 100.0
direct path write 6 83.3 16.7
direct path write temp 259 .4 1.2 88.8 .4 9.3
enq: RO - fast object reuse 14 42.9 42.9 7.1 7.1
latch free 1 100.0
latch: cache buffers lru chain 2 100.0
latch: checkpoint queue latch 2 100.0
latch: messages 2 100.0
latch: object queue header operation 2 100.0
latch: redo allocation 1 100.0
latch: row cache objects 1 100.0
local write wait 44 100.0
log buffer space 2 50.0 50.0
log file parallel write 383 92.4 .8 1.0 5.7
log file sync 39 82.1 2.6 2.6 12.8
os thread startup 17 100.0
process diagnostic dump 94 34.0 63.8 2.1
reliable message 7 100.0
utl_file I/O 12 100.0
DIAG idle wait 7204 100.0
PX Idle Wait 1802 100.0
SQL*Net message from client 5067 87.1 6.6 1.0 .5 .5 .1 .5 3.7
Space Manager: slave idle wait 726 .6 99.4
Streams AQ: qmn coordinator idle wait 256 49.2 .8 50.0
Streams AQ: qmn slave idle wait 128 100.0
Streams AQ: waiting for messages in the queue 721 100.0
Streams AQ: waiting for time management or cleanup tasks 5 40.0 20.0 40.0
class slave wait 17 100.0
pmon timer 1212 .9 99.1
rdbms ipc message 17.6K 1.8 .4 .2 .2 .1 .1 21.0 76.2
smon timer 12 100.0
Back to Wait Events Statistics
Back to Top
I couldnt add the rest of the report here since it is telling me I have exceeded 30000 characters. If you want to see the full report, please email me at [email protected]Unless your database is strictly a DSS-type of database, your AWR report exposes loads of issues with it. And I think none of the time during the AWR window was spent on database. Look at the DB time (with all those multi cores) compared with the elapsed time of the AWR.
As you are on 11g, why not make use of MEMORY_TARGET (a single parameter to manage both SGA and PGA)? If you are already on it, ignore this as I can't see it anywhere. If not, get rid of SGA_TARGET and PGA_AGGREGATE_TARGET and replace it with a single MEMORY_TARGET parameter. However you may have a minimum threshold set for different SGA pools so that they won't shrink beyond that point.
Having said that, setting MEMORY_TARGET is not a guarantee to avoid ORA-4030. Just a single bad PL/SQL code could go and exploit the untunable part of your process memory and even go and blow up the physical memory. If you are using FORALL and BULK load, see if you can cut it down into few chunks rather than running as a single process.
What does your V$PGASTAT say? -
AWR Report - no data!!
Oracle Version: 11.1.0.7 64x
OS Version: Windows 2008 Server 64x
Hi There,
We're just trying to generate a awr report for one of our databases and the report is coming out with no data.
statistics_level parameter is set to "TYPICAL"; any idea to what's going on please?
Thanks
SQL>
SQL> @?/rdbms/admin/awrrpt.sql
Current Instance
~~~~~~~~~~~~~~~~
DB Id DB Name Inst Num Instance
1391811405 WEBTST 1 webtst
Specify the Report Type
~~~~~~~~~~~~~~~~~~~~~~~
Would you like an HTML report, or a plain text report?
Enter 'html' for an HTML report, or 'text' for plain text
Defaults to 'html'
Enter value for report_type: text
Type Specified: text
Instances in this Workload Repository schema
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
DB Id Inst Num DB Name Instance Host
* 1391811405 1 WEBTST webtst WEBDBTST
Using 1391811405 for database Id
Using 1 for instance number
Specify the number of days of snapshots to choose from
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Entering the number of days (n) will result in the most recent
(n) days of snapshots being listed. Pressing <return> without
specifying a number lists all completed snapshots.
Enter value for num_days: 1
Listing the last day's Completed Snapshots
Snap
Instance DB Name Snap Id Snap Started Level
webtst WEBTST 43973 12 May 2011 00:00 1
43974 12 May 2011 01:00 1
43975 12 May 2011 02:00 1
43976 12 May 2011 03:00 1
43977 12 May 2011 04:00 1
43978 12 May 2011 05:00 1
43979 12 May 2011 06:00 1
43980 12 May 2011 07:00 1
43981 12 May 2011 08:00 1
43982 12 May 2011 09:00 1
43983 12 May 2011 10:00 1
43984 12 May 2011 11:00 1
43985 12 May 2011 11:02 1
Specify the Begin and End Snapshot Ids
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Enter value for begin_snap: 43984
Begin Snapshot Id specified: 43984
Enter value for end_snap: 43985
End Snapshot Id specified: 43985
Specify the Report Name
~~~~~~~~~~~~~~~~~~~~~~~
The default report file name is awrrpt_1_43984_43985.txt. To use this name,
press <return> to continue, otherwise enter an alternative.
Enter value for report_name:
Using the report name awrrpt_1_43984_43985.txt
WARNING (-20023)
ORA-20023: Missing start and end values for time model stat: parse time elapsed
WARNING (-20023)
ORA-20023: Missing start and end values for time model stat: DB CPU
WARNING (-20016)
ORA-20016: Missing value for SGASTAT: free memory
WARNING (-20016)
ORA-20016: Missing value for SGASTAT: free memory
WARNING (-20009)
ORA-20009: Missing System Statistic logons current
WARNING (-20009)
ORA-20009: Missing System Statistic logons current
WARNING (-20009)
ORA-20009: Missing System Statistic opened cursors current
WARNING (-20009)
ORA-20009: Missing System Statistic opened cursors current
WARNING (-20023)
ORA-20023: Missing start and end values for time model stat: sql execute elapsed
WARNING (-20008)
ORA-20008: Missing Init.ora parameter undo_management
WARNING (-20008)
ORA-20008: Missing Init.ora parameter db_block_size
WARNING (-20016)
ORA-20016: Missing value for SGASTAT: log_buffer
WARNING (-20023)
ORA-20023: Missing start and end values for time model stat: DB time
WARNING (-20008)
ORA-20008: Missing Init.ora parameter timed_statistics
WARNING (-20008)
ORA-20008: Missing Init.ora parameter timed_statistics
WARNING (-20008)
ORA-20008: Missing Init.ora parameter statistics_level
WARNING (-20008)
ORA-20008: Missing Init.ora parameter statistics_level
WARNING (-20008)
ORA-20008: Missing Init.ora parameter sga_target
WARNING (-20008)
ORA-20008: Missing Init.ora parameter pga_aggregate_target
WARNING (-20023)
ORA-20023: Missing start and end values for time model stat: background cpu time
WARNING (-20023)
ORA-20023: Missing start and end values for time model stat: background elapsed
WARNING (-20023)
ORA-20023: Missing start and end values for time model stat: connection manageme
WARNING (-20016)
ORA-20016: Missing value for SGASTAT: buffer_cache
WARNING (-20016)
ORA-20016: Missing value for SGASTAT: buffer_cache
WARNING: Since the DB Time is less than one second, there was
minimal foreground activity in the snapshot period.
Some of the percentage values will be invalid.
WORKLOAD REPOSITORY report for
DB Name DB Id Instance Inst Num Startup Time Release RAC
WEBTST 1391811405 webtst 1 29-Apr-11 04:50 11.1.0.7.0 NO
Host Name Platform CPUs Cores Sockets Memory(GB)
WEBDBTST Microsoft Windows x86 64-bit .00
Snap Id Snap Time Sessions Curs/Sess
Begin Snap: 43984 12-May-11 11:00:01
End Snap: 43985 12-May-11 11:02:00
Elapsed: 1.98 (mins)
DB Time: 0.00 (mins)
Cache Sizes Begin End
~~~~~~~~~~~ ---------- ----------
Buffer Cache:MM Std Block Size:K
Shared Pool Size: 0M 0M Log Buffer:K
ORA-01403: no data found
Error encountered in Report Summary
Continuing to Report Sections
Time Model Statistics DB/Inst: WEBTST/webtst Snaps: 43984-43985
No data exists for this section of the report.
Operating System Statistics DB/Inst: WEBTST/webtst Snaps: 43984-43985
No data exists for this section of the report.
Operating System Statistics - DetailDB/Inst: WEBTST/webtst Snaps: 43984-43985
No data exists for this section of the report.
Foreground Wait Class DB/Inst: WEBTST/webtst Snaps: 43984-43985
-> s - second, ms - millisecond - 1000th of a second
-> ordered by wait time desc, waits desc
-> %Timeouts: value of 0 indicates value was < .5%. Value of null is truly 0
-> Captured Time accounts for % of Total DB time .00 (s)
-> Total FG Wait Time: (s) DB CPU time: .00 (s)
Avg
%Time Total Wait wait
Wait Class Waits -outs Time (s) (ms) %DB time
DB CPU 0 100.0
Foreground Wait Events DB/Inst: WEBTST/webtst Snaps: 43984-43985
No data exists for this section of the report.
Background Wait Events DB/Inst: WEBTST/webtst Snaps: 43984-43985
No data exists for this section of the report.
Wait Event Histogram DB/Inst: WEBTST/webtst Snaps: 43984-43985
No data exists for this section of the report.
Service Statistics DB/Inst: WEBTST/webtst Snaps: 43984-43985
No data exists for this section of the report.
Service Wait Class Stats DB/Inst: WEBTST/webtst Snaps: 43984-43985
No data exists for this section of the report.
SQL ordered by Elapsed Time DB/Inst: WEBTST/webtst Snaps: 43984-43985
No data exists for this section of the report.
SQL ordered by CPU Time DB/Inst: WEBTST/webtst Snaps: 43984-43985
No data exists for this section of the report.
SQL ordered by Gets DB/Inst: WEBTST/webtst Snaps: 43984-43985
No data exists for this section of the report.
SQL ordered by Reads DB/Inst: WEBTST/webtst Snaps: 43984-43985
No data exists for this section of the report.
SQL ordered by Executions DB/Inst: WEBTST/webtst Snaps: 43984-43985
No data exists for this section of the report.
SQL ordered by Parse Calls DB/Inst: WEBTST/webtst Snaps: 43984-43985
No data exists for this section of the report.
SQL ordered by Sharable Memory DB/Inst: WEBTST/webtst Snaps: 43984-43985
No data exists for this section of the report.
SQL ordered by Version Count DB/Inst: WEBTST/webtst Snaps: 43984-43985
No data exists for this section of the report.
Instance Activity Stats DB/Inst: WEBTST/webtst Snaps: 43984-43985
No data exists for this section of the report.
Instance Activity Stats - Absolute ValuesDB/Inst: WEBTST/webtst Snaps: 43984
No data exists for this section of the report.
Instance Activity Stats - Thread ActivityDB/Inst: WEBTST/webtst Snaps: 43984-
No data exists for this section of the report.
Tablespace IO Stats DB/Inst: WEBTST/webtst Snaps: 43984-43985
No data exists for this section of the report.
File IO Stats DB/Inst: WEBTST/webtst Snaps: 43984-43985
No data exists for this section of the report.
Buffer Pool Statistics DB/Inst: WEBTST/webtst Snaps: 43984-43985
No data exists for this section of the report.
Instance Recovery Stats DB/Inst: WEBTST/webtst Snaps: 43984-43985
No data exists for this section of the report.
Buffer Pool Advisory DB/Inst: WEBTST/webtst Snap: 43985
No data exists for this section of the report.
PGA Aggr Summary DB/Inst: WEBTST/webtst Snaps: 43984-43985
No data exists for this section of the report.
PGA Aggr Target Stats DB/Inst: WEBTST/webtst Snaps: 43984-43985
No data exists for this section of the report.
PGA Aggr Target Histogram DB/Inst: WEBTST/webtst Snaps: 43984-43985
No data exists for this section of the report.
PGA Memory Advisory DB/Inst: WEBTST/webtst Snap: 43985
No data exists for this section of the report.
Shared Pool Advisory DB/Inst: WEBTST/webtst Snap: 43985
No data exists for this section of the report.
SGA Target Advisory DB/Inst: WEBTST/webtst Snap: 43985
No data exists for this section of the report.
Streams Pool Advisory DB/Inst: WEBTST/webtst Snap: 43985
No data exists for this section of the report.
Java Pool Advisory DB/Inst: WEBTST/webtst Snap: 43985
No data exists for this section of the report.
Buffer Wait Statistics DB/Inst: WEBTST/webtst Snaps: 43984-43985
No data exists for this section of the report.
Enqueue Activity DB/Inst: WEBTST/webtst Snaps: 43984-43985
No data exists for this section of the report.
Undo Segment Summary DB/Inst: WEBTST/webtst Snaps: 43984-43985
No data exists for this section of the report.
Undo Segment Stats DB/Inst: WEBTST/webtst Snaps: 43984-43985
No data exists for this section of the report.
Latch Activity DB/Inst: WEBTST/webtst Snaps: 43984-43985
No data exists for this section of the report.
Latch Sleep Breakdown DB/Inst: WEBTST/webtst Snaps: 43984-43985
No data exists for this section of the report.
Latch Miss Sources DB/Inst: WEBTST/webtst Snaps: 43984-43985
No data exists for this section of the report.
Mutex Sleep Summary DB/Inst: WEBTST/webtst Snaps: 43984-43985
No data exists for this section of the report.
Parent Latch Statistics DB/Inst: WEBTST/webtst Snaps: 43984-43985
No data exists for this section of the report.
Child Latch Statistics DB/Inst: WEBTST/webtst Snaps: 43984-43985
No data exists for this section of the report.
Segments by Row Lock Waits DB/Inst: WEBTST/webtst Snaps: 43984-43985
No data exists for this section of the report.
Segments by ITL Waits DB/Inst: WEBTST/webtst Snaps: 43984-43985
No data exists for this section of the report.
Segments by Buffer Busy Waits DB/Inst: WEBTST/webtst Snaps: 43984-43985
No data exists for this section of the report.
Dictionary Cache Stats DB/Inst: WEBTST/webtst Snaps: 43984-43985
No data exists for this section of the report.
Library Cache Activity DB/Inst: WEBTST/webtst Snaps: 43984-43985
No data exists for this section of the report.
Memory Dynamic Components DB/Inst: WEBTST/webtst Snaps: 43984-43985
No data exists for this section of the report.
Memory Resize Operations Summary DB/Inst: WEBTST/webtst Snaps: 43984-43985
No data exists for this section of the report.
Memory Resize Ops DB/Inst: WEBTST/webtst Snaps: 43984-43985
No data exists for this section of the report.
Process Memory Summary DB/Inst: WEBTST/webtst Snaps: 43984-43985
No data exists for this section of the report.
sum
SGA breakdown difference DB/Inst: WEBTST/webtst Snaps: 43984-43985
No data exists for this section of the report.
Streams CPU/IO Usage DB/Inst: WEBTST/webtst Snaps: 43984-43985
No data exists for this section of the report.
Streams Capture DB/Inst: WEBTST/webtst Snaps: 43984-43985
No data exists for this section of the report.
Streams Apply DB/Inst: WEBTST/webtst Snaps: 43984-43985
No data exists for this section of the report.
Buffered Queues DB/Inst: WEBTST/webtst Snaps: 43984-43985
No data exists for this section of the report.
Buffered Subscribers DB/Inst: WEBTST/webtst Snaps: 43984-43985
No data exists for this section of the report.
Rule Set DB/Inst: WEBTST/webtst Snaps: 43984-43985
No data exists for this section of the report.
Persistent Queues DB/Inst: WEBTST/webtst Snaps: 43984-43985
No data exists for this section of the report.
Persistent Subscribers DB/Inst: WEBTST/webtst Snaps: 43984-43985
No data exists for this section of the report.
Resource Limit Stats DB/Inst: WEBTST/webtst Snap: 43985
No data exists for this section of the report.
init.ora Parameters DB/Inst: WEBTST/webtst Snaps: 43984-43985
No data exists for this section of the report.
End of ReportSQL> show parameter statistics
NAME TYPE VALUE
optimizer_use_pending_statistics boolean FALSE
statistics_level string TYPICAL
timed_os_statistics integer 0
timed_statistics boolean TRUE
SQL>
SQL> SELECT statistics_name,
2 session_status,
3 system_status,
4 activation_level,
5 session_settable
6 FROM v$statistics_level
7 ORDER BY statistics_name;
STATISTICS_NAME SESSION_ SYSTEM_S ACTIVAT SES
Active Session History ENABLED ENABLED TYPICAL NO
Adaptive Thresholds Enabled ENABLED ENABLED TYPICAL NO
Automated Maintenance Tasks ENABLED ENABLED TYPICAL NO
Bind Data Capture ENABLED ENABLED TYPICAL NO
Buffer Cache Advice ENABLED ENABLED TYPICAL NO
Global Cache Statistics ENABLED ENABLED TYPICAL NO
Longops Statistics ENABLED ENABLED TYPICAL NO
MTTR Advice DISABLED DISABLED TYPICAL NO
Modification Monitoring ENABLED ENABLED TYPICAL NO
PGA Advice ENABLED ENABLED TYPICAL NO
Plan Execution Sampling ENABLED ENABLED TYPICAL YES
Plan Execution Statistics DISABLED DISABLED ALL YES
SQL Monitoring ENABLED ENABLED TYPICAL YES
Segment Level Statistics ENABLED ENABLED TYPICAL NO
Shared Pool Advice ENABLED ENABLED TYPICAL NO
Streams Pool Advice ENABLED ENABLED TYPICAL NO
Threshold-based Alerts ENABLED ENABLED TYPICAL NO
Time Model Events ENABLED ENABLED TYPICAL YES
Timed OS Statistics DISABLED DISABLED ALL YES
Timed Statistics ENABLED ENABLED TYPICAL YES
Ultrafast Latch Statistics ENABLED ENABLED TYPICAL NO
Undo Advisor, Alerts and Fast Ramp up ENABLED ENABLED TYPICAL NO
V$IOSTAT_* statistics ENABLED ENABLED TYPICAL NO
23 rows selected.
SQL>Thanks
Edited by: rsar001 on May 12, 2011 11:33 AM -
Hi,
I have some questions related to AWR:
1) In AWR there is a section on "SQL ordered by Sharable Memory" . I am not clear what is the meaning of sqls ordered by sharable memory? and and how that information could be used for a tuning oppertunity?
2) in the SQL Statistics section of AWR, several sqls are listed under each group (e.g. for sqls ordered by elapsed time, ordered by cpu time etc). Is there a rule that how many sqls will be listed there? I mean say under teh sqls ordered by elapse time category how many sql statements will be listed? In one AWR report I found 16 statements under this category. Now in same AWR report, under "SQL ordered by Reads" category I found 10 statements listed (not 16). So what is the rule? How many statements will be listed by Oracle in the AWR for each of the category?
3) Under "instance activity" section lots of stats are given. Are these stats cumulative since the database startup or they are for the snapshot period for which the AWR report is taken? -I think that the stats should be for the snapshot period, not cumulative but want to confirm if my understanding is correct.
ThanksWhat i belive about the query tuning i always start from using Bind Variables.
But if your query is very resource intensive try writing the query in some other manner .
Is your query is using view also if yes check the view if it is meargable or non mergable.
Try to investigate your execution plan for the query and. tune it.
As far as a full table scan is concerned it depends on the selectivity part of your sql query
if the sql is returning high numbers of rows then . it is optimal way to do the operation by
a full table scan.
the best way to tune your sql is to generate the plan output from the trace file of the session
by using the tkprof utility.
sql> alter session set sql_trace=true;
sql>------------do your work...
sql> alter session set sql_trace=false;
then a trace file will be generated in to your udump folder...
which can be analysed for getting the sql execution plan which oracle used
to solve the result.....
Try it if you find some difficulty let me know...
i will help you.
Bi Tc -
How to comment my SQL in PL/SQL so that the comment carries to AWR?
Is there anything about using comments as in /* some comment */ in a SQL statement in a PL SQL procedure and expecting that to be carried thru to AWR?
Right now it seems my comments are not visible in the AWR history. I'm wondering if they are compiled out when they are in PL/SQL blocks or not?
Is there a way to preserve them such that they remain without using dynamic sql?steffi wrote:
Is there anything about using comments as in /* some comment */ in a SQL statement in a PL SQL procedure and expecting that to be carried thru to AWR?Comments are stripped from (static) SQL code written in PL/SQL, unless that comment is a CBO hint.
It is a "+Good Thing+" as it reduces the memory footprint of the cursor in the shared pool. It also ensures a greater potential degree of cursor sharing as the very same SQL statement with different comments will wind up as a single re-usable cursor.
Why exactly do you want to see comments in SQL cursors in AWR reports? This is just a high level overview - not sure what enlightenment SQL comments will bring. -
High library cache load lock waits in AWR
Hi All,
Today i faced a significant performance problem related to shared pool. I made some observations, thought it would be a nice idea to share them with Oracle experts. Please feel free to add your observations/recommendations and correct me where i am wrong.
Here are the excerpts from AWR report created for the problem timing. Database server is on 10.2.0.3 and running with 2*16 configuration. DB cache size is 4,000M and shared pool size is of 3008M.
Snap Id Snap Time Sessions Cursors/Session
Begin Snap: 9994 29-Jun-09 10:00:07 672 66.3
End Snap: 10001 29-Jun-09 17:00:49 651 64.4
Elapsed: 420.70 (mins)
DB Time: 4,045.34 (mins) -- Very poor response time visible from difference between DB time and elapsed time.
Load Profile
Per Second Per Transaction
Redo size: 248,954.70 23,511.82
Logical reads: 116,107.04 10,965.40
Block changes: 1,357.13 128.17
Physical reads: 125.49 11.85
Physical writes: 51.49 4.86
User calls: 224.69 21.22
Parses: 235.22 22.21
Hard parses: 4.83 0.46
Sorts: 102.94 9.72
Logons: 1.12 0.11
Executes: 821.11 77.55
Transactions: 10.59 -- User calls and Parse count are almost same, means most of the calls are for parse. Most of the parses are soft. Per transaction 22 parses are very high figure.
-- Not much disk I/O activity. Most of the reads are being satisfy from memory.
Instance Efficiency
Buffer Nowait %: 100.00 Redo NoWait %: 100.00
Buffer Hit %: 99.92 In-memory Sort %: 100.00
Library Hit %: 98.92 Soft Parse %: 97.95
Execute to Parse %: 71.35 Latch Hit %: 99.98
Parse CPU to Parse Elapsd %: 16.82 % Non-Parse CPU: 91.41 -- Low execute to parse ratio denotes CPU is significantly busy in parsing. Soft Parse% showing, most of the parse are soft parses. It means we should concentrate on soft parsing activity.
-- Parse CPU to Parse Elapsed % is quite low, means some bottleneck is there related to parsing. It could be a side-effect of huge parsing pressure. Like CPU cycles are not available.
Shared Pool Statistics
Begin End
Memory Usage %: 81.01 81.92
% SQL with executions>1: 88.51 86.93
% Memory for SQL w/exec>1: 86.16 86.76 -- Shared Pool memory seems ok (in 80% range)
-- 88% of the SQLs are repeating ones. It's a good sign.
Top 5 Timed Events
Event Waits Time(s) Avg Wait(ms) % Total Call Time Wait Class
library cache load lock 24,243 64,286 2,652 26.5 Concurrency
db file sequential read 1,580,769 42,267 27 17.4 User I/O
CPU time 33,039 13.6
latch: library cache 53,013 29,194 551 12.0 Concurrency
db file scattered read 151,669 13,550 89 5.6 User I/O Problem-1: Contention on Library cache: May be due to under-sized shared pool, incorrect parameters, poor application design, But since we already observed that most of the parses are soft parses and shared pool usgae in 80%, seems problem related to holding cursors. open_cursors/session_cached_cursors are red flags.
Problem-2: User I/O, may be due to poor SQLs, I/O sub-system, or poor physical design (wrong indexes are being used as DB file seq reads)
Wait Class
Wait Class Waits %Time -outs Total Wait Time (s) Avg wait (ms) Waits /txn
Concurrency 170,577 44.58 109,020 639 0.64
User I/O 2,001,978 0.00 59,662 30 7.49
System I/O 564,771 0.00 8,069 14 2.11
Application 145,106 1.25 6,352 44 0.54
Commit 176,671 0.37 4,528 26 0.66
Other 27,557 6.31 2,532 92 0.10
Network 6,862,704 0.00 696 0 25.68
Configuration 3,858 3.71 141 37 0.01
Wait Events
Event Waits %Time -outs Total Wait Time (s) Avg wait (ms) Waits /txn
library cache load lock 24,243 83.95 64,286 2652 0.09
db file sequential read 1,580,769 0.00 42,267 27 5.91
latch: library cache 53,013 0.00 29,194 551 0.20
db file scattered read 151,669 0.00 13,550 89 0.57
latch: shared pool 25,403 0.00 12,969 511 0.10
log file sync 176,671 0.37 4,528 26 0.66
enq: TM - contention 1,455 90.93 3,975 2732 0.01 Instance Activity Stats
opened cursors cumulative 5,290,760 209.60 19.80
parse count (failures) 6,181 0.24 0.02
parse count (hard) 121,841 4.83 0.46
parse count (total) 5,937,336 235.22 22.21
parse time cpu 283,787 11.24 1.06
parse time elapsed 1,687,096 66.84 6.31 Latch Activity
library cache 85,042,375 0.15 0.43 29194 304,831 7.16
library cache load lock 257,089 0.00 1.20 0 69,065 0.00
library cache lock 41,467,300 0.02 0.07 6 2,714 0.07
library cache lock allocation 730,422 0.00 0.44 0 0
library cache pin 28,453,986 0.01 0.16 8 167 0.00
library cache pin allocation 509,000 0.00 0.38 0 0 Init.ora parameters
cursor_sharing= EXACT
open_cursors= 3000
session_cached_cursors= 0
-- open_cursors value is too high. I have checked that maximum usage by a single session is 12%.
-- session_cached_cursors are 0 causing soft parsing. 500/600 is good number to start with.
cursor_sharing exact may cause hard parses. But here, hard parsing is comparatively small, we can ignore this.
From v$librarycache
NAMESPACE GETS GETHITS GETHITRATIO PINS PINHITRATIO RELOADS INVALIDATIONS
SQL AREA 162827 25127 .154317159 748901435 .999153087 107941 81886-- high invalidation count due to DDL like activities.
-- high reloads due to small library cache.
-- hit ratio too small.
-- Need to pin frequently executed objects into library cache.
P.S. Same question asked on Oracle_L, but due to formatting reasons, pasing duplicate contents here.
Regards,
Neeraj Bhatia
Edited by: Neeraj.Bhatia2 on Jul 13, 2009 6:51 AMThanks Charles. I really appreciate your efforts to diagnose the issue.
I agree with you performance issue is caused by soft parsing, which can be solved by holding cursors (session_cached_cursors). It may be due to oversized shared pool, which is causing delay in searching child cursors.
My second thought is, there is large number of reloads, which can be due to under-sized shared pool, if invalidation activities are not going (CBO statistics collection, DDL etc), cursors are being flushed frequently.
CPU utilization is continuously high (above 90%). Pasting additional information from same AWR report.
Namespace Get Requests Pct Miss Pin Requests Pct Miss Reloads Invalidations
BODY 225,345 0.76 4,965,541 0.15 5,533 0
CLUSTER 1,278 1.41 2,542 1.73 26 0
INDEX 5,982 9.31 13,922 7.35 258 0
SQL AREA 141,465 54.10 27,831,235 1.21 69,863 19,085 Latch Miss Sources
Latch Name Where NoWait Misses Sleeps Waiter Sleeps
library cache lock kgllkdl: child: no lock handle 0 8,250 5,792 Time Model Statistics
Statistic Name Time (s) % of DB Time
sql execute elapsed time 206,979.31 85.27
PL/SQL execution elapsed time 94,651.78 39.00
DB CPU 33,039.29 13.61
parse time elapsed 22,635.47 9.33
inbound PL/SQL rpc elapsed time 14,763.48 6.08
hard parse elapsed time 14,136.77 5.82
connection management call elapsed time 1,625.07 0.67
PL/SQL compilation elapsed time 760.76 0.31
repeated bind elapsed time 664.81 0.27
hard parse (sharing criteria) elapsed time 500.11 0.21
Java execution elapsed time 252.95 0.10
failed parse elapsed time 167.23 0.07
hard parse (bind mismatch) elapsed time 124.11 0.05
sequence load elapsed time 23.34 0.01
DB time 242,720.12
background elapsed time 11,645.52
background cpu time 247.25 According to this DB CPU is 65% utilization (DB CPU + Background CPU / Total Available CPU seconds). While at the same time DB host was 95% utilized (confirmed from DBA_HIST_SYSMETRIC_SUMMARY).
Operating System Statistics
Statistic Total
BUSY_TIME 3,586,030
IDLE_TIME 1,545,064
IOWAIT_TIME 22,237
NICE_TIME 0
SYS_TIME 197,661
USER_TIME 3,319,452
LOAD 11
RSRC_MGR_CPU_WAIT_TIME 0
PHYSICAL_MEMORY_BYTES 867,180
NUM_CPUS 2 -
Pre-loading Oracle text in memory with Oracle 12c
There is a white paper from Roger Ford that explains how to load the Oracle index in memory : http://www.oracle.com/technetwork/database/enterprise-edition/mem-load-082296.html
In our application, Oracle 12c, we are indexing a big XML field (which is stored as XMLType with storage secure file) with the PATH_SECTION_GROUP. If I don't load the I table (DR$..$I) into memory using the technique explained in the white paper then I cannot have decent performance (and especially not predictable performance, it looks like if the blocks from the TOKEN_INFO columns are not memory then performance can fall sharply)
But after migrating to oracle 12c, I got a different problem, which I can reproduce: when I create the index it is relatively small (as seen with ctx_report.index_size) and by applying the technique from the whitepaper, I can pin the DR$ I table into memory. But as soon as I do a ctx_ddl.optimize_index('Index','REBUILD') the size becomes much bigger and I can't pin the index in memory. Not sure if it is bug or not.
What I found as work-around is to build the index with the following storage options:
ctx_ddl.create_preference('TEST_STO','BASIC_STORAGE');
ctx_ddl.set_attribute ('TEST_STO', 'BIG_IO', 'YES' );
ctx_ddl.set_attribute ('TEST_STO', 'SEPARATE_OFFSETS', 'NO' );
so that the token_info column will be stored in a secure file. Then I can change the storage of that column to put it in the keep buffer cache, and write a procedure to read the LOB so that it will be loaded in the keep cache. The size of the LOB column is more or less the same as when creating the index without the BIG_IO option but it remains constant even after a ctx_dll.optimize_index. The procedure to read the LOB and to load it into the cache is very similar to the loaddollarR procedure from the white paper.
Because of the SDATA section, there is a new DR table (S table) and an IOT on top of it. This is not documented in the white paper (the white paper was written for Oracle 10g). In my case this DR$ S table is much used, and the IOT also, but putting it in the keep cache is not as important as the token_info column of the DR I table. A final note: doing SEPARATE_OFFSETS = 'YES' was very bad in my case, the combined size of the two columns is much bigger than having only the TOKEN_INFO column and both columns are read.
Here is an example on how to reproduce the problem with the size increasing when doing ctx_optimize
1. create the table
drop table test;
CREATE TABLE test
(ID NUMBER(9,0) NOT NULL ENABLE,
XML_DATA XMLTYPE
XMLTYPE COLUMN XML_DATA STORE AS SECUREFILE BINARY XML (tablespace users disable storage in row);
2. insert a few records
insert into test values(1,'<Book><TITLE>Tale of Two Cities</TITLE>It was the best of times.<Author NAME="Charles Dickens"> Born in England in the town, Stratford_Upon_Avon </Author></Book>');
insert into test values(2,'<BOOK><TITLE>The House of Mirth</TITLE>Written in 1905<Author NAME="Edith Wharton"> Wharton was born to George Frederic Jones and Lucretia Stevens Rhinelander in New York City.</Author></BOOK>');
insert into test values(3,'<BOOK><TITLE>Age of innocence</TITLE>She got a prize for it.<Author NAME="Edith Wharton"> Wharton was born to George Frederic Jones and Lucretia Stevens Rhinelander in New York City.</Author></BOOK>');
3. create the text index
drop index i_test;
exec ctx_ddl.create_section_group('TEST_SGP','PATH_SECTION_GROUP');
begin
CTX_DDL.ADD_SDATA_SECTION(group_name => 'TEST_SGP',
section_name => 'SData_02',
tag => 'SData_02',
datatype => 'varchar2');
end;
exec ctx_ddl.create_preference('TEST_STO','BASIC_STORAGE');
exec ctx_ddl.set_attribute('TEST_STO','I_TABLE_CLAUSE','tablespace USERS storage (initial 64K)');
exec ctx_ddl.set_attribute('TEST_STO','I_INDEX_CLAUSE','tablespace USERS storage (initial 64K) compress 2');
exec ctx_ddl.set_attribute ('TEST_STO', 'BIG_IO', 'NO' );
exec ctx_ddl.set_attribute ('TEST_STO', 'SEPARATE_OFFSETS', 'NO' );
create index I_TEST
on TEST (XML_DATA)
indextype is ctxsys.context
parameters('
section group "TEST_SGP"
storage "TEST_STO"
') parallel 2;
4. check the index size
select ctx_report.index_size('I_TEST') from dual;
it says :
TOTALS FOR INDEX TEST.I_TEST
TOTAL BLOCKS ALLOCATED: 104
TOTAL BLOCKS USED: 72
TOTAL BYTES ALLOCATED: 851,968 (832.00 KB)
TOTAL BYTES USED: 589,824 (576.00 KB)
4. optimize the index
exec ctx_ddl.optimize_index('I_TEST','REBUILD');
and now recompute the size, it says
TOTALS FOR INDEX TEST.I_TEST
TOTAL BLOCKS ALLOCATED: 1112
TOTAL BLOCKS USED: 1080
TOTAL BYTES ALLOCATED: 9,109,504 (8.69 MB)
TOTAL BYTES USED: 8,847,360 (8.44 MB)
which shows that it went from 576KB to 8.44MB. With a big index the difference is not so big, but still from 14G to 19G.
5. Workaround: use the BIG_IO option, so that the token_info column of the DR$ I table will be stored in a secure file and the size will stay relatively small. Then you can load this column in the cache using a procedure similar to
alter table DR$I_TEST$I storage (buffer_pool keep);
alter table dr$i_test$i modify lob(token_info) (cache storage (buffer_pool keep));
rem: now we must read the lob so that it will be loaded in the keep buffer pool, use the prccedure below
create or replace procedure loadTokenInfo is
type c_type is ref cursor;
c2 c_type;
s varchar2(2000);
b blob;
buff varchar2(100);
siz number;
off number;
cntr number;
begin
s := 'select token_info from DR$i_test$I';
open c2 for s;
loop
fetch c2 into b;
exit when c2%notfound;
siz := 10;
off := 1;
cntr := 0;
if dbms_lob.getlength(b) > 0 then
begin
loop
dbms_lob.read(b, siz, off, buff);
cntr := cntr + 1;
off := off + 4096;
end loop;
exception when no_data_found then
if cntr > 0 then
dbms_output.put_line('4K chunks fetched: '||cntr);
end if;
end;
end if;
end loop;
end;
Rgds, PierreI have been working a lot on that issue recently, I can give some more info.
First I totally agree with you, I don't like to use the keep_pool and I would love to avoid it. On the other hand, we have a specific use case : 90% of the activity in the DB is done by queuing and dbms_scheduler jobs where response time does not matter. All those processes are probably filling the buffer cache. We have a customer facing application that uses the text index to search the database : performance is critical for them.
What kind of performance do you have with your application ?
In my case, I have learned the hard way that having the index in memory (the DR$I table in fact) is the key : if it is not, then performance is poor. I find it reasonable to pin the DR$I table in memory and if you look at competitors this is what they do. With MongoDB they explicitly says that the index must be in memory. With elasticsearch, they use JVM's that are also in memory. And effectively, if you look at the awr report, you will see that Oracle is continuously accessing the DR$I table, there is a SQL similar to
SELECT /*+ DYNAMIC_SAMPLING(0) INDEX(i) */
TOKEN_FIRST, TOKEN_LAST, TOKEN_COUNT, ROWID
FROM DR$idxname$I
WHERE TOKEN_TEXT = :word AND TOKEN_TYPE = :wtype
ORDER BY TOKEN_TEXT, TOKEN_TYPE, TOKEN_FIRST
which is continuously done.
I think that the algorithm used by Oracle to keep blocks in cache is too complex. A just realized that in 12.1.0.2 (was released last week) there is finally a "killer" functionality, the in-memory parameters, with which you can pin tables or columns in memory with compression, etc. this looks ideal for the text index, I hope that R. Ford will finally update his white paper :-)
But my other problem was that the optimize_index in REBUILD mode caused the DR$I table to double in size : it seems crazy that this was closed as not a bug but it was and I can't do anything about it. It is a bug in my opinion, because the create index command and "alter index rebuild" command both result in a much smaller index, so why would the guys that developped the optimize function (is it another team, using another algorithm ?) make the index two times bigger ?
And for that the track I have been following is to put the index in a 16K tablespace : in this case the space used by the index remains more or less flat (increases but much more reasonably). The difficulty here is to pin the index in memory because the trick of R. Ford was not working anymore.
What worked:
first set the keep_pool to zero and set the db_16k_cache_size to instead. Then change the storage preference to make sure that everything you want to cache (mostly the DR$I) table come in the tablespace with the non-standard block size of 16k.
Then comes the tricky part : the pre-loading of the data in the buffer cache. The problem is that with Oracle 12c, Oracle will use direct_path_read for FTS which basically means that it bypasses the cache and read directory from file to the PGA !!! There is an event to avoid that, I was lucky to find it on a blog (I can't remember which, sorry for the credit).
I ended-up doing that. the events to 10949 is to avoid the direct path reads issue.
alter session set events '10949 trace name context forever, level 1';
alter table DR#idxname0001$I cache;
alter table DR#idxname0002$I cache;
alter table DR#idxname0003$I cache;
SELECT /*+ FULL(ITAB) CACHE(ITAB) */ SUM(TOKEN_COUNT), SUM(LENGTH(TOKEN_INFO)) FROM DR#idxname0001$I;
SELECT /*+ FULL(ITAB) CACHE(ITAB) */ SUM(TOKEN_COUNT), SUM(LENGTH(TOKEN_INFO)) FROM DR#idxname0002$I;
SELECT /*+ FULL(ITAB) CACHE(ITAB) */ SUM(TOKEN_COUNT), SUM(LENGTH(TOKEN_INFO)) FROM DR#idxname0003$I;
SELECT /*+ INDEX(ITAB) CACHE(ITAB) */ SUM(LENGTH(TOKEN_TEXT)) FROM DR#idxname0001$I ITAB;
SELECT /*+ INDEX(ITAB) CACHE(ITAB) */ SUM(LENGTH(TOKEN_TEXT)) FROM DR#idxname0002$I ITAB;
SELECT /*+ INDEX(ITAB) CACHE(ITAB) */ SUM(LENGTH(TOKEN_TEXT)) FROM DR#idxname0003$I ITAB;
It worked. With a big relief I expected to take some time out, but there was a last surprise. The command
exec ctx_ddl.optimize_index(idx_name=>'idxname',part_name=>'partname',optlevel=>'REBUILD');
gqve the following
ERROR at line 1:
ORA-20000: Oracle Text error:
DRG-50857: oracle error in drftoptrebxch
ORA-14097: column type or size mismatch in ALTER TABLE EXCHANGE PARTITION
ORA-06512: at "CTXSYS.DRUE", line 160
ORA-06512: at "CTXSYS.CTX_DDL", line 1141
ORA-06512: at line 1
Which is very much exactly described in a metalink note 1645634.1 but in the case of a non-partitioned index. The work-around given seemed very logical but it did not work in the case of a partitioned index. After experimenting, I found out that the bug occurs when the partitioned index is created with dbms_pclxutil.build_part_index procedure (this enables enables intra-partition parallelism in the index creation process). This is a very annoying and stupid bug, maybe there is a work-around, but did not find it on metalink
Other points of attention with the text index creation (stuff that surprised me at first !) ;
- if you use the dbms_pclxutil package, then the ctx_output logging does not work, because the index is created immediately and then populated in the background via dbms_jobs.
- this in combination with the fact that if you are on a RAC, you won't see any activity on the box can be very frightening : this is because oracle can choose to start the workers on the other node.
I understand much better how the text indexing works, I think it is a great technology which can scale via partitioning. But like always the design of the application is crucial, most of our problems come from the fact that we did not choose the right sectioning (we choosed PATH_SECTION_GROUP while XML_SECTION_GROUP is so much better IMO). Maybe later I can convince the dev to change the sectionining, especially because SDATA and MDATA section are not supported with PATCH_SECTION_GROUP (although it seems to work, even though we had one occurence of a bad result linked to the existence of SDATA in the index definition). Also the whole problematic of mixed structured/unstructured searches is completly tackled if one use XML_SECTION_GROUP with MDATA/SDATA (but of course the app was written for Oracle 10...)
Regards, Pierre -
Hi, friends ..
I am using Oracle 11g standars edition(11.2.0.1.0) on solaris 10 platform.I do have a very strange probleem..when iam trying to capture awr report i am getting a blank
awr report contain ing nothing...like below section
---------------------------------------------------------------------------->
WARNING: Since the DB Time is less than one second, there was minimal foreground activity in the snapshot period. Some of the percentage values will be invalid.
WORKLOAD REPOSITORY report for
DB Name DB Id Instance Inst num Startup Time Release RAC
DISDB 771054785 disdb 1 30-Dec-10 10:12 11.2.0.1.0 NO
Host Name Platform CPUs Cores Sockets Memory (GB)
dissemination-new Solaris Operating System (x86-64) .00
Snap Id Snap Time Sessions Cursors/Session
Begin Snap: 1 30-Dec-10 11:30:21
End Snap: 2 30-Dec-10 12:30:52
Elapsed: 60.51 (mins)
DB Time: 0.00 (mins)
Report Summary
Cache Sizes
Begin End
Buffer Cache: M M Std Block Size: K
Shared Pool Size: 0M 0M Log Buffer: K
Load Profile
Per Second Per Transaction Per Exec Per Call
DB Time(s): 0.0 0.0 0.00 0.00
DB CPU(s): 0.0 0.0 0.00 0.00
Redo size:
Logical reads: 0.0 1.0
Block changes: 0.0 1.0
Physical reads: 0.0 1.0
Physical writes: 0.0 1.0
User calls: 0.0 1.0
Parses: 0.0 1.0
Hard parses:
W/A MB processed: 0.0 0.0
Logons:
Executes: 0.0 1.0
Rollbacks:
Transactions: 0.0
Instance Efficiency Percentages (Target 100%)
Buffer Nowait %: Redo NoWait %:
Buffer Hit %: In-memory Sort %:
Library Hit %: Soft Parse %:
Execute to Parse %: 0.00 Latch Hit %:
Parse CPU to Parse Elapsd %: % Non-Parse CPU:
Shared Pool Statisitics Not Available
Top 5 Timed Foreground Events
Event Waits Time(s) Avg wait (ms) % DB time Wait Class
DB CPU 0 100.00
Host CPU (CPUs: Cores: Sockets: )
Load Average Begin Load Average End %User %System %WIO %Idle
Instance CPU
%Total CPU %Busy CPU %DB time waiting for CPU (Resource Manager)
Memory Statistics
Begin End
Host Mem (MB):
SGA use (MB):
PGA use (MB):
% Host Mem used for SGA+PGA:
Main Report
Report Summary
Wait Events Statistics
SQL Statistics
Instance Activity Statistics
IO Stats
Buffer Pool Statistics
Advisory Statistics
Wait Statistics
Undo Statistics
Latch Statistics
Segment Statistics
Dictionary Cache Statistics
Library Cache Statistics
Memory Statistics
Streams Statistics
Resource Limit Statistics
Shared Server Statistics
init.ora Parameters
Back to Top
Wait Events Statistics
Time Model Statistics
Operating System Statistics
Operating System Statistics - Detail
Foreground Wait Class
Foreground Wait Events
Background Wait Events
Wait Event Histogram
Wait Event Histogram Detail (64 msec to 2 sec)
Wait Event Histogram Detail (4 sec to 2 min)
Wait Event Histogram Detail (4 min to 1 hr)
Service Statistics
Service Wait Class Stats
Back to Top
Time Model Statistics
No data exists for this section of the report.
Back to Wait Events Statistics
Back to Top
Operating System Statistics
No data exists for this section of the report.
Back to Wait Events Statistics
Back to Top
Operating System Statistics - Detail
No data exists for this section of the report.
Back to Wait Events Statistics
Back to Top
Foreground Wait Class
s - second, ms - millisecond - 1000th of a second
ordered by wait time desc, waits desc
%Timeouts: value of 0 indicates value was < .5%. Value of null is truly 0
Captured Time accounts for % of Total DB time .00 (s)
Total FG Wait Time: (s) DB CPU time: .00 (s)
Wait Class Waits %Time -outs Total Wait Time (s) Avg wait (ms) %DB time
DB CPU 0 100.00
Back to Wait Events Statistics
Back to Top
Foreground Wait Events
No data exists for this section of the report.
Back to Wait Events Statistics
Back to Top
Background Wait Events
No data exists for this section of the report.
Back to Wait Events Statistics
Back to Top
Wait Event Histogram
No data exists for this section of the report.
Back to Wait Events Statistics
Back to Top
Wait Event Histogram Detail (64 msec to 2 sec)
No data exists for this section of the report.
Back to Wait Events Statistics
Back to Top
Wait Event Histogram Detail (4 sec to 2 min)
No data exists for this section of the report.
Back to Wait Events Statistics
Back to Top
Wait Event Histogram Detail (4 min to 1 hr)
No data exists for this section of the report.
Back to Wait Events Statistics
Back to Top
Service Statistics
No data exists for this section of the report.
Back to Wait Events Statistics
Back to Top
Service Wait Class Stats
No data exists for this section of the report.
Back to Wait Events Statistics
Back to Top
SQL Statistics
SQL ordered by Elapsed Time
SQL ordered by CPU Time
SQL ordered by User I/O Wait Time
SQL ordered by Gets
SQL ordered by Reads
SQL ordered by Physical Reads (UnOptimized)
SQL ordered by Executions
SQL ordered by Parse Calls
SQL ordered by Sharable Memory
SQL ordered by Version Count
Complete List of SQL Text
Back to Top
SQL ordered by Elapsed Time
No data exists for this section of the report.
Back to SQL Statistics
Back to Top
SQL ordered by CPU Time
No data exists for this section of the report.
Back to SQL Statistics
Back to Top
SQL ordered by User I/O Wait Time
No data exists for this section of the report.
Back to SQL Statistics
Back to Top
SQL ordered by Gets
No data exists for this section of the report.
Back to SQL Statistics
Back to Top
SQL ordered by Reads
No data exists for this section of the report.
Back to SQL Statistics
Back to Top
SQL ordered by Physical Reads (UnOptimized)
No data exists for this section of the report.
Back to SQL Statistics
Back to Top
SQL ordered by Executions
No data exists for this section of the report.
Back to SQL Statistics
Back to Top
SQL ordered by Parse Calls
No data exists for this section of the report.
Back to SQL Statistics
Back to Top
SQL ordered by Sharable Memory
No data exists for this section of the report.
Back to SQL Statistics
Back to Top
SQL ordered by Version Count
No data exists for this section of the report.
Back to SQL Statistics
Back to Top
Complete List of SQL Text
No data exists for this section of the report.
Back to SQL Statistics
Back to Top
Instance Activity Statistics
Instance Activity Stats
Instance Activity Stats - Absolute Values
Instance Activity Stats - Thread Activity
Back to Top
Instance Activity Stats
No data exists for this section of the report.
Back to Instance Activity Statistics
Back to Top
Instance Activity Stats - Absolute Values
No data exists for this section of the report.
Back to Instance Activity Statistics
Back to Top
Instance Activity Stats - Thread Activity
No data exists for this section of the report.
Back to Instance Activity Statistics
Back to Top
IO Stats
IOStat by Function summary
IOStat by Filetype summary
IOStat by Function/Filetype summary
Tablespace IO Stats
File IO Stats
Back to Top
IOStat by Function summary
No data exists for this section of the report.
Back to IO Stats
Back to Top
IOStat by Filetype summary
No data exists for this section of the report.
Back to IO Stats
Back to Top
IOStat by Function/Filetype summary
No data exists for this section of the report.
Back to IO Stats
Back to Top
Tablespace IO Stats
No data exists for this section of the report.
Back to IO Stats
Back to Top
File IO Stats
No data exists for this section of the report.
Back to IO Stats
Back to Top
Buffer Pool Statistics
Buffer Pool Statistics
Checkpoint Activity
Back to Top
Buffer Pool Statistics
No data exists for this section of the report.
Back to Buffer Pool Statistics
Back to Top
Checkpoint Activity
No data exists for this section of the report.
Back to Buffer Pool Statistics
Back to Top
Advisory Statistics
Instance Recovery Stats
MTTR Advisory
Buffer Pool Advisory
PGA Aggr Summary
PGA Aggr Target Stats
PGA Aggr Target Histogram
PGA Memory Advisory
Shared Pool Advisory
SGA Target Advisory
Streams Pool Advisory
Java Pool Advisory
Back to Top
Instance Recovery Stats
No data exists for this section of the report.
Back to Advisory Statistics
Back to Top
MTTR Advisory
No data exists for this section of the report.
Back to Advisory Statistics
Back to Top
Buffer Pool Advisory
No data exists for this section of the report.
Back to Advisory Statistics
Back to Top
PGA Aggr Summary
No data exists for this section of the report.
Back to Advisory Statistics
Back to Top
PGA Aggr Target Stats
No data exists for this section of the report.
Back to Advisory Statistics
Back to Top
PGA Aggr Target Histogram
No data exists for this section of the report.
Back to Advisory Statistics
Back to Top
PGA Memory Advisory
No data exists for this section of the report.
Back to Advisory Statistics
Back to Top
Shared Pool Advisory
No data exists for this section of the report.
Back to Advisory Statistics
Back to Top
SGA Target Advisory
No data exists for this section of the report.
Back to Advisory Statistics
Back to Top
Streams Pool Advisory
No data exists for this section of the report.
Back to Advisory Statistics
Back to Top
Java Pool Advisory
No data exists for this section of the report.
Back to Advisory Statistics
Back to Top
Wait Statistics
Buffer Wait Statistics
Enqueue Activity
Back to Top
Buffer Wait Statistics
No data exists for this section of the report.
Back to Wait Statistics
Back to Top
Enqueue Activity
No data exists for this section of the report.
Back to Wait Statistics
Back to Top
Undo Statistics
Undo Segment Summary
Undo Segment Stats
Back to Top
Undo Segment Summary
No data exists for this section of the report.
Back to Undo Statistics
Back to Top
Undo Segment Stats
No data exists for this section of the report.
Back to Undo Statistics
Back to Top
Latch Statistics
Latch Activity
Latch Sleep Breakdown
Latch Miss Sources
Mutex Sleep Summary
Parent Latch Statistics
Child Latch Statistics
Back to Top
Latch Activity
No data exists for this section of the report.
Back to Latch Statistics
Back to Top
Latch Sleep Breakdown
No data exists for this section of the report.
Back to Latch Statistics
Back to Top
Latch Miss Sources
No data exists for this section of the report.
Back to Latch Statistics
Back to Top
Mutex Sleep Summary
No data exists for this section of the report.
Back to Latch Statistics
Back to Top
Parent Latch Statistics
No data exists for this section of the report.
Back to Latch Statistics
Back to Top
Child Latch Statistics
No data exists for this section of the report.
Back to Latch Statistics
Back to Top
Segment Statistics
Segments by Logical Reads
Segments by Physical Reads
Segments by Physical Read Requests
Segments by UnOptimized Reads
Segments by Optimized Reads
Segments by Direct Physical Reads
Segments by Physical Writes
Segments by Physical Write Requests
Segments by Direct Physical Writes
Segments by Table Scans
Segments by DB Blocks Changes
Segments by Row Lock Waits
Segments by ITL Waits
Segments by Buffer Busy Waits
Back to Top
Segments by Logical Reads
Total Logical Reads: 1
Captured Segments account for 4.6E+06% of Total
Owner Tablespace Name Object Name Subobject Name Obj. Type Logical Reads %Total
SYS SYSTEM I_SYSAUTH1 INDEX 15,008 1500800.00
SYS SYSTEM I_OBJ2 INDEX 4,752 475200.00
SYS SYSTEM TAB$ TABLE 2,176 217600.00
SYS SYSTEM I_JOB_NEXT INDEX 1,856 185600.00
SYS SYSTEM SYS_C00646 INDEX 1,664 166400.00
Back to Segment Statistics
Back to Top
Segments by Physical Reads
Total Physical Reads: 1
Captured Segments account for 400.0% of Total
Owner Tablespace Name Object Name Subobject Name Obj. Type Physical Reads %Total
SYS SYSAUX WRH$_SYSMETRIC_SUMMARY_INDEX INDEX 3 300.00
SYS SYSTEM KOTAD$ TABLE 1 100.00
Back to Segment Statistics
Back to Top
Segments by Physical Read Requests
Total Physical Read Requests: 1
Captured Segments account for 400.0% of Total
Owner Tablespace Name Object Name Subobject Name Obj. Type Phys Read Requests %Total
SYS SYSAUX WRH$_SYSMETRIC_SUMMARY_INDEX INDEX 3 300.00
SYS SYSTEM KOTAD$ TABLE 1 100.00
Back to Segment Statistics
Back to Top
Segments by UnOptimized Reads
Total UnOptimized Read Requests: 1
Captured Segments account for 400.0% of Total
Owner Tablespace Name Object Name Subobject Name Obj. Type UnOptimized Reads %Total
SYS SYSAUX WRH$_SYSMETRIC_SUMMARY_INDEX INDEX 3 300.00
SYS SYSTEM KOTAD$ TABLE 1 100.00
Back to Segment Statistics
Back to Top
Segments by Optimized Reads
No data exists for this section of the report.
Back to Segment Statistics
Back to Top
Segments by Direct Physical Reads
No data exists for this section of the report.
Back to Segment Statistics
Back to Top
Segments by Physical Writes
Total Physical Writes: 1
Captured Segments account for 1.1E+04% of Total
Owner Tablespace Name Object Name Subobject Name Obj. Type Physical Writes %Total
SYSMAN SYSAUX MGMT_METRICS_RAW_PK INDEX 27 2700.00
SYS SYSAUX WRH$_SYSMETRIC_HISTORY TABLE 16 1600.00
SYS SYSAUX WRH$_SYSMETRIC_HISTORY_INDEX INDEX 16 1600.00
SYSMAN SYSAUX MGMT_SYSTEM_PERF_LOG_IDX_01 INDEX 9 900.00
SYS SYSAUX SMON_SCN_TIME TABLE 9 900.00
Back to Segment Statistics
Back to Top
Segments by Physical Write Requests
Total Physical Write Requestss: 1
Captured Segments account for 5.1E+03% of Total
Owner Tablespace Name Object Name Subobject Name Obj. Type Phys Write Requests %Total
SYSMAN SYSAUX MGMT_METRICS_RAW_PK INDEX 11 1100.00
SYS SYSAUX SMON_SCN_TIME TABLE 9 900.00
SYSMAN SYSAUX MGMT_SYSTEM_PERF_LOG_IDX_01 INDEX 6 600.00
SYSMAN SYSAUX MGMT_CURRENT_METRICS_PK INDEX 4 400.00
SYS SYSTEM I_JOB_NEXT INDEX 2 200.00
Back to Segment Statistics
Back to Top
Segments by Direct Physical Writes
No data exists for this section of the report.
Back to Segment Statistics
Back to Top
Segments by Table Scans
Total Table Scans: 1
Captured Segments account for 900.0% of Total
Owner Tablespace Name Object Name Subobject Name Obj. Type Table Scans %Total
SYS SYSTEM I_OBJ2 INDEX 9 900.00
Back to Segment Statistics
Back to Top
Segments by DB Blocks Changes
% of Capture shows % of DB Block Changes for each top segment compared
with total DB Block Changes for all segments captured by the Snapshot
Owner Tablespace Name Object Name Subobject Name Obj. Type DB Block Changes % of Capture
SYS SYSTEM I_JOB_NEXT INDEX 896 58.95
SYSMAN SYSAUX MGMT_METRICS_RAW_PK INDEX 160 10.53
SYSMAN SYSAUX MGMT_CURRENT_METRICS_PK INDEX 112 7.37
SYS SYSAUX SMON_SCN_TIME TABLE 80 5.26
SYSMAN SYSAUX MGMT_SYSTEM_PERF_LOG_IDX_01 INDEX 64 4.21
Back to Segment Statistics
Back to Top
Segments by Row Lock Waits
No data exists for this section of the report.
Back to Segment Statistics
Back to Top
Segments by ITL Waits
No data exists for this section of the report.
Back to Segment Statistics
Back to Top
Segments by Buffer Busy Waits
No data exists for this section of the report.
Back to Segment Statistics
Back to Top
Dictionary Cache Stats
No data exists for this section of the report.
Back to Top
Library Cache Activity
No data exists for this section of the report.
Back to Top
Memory Statistics
Memory Dynamic Components
Memory Resize Operations Summary
Memory Resize Ops
Process Memory Summary
SGA Memory Summary
SGA breakdown difference
Back to Top
Memory Dynamic Components
No data exists for this section of the report.
Back to Memory Statistics
Back to Top
Memory Resize Operations Summary
No data exists for this section of the report.
Back to Memory Statistics
Back to Top
Memory Resize Ops
No data exists for this section of the report.
Back to Memory Statistics
Back to Top
Process Memory Summary
No data exists for this section of the report.
Back to Memory Statistics
Back to Top
Back to Memory Statistics
Back to Top
SGA breakdown difference
No data exists for this section of the report.
Back to Memory Statistics
Back to Top
Streams Statistics
Streams CPU/IO Usage
Streams Capture
Streams Capture Rate
Streams Apply
Streams Apply Rate
Buffered Queues
Buffered Queue Subscribers
Rule Set
Persistent Queues
Persistent Queues Rate
Persistent Queue Subscribers
Back to Top
Streams CPU/IO Usage
No data exists for this section of the report.
Back to Streams Statistics
Back to Top
Streams Capture
No data exists for this section of the report.
Back to Streams Statistics
Back to Top
Streams Capture Rate
No data exists for this section of the report.
Back to Streams Statistics
Back to Top
Streams Apply
No data exists for this section of the report.
Back to Streams Statistics
Back to Top
Streams Apply Rate
No data exists for this section of the report.
Back to Streams Statistics
Back to Top
Buffered Queues
No data exists for this section of the report.
Back to Streams Statistics
Back to Top
Buffered Queue Subscribers
No data exists for this section of the report.
Back to Streams Statistics
Back to Top
Rule Set
No data exists for this section of the report.
Back to Streams Statistics
Back to Top
Persistent Queues
No data exists for this section of the report.
Back to Streams Statistics
Back to Top
Persistent Queues Rate
No data exists for this section of the report.
Back to Streams Statistics
Back to Top
Persistent Queue Subscribers
No data exists for this section of the report.
Back to Streams Statistics
Back to Top
Resource Limit Stats
No data exists for this section of the report.
Back to Top
Shared Server Statistics
Shared Servers Activity
Shared Servers Rates
Shared Servers Utilization
Shared Servers Common Queue
Shared Servers Dispatchers
Back to Top
Shared Servers Activity
No data exists for this section of the report.
Back to Shared Server Statistics
Back to Top
Shared Servers Rates
No data exists for this section of the report.
Back to Shared Server Statistics
Back to Top
Shared Servers Utilization
No data exists for this section of the report.
Back to Shared Server Statistics
Back to Top
Shared Servers Common Queue
No data exists for this section of the report.
Back to Shared Server Statistics
Back to Top
Shared Servers Dispatchers
No data exists for this section of the report.
Back to Shared Server Statistics
Back to Top
init.ora Parameters
No data exists for this section of the report.
Back to Top
Dynamic Remastering Stats
No data exists for this section of the report.
Back to Top
End of Report
---------------------------------------------->>
here intresting is that i also can't have the memory section view also.i trien to clear awr repositary and recreate it..bounce database,also tried taking different snap value.But does notmake any change.can u tell me why tha happening..and how can i get a good awr report.Hi there,
I have covered this in my blog entry on the subject. Check that link out for more licensing information and other resources.
The problem you are experiencing is caused by the fact that AWR is part of the DIAGNOSTIC and TUNING packs of Oracle 11g, which as of 11g is no longer a standard feature of the database but rather an optional extra which must be licensed in addition to your default Oracle Standard Edition package. In terms of the licensing, you just need to license it as an optional extra so that you will actually be using it legally, and then you can go ahead and enable it.
While it may be an additional licensed item, it is actually installed on your DB by default, but is just not enabled. So, once you have cleared the licensing issue, you will be free to enable diagnostics by setting the new database parameter, CONTROL_MANAGEMENT_PACK_ACCESS. You can do this by running the following as a dba:
<pre>alter system set control_management_pack_access="DIAGNOSTIC+TUNING" scope=both;</pre>
After running this command, your database will start accumulating diagnostic information. Note that you will need to wait until new snapshots are created in which the new diagnostic information will be available. I found that although most of the information became available after setting CONTROL_MANAGEMENT_PACK_ACCESS, it was only once the database was restarted that all of the information became available. I have seen many people reporting similar behavior.
Old snapshots will obviously continue to give the errors because they did not have the diagnostic information available at the time. -
Hi
I have a stored procedure that uses the XMLQuery function (SELECT XMLQuery( '......' RETURNING CONTENT) FROM dual; ) to extract data from 3 different tables and store the xml file in XML DB. This store procedure was running fine for a long time until 2 weeks ago where I started seeing the following error:
Database Error: DBD::Oracle::db do failed: ORA-04030: out of process memory when trying to allocate 92 bytes (koh dur heap d,qmxtkWriteXobToOpn:heap)
Currently I have 16,000 records. I am not sure what is going on, the size of the previous successful output xml file is about 2M. I also noticed when the stored procedure runs with 3G of system memory available, it basically used up all the memory and cpu time. The store proc consistently dies after 3.5 hour and spits out the ORA-04030 out of process memory error.
Does anyone have any suggestion what to look for or what parameters I need to set? ThanksUnless your database is strictly a DSS-type of database, your AWR report exposes loads of issues with it. And I think none of the time during the AWR window was spent on database. Look at the DB time (with all those multi cores) compared with the elapsed time of the AWR.
As you are on 11g, why not make use of MEMORY_TARGET (a single parameter to manage both SGA and PGA)? If you are already on it, ignore this as I can't see it anywhere. If not, get rid of SGA_TARGET and PGA_AGGREGATE_TARGET and replace it with a single MEMORY_TARGET parameter. However you may have a minimum threshold set for different SGA pools so that they won't shrink beyond that point.
Having said that, setting MEMORY_TARGET is not a guarantee to avoid ORA-4030. Just a single bad PL/SQL code could go and exploit the untunable part of your process memory and even go and blow up the physical memory. If you are using FORALL and BULK load, see if you can cut it down into few chunks rather than running as a single process.
What does your V$PGASTAT say? -
WARNING: out of private memory [1]
The customer is seeing this warning message in the alert log file and the trace file. There is no other ORA error codes. What should we check for this warning?. Any inputs appreciated.
Regards
SathyaOdd they aren't seeing 4030 or 600 errors. We definitely need more information, which versions and platforms and such. Just pulling rabbits out of my hat, I'd say they either hit some memory leak or are seriously off on kernel settings.
Cutting and pasting the alert log may be helpful too.
It could be some user session that does something odd, like recursively generating rows in memory, blowing past pga aggregate suggestions. Still, I'd expect some other errors. If you could get some pga statistics (or better, a statspack or AWR), that might inform.
I'd say, check out bug 5947623 and try that setting pgamax_size (with support, of course). My crystal ball says the customer is blowing way past any sensible PGA setting, getting an hp-ux error before a 4030 can be generated. But then again, my advice is worth what you are paying for it, or perhaps less. -
Need help in reviewing AWR report
Hello Friends,
I need some information on reviewing this AWR report. Can you please tell me if you see any red flags or out of the ordinary? I’m trying to look for some performance or blocking issue that may be causing a process to run for longer than expected time or eventually terminate without finishing.
C:\Users\SIDDHARTH\Documents\Desktop\awr_rpt_-wbprdsnap_193927_thru_193952.htm
I do appreciate your help.
Thank you,Hi Ehtiram,
Thanks for your suggestion.
I have enclosed SQL stat rpt. can you suggest me which SQL ID causing this issue.
Elapsed Time (s) CPU Time (s) Executions Elap per Exec (s) % Total DB Time SQL Id SQL Module SQL Text
24,349 1,734 8,057 3.02 4.19 8x7g7z2azkbwy java@lena015 (TNS V1-V3) SELECT ES.EMPSKD_ACT_START_TIM...
19,014 4,960 8,800,248 0.00 3.27 0yg00z7gwc8xv java@lena014 (TNS V1-V3) SELECT * FROM override o WHERE...
16,686 583 2 8343.24 2.87 9btt17d327kjw java@lena018 (TNS V1-V3) DELETE FROM so_results_detail ...
12,969 189 1 12969.05 2.23 2rtppqwfnvucj java@lena014 (TNS V1-V3) SELECT WRKS_WORK_DATE FROM J...
11,432 9,712 2,138 5.35 1.96 07rqh01v58fqa java@lena018 (TNS V1-V3) Select AMXAVS_ID from AMX_AVAI...
9,683 676 12 806.96 1.66 8036tzu5fvvhg java@lena018 (TNS V1-V3) DELETE FROM so_distrib_detail ...
8,812 3,079 18,765 0.47 1.51 0crxpb0xurc21 java@lena014 (TNS V1-V3) select (fd.fcast_calls + fd.fc...
5,716 4,381 82,132 0.07 0.98 50cdgbs67apxr java@lena014 (TNS V1-V3) SELECT PG.* FROM SO_SCHEDULE_G...
5,364 110 47,005 0.11 0.92 9df2twkpvsw5p java@lena014 (TNS V1-V3) SELECT USR.WBU_ID VUF_RCP_ID...
4,911 4,080 7,996 0.61 0.84 g4yxt4nsahm6t java@lena015 (TNS V1-V3) SELECT R.RDR_UDF1 AS sGrace, ...
Back to SQL Statistics
Back to Top
SQL ordered by CPU Time
Resources reported for PL/SQL code includes the resources used by all SQL statements called by the code.
% Total DB Time is the Elapsed Time of the SQL statement divided into the Total Database Time multiplied by 100
CPU Time (s) Elapsed Time (s) Executions CPU per Exec (s) % Total DB Time SQL Id SQL Module SQL Text
9,712 11,432 2,138 4.54 1.96 07rqh01v58fqa java@lena018 (TNS V1-V3) Select AMXAVS_ID from AMX_AVAI...
4,960 19,014 8,800,248 0.00 3.27 0yg00z7gwc8xv java@lena014 (TNS V1-V3) SELECT * FROM override o WHERE...
4,626 4,718 1,196,614 0.00 0.81 0drcwvhmn0cnj java@lena014 (TNS V1-V3) select SKDGRP_ID, VOLTYP_ID, ...
4,381 5,716 82,132 0.05 0.98 50cdgbs67apxr java@lena014 (TNS V1-V3) SELECT PG.* FROM SO_SCHEDULE_G...
4,080 4,911 7,996 0.51 0.84 g4yxt4nsahm6t java@lena015 (TNS V1-V3) SELECT R.RDR_UDF1 AS sGrace, ...
3,079 8,812 18,765 0.16 1.51 0crxpb0xurc21 java@lena014 (TNS V1-V3) select (fd.fcast_calls + fd.fc...
1,892 2,802 8,463,493 0.00 0.48 60tk6bna3qwbn java@lena014 (TNS V1-V3) SELECT /*+INDEX(OVERRIDE IDX_O...
1,734 24,349 8,057 0.22 4.19 8x7g7z2azkbwy java@lena015 (TNS V1-V3) SELECT ES.EMPSKD_ACT_START_TIM...
1,437 1,438 157,923 0.01 0.25 75wjn3dnjq2x3 java@lena014 (TNS V1-V3) SELECT * FROM CMPLNC_GROUP_FIL...
1,241 2,243 19,223 0.06 0.39 fjucxsh2xum7c java@lena014 (TNS V1-V3) SELECT emp.emp_id FROM employe...
676 9,683 12 56.31 1.66 8036tzu5fvvhg java@lena018 (TNS V1-V3) DELETE FROM so_distrib_detail ...
583 16,686 2 291.61 2.87 9btt17d327kjw java@lena018 (TNS V1-V3) DELETE FROM so_results_detail ...
189 12,969 1 189.14 2.23 2rtppqwfnvucj java@lena014 (TNS V1-V3) SELECT WRKS_WORK_DATE FROM J...
Back to SQL Statistics
Back to Top
SQL ordered by Gets
Resources reported for PL/SQL code includes the resources used by all SQL statements called by the code.
Total Buffer Gets: 13,427,369,138
Captured SQL account for 60.3% of Total
Buffer Gets Executions Gets per Exec %Total CPU Time (s) Elapsed Time (s) SQL Id SQL Module SQL Text
3,403,579,267 2,138 1,591,945.40 25.35 9711.73 11431.76 07rqh01v58fqa java@lena018 (TNS V1-V3) Select AMXAVS_ID from AMX_AVAI...
1,070,482,359 1,196,614 894.59 7.97 4626.43 4718.30 0drcwvhmn0cnj java@lena014 (TNS V1-V3) select SKDGRP_ID, VOLTYP_ID, ...
421,090,926 18,765 22,440.23 3.14 3078.77 8812.06 0crxpb0xurc21 java@lena014 (TNS V1-V3) select (fd.fcast_calls + fd.fc...
322,602,711 8,800,248 36.66 2.40 4960.29 19013.56 0yg00z7gwc8xv java@lena014 (TNS V1-V3) SELECT * FROM override o WHERE...
287,681,734 19,223 14,965.50 2.14 1240.74 2243.16 fjucxsh2xum7c java@lena014 (TNS V1-V3) SELECT emp.emp_id FROM employe...
205,494,645 2,985,988 68.82 1.53 882.42 882.58 f736f78bg36fz java@lena014 (TNS V1-V3) SELECT WBT_ID FROM SO_EMPLOYEE...
189,266,051 114,985 1,646.01 1.41 703.31 710.28 4ca6cmu7vywx0 java@lena014 (TNS V1-V3) SELECT CG.* FROM SO_SCHEDULE_G...
180,050,736 2,478 72,659.70 1.34 840.37 3858.85 a13n3pt09jabr java@lena018 (TNS V1-V3) DELETE FROM AMX_AVAIL_SUMMARY ...
146,401,683 82,132 1,782.52 1.09 4381.09 5715.93 50cdgbs67apxr java@lena014 (TNS V1-V3) SELECT PG.* FROM SO_SCHEDULE_G...
133,298,999 60,547 2,201.58 0.99 515.19 802.26 cncd24nf9m6m6 java@lena014 (TNS V1-V3) SELECT SO.*, EMP.* FROM SO_EM...
Back to SQL Statistics
Back to Top
SQL ordered by Reads
Total Disk Reads: 161,056,185
Captured SQL account for 38.7% of Total
Physical Reads Executions Reads per Exec %Total CPU Time (s) Elapsed Time (s) SQL Id SQL Module SQL Text
16,051,442 2 8,025,721.00 9.97 583.23 16686.47 9btt17d327kjw java@lena018 (TNS V1-V3) DELETE FROM so_results_detail ...
14,313,828 12 1,192,819.00 8.89 675.73 9683.47 8036tzu5fvvhg java@lena018 (TNS V1-V3) DELETE FROM so_distrib_detail ...
4,589,031 8,057 569.57 2.85 1734.00 24349.00 8x7g7z2azkbwy java@lena015 (TNS V1-V3) SELECT ES.EMPSKD_ACT_START_TIM...
3,484,791 7 497,827.29 2.16 359.64 3188.47 6kn1bh485cgfm java@lena014 (TNS V1-V3) SELECT WRKS_WORK_DATE FROM J...
2,975,671 8,800,248 0.34 1.85 4960.29 19013.56 0yg00z7gwc8xv java@lena014 (TNS V1-V3) SELECT * FROM override o WHERE...
2,758,931 1 2,758,931.00 1.71 189.14 12969.05 2rtppqwfnvucj java@lena014 (TNS V1-V3) SELECT WRKS_WORK_DATE FROM J...
1,345,288 1 1,345,288.00 0.84 316.63 1319.96 cg19gczm0t1rq PYW121WA.exe select unique vctp.EMP...
1,321,391 0 0.82 302.93 1317.47 6dq9gfc26kmbt PYW121WA.exe select COUNT(*) from...
1,273,572 18,765 67.87 0.79 3078.77 8812.06 0crxpb0xurc21 java@lena014 (TNS V1-V3) select (fd.fcast_calls + fd.fc...
1,248,698 6 208,116.33 0.78 287.11 1297.41 250a6k8scn6d1 java@lena014 (TNS V1-V3) SELECT WRKS_WORK_DATE, EMPL...
Back to SQL Statistics
Back to Top
SQL ordered by Executions
Total Executions: 128,083,116
Captured SQL account for 51.0% of Total
Executions Rows Processed Rows per Exec CPU per Exec (s) Elap per Exec (s) SQL Id SQL Module SQL Text
8,800,248 4,896,274 0.56 0.00 0.00 0yg00z7gwc8xv java@lena014 (TNS V1-V3) SELECT * FROM override o WHERE...
8,463,493 2,096 0.00 0.00 0.00 60tk6bna3qwbn java@lena014 (TNS V1-V3) SELECT /*+INDEX(OVERRIDE IDX_O...
6,077,148 6,077,148 1.00 0.00 0.00 88vs2qyv0wrr7 java@lena018 (TNS V1-V3) SELECT SEQ_AMXAVS_ID.NEXTVAL F...
4,854,539 4,854,135 1.00 0.00 0.00 frdva1m6src9p java@lena014 (TNS V1-V3) select * from emp_def_lab wher...
4,520,588 4,840,522 1.07 0.00 0.00 1jgzwf0qkrmnv java@lena018 (TNS V1-V3) delete from "WORKBRAIN"."AMX_...
4,205,634 9,720,125 2.31 0.00 0.00 9gj46z0yfjbn6 java@lena014 (TNS V1-V3) SELECT * FROM so_posn_set_elmt...
3,834,278 3,834,039 1.00 0.00 0.00 gmgvzfk9nz404 java@lena014 (TNS V1-V3) SELECT ACT_ID, ACT_NAME, ACT...
2,985,988 2,674,478 0.90 0.00 0.00 f736f78bg36fz java@lena014 (TNS V1-V3) SELECT WBT_ID FROM SO_EMPLOYEE...
2,081,020 2,080,811 1.00 0.00 0.00 brnrwgx8c44zu java@lena014 (TNS V1-V3) SELECT tcode_udf8 FROM time_co...
1,779,779 2,531,807 1.42 0.00 0.00 fv9j5aanhvn35 java@lena014 (TNS V1-V3) select * from employee_team wh...
Back to SQL Statistics
Back to Top
SQL ordered by Parse Calls
Total Parse Calls: 42,958,894
Captured SQL account for 65.4% of Total
Parse Calls Executions % Total Parses SQL Id SQL Module SQL Text
6,077,150 6,077,148 14.15 88vs2qyv0wrr7 java@lena018 (TNS V1-V3) SELECT SEQ_AMXAVS_ID.NEXTVAL F...
4,205,421 4,205,634 9.79 9gj46z0yfjbn6 java@lena014 (TNS V1-V3) SELECT * FROM so_posn_set_elmt...
3,834,191 3,834,278 8.93 gmgvzfk9nz404 java@lena014 (TNS V1-V3) SELECT ACT_ID, ACT_NAME, ACT...
1,603,096 2,081,020 3.73 brnrwgx8c44zu java@lena014 (TNS V1-V3) SELECT tcode_udf8 FROM time_co...
982,185 982,187 2.29 4m7m0t6fjcs5x update seq$ set increment$=:2,...
902,759 906,293 2.10 6cvn595prdbtf java@lena014 (TNS V1-V3) SELECT wbt_id FROM employee_te...
821,077 1,779,779 1.91 fv9j5aanhvn35 java@lena014 (TNS V1-V3) select * from employee_team wh...
681,828 681,857 1.59 f0jjm3ky3kawn java@lena014 (TNS V1-V3) SELECT * FROM EMPLOYEE_BALANCE...
548,293 912,139 1.28 dmw686hrngaxf java@lena014 (TNS V1-V3) SELECT * FROM override WHERE o...
345,765 345,765 0.80 ftj9uawt4wwzb select condition from cdef$ wh...
Back to SQL Statistics
Back to Top
SQL ordered by Sharable Memory
No data exists for this section of the report.
Back to SQL Statistics
Back to Top
SQL ordered by Version Count
Only Statements with Version Count greater than 20 are displayed
Version Count Executions SQL Id SQL Module SQL Text
163 38,796 ax51zndhagcxh java@lena018 (TNS V1-V3) UPDATE work_summary SET wr...
122 444 7pgr0hyg72xps java@lena014 (TNS V1-V3) INSERT INTO employee_schedule ...
100 42,367 3dg7u9t51sszw java@lena014 (TNS V1-V3) UPDATE employee_schedule SET ...
41 131,055 c1zdcc94svbpb java@lena014 (TNS V1-V3) UPDATE override SET EMP_ID =...
{code}
Thank you. -
User I/O and db file parallel read is high in AWR report
Hi,
We have one performance issue during a job execution.
From the awr report we have identified one query with a table having millions of records causing problems and then we had also fine tuned that query by changing it's code and by using the optmizer hints. It is being executed in plsql batches. After fine tuning, On the first batch execution(first 5000 records) the query is taking only 5 mins, but on the consecutive batches it is consuming more time( more than 30 mins).
From the awr report I got the statistics as
Release : 11.2.0.2.0
Instance Efficiency Percentages (Target 100%)
Buffer Nowait %: 100.00 Redo NoWait %: 100.00
Buffer Hit %: 85.44 In-memory Sort %: 99.98
Library Hit %: 99.76 Soft Parse %: 99.15
Execute to Parse %: 88.91 Latch Hit %: 100.00
Parse CPU to Parse Elapsd %: 87.32 % Non-Parse CPU: 98.65
The buffer hit % is good. On each batch execution it is taking different set of records.
Top 5 Timed Foreground Events
Event Waits Time(s) Avg wait (ms) % DB time Wait Class
db file parallel read 120,485 42,540 353 89.60 User I/O
DB CPU 3,794 7.99
db file sequential read 145,074 606 4 1.28 User I/O
db file scattered read 70,030 556 8 1.17 User I/O
direct path write temp 12,423 21 2 0.04 User I/O
So the I/O is our main concern since that query contains one table with millions of records.
Host CPU (CPUs: 24 Cores: 24 Sockets: 4)
Load Average Begin Load Average End %User %System %WIO %Idle
1.40 1.45 0.6 0.3 3.7 99.0
Load is also normal.
From the Time model statistics , sql execute elapsed time is 98.27% of db time and only 7.99% is that of DB CPU.
Memory Statistics
Begin End
Host Mem (MB): 64,318.0 64,318.0
SGA use (MB): 30,720.0 30,720.0
PGA use (MB): 488.2 497.1
% Host Mem used for SGA+PGA: 48.52 48.54
Both the size of sga_max_size and sga_target are 32,212,254,720(32gb) bytes and that of
pga_aggregate target is 629,145,600(600mb)
from this it is evident that the memory is still available(so increase in memory size is not an option).
The sql statistics for that query shows like that
Elapsed Time (s) Executions Elapsed Time per Exec (s) %Total %CPU %IO SQL Id SQL Text
44,950.03 55 817.27 94.67 6.99 94.72 79dgmrxh4kv74 SELECT /*+ index(cdr_data cdr_...
I can't understand whether the problem is in the database side or with the query?
If the problem is with the query, then how it has been executed in 5 mins for the first batch ?
(all the batches are having 5000 records each).
And how can we reduce the db file parallel read ?
Your valuable advice will be greatly appreciated.
Thanks in advance
Manoj Kumar N"db file parallel read" is likely to be associated with something like index prefetching.
See:
http://www.freelists.org/post/oracle-l/RE-Calculating-LIOs,11
http://aprakash.wordpress.com/2012/05/29/index-range-scan-and-db-file-scattered-read-as-session-wait-event/
http://jonathanlewis.wordpress.com/2006/12/15/index-operations/
Tune the SQL.
Review the execution plan.
Check whether the statistics are accurate.
Review whether the index hint (and others that we can't see) is appropriate. -
Negative Values of Library Cache Hit Ratio in AWR Report
Hi all,
We are getting Negative values of Library cache hit ratio in AWR Report of 11g(11.2.0.3) with Solaris[tm] OE (64-bit).
Please suggest us why it shows negative value.
Instance Efficiency Percentages (Target 100%)
Buffer Nowait %: 99.87 Redo NoWait %: 99.99
Buffer Hit %: 92.17 In-memory Sort %: 100.00
Library Hit %: -3,321.23 Soft Parse %: 81.95
Execute to Parse %: 92.88 Latch Hit %: 95.11
Parse CPU to Parse Elapsd %: 87.25 % Non-Parse CPU: 81.39
Regards,
Madhan
Edited by: user12078989 on Jul 25, 2012 7:40 AMHi Aman,
DB not restarted during this time.. we don't have production access. we will get awr report automatically from customer daily. also i am getting issue in our local environment v$rowcache view gets values is negative for dc_users and dc_tablespaces parameter may be it's related production issue... -
Oracle 9.2.0.8 and AWR report?
Does anyone know if 9.2.0.8 supports AWR?
Thanks in advance!Thanks! I figured it may since I have also seen that it now support Automatic Memory Management, which was also introduced in 10g v1.
Thanks
Maybe you are looking for
-
Hi All, I have a number on the selection-screen.I need to prepare a structure with fields equal to the number provided on the selection screen.please help me with it. Thanks in advance, kushagra sharma
-
How to split Frieght Amount in Purchase Order Document.
Dear Expert, I want to print Frieght cost one by one in purchase order document. For Example : list Frieght set up below 1. Packing & forward.--500 (Frieght cod is 5) 2. Transport - 300 (Frieght code 1) Please help me how to Design in PLD (end repo
-
Is this a bug or am I doing something wrong? (Custom Buttons)
I have a project where I've created a custom buttonbase which has a custom skin. Create a button that uses the custom skin which extends the custom button base the first time the button is used it doesn't work the way I would expect. Here's what happ
-
Form builder include text special character not printed
Hi, When you are editing an so10-text, you can add a SAP-symbol, (a large square by example) resulting in a number between brackets. The form builder does not recognize this as a symbol. It prints the number with brackets. How do you solve this in Fo
-
Extract only SP 16 SRM notes for SRM 550
Hi all Hiw can i extract SP 16 notes only from sap market place related to SRM muthu