Re: Why do I get out of memory errors when 10GB memory is free?

From: zigzagdna <zigzagdna_at_yahoo.com>
Date: Sat, 4 Jul 2009 18:32:09 -0700 (PDT)
Message-ID: <405e0eb3-5ced-41fb-9769-e570695f8a03_at_g19g2000yql.googlegroups.com>



On Jul 4, 9:15 pm, zigzagdna <zigzag..._at_yahoo.com> wrote:
> 1.      gpsgetpd=>ulimit -a
> time(seconds)        unlimited
> file(blocks)         unlimited
> data(kbytes)         1048576
> stack(kbytes)        131072
> memory(kbytes)       unlimited
> oredump(blocks)
>
> 2.      Some kernel parameters relevant to oracle:
> shmmax                      25662429593  25662429593         Immed
> shmmni                              512  512                 Immed
> shmseg                              120  120                 Immed
> max_thread_proc                    1024  1024                Immed
> maxdsiz                      1073741824  Default             Immed
> maxdsiz_64bit                2147483648  2147483648          Immed
> maxfiles                           5120  5120
> maxfiles_lim                       6144  6144                Immed
> maxrsessiz                      8388608  Default
> maxrsessiz_64bit                8388608  Default
> maxssiz                       134217728  134217728           Immed
> maxssiz_64bit                1073741824  1073741824          Immed
> maxtsiz                       100663296  Default             Immed
>
> I do not see anything wrong (low values) for ulimit or anyting wrong
> in kernel parameters.

Here are some observations related to memory: 1. I can increase sga_target (that’s the only parameter I have for SGA) by several Giga Bytes without any problem, i.e., Oracle instance starts with any memory issues.
2. If I start a java process, by simply running java command, it gives me out of memory error . It seems that sever does not have enough emmory for heap (evne though 10GB of memory is free on server) because java needs some default heap memory (I think 64M).. IT cannot be a ulimit issue because maxdsiz is 4 GB.
3. If I reduce sga_target to a smaller value, restart oracle instance and then run java, java does not give memory error, so Oracle freed some memory. What I do not understand is Oracle is freeing shared memory and not heap memory, so why it has impact on java (i.e., java getting more heap memory). Server all anog has at least 9 to 10GB memory free.
4. Problem does not happen with Oracle startup, oracle is running fine. Oracle export command and rman off and on fail with ORA error related to memory.
5. My server has 24GB memory and in all above cases, at least 40% of 24GB is free.

Hope someone can point what can be done to get rid of memory errors. Received on Sat Jul 04 2009 - 20:32:09 CDT

Original text of this message