Oracle FAQ Your Portal to the Oracle Knowledge Grid
HOME | ASK QUESTION | ADD INFO | SEARCH | E-MAIL US
 

Home -> Community -> Usenet -> c.d.o.server -> Re: 2 GB myth

Re: 2 GB myth

From: Drazen Kacar <dave_at_fly.srk.fer.hr>
Date: Fri, 3 Dec 2004 11:55:51 +0000 (UTC)
Message-ID: <slrncr0l2h.l4u.dave@fly.srk.fer.hr>


Noons wrote:
> joel-garry_at_home.com (Joel Garry) wrote in message news:<91884734.0411291331.5eda9410_at_posting.google.com>...
>
> >
> > This is good to know, I always thought (based on older experience)
> > Oracle would barf with an OS error when it tried to open one too many
> > files. Would you know which platform(s) the penalty applies to?
>
> I've seen it in Pyramid OS/X and Dynix. Dunno if it holds
> true with Linux. Found a few relatively recent references
> to this problem for both Linux and Solaris. Basically, Solaris
> 32-bit continues to be limited to 256 open files/process. Solaris
> 64-bit of course has a very high limit.

I don't know about Linux, but with Solaris, at least, this is not a kernel problem or limitation. Kernel can open much more files per process. The limitation is in the stdio functions in libc. If the program uses fopen() to open a file, it's limited to 256 files because FILE structure has only a single byte to hold the file descriptor returned from open().

That can be easily changed but it means breaking the binary compatibility, so 32-bit Solaris is not going to do it.

OTOH, if the application uses open() to open files, the process can have more open files.

-- 
 .-.   .-.    Yes, I am an agent of Satan, but my duties are largely
(_  \ /  _)   ceremonial.
     |
     |        dave_at_fly.srk.fer.hr
Received on Fri Dec 03 2004 - 05:55:51 CST

Original text of this message

HOME | ASK QUESTION | ADD INFO | SEARCH | E-MAIL US