Operating System - HP-UX
1748104 Members
5025 Online
108758 Solutions
New Discussion юеВ

Re: maxfiles setting for HPUX 11.00 with Oracle 8

 
SOLVED
Go to solution
Karl-Johan Hall├йni
Occasional Advisor

maxfiles setting for HPUX 11.00 with Oracle 8

Received the following error in the syslog earlier today:
do_accept : To many open files

I've read earlier entries here in the forum about similar problems before. I
strongly doubt it have anything to do with nfile in this case. I believe it
is the maxfiles setting that needs to be increased. The server is running
HP-UX 11.00 with Oracle 8.1.7, do you know if there is a recommended setting
for the maxfiles with these two softwares working together?


My sysdef look like this:

NAME VALUE
acctresume 4
acctsuspend 2
allocate_fs_swapmap 0
bufpages 94468
create_fastlinks 0
dbc_max_pct 50
dbc_min_pct 5
default_disk_ir 0
dskless_node 0
eisa_io_estimate 768
eqmemsize 19
file_pad 10
fs_async 0
hpux_aes_override 0
maxdsiz 62500
maxdsiz_64bit 262144
maxfiles 60
maxfiles_lim 1024
maxssiz 2048
maxssiz_64bit 2048
maxswapchunks 1024
maxtsiz 16384
maxtsiz_64bit 262144
maxuprc 75
maxvgs 10
msgmap 2555904
nbuf 48496
ncallout 292
ncdnode 150
ndilbuffers 30
netisr_priorit -1
netmemmax 0
nfile 2810
nflocks 200
ninode 476
no_lvm_disks 0
nproc 276
npty 60
nstrpty 60
nswapdev 10
nswapfs 10
public_shlibs 1
remote_nfs_swa 0
rtsched_numpri 32
sema 0
semmap 4521984
shmem 0
shmmni 200
streampipes 0
swapmem_on 1
swchunk 2048
timeslice 10
unlockable_mem 8192

Thank You In Advance / Karl-Johan
12 REPLIES 12
Sandip Ghosh
Honored Contributor

Re: maxfiles setting for HPUX 11.00 with Oracle 8

Can you just post the output of "sar -v 2 10" , so that we can see the usage of your system. Or you can look through "gpm" , go to system tables and find out whether it is in high water level mark.

Sandip
Good Luck!!!
John Carr_2
Honored Contributor

Re: maxfiles setting for HPUX 11.00 with Oracle 8

Hi

The lernel parameter nflocks determines the maximum number of file locks available on the system the recommended setting is

200 + sum of the values of init.ora parameter db_files for all instances of the oracle machine.

checkout the oracle installation guide operating system requirements.

hope this helpss
john.
Karl-Johan Hall├йni
Occasional Advisor

Re: maxfiles setting for HPUX 11.00 with Oracle 8

The result of sar -v 2 10:

16:15:48 text-sz ov proc-sz ov inod-sz ov file-sz ov
16:15:50 N/A N/A 107/276 0 476/476 0 1006/2810 0
16:15:52 N/A N/A 107/276 0 476/476 0 1006/2810 0
16:15:54 N/A N/A 107/276 0 476/476 0 1006/2810 0
16:15:56 N/A N/A 111/276 0 476/476 0 1022/2810 0
16:15:58 N/A N/A 113/276 0 476/476 0 1027/2810 0
16:16:00 N/A N/A 113/276 0 476/476 0 1027/2810 0
16:16:02 N/A N/A 108/276 0 476/476 0 1016/2810 0
16:16:04 N/A N/A 108/276 0 476/476 0 1016/2810 0
16:16:06 N/A N/A 107/276 0 476/476 0 1007/2810 0
16:16:08 N/A N/A 107/276 0 476/476 0 1007/2810 0
Carlos Fernandez Riera
Honored Contributor

Re: maxfiles setting for HPUX 11.00 with Oracle 8

Yes i think too it is maxfiles ( maximun number of open files for one user).

Each process attacing database opens ( can open) all datafiles, so if you arte using shadows process, all it are opened by oracle owner, and then is easy to reach 60, as you have configured maxfiles.

In the other hand, i think you need tunning your kernel ( dbc_max_pct 50 is too high), and posibly more parameters.
unsupported
Steven Gillard_2
Honored Contributor
Solution

Re: maxfiles setting for HPUX 11.00 with Oracle 8

Definitely increase maxfiles, 60 is too low for a system running Oracle. I usually have maxfiles == maxfiles_lim because IMHO the soft limit is just a pain - it causes more problems than it solves.

Regards,
Steve
Karl-Johan Hall├йni
Occasional Advisor

Re: maxfiles setting for HPUX 11.00 with Oracle 8

Thank you for your answers so far. I read in an old document that Oracle recommended maxfiles = 512. I'll go for that setting, unless you guys haven't heard anything else.
Wodisch
Honored Contributor

Re: maxfiles setting for HPUX 11.00 with Oracle 8

Hello Karl-Johan,

your kernel desperately needs some tuning :-)
You won't get very far with only up to 276 processes maximum, for instance...

Parameters I would change - but to what degree depends on your database, your application(read: database client), your amount of RAM, and so on:

create_fastlinks
maxdsiz_64bit
maxfiles
maxssiz
maxssiz_64bit
maxtsiz
maxtsiz_64bit
maxuprc
ncallout
nfile
nflocks
ninode
nproc
npty
nstrpty
nstrtel

It seems you have actually shrunk down some values, since they are smaller than even used in the install-kernel! In case you go for one of the "kernel templates" in SAM, make absolutely certain you change the value of "timeslice" back to "10", the value of "1" is suicide for any system :-(

Sorry for being that unspecific with actual values, but to recommend some, I would need more information.

Regards,
Wodisch
Roger Baptiste
Honored Contributor

Re: maxfiles setting for HPUX 11.00 with Oracle 8

hi,

Maxfiles should be increased. Preferable to around 2000. There are other kernel parms too which you should definitely modify, based on the list you gave!! The values seems way too out of the norms. (less or high depends).

Attached is the output of kmtune of one of my busy database servers, for your reference.

HTH
raj
Take it easy.
Bill Hassell
Honored Contributor

Re: maxfiles setting for HPUX 11.00 with Oracle 8

maxfiles is a safety fence, to prevent a single program from opening way too many files as a mistake. Setting maxfile = maxfiles_LIM is recommended by a number of vendors but it completely defeats the purpose. If a vendor wants to open 1000 files, they simply use a standard call to setrlimit and choose the larger number. If the vendor's doesn't work that way, then the sysadmin can help by using ulimit -n. Since there is a nifty script available in /usr/bin to do this, just use the full pathname:

/usr/bin/ulimit -Sn 1000

and this session now has maxfile set to 1000 while leaving all others at a more normal limit. maxfiles is a security/reliability parameter, thus you should adjust it just for the programs that need it. The /usr/bin/ulimit command works from any shell because it explicitly runs the POSIX shell in the script.


Bill Hassell, sysadmin