RDA, AIX, Perl and ulimit 1


The Metalink analyst kept insisting that the “ulimit -d” value was too low.
Running an RDA for Oracle on AIX today I saw that the ulimit values were different if I run on command line or through perl:

$perl -e 'system("ulimit -a");'
time(seconds)        unlimited
file(blocks)         unlimited
data(kbytes)         2097152
stack(kbytes)        unlimited
memory(kbytes)       unlimited
coredump(blocks)     unlimited
nofiles(descriptors) 2000
threads(per process) unlimited
processes(per user)  unlimited

$ulimit -a
core file size        (blocks, -c) unlimited
data seg size         (kbytes, -d) unlimited
file size             (blocks, -f) unlimited
max memory size       (kbytes, -m) unlimited
open files                    (-n) 2000
pipe size          (512 bytes, -p) 64
stack size            (kbytes, -s) unlimited
cpu time             (seconds, -t) unlimited
max user processes            (-u) 2048
virtual memory        (kbytes, -v) unlimited

Leave a comment

Your email address will not be published.

One thought on “RDA, AIX, Perl and ulimit

  • Miguel Anjo

    Later I found that this means that you have an hard limit (shown by perl) that is different from the soft limits.

    One should use:
    $ ulimit -aH
    and
    $ ulimit -aS

    Also, keep in mind that, at least in AIX, when Oracle is started by the CRS, it gets the ulimits of the root user. So these need also to be correctly set. In a client system we had to explicity set stack_hard=-1, to get unlimit stack size.