How to resolve ORA-04030: out of process memory when trying to allocate 248 bytes (kxs-heap-w,ctx:keswxCurPrepare) Errors on IBM AIX Platforms
(Doc ID 1934141.1)
Last updated on JUNE 28, 2024
Applies to:
Oracle Database - Enterprise Edition - Version 11.2.0.4 and laterOracle Database Cloud Schema Service - Version N/A and later
Oracle Database Exadata Express Cloud Service - Version N/A and later
Oracle Database Exadata Cloud Machine - Version N/A and later
Oracle Database Cloud Exadata Service - Version N/A and later
IBM AIX on POWER Systems (64-bit)
Goal
This note helps you in resolving the ORA-04030 errors with upgrade or any other activity on the database.
1. The alert log might contain the following errors
ORA-04030: out of process memory when trying to allocate 4064 bytes (PLS CGA hp,pdzdM80_Allocate_Block)
ORA-04030: out of process memory when trying to allocate 248 bytes (kxs-heap-w,ctx:keswxCurPrepare)
2. The Incident trace file might contain the following errors
ORA-04030: out of process memory when trying to allocate 248 bytes (kxs-heap-w,ctx:keswxCurPrepare)
2014-09-30 12:02:46.042
dbkedDefDump(): Starting incident default dumps (flags=0x2, level=3, mask=0x0)
----- Current SQL Statement for this session (sql_id=aqu3vk9zsj4aa) -----
update procedure$ set audit$=:2,options=:3 where obj#=:1
3. The failing functions and the callstack is similar to the following
Function List (to Full stack) (to Summary stack)
skdstdst <- ksedst1 <- ksedst <- dbkedDefDump <- ksedmp
<- ksfdmp <- dbgexPhaseII <- dbgexExplicitEndInc <- dbgeEndDDEInvocatio <- nImpl
<- dbgeEndDDEInvocatio <- kghnospc <- kghalf <- keswxCurPrepare <- keswxCurPushMonitor
<- ing <- kews_sqlst_push_mon <- itoring <- kews_sqlst_flush_le <- vel
<- kews_sqlst_flush <- kews_timeout <- ksu_dispatch_tac
<- updrow <- qerupFetch <- updaul <- updThreePhaseExe
<- updexe <- opiexe <- opiodr <- rpidrus <- skgmstack
<- rpidru <- rpiswu2 <- rpidrv <- rpiexe <- kqlobjchg
<- kqlchg <- kglfls1 <- ktcCommitTxn <- ktdcmt <- k2lcom
<- k2send <- xctctl <- xctCommitTxn <- opiexe <- opiosq0
<- kpooprx <- kpoal8 <- opiodr <- ttcpip <- opitsk
<- opiino <- opiodr <- opidrv <- sou2o <- opimai_real
<- ssthrdmain <- main <- start
4. The uploaded RDA or the ulimit -a output shows the following
Using: /usr/bin/ksh -f -c "ulimit -a"
time(seconds) unlimited
file(blocks) unlimited
data(kbytes) 131072
stack(kbytes) 32768
memory(kbytes) 32768
coredump(blocks) 1
nofiles(descriptors) 2000
threads(per process) unlimited
processes(per user) unlimited
Solution
To view full details, sign in with your My Oracle Support account. |
|
Don't have a My Oracle Support account? Click to get started! |
In this Document
Goal |
Solution |
References |