ORA-04030: out of process memory opening a cursor

Hi,
We are wonking on Oracle 9i dedicated server OLTP.
When a Pro*C process tries to open a big query cursor the ORA-04030 is returned by Oracle. Below is the query plan:
| Id  | Operation                 |  Name           | Rows  | Bytes | Cost  |
|   0 | SELECT STATEMENT          |                 |    41 |  4182 |  1038K|
|   1 |  SORT UNIQUE              |                 |    41 |  4182 |  1038K|
|   2 |   HASH JOIN               |                 |    41 |  4182 |  1038K|
|   3 |    VIEW                   |                 |   157K|  8002K|   164K|
|   4 |     SORT UNIQUE           |                 |   157K|    11M|   162K|
|   5 |      HASH JOIN            |                 |   157K|    11M|   160K|
|   6 |       VIEW                |                 |  3151K|   126M| 51970 |
|   7 |        SORT ORDER BY      |                 |  3151K|   117M| 51970 |
|   8 |         TABLE ACCESS FULL | RE_ASNEF        |  3151K|   117M| 17637 |
|   9 |       VIEW                |                 |  6427K|   208M| 89856 |
|  10 |        SORT ORDER BY      |                 |  6427K|   214M| 89856 |
|  11 |         HASH JOIN         |                 |  6427K|   214M| 25130 |
|  12 |          TABLE ACCESS FULL| TIPO_CLIENTE    |    21 |   357 |     2 |
|  13 |          TABLE ACCESS FULL| LISTA_CLIENTES  |    11M|   204M| 25084 |
|  14 |    VIEW                   |                 |    12M|   599M|   861K|
|  15 |     SORT ORDER BY         |                 |    12M|   695M|   861K|
|  16 |      TABLE ACCESS FULL    | RECIBOS         |    12M|   695M|   670K|
-----------------------------------------------------------------------------We guess that the problem is that the dedicated server process is triying to allocate more memory that allowed by OS per process:
cobros1p:$ ulimit -a
time(seconds)        unlimited
file(blocks)         unlimited
data(kbytes)         131072
stack(kbytes)        32768
memory(kbytes)       32768       <<<-----
coredump(blocks)     2097151
nofiles(descriptors) 2000OS memory limit can´t be increased, so we guess that one posible solution is to split the query using temporary tables to reduce "hash join/sort" PGA space.
Are we right? Any hint about other possible solutions?
Thanks in advance,
Jose Luis

From various notes you can find on MOS about 4030:
"Each Operating System will handle memory allocations with Oracle slightly differently."
"The application developer of an Oracle precompiler program or OCI program can explicitly open cursors, or handles to specific private SQL areas, and use them as a named resource throughout the execution of the program. Recursive cursors that Oracle issues implicitly for some SQL statements also use shared SQL areas.
The management of private SQL areas is the responsibility of the user process. The allocation and deallocation of private SQL areas depends largely on which application tool you are using, although the number of private SQL areas that a user process can allocate is always limited by the initialization parameter OPEN_CURSORS. The default value of this parameter is 50.
A private SQL area continues to exist until the corresponding cursor is closed or the statement handle is freed. Although Oracle frees the runtime area after the statement completes, the persistent area remains waiting. Application developers close all open cursors that will not be used again to free the persistent area and to minimize the amount of memory required for users of the application. "
"However, from within the database framework you cannot place a hard limit on the size of a process by setting any initialization parameters or database configuration.
You can limit the size of a process from the OS side by setting kernel limits or user shell limits.
However, this leads to the ORA-4030 and will cause transaction rollback."
You need to have some serious discussions with both your app developers and your OS admins, though if you are running something from the last century, that could be pointless.

