I contined testing with pl/sql testprogram and found some interesting prove about this 1 gb limit for pga with pat set.
All tests are done on hpux11.11 9.2.0.4 Testprogram create or replace procedure testarray( psize number ) as begin declare TYPE nAllotment_tabtyp IS TABLE OF number INDEX BY BINARY_INTEGER; assarray nAllotment_tabtyp; assarray2 nAllotment_tabtyp; assarray3 nAllotment_tabtyp; uitleg varchar2(100); begin uitleg := 'start loop'; for i in 1..psize loop uitleg := 'insert i= ' || i; assarray(i) := i; /* uitleg := 'insert i2= ' || i; assarray2(i) := i; */ end loop; /* EXCEPTION WHEN OTHERS THEN dbms_output.enable(20000); dbms_output.put_line(' Exception raised ' || uitleg ); */ end; end; ................................ Quotes from my last update to the tar: When setting all manual I see the pga going over 2Gb and the showing negative numbers by looking at v$sessstat, os-level I only have top and like I mentioneed earlier you see that going up 2 Gb also and further to 4Gb not above this limit as expected!! Notice I am now testing with a hpux setting datasegment 4Gb (ulimit 4194303) Test 1: workarea_size_policy=manual pat=0 After a few minutes running NAME VALUE ---------------------------------------------------------------- ---------- session uga memory 81312 session uga memory max 112960 session pga memory 2132275152 session pga memory max 2132275152 Still monitoring this, the amount seem to stuck after 15 minutes or so at this 4Gb (value of top) end value: NAME VALUE ---------------------------------------------------------------- ---------- session uga memory 81312 session uga memory max 112960 session pga memory -154903592 session pga memory max -154903592 After more then 30 minutes finally it crashes agaIN VU_2>exec testarray( 100000000 ); begin testarray( 100000000 ); end; * ERROR at line 1: ORA-06500: PL/SQL: storage error ORA-06512: at "VRIJ_UIT.TESTARRAY", line 14 ORA-06512: at line 1 U_2>select pool, sum(bytes) from v$sgastat group by pool; POOL SUM(BYTES) ----------- ---------- large pool 218103808 shared pool 570425344 68143904 AME TYPE VALUE ------------------------------------ ----------- ------------------------------ pga_aggregate_target big integer 0 23:32:33 SQL> show parameter workarea It seems impossible that such a simple pl/sql can eat up 4Gb of memory. Other bugs like 3194895 and docid 3156574 are suggesting a 1Gb pga limit (which might be raised by changing data segment). There is mentioned a patch also according to 3194895 to lift this, can you find this patch and see if it might be Text continued in next action... 23-JAN-04 22:40:10 Text continued from previous action... appropriate? Output from top Memory: 3733508K (3051156K) real, 5720660K (4872688K) virtual, 70976K free Page# 1/14 CPU TTY PID USERNAME PRI NI SIZE RES STATE TIME %WCPU %CPU COMMAND 0 ? 23640 oracle 128 20 4116M 2436M sleep 10:00 2.54 2.53 oracleVU_2 New info : Test 2: workarea_size_policy=auto pat=200M same shared_pool of 500m I am utterly convinced this is all done in pga outside shared pool so enlarging this only gets me the same problem sooner Ahh and now after already 2.5 minutes I get a similar problem at the 1Gb limit U_2>exec testarray( 100000000 ); begin testarray( 100000000 ); end; * ERROR at line 1: ORA-06500: PL/SQL: storage error ORA-06512: at "VRIJ_UIT.TESTARRAY", line 14 ORA-06512: at line 1 Elapsed: 00:02:32.62 23:42:57 SQL> / NAME VALUE ---------------------------------------------------------------- ---------- session uga memory 78464 session uga memory max 143872 session pga memory 1071096624 session pga memory max 1071096624 23:44:17 SQL> / NAME VALUE ---------------------------------------------------------------- ---------- session uga memory 78464 session uga memory max 143872 session pga memory 1071096624 session pga memory max 1071096624 23:45:08 SQL> show parameter pga NAME TYPE VALUE ------------------------------------ ----------- ------------------------------ pga_aggregate_target big integer 209715200 23:47:18 SQL> show parameter workarea NAME TYPE VALUE ------------------------------------ ----------- ------------------------------ workarea_size_policy string AUTO So it looks workarea_size_policy is definitely limiting max pga available but strange thing is that the 200Mb for pat is meant to be for sort_area and we are not using sort_area here just filling an array I don't know why you don't get the same results but this is definitely weird and looks familiar with other bugs filed Regards, Jeroen -- Please see the official ORACLE-L FAQ: http://www.orafaq.net -- Author: Jeroen van Sluisdam INET: [EMAIL PROTECTED] Fat City Network Services -- 858-538-5051 http://www.fatcity.com San Diego, California -- Mailing list and web hosting services --------------------------------------------------------------------- To REMOVE yourself from this mailing list, send an E-Mail message to: [EMAIL PROTECTED] (note EXACT spelling of 'ListGuru') and in the message BODY, include a line containing: UNSUB ORACLE-L (or the name of mailing list you want to be removed from). You may also send the HELP command for other information (like subscribing).