When can we get this error?
1. Process running is not able to allocate required memory
2. Process has reached the threshold limit
Users may have different threshold values. We can check that by using the ulimit command
$ ulimit -a
I often started getting ORA-04030 error on one of the oracle database, while building the indexes.
After investigation, index creation was working with some users.
So in this case, solution was straightforward.
Check the ulimit for those users, where index creation is failing. Make the necessary changes in
data = -1
rss = -1
Where -1 is unlimited
Bounce the server. Check the ulimit.
In most of the cases, it may resolve the problem.