Oracle FAQ | Your Portal to the Oracle Knowledge Grid |
![]() |
![]() |
Home -> Community -> Usenet -> c.d.o.server -> Re: 2 GB myth
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.hrReceived on Fri Dec 03 2004 - 05:55:51 CST
![]() |
![]() |