(for solaris, don't know much about other os)

/etc/system
set shmsys:shminfo_shmmax=
set shmsys:shminfo_shmmni=
set shmsys:shminfo_shmseg=

(kernel load this at boot time).
shmmax is maximum amount of memory you can request ...
shmmni is the maximum number of shared-memory id available in system
shmseg is the maximum number of shared-memory id per process..
(looks like shmseg is 127)

If needed also modify Shareable.pm for SHM_BUFSIZ to higher value ...

make sure you have enough ...

also try sysdef to see settings ..
Hope this helps.

Niraj


-----Original Message-----
From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED]]
Sent: Thursday, October 07, 1999 3:51 PM
To: [EMAIL PROTECTED]
Subject: Urgent--Any limit on Hash table in Shared Memory?


I used IPC::shareable module to construct a nested HASH table in 
shared memory. It worked fine during "on-demand" test. When I move 
from "on-demand" to "preload", An error came up saying that "No space 
left on device". The machine has 0.5GB menory and most is still 
available. Each entry in the Hash table is less than 1K. The logfile I 
printed out during Httpd start indicates that each time, this error 
shows up when the 128th entry is constructed. So I wonder whether 
there is any limitation on Shared Hash table and whether there is a 
way around this problem. 

Right now, each buffer_size is set to SHMMAX (32M). total 4096 seg is 
allowed. 
Another quick question is that whether there is a way to get info on 
how many share memory segments has been allocated and how many 
physical memory still available?

Any suggestion is appreciated!

-Martin

Reply via email to