Similar Messages

  • ORA-04030: out of process memory when using Java Stored Procedures

    Hello,
    I have a problem using Java Stored Procedures in Oracle 10g.
    My Java application performs http posts to a webservice and the response is parsed in order to populate some DB tables.
    There is a scheduled job which calls the Java Stored Procedure every x minutes.
    No matter of the 'x minutes' values - after about 160 - 200 calls I get this error:
    ORA-04030: out of process memory when trying to allocate 1048620 bytes (joxp heap,f:OldSpace)
    ORA-04030: out of process memory when trying to allocate 2097196 bytes (joxp heap,f:OldSpace)
    The job stops just while is posting the http request. The weird thing is that almost each time the first http post request I get this error:
    java.net.ConnectException: Connection refused
         at java.net.PlainSocketImpl.socketConnect(Native Method)
         at java.net.PlainSocketImpl.doConnect(PlainSocketImpl.java:305)
         at java.net.PlainSocketImpl.connectToAddress(PlainSocketImpl.java:171)
         at java.net.PlainSocketImpl.connect(PlainSocketImpl.java:158)
         at java.net.Socket.connect(Socket.java:426)
         at com.sun.net.ssl.internal.ssl.SSLSocketImpl.connect(DashoA6275)
         at sun.reflect.GeneratedMethodAccessor2.invoke(Unknown Source)
         at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
         at java.lang.reflect.Method.invoke(Method.java:324)
         at org.apache.commons.httpclient.protocol.ReflectionSocketFactory.createSocket(ReflectionSocketFactory.java:140)
         at org.apache.commons.httpclient.protocol.SSLProtocolSocketFactory.createSocket(SSLProtocolSocketFactory.java:130)
         at org.apache.commons.httpclient.HttpConnection.open(HttpConnection.java:707)
         at org.apache.commons.httpclient.HttpMethodDirector.executeWithRetry(HttpMethodDirector.java:387)
         at org.apache.commons.httpclient.HttpMethodDirector.executeMethod(HttpMethodDirector.java:171)
         at org.apache.commons.httpclient.HttpClient.executeMethod(HttpClient.java:397)
         at org.apache.commons.httpclient.HttpClient.executeMethod(HttpClient.java:323)
    and the second try works fine.
    So, The out of process memory occured each time just before getting such an error, and I suspect to be a connection between these errors.
    Tech details:
    1. OS: WinXP
    2. Oracle 10.1.0.2.0
    3. To perform http post I use HttpClient 3.1 from Apache.
    4. I checked the http connection to be closed each time, and this is done.
    5. I checked the oracle statement and connection to be closed each time and this is done
    6. The JVM error (logged in .trc files of Oracle) is:
    java.lang.OutOfMemoryError
         at java.lang.Thread.start(Native Method)
         at sun.security.provider.SeedGenerator$ThreadedSeedGenerator.run(SeedGenerator.java:297)
    DB Settings details:
    Starting up ORACLE RDBMS Version: 10.1.0.2.0.
    System parameters with non-default values:
    processes = 200
    sessions = 225
    shared_pool_size = 159383552
    large_pool_size = 8388608
    java_pool_size = 104857600
    nls_language = AMERICAN
    control_files = C:\ORACLE\PRODUCT\10.1.0\ORADATA\XXXXXX\CONTROL01.CTL, C:\ORACLE\PRODUCT\10.1.0\ORADATA\XXXXXX\CONTROL02.CTL, C:\ORACLE\PRODUCT\10.1.0\ORADATA\XXXXXX\CONTROL03.CTL
    db_block_size = 8192
    db_cache_size = 29360128
    compatible = 10.1.0
    fal_client = XXXXXX
    fal_server = XXXXXXs
    log_buffer = 524288
    log_checkpoint_interval = 100000
    db_files = 70
    db_file_multiblock_read_count= 32
    db_recovery_file_dest = C:\oracle\product\10.1.0\flash_recovery_area
    db_recovery_file_dest_size= 2147483648
    standby_file_management = AUTO
    undo_management = AUTO
    undo_tablespace = undotbs_01
    undo_retention = 14400
    remote_login_passwordfile= EXCLUSIVE
    db_domain =
    dispatchers = (PROTOCOL=TCP) (SERVICE=XXXXXXXDB)
    remote_dependencies_mode = SIGNATURE
    job_queue_processes = 4
    parallel_max_servers = 5
    background_dump_dest = C:\ORACLE\PRODUCT\10.1.0\ADMIN\XXXXXX\BDUMP
    user_dump_dest = C:\ORACLE\PRODUCT\10.1.0\ADMIN\XXXXXX\UDUMP
    max_dump_file_size = 10240
    core_dump_dest = C:\ORACLE\PRODUCT\10.1.0\ADMIN\XXXXXX\CDUMP
    sort_area_size = 1048576
    sort_area_retained_size = 1048576
    db_name = XXXXXX
    open_cursors = 500
    optimizer_mode = FIRST_ROWS
    pga_aggregate_target = 25165824
    Any help would be appreciated. Thanks.
    Can be a problem with JVM threading under Oracle ?

    The server prcess failed to allocate more memory for large objects ( in Oldspace).
    If you Google ORA-04030, you will see several recommendations to work around this.
    The Java VM in the database already has HttpClient, i don't know why you are loading the Apache HttpClient but this might not be the surce of the problem.
    Kuassi http://db360.blogspot.com

  • ORA-04030: OUT OF PROCESS MEMORY WHEN ... (CALLHEAP,KLLCQAS:KLLSLTBA)

    Hello All,
    I've got this message error during procedure's execution into QA environment.
    *ORA-04030: OUT OF PROCESS MEMORY WHEN TRYING TO ALLOCATE 254476 BYTES (CALLHEAP,KLLCQAS:KLLSLTBA)
    ORA-04030: out of process memory when trying to allocate 16396 bytes (koh-kghu call ,pmuccst: adt/record)*
    The same procedure executed into PRD environment is running fine.
    How can I know a how much memory is needed to solve this issue?
    Thanks,
    Martin
    P.S.: Do you have any other recommendation that isn't "just add RAM memory"?

    Sorry folks, but I couldn't solved it yet.
    The error is the same as was yesterday, ORA-04030: out of process memory when trying to allocate 123404 bytes (QERHJ hash-joi,kllcqas:kllsltba) - -4030.
    I had identified how to reproduce this code, while running a stored procedure what does some inserts (at least 10M-rows) with BULK Collect senteces... I got this ORA error.
    I did an alter session set SQL_TRACE = TRUE; to trace the process execution but I couldn't find any useful inside this tracefile.
    Could you help me? How should I procede with this kind of issue?
    Thanks,
    Martin
    P.S:
    user@server:~ $ ulimit -a
    core file size (blocks, -c) 0
    data seg size (kbytes, -d) unlimited
    file size (blocks, -f) unlimited
    max locked memory (kbytes, -l) unlimited
    max memory size (kbytes, -m) unlimited
    open files (-n) 65536
    pipe size (512 bytes, -p) 8
    stack size (kbytes, -s) unlimited
    cpu time (seconds, -t) unlimited
    max user processes (-u) 16384
    virtual memory (kbytes, -v) unlimited
    SELECT SUM(value) / 1024 / 1024 Mb
    FROM v$sesstat s,
    v$statname n
    WHERE n.STATISTIC# = s.STATISTIC#
    AND name = 'session pga memory';
    MB
    116.75286102294921875
    SELECT sid,
    name ,
    value / 1024 Kb
    FROM v$statname n,
    v$sesstat s
    where n.STATISTIC# = s.STATISTIC#
    AND name LIKE 'session%memory%'
    ORDER BY 3 DESC;
    SID NAME               KB
    842     session pga memory max     3874.9921875
    842     session uga memory max     1986.19140625
    842     session pga memory     1698.9921875
    842     session uga memory     1368.69140625
    Edited by: martinmorono on Sep 30, 2008 6:07 PM
    Some parameters are:
    sga_max_size     1694498816
    pre_page_sga     FALSE
    sga_target     1694498816
    processes     800
    shared_pool_reserved_size     18454937
    If you need some other data about my problem, please let me know.
    Thanks
    Martin
    Edited by: martinmorono on Sep 30, 2008 6:08 PM

  • KEEP GETTING ORA-04030: OUT OF PROCESS MEMORY During import using DataPump

    Hi,
    I know I have several issues with my datapump during imp, but I am stuck again people :(
    We took a expdp from an external client and we are trying to append the data to our existing db. When we do this, we keep
    getting this.
    Processing object type SCHEMA_EXPORT/TABLE/TABLE_DATA
    ORA-31693: Table data object "IWORKS"."TBLEDIFILE_DTL" failed to load/unload and is being
    skipped due to error:
    ORA-29913: error in executing ODCIEXTTABLEFETCH callout
    ORA-04030: out of process memory when trying to allocate 64528 bytes (sort subheap,sort key)
    and so on...for all the tables.
    I used 2 different impdp commands to see if I would get different results and they are:
    mpdp system@iworksdb directory=DATA_PUMP_DIR dumpfile=expdpgemdev.dmp
    job_name=impgemdev041708_01 INCLUDE=TABLE TABLE_EXISTS_ACTION=APPEND
    SCHEMAS=GEMDEV LOGFILE=IMPIWORKS_BOON.log REMAP_SCHEMA=GEMDEV:IWORKS
    REMAP_TABLESPACE=IWORKS_INDEX:IWORKS_IDX REMAP_TABLESPACE=IWORKS_IOT:IWORKS_IDX
    REMAP_TABLESPACE=IWORKS_TABLES:IWORKS_TABLES EXCLUDE=GRANT exclude=statistics
    STREAMS_CONFIGURATION=N
    impdp system@iworksdb directory=DATA_PUMP_DIR dumpfile=expdpgemdev.dmp job_name=impgemdev041708_02 SCHEMAS=GEMDEV
    LOGFILE=IMPIWORKS_BOON.log REMAP_SCHEMA=GEMDEV:IWORKS
    REMAP_TABLESPACE=IWORKS_INDEX:IWORKS_IDX REMAP_TABLESPACE=IWORKS_IOT:IWORKS_IDX
    REMAP_TABLESPACE=IWORKS_TABLES:IWORKS_TABLES EXCLUDE=GRANT exclude=statistics
    STREAMS_CONFIGURATION=N
    I have also enabled my 3gb limit on my Windows 2003 Server which has a total of 4gb of RAM and a 2.6 ghz dual core:
    Microsoft Windows [Version 5.2.3790]
    (C) Copyright 1985-2003 Microsoft Corp.
    C:\Documents and Settings\rdgadmin>cd ../..
    C:\>type boot.ini
    [boot loader]
    redirect=UseBiosSettings
    timeout=30
    default=multi(0)disk(0)rdisk(0)partition(1)\WINDOWS
    [operating systems]
    multi(0)disk(0)rdisk(0)partition(1)\WINDOWS="Windows Server 2003, Enterprise" /noexecute=optout /fastdetect /3GB /redirect
    Here is my Parameter file as well so this will show you how I setup my memory allocation as well.
    # Memory Allocations
    iworksdb.__db_cache_size=0
    iworksdb.__java_pool_size=0
    iworksdb.__large_pool_size=0
    iworksdb.__shared_pool_size=0
    iworksdb.__streams_pool_size=0
    *.db_16k_cache_size=673741824
    *.db_block_size=8192
    *.db_recovery_file_dest_size=1147483648
    *.pga_aggregate_target=1010612736
    *.sga_max_size=1521225472
    *.sga_target=1321225472
    # Instance Parameters
    *.control_files='C:\ORACLE\FILES\IWORKSDB\control01.ctl',
    'R:\ORACLE\FILES\IWORKSDB\control02.ctl',
    'C:\ORACLE\FILES\IWORKSDB\control03.ctl'
    *.db_domain=''
    *.db_name='iworksdb'
    *._kgl_large_heap_warning_threshold=0
    *.compatible='10.2.0.4.0'
    *.job_queue_processes=20
    *.open_cursors=20000
    *.session_cached_cursors=8000
    *.processes=300
    *.remote_login_passwordfile='EXCLUSIVE'
    *.undo_management='AUTO'
    *.undo_tablespace='UNDOTBS1'
    *.db_recovery_file_dest='c:\ORACLE\FILES\IWORKSDB'
    *.dispatchers='(PROTOCOL=TCP) (SERVICE=iworksdbXDB)'
    *.statistics_level=ALL
    *.db_writer_processes=4
    # CBO Settings
    *.optimizer_mode='FIRST_ROWS'
    *.optimizer_index_cost_adj=20
    *.query_rewrite_enabled=TRUE
    *.STAR_TRANSFORMATION_ENABLED=TRUE
    *._NEWSORT_ENABLED=TRUE
    *.OPTIMIZER_DYNAMIC_SAMPLING=4
    *.optimizer_index_caching=75
    *.optimizer_index_cost_adj=15
    Continued on the next post....

    Continuation....
    Here is my log file from the impdp:
    Import: Release 10.2.0.4.0 - Production on Thursday, 17 April, 2008 14:35:31
    Copyright (c) 2003, 2007, Oracle. All rights reserved.
    Connected to: Oracle Database 10g Enterprise Edition Release 10.2.0.4.0 - Production
    With the Partitioning, OLAP, Data Mining and Real Application Testing options
    Master table "SYSTEM"."IMPGEMDEV041708_01" successfully loaded/unloaded
    Starting "SYSTEM"."IMPGEMDEV041708_01": system/********@iworksdb directory=DATA_PUMP_DIR dumpfile=expdpgemdev.dmp job_name=impgemdev041708_01 INCLUDE=TABLE TABLE_EXISTS_ACTION=APPEND SCHEMAS=GEMDEV LOGFILE=IMPIWORKS_BOON.log REMAP_SCHEMA=GEMDEV:IWORKS REMAP_TABLESPACE=IWORKS_INDEX:IWORKS_IDX REMAP_TABLESPACE=IWORKS_IOT:IWORKS_IDX REMAP_TABLESPACE=IWORKS_TABLES:IWORKS_TABLES STREAMS_CONFIGURATION=N
    Processing object type SCHEMA_EXPORT/TABLE/TABLE
    ORA-39152: Table "IWORKS"."SYS_TOKENTYPE" exists. Data will be appended to existing table but all dependent metadata will be skipped due to table_exists_action of append
    Processing object type SCHEMA_EXPORT/TABLE/TABLE_DATA
    ORA-31693: Table data object "IWORKS"."TBLEDIFILE_DTL" failed to load/unload and is being skipped due to error:
    ORA-29913: error in executing ODCIEXTTABLEFETCH callout
    ORA-04030: out of process memory when trying to allocate 64528 bytes (sort subheap,sort key)
    ORA-31693: Table data object "IWORKS"."TBLSUBSCRIBERBENEFITS_DTL" failed to load/unload and is being skipped due to error:
    ORA-29913: error in executing ODCIEXTTABLEFETCH callout
    ORA-04030: out of process memory when trying to allocate 64528 bytes (sort subheap,sort key)
    ORA-31693: Table data object "IWORKS"."TBLROUTE_DTL" failed to load/unload and is being skipped due to error:
    ORA-29913: error in executing ODCIEXTTABLEFETCH callout
    ORA-04030: out of process memory when trying to allocate 64528 bytes (sort subheap,sort key)
    ;;; Import> kill_job
    Job "SYSTEM"."IMPGEMDEV041708_01" stopped due to fatal error at 14:42:54
    So basically I have looked online at Metalink and they are telling me (VIA me opening a SR with them), that I should look at Note 233869.1 Diagnosing and Resolving ORA-4030 errors
    So I did this, and the only thing that can apply to me that I am thinking is maybe I have sized my SGA too big??? I mean what else can cause this issue?

  • 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?

  • How to resolve this Error ORA-04030: out of process memory when trying to a

    Hi
    I am connecting as a sysdba and trying to execute a query on the V$Logmnr_contents but getting the following Error
    ORA-04030: out of process memory when trying to allocate 408 bytes (T-LCR
    structs,krvuinl_InitNewLcr)
    Can anyone guide me how to resolve this issue.
    Thanks

    Hi,
    As root user, edit the /etc/sysconfigtab file, and try to set the udp_recvspace parameter to 262144 and reboot the machine :
    inet:
    udp_recvspace = 262144
    Metalink note 297030.1 Ora-04030 During Execution Of LogMiner Query
    Nicolas.

  • ORA-04030: out of process memory when trying to allocate

    Hello Expert,
    I have this error in my production database.
    Database is working fine except busy Hours when running couple of ETL's and Crystal report on it.
    Error : ORA-04030: out of process memory when trying to allocate
    This error comes once in a month with above error
    Instance terminated by CKPT
    Platfrom : Microsoft window server 2003
    Enterprise Edition.
    service pack 1
    Intel (R) Xenon (TM) CPU
    3.00GHz
    2.99 GHz, 15.4 GB of RAM
    Oracle : Oracle Database 10g Enterprise Edition Release 10.2.0.2.0
    TNS for 32-bit Windows: Version 10.2.0.2.0
    SGA and PGA :
    sga_max_size big integer 7008M
    sga_target big integer 0
    pga_aggregate_target big integer 950M
    buffer_pool_keep string
    buffer_pool_recycle string
    global_context_pool_size string
    java_pool_size big integer 152M
    large_pool_size big integer 152M
    olap_page_pool_size big integer 0
    shared_pool_reserved_size big integer 26424115
    shared_pool_size big integer 504M
    streams_pool_size big integer 48M
    sort_area_size integer 524288
    processes integer 500
    Active user : 228
    sort_area_size integer 524288
    Thanks in advance !!
    Dharmesh

    U can go through the link:--
    https://metalink.oracle.com/metalink/plsql/f?p=130:14:5384645520011813599::::p14_database_id,p14_docid,p14_show_header,p14_show_help,p14_black_frame,p14_font:NOT,233869.1,1,1,1,helvetica
    Regards,
    Anand

  • Ora-04030 out of process memory

    Hai All,
    My database is oracle 9i(9.2.0.1.0)in AIX
    when I run one query from my oracle developer suite session then 'ora-04030 out of process memory error when trying to allocate 38424 bytes (hash-join subh,klcqc:kllcqslt)'
    This same query when I run from sqlplus it works fine.
    how this happened ?
    Please help...urgent..

    The problem is in unsufficient memory for a hash join.
    The questions are:
    - do the explain plans differ, that only one session has this problem
    - how do you manage the PGA (auto/manual), what are relevant parameter settings (pga_aggregate_target / hash_area_size etc.)
    - do you use shared server - allocation methos differ for this case.
    If you use manual pga tuning (or perhaps shared server), then increasing hash_area_size might help. But without relevant info, it's shooting in the dark.

  • Database Error: DBD::Oracle::db do failed: ORA-04030: out of process memory

    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? Thanks

    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?

  • RMAN Backup error:ORA-04030: out of process memory

    Hi,
    Our RMAN backup is failing with below error:
    ===========================
    RMAN-03002: failure of backup plus archivelog command at 05/22/2010 05:31:33
    ORA-04030: out of process memory when trying to allocate 82444 bytes (pga heap,control file i/o buffer)
    =============================
    Please suggest
    Thanks and Regards

    We upgrade our catalog database(Linux) to 10.2.0.4 and our target database is 10.2.0.3(Windows),
    we executed upgrade catalog twice and then when we again tried to execute the below command
    rman sys/syspwd@targetdb catalog rman/rman@rmancat
    Recovery Manager: Release 10.2.0.4.0 - Production on Sat May 22 15:10:36 2010
    Copyright (c) 1982, 2007, Oracle. All rights reserved.
    PL/SQL package SYS.DBMS_BACKUP_RESTORE version 10.02.00.03 in TARGET database is not current
    PL/SQL package SYS.DBMS_RCVMAN version 10.02.00.03 in TARGET database is not current
    connected to target database: WEBCT (DBID=3699379059)
    connected to recovery catalog database
    RMAN>
    =======================
    Still we are getting this error
    and our backup falied with below errors:
    ======================
    PL/SQL package SYS.DBMS_BACKUP_RESTORE version 10.02.00.03 in TARGET database is not current PL/SQL package SYS.DBMS_RCVMAN version 10.02.00.03 in TARGET database is not current connected to target database: WEBCT (DBID=3699379059) connected to recovery catalog database
    RMAN-00569: =============== ERROR MESSAGE STACK FOLLOWS ===============
    RMAN-00571: ===========================================================
    RMAN-03002: failure of backup plus archivelog command at 05/22/2010 15:09:44
    ORA-06550: line 1, column 14:
    PLS-00306: wrong number or types of arguments in call to 'VALIDATEARCHIVEDLOG'
    ORA-06550: line 1, column 7:
    PL/SQL: Statement ignored
    ==========================
    Please suggest

  • Getting error: ORA-04030: out of process memory with EBS database

    Dear experts,
    I am getting this error with the EBS 11i database during the running of the system specially in the rush hour of the work day leads to disconnect between the database server and client:
    ORA-04030: out of process memory when trying to allocate 917536 bytes (joxcx callheap,ioc_allocate ufree)
    OS: Windows Server 2003 32bit
    Memory: 4GB RAM
    Oracle database version: 9.2.0.6.0
    db_cache_size=629145600
    sga_max_size=1400897536
    pga_aggregate_target=1073741824
    sessions=800
    processes=400
    Thanks

    This error is expected, especially if enough memory is not allocated and the system is heavily loaded, as it seems to be in your case. Pl see this MOS Doc for possible resolution
    Master Note for Diagnosing OS Memory Problems and ORA-4030 [ID 1088267.1]     
    HTH
    Srini

  • RMAN ERROR ORA-04030 out of process memory allocate 1049100 bytes pga heap

    Hello,
    I have this problem with a production database 9.2.0.8.
    I attach the parameters from production database and repository rman database (9.2.0.8).
    PRODUCTION DB SERVER 9.2.0.8
    WINDOWS SERVER 2003 R2 SP1
    SQL> SHOW PARAMETER SGA
    NAME VALUE
    lock_sga FALSE
    pre_page_sga FALSE
    sga_max_size 1888562548
    SQL>
    SQL> SHOW PARAMETER PGA
    NAME VALUE
    pga_aggregate_target 335544320
    SQL> SHOW PARAMETER POOL
    NAME VALUE
    java_pool_size 33554432
    large_pool_size 134217728
    shared_pool_reserved_size 13421772
    shared_pool_size 268435456
    SQL> SHOW PARAMETER CACHE
    NAME VALUE
    db_cache_advice ON
    db_cache_size 1073741824
    REPOSITORY RMAN DB SERVER 9.2.0.8
    WINDOWS SERVER 2000 SP4
    SQL> SHOW PARAMETER SGA
    NAME VALUE
    lock_sga FALSE
    pre_page_sga FALSE
    sga_max_size 1074865628
    SQL> SHOW PARAMETER PGA
    NAME VALUE
    pga_aggregate_target 134217728
    SQL> SHOW PARAMETER POOL
    NAME VALUE
    java_pool_size 33554432
    large_pool_size 134217728
    shared_pool_reserved_size 6710886
    shared_pool_size 134217728
    SQL> SHOW PARAMETER CACHE
    NAME VALUE
    db_cache_size 134217728
    SCRIPT RMAN
    run {
    allocate channel t1 type disk;
    allocate channel t2 type disk;
    backup skip readonly filesperset = 1 format 'E:\rman\BDWEBEXT\BD_%d_%u_%s_%p.rmn' tag 'Backup Completo BDWEBEXT' database;
    release channel t1;
    release channel t2;
    ERROR
    RMAN-00571: ===========================================================
    RMAN-00569: =============== ERROR MESSAGE STACK FOLLOWS ===============
    RMAN-00571: ===========================================================
    RMAN-03009: failure of backup command on t2 channel at 02/09/2008 14:46:58
    ORA-04030: out of process memory when trying to allocate 1049100 bytes (pga heap,KSFQ Buffers)
    Recovery Manager complete.
    Does someone know that it can be?
    Thank you

    how solve  ORA-04030: out of process memory when trying to allocate
    Sybrand Bakker
    Senior Oracle DBA

  • Flashback : Error:ORA-04030: out of process memory when trying to allocate

    Hi All,
    I have executed this query on my db for using flash back features:
    select * from flashback_transaction_query where table_owner='USERNAME'
    However, it throws the error after being executed for 5 min:
    ORA-04030: out of process memory when trying to allocate 268 bytes (Logminer LCR c,krvxbpdl)
    Please help me in understading the error and provide some links/docs to resolve this.
    Thanks,
    Kishore

    That's the error description:
    What does an ORA-4030 mean?
    This error indicates that the oracle server process is unable to allocate more memory from the operating system.This memory consists of the PGA (Program Global Area) and its contents depend upon the server configuration.For dedicated server processes it contains the stack and the UGA (User Global Area) which holds user session data, cursor information and the sort area. In a multithreaded configuration (shared server), the UGA is allocated in the SGA (System Global Area) and will not be responsible for ORA-4030 errors.
    The ORA-4030 thus indicates the process needs more memory (stack UGA or PGA) to perform its job.
    On metalink:
    Diagnosing and Resolving ORA-4030 errors
    Doc ID: Note:233869.1
    Werner

  • Error BI Apps HR and Fin full load - ORA-04030: out of process memory......

    Hi Experts,
    I loaded HR it went well, but now I am trying to load both HR and Financial Full load. I am getting below issue for some DAC tasks:
    ORA-04030: out of process memory when trying to allocate 1049100 bytes (kxs-heap-w,kllcqgf:kllsltba)
    Environment:
    Source System:
    Win server 2008 - 2 GB RAM; EBS R12.1.1.
    Target System:
    Windows Server 2008 32 bit (with /3G, /PEA switches enabled) – 4 GB RAM; obiee 10g;biapps 7.9.6.2;dac 10.1.3.4.1;Informatica PC 8.6.1 Hotfix 11;Oracle DB 11.1.0.7.
    DAC Tasks that failed:
    TASK_GROUP_Extract_GLLinkageInformation
    SDE_ORA_GL_COGS_LinkageInformation_Extract
    SDE_ORA_GL_AP_LinkageInformation_Extract
    SDE_ORA_GL_AR_REV_LinkageInformation_Extract
    SDE_ORA_GL_PO_LinkageInformation_Extract
    All the above tasks are failing with above error.
    Below are the memory parameters for BI Apps database:
    SQL> show parameter target
    NAME TYPE VALUE
    archive_lag_target integer 0
    db_flashback_retention_target integer 1440
    fast_start_io_target integer 0
    fast_start_mttr_target integer 0
    memory_max_target big integer 820M
    memory_target big integer 820M
    pga_aggregate_target big integer 257374182
    sga_target big integer 0
    I also tested by increasing below parameters:
    memory_max_target 2G
    memory_target 2G
    pga_aggregate_target 1G
    sga_target 900M
    But it didn’t work, same errors.
    Please let me know how can I solve this issue. Thanks for your time.

    The below text is from doc id, I've picked solution part
    let me know updates
    =====Start======================
    Solution
    NON-ORACLE SOFTWARE STEPS
    1.If you have 4Gb or less of RAM, add more RAM to the 32-bit computer system (add another 4Gb or more, if possible).
    2.Enable the /3GB in the BOOT.INI, see note:
    Note 225349.1 Implementing Address Windowing Extensions (AWE) or VLM on Windows Platforms
    3.If using MS-Windows Enterprise Edition, enable Physical Address Extensions (PAE) by adding the /PAE switch to the BOOT.INI, see note Note 225349.1.
    NOTE: The Windows tool Perfmon should be used in ORA-4030 problems on Windows. Task Manager is not a reliable tool to investigate ORACLE.EXE process memory size.
    ORACLE SOFTWARE STEPS
    Steps for both Enterprise and non-Enterprise Editions of MS-Windows
    1.Check for excessive INACTIVE sessions:
    select sum(PGA_ALLOC_MEM) from v$process p, v$session s where p.addr = s.paddr and s.status = 'INACTIVE';
    If this query returns a large value (i.e. several hundred Megabytes or even greater that 1 Gigabyte), then it is recommended that you automate the cleanup of INACTIVE sessions. To see how this works, see notes;
    Note 151972.1 Dead Connection Detection (DCD) Explained
    Note 159978.1 How To Automate Disconnection of Idle Sessions
    Implement DCD & IDLE_TIME, by doing the following;
    Set SQLNET.EXPIRE_TIME = x (minutes) in the Server SQLNET.ORA file,
    Create a PROFILE with IDLE_TIME set, and assign it to users.
    If you find that the processes remain with status SNIPED, then you will need to implement removal of those processes as well, see note:
    Note 96170.1 Script for killing sniped sessions shadow processes
    For more information, see Note 601605.1 A discussion of Dead Connection Detection, Resource Limits, V$SESSION, V$PROCESS and OS processes
    2.Review Note 46001.1 and determine the pro's and con's of running ORASTACK against the ORACLE.EXE.
    If appropriate, shut down the database, and run the following command in an MS-DOS window:
    orastack oracle.exe 500000
    Re-start the database.
    Steps for Enterprise Editions of MS-Windows
    Determine if using AWE would fit your database needs. This allows the Buffer Cache component in the SGA to be relocated above the 4Gb memory footprint for the ORACLE.EXE process. Since this configuration requires a virtual memory window to map memory allocations above the 4Gb memory area, this option fits best with database requirements for a 1G and up sized Buffer Cache. It would not be efficient to have a 400M Buffer Cache above the 4Gb memory footprint and yet allocate a 1Gb virtual memory window to map to that memory.
    1.Decide on the size of the SGA, PGA requirements and AWE (default 1Gb), given 300Mb overhead for the ORACLE.EXE and the 3Gb memory limit (as per the BOOT.INI /3GB switch). Please note that the minimum AWE size depends on the number of CPU's, see note Note 225349.1.
    - Grant OracleService<SID> the 'Lock Pages in Memory' system privilege at the operating system level, see Note 225349.1.
    - If necessary, change the Address Windowing Extensions (AWE) size from the default 1Gb, see Note 225349.1.
    - Adjust any of the other SGA memory settings; SHARED_POOL_SIZE, LARGE_POOL_SIZE, JAVA_POOL_SIZE & STREAMS_POOL_SIZE.
    - Adjust the PGA memory setting, PGA_AGGREGATE_TARGET. NOTE: This is a target, so a decrease in this process will not directly affect the memory footprint of the ORACLE.EXE.
    - Unset SGA_TARGET and/or MEMORY_TARGET (11g).
    - Set USE_INDIRECT_DATA_BUFFERS=TRUE.
    - Unset DB_CACHE_SIZE. Set DB_BLOCK_BUFFERS to the desired size (this will use memory above the 4Gb range).
    2.Start the database.
    Steps for NON-Enterprise Editions of MS-Windows
    1.Decide on the size of the SGA and PGA, given 0.1Gb overhead for the ORACLE.EXE and the 3Gb memory limit (as per the BOOT.INI /3GB switch).
    2.Adjust the SGA_TARGET and/or MEMORY_TARGET (11g), or use explicit settings for the SGA components and eliminate auto-tuning. NOTE: Advantages of auto-tuning are often minimal on Windows 32-bit due to memory limit issues.
    3.Adjust the PGA memory setting, PGA_AGGREGATE_TARGET (optional on 11g). NOTE: This is a target, so a decrease in this process will not directly affect the memory footprint of the ORACLE.EXE.
    4.Start the database.

  • Error ORA-04030: out of process memory when trying to allocate 8512 bytes

    Good Afternoon estimated
    I want to see if anyone has the following problem occurred while there are about 70 concurrent connections to the Oracle instance. if anyone has any solution.
    is grateful for the help in advance:
    Dump file d:\oracle\data\admin\ppmdb\bdump\ppmdb_mmon_5032.trc
    Thu Aug 11 09:23:40 2011
    ORACLE V10.2.0.4.0 - Production vsnsta=0
    vsnsql=14 vsnxtr=3
    Oracle Database 10g Enterprise Edition Release 10.2.0.4.0 - Production
    With the OLAP, Data Mining and Real Application Testing options
    Windows NT Version V5.2 Service Pack 2
    CPU : 8 - type 586, 1 Physical Cores
    Process Affinity : 0x00000000
    Memory (Avail/Total): Ph:5642M/8181M, Ph+PgF:17775M/20246M, VA:9M/2047M
    Instance name: DBMM
    Redo thread mounted by this instance: 1
    Oracle process number: 11
    Windows thread id: 5032, image: ORACLE.EXE (MMON)
    *** 2011-08-11 09:23:40.429
    *** SERVICE NAME:(SYS$BACKGROUND) 2011-08-11 09:23:40.413
    *** SESSION ID:(161.1) 2011-08-11 09:23:40.413
    *** KEWROCISTMTEXEC - encountered error: (ORA-04030: out of process memory when trying to allocate 8512 bytes (pga heap,kgh stack)
    *** SQLSTR: total-len=267, dump-len=240,
    STR={insert into wrh$_sysmetric_history     (snap_id, dbid, instance_number,      begin_time, end_time, intsize, group_id, metric_id, value)  select      :snap_id, :dbid, :instance_number,      begtime, endtime, intsize_csec,      groupid, metri}
    ===============
    Note: This allows us to continue to connect more users and the only way to make new connections is restarting the instance
    I Have Configurate: pga_aggregate_target integer 379584512
    Total System Global Area 1577058304 bytes
    Fixed Size 1299216 bytes
    Variable Size 729812208 bytes
    Database Buffers 838860800 bytes
    Redo Buffers 7086080 bytes
    Thank you for your possible help
    Claudio T.

    804135 wrote:
    Oracle Database 10g Enterprise Edition Release 10.2.0.4.0 - Production
    Windows NT Version V5.2 Service Pack 2
    Memory (Avail/Total): Ph:5642M/8181M, Ph+PgF:17775M/20246M, VA:9M/2047M
    I Have Configurate: pga_aggregate_target integer 379584512
    Total System Global Area 1577058304 bytesHave a search on this forum (or google) for the error code, there should be lots of previous discussion on this one.
    From no sign of 64-bit in the product banner plus VA (address space) 2 GB (close enough), it looks like the server is running as 32-bit process.
    With SGA + PGA (target) adding up to nearly 1900 MB, my guess is you are hitting the 2 GB per process limit.
    Lower SGA, it should help in the very short term. For longer term: lower resource demands or start planning for migration to 64-bit.

Maybe you are looking for