Change by ubTools Support - 06/Jun/08 01:29 PM
|
Field |
Original Value |
New Value |
Description
|
DBMS_XMLPARSER.FREEPARSER doesn't release UGA memory.
*Session memory statistics before operation:*
{noformat}
SQL> select name,value from v$sesstat a, v$statname b
2 where a.statistic#=b.statistic#
3 and b.name like '%memory%'
4 and sid = 58
5 order by value desc;
NAME VALUE
---------------------------------------------------------------- ----------
session pga memory 424336
session pga memory max 424336
session uga memory 209872
session uga memory max 209872
sorts (memory) 16
workarea memory allocated 14
6 rows selected.
{noformat}
*Operation:*
{noformat}
...
dbms_xmlparser.parseclob (v_parser, data_for_table);
...
dbms_xmlparser.freeParser(v_parser);
...
{noformat}
*Session memory statistics after operation:*
{noformat}
SQL> select name,value from v$sesstat a, v$statname b
2 where a.statistic#=b.statistic#
3 and b.name like '%memory%'
4 and sid = 58
5 order by value desc;
NAME VALUE
---------------------------------------------------------------- ----------
session pga memory 52396928
session pga memory max 52396928
session uga memory 51816784
session uga memory max 51816784
sorts (memory) 19
workarea memory allocated 14
6 rows selected.
{noformat}
*An excerpt from HEAPDUMP LEVEL 4 (UGA) dump:*
{noformat}
...
EXTENT 788 addr=ffffffff7ce90080
Chunk ffffffff7ce90090 sz= 392 free " "
Chunk ffffffff7ce90218 sz= 184 freeable "kgiobdtb "
Chunk ffffffff7ce902d0 sz= 1112 recreate "koh-kghu sessi " latch=0
ds ffffffff7ce9db50 sz= 1112 ct= 1
Chunk ffffffff7ce90728 sz= 2136 freeable "PLS non-lib hp " ds=ffffffff7cf6abd8
Chunk ffffffff7ce90f80 sz= 4288 freeable "qmxdpls_subhea " ds=ffffffff7ce96b78
Chunk ffffffff7ce92040 sz= 4288 freeable "qmxdpls_subhea " ds=ffffffff7ce96b78
Chunk ffffffff7ce93100 sz= 4288 freeable "qmxdpls_subhea " ds=ffffffff7ce96b78
Chunk ffffffff7ce941c0 sz= 4288 freeable "qmxdpls_subhea " ds=ffffffff7ce96b78
Chunk ffffffff7ce95280 sz= 4328 freeable "qmxdpls_subhea " ds=ffffffff7ce96b78
Chunk ffffffff7ce96368 sz= 48 freeable "allocator state"
Chunk ffffffff7ce96398 sz= 72 freeable "persistant defi"
Chunk ffffffff7ce963e0 sz= 48 freeable "kgbt "
Chunk ffffffff7ce96410 sz= 48 freeable "frame segment "
Chunk ffffffff7ce96440 sz= 64 freeable "qmxdpls_init_ug"
Chunk ffffffff7ce96480 sz= 48 freeable "frame segment "
Chunk ffffffff7ce964b0 sz= 72 freeable "frame segment "
Chunk ffffffff7ce964f8 sz= 72 freeable "kxsxsi: frame "
Chunk ffffffff7ce96540 sz= 1568 recreate "qmxdpls_subhea " latch=0
ds ffffffff7ce96b78 sz= 50681480 ct= 11820
ffffffff779d6940 sz= 4288
ffffffff779d7a00 sz= 4288
ffffffff779d8ac0 sz= 4288
ffffffff779d9b80 sz= 4288
ffffffff779dac40 sz= 4288
ffffffff779dbd00 sz= 4288
ffffffff779dcdc0 sz= 4288
ffffffff779dde80 sz= 4288
ffffffff779def40 sz= 4288
ffffffff779c04c0 sz= 4288
ffffffff779c1580 sz= 4288
ffffffff779c2640 sz= 4288
ffffffff779c3700 sz= 4288
ffffffff779c47c0 sz= 4288
ffffffff779c5880 sz= 4288
ffffffff779c6940 sz= 4288
ffffffff779c7a00 sz= 4288
...
ffffffff7ce93100 sz= 4288
ffffffff7ce941c0 sz= 4288
ffffffff7ce95280 sz= 4328
Chunk ffffffff7ce96b60 sz= 160 freeable "qmxdpls_heapptr"
Chunk ffffffff7ce96c00 sz= 232 freeable "lob ctl struct "
Chunk ffffffff7ce96ce8 sz= 80 freeable "frame "
Chunk ffffffff7ce96d38 sz= 40 freeable "private oac inf"
Chunk ffffffff7ce96d60 sz= 128 freeable "bnrdef and uac "
Chunk ffffffff7ce96de0 sz= 600 recreate "bind var heap " latch=0
ds ffffffff7ce971f0 sz= 600 ct= 1
Chunk ffffffff7ce97038 sz= 928 freeable "kgiob "
Chunk ffffffff7ce973d8 sz= 4160 freeable "koh-kghu sessi " ds=ffffffff7cf65710
Chunk ffffffff7ce98418 sz= 8192 freeable "kdit "
Chunk ffffffff7ce9a418 sz= 40 free " "
Chunk ffffffff7ce9a440 sz= 8192 freeable "kdit "
Chunk ffffffff7ce9c440 sz= 48 freeable "ktatt "
Chunk ffffffff7ce9c470 sz= 48 freeable "kdit "
Chunk ffffffff7ce9c4a0 sz= 80 freeable "kgicu "
Chunk ffffffff7ce9c4f0 sz= 5672 free " "
Chunk ffffffff7ce9db18 sz= 2520 freeable "koh-kghu sessio"
Chunk ffffffff7ce9e4f0 sz= 48 freeable "frame segment "
Chunk ffffffff7ce9e520 sz= 40 freeable "frame segment "
Chunk ffffffff7ce9e548 sz= 72 freeable "kxsxsi: frame "
Chunk ffffffff7ce9e590 sz= 2464 perm "perm " alo=432
Chunk ffffffff7ce9ef30 sz= 48 freeable "allocator state"
Chunk ffffffff7ce9ef60 sz= 80 freeable "frame "
Chunk ffffffff7ce9efb0 sz= 128 freeable "bnrdef and uac "
Chunk ffffffff7ce9f030 sz= 600 recreate "bind var heap " latch=0
ds ffffffff7ce9f440 sz= 600 ct= 1
Chunk ffffffff7ce9f288 sz= 928 freeable "kgiob "
Chunk ffffffff7ce9f628 sz= 2520 freeable "koh-kghu sessio"
EXTENT 789 addr=ffffffff7ce30080
Chunk ffffffff7ce30090 sz= 2016 perm "perm " alo=2016
...
Total heap size = 51790440
FREE LISTS:
Bucket 0 size=56
...
Bucket 16 size=524312
Bucket 17 size=2097176
Total free space = 870336
UNPINNED RECREATABLE CHUNKS (lru first):
PERMANENT CHUNKS:
Chunk ffffffff7ce9e590 sz= 2464 perm "perm " alo=432
Chunk ffffffff7ce30090 sz= 2016 perm "perm " alo=2016
Chunk ffffffff7cf70090 sz= 288 perm "perm " alo=288
Chunk ffffffff7cf600a8 sz= 20320 perm "perm " alo=20320
Permanent space = 25088
******************************************************
{noformat}
|
DBMS_XMLPARSER.FREEPARSER doesn't release UGA memory.
*Session memory statistics before operation:*
{noformat}
SQL> select name,value from v$sesstat a, v$statname b
2 where a.statistic#=b.statistic#
3 and b.name like '%memory%'
4 and sid = 58
5 order by value desc;
NAME VALUE
---------------------------------------------------------------- ----------
session pga memory 424336
session pga memory max 424336
session uga memory 209872
session uga memory max 209872
sorts (memory) 16
workarea memory allocated 14
6 rows selected.
{noformat}
*Operation:*
{noformat}
...
dbms_xmlparser.parseclob (v_parser, data_for_table);
...
dbms_xmlparser.freeParser(v_parser);
...
{noformat}
*Session memory statistics after operation:*
{noformat}
SQL> select name,value from v$sesstat a, v$statname b
2 where a.statistic#=b.statistic#
3 and b.name like '%memory%'
4 and sid = 58
5 order by value desc;
NAME VALUE
---------------------------------------------------------------- ----------
session pga memory 52396928
session pga memory max 52396928
session uga memory 51816784
session uga memory max 51816784
sorts (memory) 19
workarea memory allocated 14
6 rows selected.
{noformat}
*An excerpt from HEAPDUMP LEVEL 4 (UGA) dump:*
{noformat}
...
EXTENT 788 addr=ffffffff7ce90080
Chunk ffffffff7ce90090 sz= 392 free " "
Chunk ffffffff7ce90218 sz= 184 freeable "kgiobdtb "
Chunk ffffffff7ce902d0 sz= 1112 recreate "koh-kghu sessi " latch=0
ds ffffffff7ce9db50 sz= 1112 ct= 1
Chunk ffffffff7ce90728 sz= 2136 freeable "PLS non-lib hp " ds=ffffffff7cf6abd8
Chunk ffffffff7ce90f80 sz= 4288 freeable "qmxdpls_subhea " ds=ffffffff7ce96b78
Chunk ffffffff7ce92040 sz= 4288 freeable "qmxdpls_subhea " ds=ffffffff7ce96b78
Chunk ffffffff7ce93100 sz= 4288 freeable "qmxdpls_subhea " ds=ffffffff7ce96b78
Chunk ffffffff7ce941c0 sz= 4288 freeable "qmxdpls_subhea " ds=ffffffff7ce96b78
Chunk ffffffff7ce95280 sz= 4328 freeable "qmxdpls_subhea " ds=ffffffff7ce96b78
Chunk ffffffff7ce96368 sz= 48 freeable "allocator state"
Chunk ffffffff7ce96398 sz= 72 freeable "persistant defi"
Chunk ffffffff7ce963e0 sz= 48 freeable "kgbt "
Chunk ffffffff7ce96410 sz= 48 freeable "frame segment "
Chunk ffffffff7ce96440 sz= 64 freeable "qmxdpls_init_ug"
Chunk ffffffff7ce96480 sz= 48 freeable "frame segment "
Chunk ffffffff7ce964b0 sz= 72 freeable "frame segment "
Chunk ffffffff7ce964f8 sz= 72 freeable "kxsxsi: frame "
Chunk ffffffff7ce96540 sz= 1568 recreate "qmxdpls_subhea " latch=0
ds ffffffff7ce96b78 sz= 50681480 ct= 11820
ffffffff779d6940 sz= 4288
ffffffff779d7a00 sz= 4288
ffffffff779d8ac0 sz= 4288
ffffffff779d9b80 sz= 4288
ffffffff779dac40 sz= 4288
ffffffff779dbd00 sz= 4288
ffffffff779dcdc0 sz= 4288
ffffffff779dde80 sz= 4288
ffffffff779def40 sz= 4288
ffffffff779c04c0 sz= 4288
ffffffff779c1580 sz= 4288
ffffffff779c2640 sz= 4288
ffffffff779c3700 sz= 4288
ffffffff779c47c0 sz= 4288
ffffffff779c5880 sz= 4288
ffffffff779c6940 sz= 4288
ffffffff779c7a00 sz= 4288
...
ffffffff7ce93100 sz= 4288
ffffffff7ce941c0 sz= 4288
ffffffff7ce95280 sz= 4328
Chunk ffffffff7ce96b60 sz= 160 freeable "qmxdpls_heapptr"
Chunk ffffffff7ce96c00 sz= 232 freeable "lob ctl struct "
Chunk ffffffff7ce96ce8 sz= 80 freeable "frame "
Chunk ffffffff7ce96d38 sz= 40 freeable "private oac inf"
Chunk ffffffff7ce96d60 sz= 128 freeable "bnrdef and uac "
Chunk ffffffff7ce96de0 sz= 600 recreate "bind var heap " latch=0
ds ffffffff7ce971f0 sz= 600 ct= 1
Chunk ffffffff7ce97038 sz= 928 freeable "kgiob "
Chunk ffffffff7ce973d8 sz= 4160 freeable "koh-kghu sessi " ds=ffffffff7cf65710
Chunk ffffffff7ce98418 sz= 8192 freeable "kdit "
Chunk ffffffff7ce9a418 sz= 40 free " "
Chunk ffffffff7ce9a440 sz= 8192 freeable "kdit "
Chunk ffffffff7ce9c440 sz= 48 freeable "ktatt "
Chunk ffffffff7ce9c470 sz= 48 freeable "kdit "
Chunk ffffffff7ce9c4a0 sz= 80 freeable "kgicu "
Chunk ffffffff7ce9c4f0 sz= 5672 free " "
Chunk ffffffff7ce9db18 sz= 2520 freeable "koh-kghu sessio"
Chunk ffffffff7ce9e4f0 sz= 48 freeable "frame segment "
Chunk ffffffff7ce9e520 sz= 40 freeable "frame segment "
Chunk ffffffff7ce9e548 sz= 72 freeable "kxsxsi: frame "
Chunk ffffffff7ce9e590 sz= 2464 perm "perm " alo=432
Chunk ffffffff7ce9ef30 sz= 48 freeable "allocator state"
Chunk ffffffff7ce9ef60 sz= 80 freeable "frame "
Chunk ffffffff7ce9efb0 sz= 128 freeable "bnrdef and uac "
Chunk ffffffff7ce9f030 sz= 600 recreate "bind var heap " latch=0
ds ffffffff7ce9f440 sz= 600 ct= 1
Chunk ffffffff7ce9f288 sz= 928 freeable "kgiob "
Chunk ffffffff7ce9f628 sz= 2520 freeable "koh-kghu sessio"
EXTENT 789 addr=ffffffff7ce30080
Chunk ffffffff7ce30090 sz= 2016 perm "perm " alo=2016
...
Total heap size = 51790440
FREE LISTS:
Bucket 0 size=56
...
Bucket 16 size=524312
Bucket 17 size=2097176
Total free space = 870336
UNPINNED RECREATABLE CHUNKS (lru first):
PERMANENT CHUNKS:
Chunk ffffffff7ce9e590 sz= 2464 perm "perm " alo=432
Chunk ffffffff7ce30090 sz= 2016 perm "perm " alo=2016
Chunk ffffffff7cf70090 sz= 288 perm "perm " alo=288
Chunk ffffffff7cf600a8 sz= 20320 perm "perm " alo=20320
Permanent space = 25088
******************************************************
{noformat}
DBMS_SESSION.FREE_UNUSED_USER_MEMORY did not help.
|
Change by ubTools Support - 06/Jun/08 01:35 PM
|
Status
|
Open
[ 1
]
|
Closed
[ 6
]
|
Resolution
|
|
Answered
[ 10
]
|
QA-8for the simple definitions of HEAPDUMP).Oracle Note:3518909.8:
Although the mentioned bug fixed in Oracle 9.2.0.6; the customer encounters the same problem in Oracle 9.2.0.8.
Since the next usage of DBMS_XMLPARSER.PARSECLOB after a previous DBMS_XMLPARSER.FREEPARSER within the same session, the UGA did not grow. This is acceptable by the customer.