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.

Similar Messages

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

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

  • 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

  • ORA-04030: out of process memory error for expdp utility

    Hi,
    I am using expdp utility to export schema objects. It was working fine for the past one year, but now I am facing this issue.
    It is giving below error while exporting one schema objects.
    Processing object type SCHEMA_EXPORT/TABLE/TABLE
    ORA-39125: Worker unexpected fatal error in KUPW$WORKER.UNLOAD_METADATA while calling DBMS_METADATA.FETCH_XML_CLOB [TABLE:....................
    ORA-04030: out of process memory when trying to allocate 4108 bytes (Typecheck,kgghteInit)
    ORA-06512: at "SYS.DBMS_SYS_ERROR", line 105
    ORA-06512: at "SYS.KUPW$WORKER", line 6241
    ----- PL/SQL Call Stack -----
    object line object
    handle number name
    678894EC 14916 package body SYS.KUPW$WORKER
    678894EC 6300 package body SYS.KUPW$WORKER
    678894EC 2340 package body SYS.KUPW$WORKER
    678894EC 6861 package body SYS.KUPW$WORKER
    678894EC 1262 package body SYS.KUPW$WORKER
    501F624C 2 anonymous block
    Job "SYSTEM"."SYS_EXPORT_SCHEMA_37" stopped due to fatal error at 03:30:28
    DB version: Oracle 10.2.0.1
    SGA Details:
    Total System Global Area 1426063360 bytes
    Fixed Size 1251052 bytes
    Variable Size 243271956 bytes
    Database Buffers 1124073472 bytes
    Redo Buffers 57466880 bytes
    pga_agregate_target = 600M
    OS: Windows Server 2003 R2
    RAM: 3.5 GB
    I tried running expdp multiple times every time I will get out of memeory error along with different oracle errors, but the common error is out of memory ora -04030.
    In above case I got this error along with ORA-39125 and sometimes I will get with
    ORA-39014: One or more workers have prematurely exited.
    ORA-39029: worker 1 with process name "DW01" prematurely terminated
    ORA-31671
    I searched forums and found lot options but not for expdp utility.
    Can some one please help in resolving this issue.
    Thanks,
    Srikanth.K

    Hi;
    Please investigate your issue:
    Master Note for Diagnosing OS Memory Problems and ORA-4030 [ID 1088267.1]
    DataPump Export (EXPDP) Terminates With Error ORA-4030 [ID 1368462.1]
    Regard
    Helios

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

  • 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

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

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

    I have tow portioned of query and uniond all it it gives error like ORA-04030: out of process memory when trying to allocate 20060 bytes
    NOTE : PARTY ONE AND PART 2 INDUALY WORKS WELL BUTT IT GIVESS ERROR AT THE TIME OF UNION ALL
    Please i m waiting for sharp response
    -------------------------------------PART ONE START --------------------------------------------------------------------------
    SELECT * FROM
    SELECT
    TO_CHAR(SOURCE) AS SOURCE,
    ORG_ID,
    -- 'HUSSNAIN' AS VENDOR_TYPE,
    INV_PAY_VOUCHER,
    INV_PAY_TYPE,
    INV_PAY_NUM,
    INV_PAY_VEN_ID,
    INV_PAY_VEN_NAME,
    INV_PAY_SITE,
    INV_PAY_DATE,
    INV_PAY_GROSS,
    INV_PAY_AMT,
    INV_PAY_DESC,
    INV_PAY_HTAX,
    INV_AMT,
    INV_GST,
    INV_PAY_AMT INVOICE_AMOUNT,
    INV_GST_T INV_TOTAL_TAX,
    NVL(DEBIT,0) AS DEBIT1,
    NVL(CREDIT,0) AS CREDIT1,
    VENDOR_SITE_NAME AS SITE_CODE,
    INVOICE_DATE,
    CHECK_NUMBER,
    PAYMENT_DATE,
    GL_CODE,
    GL_CODE_DESC,
    SUPPLIER_ID,
    STATUS ,
    COUNT(INV_PAY_DATE) AS TRANSACTION,
    LINE,
    SELECT
    SUM(NVL(VX.DEBIT,0)) - SUM(NVL(VX.CREDIT,0)) OPN_BAL
    FROM XX_AP_INVPAY_COMBINE_V1 VX
    WHERE
    SUBSTR(VX.INV_PAY_DATE,1,10) < TO_DATE(SUBSTR(:P_DATE1,1,10),'YYYY-MM-DD')
    -- AND
    -- SUBSTR(VX.INVOICE_DATE,1,10) < TO_DATE(SUBSTR(:P_DATE_INVOICE1,1,10),'YYYY-MM-DD')
    AND VX.INV_PAY_SITE = nvl(:P_SITE_ID, VX.INV_PAY_SITE)
    AND VX.Vendor_Site_name = nvl(:P_VENDOR_SITE_NAME , VX.Vendor_Site_name)
    AND VX.INV_PAY_VEN_ID = nvl(:P_VEN_ID,INV_PAY_VEN_ID)
    AND VX.ORG_ID = nvl(:P_ORG_ID,ORG_ID)
    AND VX.SOURCE = NVL (:P_TRANSACTION_TYPE,VX.SOURCE)
    AND vx.status = 'Approved'
    AND VX.INV_PAY_SITE =V.INV_PAY_SITE
    AND VX.Vendor_Site_name=V.VENDOR_SITE_NAME
    AND VX.INV_PAY_VEN_ID=V.INV_PAY_VEN_ID
    and vx.status = v.status
    -- AND VX.SOURCE=V.SOURCE
    -- &pwhereclause
    ) AS O_BALANCE_APPROVED,
    SELECT
    SUM(NVL(VX.DEBIT,0)) - SUM(NVL(VX.CREDIT,0)) OPN_BAL
    FROM XX_AP_INVPAY_COMBINE_V1 VX
    WHERE
    SUBSTR(VX.INV_PAY_DATE,1,10) < TO_DATE(SUBSTR(:P_DATE1,1,10),'YYYY-MM-DD')
    -- AND
    -- SUBSTR(VX.INVOICE_DATE,1,10) < TO_DATE(SUBSTR(:P_DATE_INVOICE1,1,10),'YYYY-MM-DD')
    AND VX.INV_PAY_SITE = nvl(:P_SITE_ID, VX.INV_PAY_SITE)
    AND VX.Vendor_Site_name = nvl(:P_VENDOR_SITE_NAME , VX.Vendor_Site_name)
    AND VX.INV_PAY_VEN_ID = nvl(:P_VEN_ID,INV_PAY_VEN_ID)
    AND VX.ORG_ID = nvl(:P_ORG_ID,ORG_ID)
    AND VX.SOURCE = NVL (:P_TRANSACTION_TYPE,VX.SOURCE)
    and vx.status = 'Unapproved'
    AND VX.INV_PAY_SITE =V.INV_PAY_SITE
    AND VX.Vendor_Site_name=V.VENDOR_SITE_NAME
    AND VX.INV_PAY_VEN_ID=V.INV_PAY_VEN_ID
    and vx.status = v.status
    -- AND VX.SOURCE=V.SOURCE
    -- &pwhereclause
    ) AS O_BALANCE_UPAPPROVED,
    SELECT
    SUM(NVL(VX.DEBIT,0)) - SUM(NVL(VX.CREDIT,0)) OPN_BAL
    FROM XX_AP_INVPAY_COMBINE_V1 VX
    WHERE
    SUBSTR(VX.INV_PAY_DATE,1,10) < TO_DATE(SUBSTR(:P_DATE1,1,10),'YYYY-MM-DD')
    -- AND SUBSTR(VX.INVOICE_DATE,1,10) < TO_DATE(SUBSTR(:P_DATE_INVOICE1,1,10),'YYYY-MM-DD')
    AND VX.INV_PAY_SITE = nvl(:P_SITE_ID, VX.INV_PAY_SITE)
    AND VX.Vendor_Site_name = nvl(:P_VENDOR_SITE_NAME , VX.Vendor_Site_name)
    AND VX.INV_PAY_VEN_ID=nvl(:P_VEN_ID,INV_PAY_VEN_ID)
    AND VX.ORG_ID = NVL(:P_ORG_ID,ORG_ID)
    AND VX.SOURCE = NVL (:P_TRANSACTION_TYPE,VX.SOURCE)
    AND vx.status = v.status
    AND VX.INV_PAY_SITE =V.INV_PAY_SITE
    AND VX.Vendor_Site_name=V.VENDOR_SITE_NAME
    AND VX.INV_PAY_VEN_ID=V.INV_PAY_VEN_ID
    -- AND VX.SOURCE=V.SOURCE
    -- &pwhereclause
    ) AS O_BALANCE
    FROM XX_AP_INVPAY_COMBINE_V1 V
    WHERE
    SUBSTR (V.INV_PAY_DATE,1,10) BETWEEN NVL( TO_DATE(SUBSTR(:P_DATE1,1,10),'YYYY-MM-DD'),SUBSTR(V.INV_PAY_DATE,1,10)) AND nvl(TO_DATE(SUBSTR(:P_DATE2,1,10),'YYYY-MM-DD') ,SUBSTR(V.INV_PAY_DATE,1,10))
    -- AND
    -- SUBSTR(V.INVOICE_DATE,1,10) BETWEEN nvl( TO_DATE(SUBSTR(:P_DATE_INVOICE1,1,10),'YYYY-MM-DD'),SUBSTR(V.INVOICE_DATE,1,10)) AND nvl(TO_DATE(SUBSTR(:P_DATE_INVOICE2,1,10),'YYYY-MM-DD') ,SUBSTR(V.INVOICE_DATE,1,10))
    AND V.INV_PAY_SITE=nvl(:P_SITE_ID,INV_PAY_SITE)
    AND V.VENDOR_SITE_NAME = NVL(:P_VENDOR_SITE_NAME , V.VENDOR_SITE_NAME)
    AND V.INV_PAY_VEN_ID=nvl(:P_VEN_ID,V.INV_PAY_VEN_ID)
    AND V.ORG_ID=nvl(:P_ORG_ID,V.ORG_ID)
    AND V.SOURCE = NVL (:P_TRANSACTION_TYPE,V.SOURCE)
    -- ORDER BY INV_PAY_DATE,CHECK_NUMBER,INV_PAY_VOUCHER asc ,Debit1 desc ,credit1 DESC
    GROUP BY
    SOURCE,
    ORG_ID,
    -- 'HUSSNAIN' AS VENDOR_TYPE,
    INV_PAY_VOUCHER,
    INV_PAY_TYPE,
    INV_PAY_NUM,
    INV_PAY_VEN_ID,
    INV_PAY_VEN_NAME,
    INV_PAY_SITE,
    INV_PAY_DATE,
    INV_PAY_GROSS,
    INV_PAY_AMT,
    INV_PAY_DESC,
    INV_PAY_HTAX,
    INV_AMT,
    INV_GST,
    INV_PAY_AMT,
    INV_GST_T,
    DEBIT,
    CREDIT,
    VENDOR_SITE_NAME,
    INVOICE_DATE,
    CHECK_NUMBER,
    PAYMENT_DATE,
    GL_CODE,
    GL_CODE_DESC,
    SUPPLIER_ID,
    STATUS,
    LINE
    ORDER BY
    INV_PAY_DATE,
    CHECK_NUMBER,
    --V.SOURCE asc,
    INV_PAY_NUM,
    LINE,
    --INV_PAY_DESC,
    INV_PAY_VOUCHER
    ) A
    -------------------------------------PART ONE END --------------------------------------------------------------------------
    -------------------------------------PART TWO START --------------------------------------------------------------------------
    UNION ALL
    SELECT * FROM
    SELECT * FROM
    SELECT
    DISTINCT
    NULL AS SOURCE,
    ORG_ID,
    NULL AS INV_PAY_VOUCHER,
    NULL AS INV_PAY_TYPE,
    NULL AS INV_PAY_NUM,
    INV_PAY_VEN_ID,
    INV_PAY_VEN_NAME,
    INV_PAY_SITE,
    NULL AS INV_PAY_DATE,
    NULL AS INV_PAY_GROSS,
    NULL AS INV_PAY_AMT,
    NULL AS INV_PAY_DESC,
    NULL AS INV_PAY_HTAX,
    NULL AS INV_AMT,
    NULL AS INV_GST,
    NULL AS INVOICE_AMOUNT,
    NULL AS INV_TOTAL_TAX,
    NULL AS DEBIT1,
    NULL AS CREDIT1,
    NULL AS SITE_CODE,
    NULL AS INVOICE_DATE,
    NULL AS CHECK_NUMBER,
    NULL AS PAYMENT_DATE,
    NULL AS GL_CODE,
    NULL AS GL_CODE_DESC,
    SUPPLIER_ID,
    NULL AS STATUS ,
    NULL AS TRANSACTION,
    NULL AS LINE,
    SELECT
    SUM(NVL(VX.DEBIT,0)) - SUM(NVL(VX.CREDIT,0)) OPN_BAL
    FROM XX_AP_INVPAY_COMBINE_V1_OP VX
    WHERE
    SUBSTR(VX.INV_PAY_DATE,1,10) < TO_DATE(SUBSTR(:P_DATE1,1,10),'YYYY-MM-DD')
    -- AND
    -- SUBSTR(VX.INVOICE_DATE,1,10) < TO_DATE(SUBSTR(:P_DATE_INVOICE1,1,10),'YYYY-MM-DD')
    AND VX.INV_PAY_SITE = nvl(:P_SITE_ID, VX.INV_PAY_SITE)
    AND VX.Vendor_Site_name = nvl(:P_VENDOR_SITE_NAME , VX.Vendor_Site_name)
    AND VX.INV_PAY_VEN_ID = nvl(:P_VEN_ID,INV_PAY_VEN_ID)
    AND VX.ORG_ID = nvl(:P_ORG_ID,ORG_ID)
    AND VX.SOURCE = NVL (:P_TRANSACTION_TYPE,VX.SOURCE)
    AND vx.status = 'Approved'
    AND VX.INV_PAY_SITE =V.INV_PAY_SITE
    AND VX.Vendor_Site_name=V.VENDOR_SITE_NAME
    AND VX.INV_PAY_VEN_ID=V.INV_PAY_VEN_ID
    and vx.status = v.status
    -- AND VX.SOURCE=V.SOURCE
    -- &pwhereclause
    ) AS O_BALANCE_APPROVED,
    SELECT
    SUM(NVL(VX.DEBIT,0)) - SUM(NVL(VX.CREDIT,0)) OPN_BAL
    FROM XX_AP_INVPAY_COMBINE_V1_OP VX
    WHERE
    SUBSTR(VX.INV_PAY_DATE,1,10) < TO_DATE(SUBSTR(:P_DATE1,1,10),'YYYY-MM-DD')
    -- AND
    -- SUBSTR(VX.INVOICE_DATE,1,10) < TO_DATE(SUBSTR(:P_DATE_INVOICE1,1,10),'YYYY-MM-DD')
    AND VX.INV_PAY_SITE = nvl(:P_SITE_ID, VX.INV_PAY_SITE)
    AND VX.Vendor_Site_name = nvl(:P_VENDOR_SITE_NAME , VX.Vendor_Site_name)
    AND VX.INV_PAY_VEN_ID = nvl(:P_VEN_ID,INV_PAY_VEN_ID)
    AND VX.ORG_ID = nvl(:P_ORG_ID,ORG_ID)
    AND VX.SOURCE = NVL (:P_TRANSACTION_TYPE,VX.SOURCE)
    and vx.status = 'Unapproved'
    AND VX.INV_PAY_SITE =V.INV_PAY_SITE
    AND VX.Vendor_Site_name=V.VENDOR_SITE_NAME
    AND VX.INV_PAY_VEN_ID=V.INV_PAY_VEN_ID
    and vx.status = v.status
    -- AND VX.SOURCE=V.SOURCE
    -- &pwhereclause
    ) AS O_BALANCE_UPAPPROVED,
    (SUM(NVL(V.DEBIT,0)) - SUM(NVL(V.CREDIT,0))) AS O_BALANCE
    FROM XX_AP_INVPAY_COMBINE_V1_OP V
    WHERE
    SUBSTR(V.INV_PAY_DATE,1,10) < TO_DATE(SUBSTR(:P_DATE1,1,10),'YYYY-MM-DD')
    AND V.INV_PAY_SITE=nvl(:P_SITE_ID,INV_PAY_SITE)
    AND V.VENDOR_SITE_NAME = NVL(:P_VENDOR_SITE_NAME , V.VENDOR_SITE_NAME)
    AND V.INV_PAY_VEN_ID=nvl(:P_VEN_ID,V.INV_PAY_VEN_ID)
    AND V.ORG_ID=nvl(:P_ORG_ID,V.ORG_ID)
    AND
    ( (SELECT (SUM(NVL(V.DEBIT,0)) - SUM(NVL(V.CREDIT,0))) FROM XX_AP_INVPAY_COMBINE_V1_OP V
    WHERE
    SUBSTR (V.INV_PAY_DATE,1,10) BETWEEN NVL( TO_DATE(SUBSTR(:P_DATE1,1,10),'YYYY-MM-DD'),SUBSTR(V.INV_PAY_DATE,1,10)) AND nvl(TO_DATE(SUBSTR(:P_DATE2,1,10),'YYYY-MM-DD') ,SUBSTR(V.INV_PAY_DATE,1,10))
    -- AND
    -- SUBSTR(V.INVOICE_DATE,1,10) BETWEEN nvl( TO_DATE(SUBSTR(:P_DATE_INVOICE1,1,10),'YYYY-MM-DD'),SUBSTR(V.INVOICE_DATE,1,10)) AND nvl(TO_DATE(SUBSTR(:P_DATE_INVOICE2,1,10),'YYYY-MM-DD') ,SUBSTR(V.INVOICE_DATE,1,10))
    AND V.INV_PAY_SITE=nvl(:P_SITE_ID,INV_PAY_SITE)
    AND V.VENDOR_SITE_NAME = NVL(:P_VENDOR_SITE_NAME , V.VENDOR_SITE_NAME)
    AND V.INV_PAY_VEN_ID=nvl(:P_VEN_ID,V.INV_PAY_VEN_ID)
    AND V.ORG_ID=nvl(:P_ORG_ID,V.ORG_ID)
    AND V.SOURCE = NVL (:P_TRANSACTION_TYPE,V.SOURCE)) IS NULL
    GROUP BY
    ORG_ID,
    INV_PAY_VEN_ID,
    INV_PAY_VEN_NAME,
    INV_PAY_SITE,
    SUPPLIER_ID,
    V.VENDOR_SITE_NAME,
    V.STATUS
    --UNION ALL
    ) B
    -------------------------------------PART TWO END --------------------------------------------------------------------------

    Hi,
    This error is typically associated with the OS being unable to allocate any more memory to a process. It typically manifests itself in 32 bit operating systems, especially Windows, where processes are limited to a maximum 2Gb, but with the way memory is allocated, 1.5Gb tends to be a more realistic limit. With an Oracle instance this means that the total memory requirements, SGA and PGA, should not exceed about 1.5Gb. In Windows, because connection processes also run as threads of the server process, these are also part of the calculation.
    The way then to avoid, or at least reduce this error, is to reduce the memory requirements of the database instance. Also, because some operating systems do not release unused process memory very easily, regular bounces of the database may also help avoid the error, provided you have the luxury to do this.
    The long term fix to this error would be to upgrade to a 64 bit operating system, where this limit is greatly increased. There is also a feature of 32 bit windows that can be added (forget what its called) that increases the 2Gb limit to 3Gb.
    Regards
    Andre

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

    I had encountered a problem while i'm trying to compile a package. The error is : Error: ORA-04030: out of process memory when trying to allocate 639232 byte. Pls advice what can i do?
    Thanks

    OK, it looks like there's something else that's hogging your memory on that server. What do you see when you go into Task Manager, then select Processes, and then 'Mem Usage'?
    Edit:
    Although this would appear to be high: Max PGA Allocated:1.66GB
    What are your settings for pga_aggregate_target, and workarea_size_policy?

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

    hi,
    i have written a procedure that insert as well as update few table.
    But when i am trying to execute the procedure then it throws error:
    ORA-04030: out of process memory when trying to allocate 16396 bytes something like that.
    I don't know why it is?
    I am using cursor with bulk collect and forall block to insert and update.

    The error message says that you ran out of PGA memory. You are bulk collecting into a variable that resides in PGA memory. So likely you fetched everything from the query into the collection variable at once. You would need at least (number of rows of result set * average number of bytes per row) bytes. And you don't have that amount of bytes apparently.
    A solution is to use the limit clause while bulk collecting and set it to a reasonable amount of rows, say 100 or 1000 at most. And use an extra loop while exiting when <collection variable>.count = 0.
    Regards,
    Rob.
    Message was edited by:
    Rob van Wijk
    Way too slow ...

  • Please help: ORA-04030: Out of Process memory error when starting 9.0.1 iFS

    When starting the 9.0.1 iFS running on a 9.0.1.4 Database and Tru64 5.1 O/S, the following errors are displayed:
    IFS-35205: Failed to get prepared statement
    java.sql.SQLException:ORA-04030: Out of process memory when trying to allocate 1048 bytes (callheap,kghsstk).
    Database has the following parameters:
    shared pool 150M
    java pool 100M
    large pool 5M
    DB Cache 60M
    DB Block Size 8K
    Sort area size 1M
    Server has 1GB ram, 12GB swap.
    Please can anyone help?

    Hi Alan,
    your help with this is most appreciated!
    I ran your suggested generated SQL script, but at first the same problem was occuring with the first ALTER statement that happened to be generated.
    However, your explanation mentioned the view 'odm_publicobject' and although this view wasn't in the resulting SQL, I found that compiling the similarly named views in this order worked...
    ODMV_PUBLICOBJECT
    ODBV_PUBLICOBJECT
    ODMBS_PUBLICOBJECT
    ODMS_PUBLICOBJECT
    ODUS_PUBLICOBJECT
    ODUV_PUBLICOBJECT
    (Perhaps other combinations would have worked, but in anycase certainly some orders didn't work...)
    At this point, running the complete original generated SQL script then worked successfully and low and behold as you predicted, IFS started successfully.
    (I didn't actually bother removing these 6 already re-compiled views from the original script, so they got re-compiled twice...)
    So this means that we can now actually stop and start IFS as required without re-installing IFS everytime - which is obviously great!
    I will certainly be watching out for 9.0.3, but my understanding for the reason we were going with 9.0.1 in the first place was that this was included in the RDBMS CD-pack, whereas I believe from 9.0.2 onwards it was seperately licensed. I will check with our Oracle dba's.
    But at least we can prove in principle now whether it will suit our requirements....
    Once again, many thanks for looking into this at such a deep level - very much appreciated.
    Graham.

  • ORA-04030: out of process memory Loading Large XML File

    Experts: I am trying to load a 2.1G XML file into an Object Relational table . The xml schema document xsd is already registered successfully. It fails with the following error :
    ORA-04030: out of process memory when trying to allocate 4032 bytes
    (qmxtgCreateBuf,kghsseg: kolaslCreateCtx)
    ORA-06512: at "SYS.XMLTYPE", line 296
    ORA-06512: at line 1I am able to load the document successfully in SECUREFILE BINARY XML table but that would not work as I need to create relational view on top of this table which does not work with SECUREFILE BINARY XML storage.
    Please suggest what may be the workaround here?
    Thanks
    Kevin

    MDrake: I am trying to load like this:
    insert into TEST_HUGE_XML
        values(
          xmltype(
            bfilename('XMLDIR', 'huge_xmldoc.xml')
          , nls_charset_id('AL32UTF8')
          , 'huge_xmldoc.xsd'
    db version: 11.2.0.3I saw an example of loading using createresource API here:
    http://www.oracle-developer.net/display.php?id=416
    SQL> DECLARE
      2     v_return BOOLEAN;
      3  BEGIN
      4     v_return := DBMS_XDB.CREATERESOURCE(
      5                    abspath => '/public/demo/xml/db_objects.xml',
      6                    data    => BFILENAME('XML_DIR', 'db_objects.xml')
      7                    );
      8     COMMIT;
      9  END;
    10  /
    PL/SQL procedure successfully completed.How do i load the huge xml document in my custom object relational table which was created like this:
    CREATE TABLE HUGE_XML OF XMLTYPE
        XMLTYPE STORE AS OBJECT RELATIONAL
        XMLSCHEMA "huge_xmldoc.xsd"
        ELEMENT "root_element"
    Thanks
    Edited by: Kevin_K on Feb 8, 2013 9:35 AM                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                   

Maybe you are looking for