Operating System - HP-UX
1822480 Members
2866 Online
109642 Solutions
New Discussion юеВ

Re: Memory fault(coredump)

 
deepak_9
Frequent Advisor

Memory fault(coredump)

Hi forum,

Getting attached error if trying "desc ra_customer" command from SQL prompt. I have exceeded "ulimit" values while remaining in POSIX shell and also tried by changing the shell to K Shell which I suppose makes ulimit value as unlimited.

Please help !!!!


Never Ever give Up !!!!!
3 REPLIES 3
Steven Sim Kok Leong
Honored Contributor

Re: Memory fault(coredump)

Hi,

Check your kernel parameters and swap size whether they have been over-utilised and under-sized.

Check maxssiz, maxdsiz and maxtsiz:

# kmtune|grep maxssiz
# kmtune|grep maxdsiz
# kmtune|grep maxtsiz

Check swap:

# swapinfo -mt

If any of these have been exceeded, you will need to resize them accordingly.

Hope this helps. Regards.

Steven Sim Kok Leong
Brainbench MVP for Unix Admin
http://www.brainbench.com
Madhu Sudhan_1
Respected Contributor

Re: Memory fault(coredump)

Deepak :
Looks like machine is running short of resources. One point to note that sh-posix and ksh are same in HP-UX.

Thanks,
Think Positive
Bill Hassell
Honored Contributor

Re: Memory fault(coredump)

Just to clarify, ksh and POSIX shell are different programs in HP-UX. The POSIX shell is a slight super-set, but there are specific (if not esoteric) differences. Read the Release notes in /usr/share/doc for the differences.

One of the differences is ulimit. ksh has no options and it refers exclusively to the number of 512 byte blocks that can be written to a file by the current user. The POSIX shell has 7 different options:

$ ulimit -a
time(seconds) unlimited
file(blocks) unlimited
data(kbytes) 65536
stack(kbytes) 8192
memory(kbytes) unlimited
coredump(blocks) 0
nofiles(descriptors) 60

so it is not clear which ulimit value you have exceeded. It's possible that a process is trying to open more than 60 files (nofiles above), in which case, you can use the command:

$ ulimit -n 120

which will set a new limit of 120 files per process. Programs can (and should) make this change themselves by calling setrlimit but alas, many do not. Note also that the POSIX shell can set a soft or hard limit (ulimit -S or -H) and it's possible that the sysadmin set a hard limit in /etc/profile. The kernel parameter maxfiles set the soft limit, while maxfiles_lim sets a system-wide limit that ulimit cannot override.

For sysadmins, you can set a new file count limit and core file limit in /etc/profile something like:

ulimit -Sn 120
ulimit -Sc 0

thus allowing programmers that really(?) need to open more than 120 files to use ulimit in their local session. Same with core files. The above will default to no core files for each user.



Bill Hassell, sysadmin