You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@apr.apache.org by Jeff Trawick <tr...@attglobal.net> on 2003/01/14 14:34:09 UTC

Re: [emerg] (28)No space left on device: Couldn't create accept lock

Stas Bekman <st...@stason.org> writes:

> After starting the server for many times I've received:
> 
> [Tue Jan 14 15:55:36 2003] [emerg] (28)No space left on device:
> Couldn't create accept lock
> 
> I figured out that it was the ipc device that run out of space on the
> allocated segment, because I had encountered this problem before.
> 
> Is it possible to make that error message more descriptive, so users
> won't have to wonder what device the error message is talking about?

(shields up :) )

The best compromise may be for APR to have an error code that is used
just for when SysV IPC returns ENOSPC.  Techies will want to know that
the kernel returned ENOSPC, but just representing it as ENOSPC like we
do today results in an error description that doesn't help users.

-- 
Jeff Trawick | trawick@attglobal.net
Born in Roswell... married an alien...

Re: [emerg] (28)No space left on device: Couldn't create accept lock

Posted by Jeff Trawick <tr...@attglobal.net>.
manaay wrote:

> I am also getting this error. Do you know how to solve the problem?

another couple of points:

if a semaphore becomes stranded when you do apachectl start followed
by apachectl stop (i.e., not doing anything weird via gdb or whatever),
submit a bug report (http://nagoya.apache.org/bugzilla)

regardless of how the semaphores are becoming stranded, you can add
"AcceptMutex fcntl" to httpd.conf so that the accept mutex isn't a
semaphore...   that would help narrow down which mutex isn't
getting cleaned up properly (mod_rewrite?  mod_ssl?  something else?)



Re: [emerg] (28)No space left on device: Couldn't create accept lock

Posted by Stas Bekman <st...@stason.org>.
manaay  wrote:
> I am also getting this error. Do you know how to solve the problem?

You don't tell which OS you are on. On linux 'ipcs' lists the semaphores 
and shared mem segments. which you can delete with 'ipcrm', e.g.

% ipcs
------ Semaphore Arrays --------
key        semid      owner      perms      nsems
0x00000000 4325376    stas      600        1
...

% ipcrm -s 4325376

I don't know of a command to remove all semaphores at once, other than 
doing some scripting. This works for me:

% ipcs | perl -ne '/^0x00000000 (\d+) / && `ipcrm -s $1`'

Since I start and kill the server many times (probably when running from 
gdb) I get many dead semaphores pretty quickly :(

__________________________________________________________________
Stas Bekman            JAm_pH ------> Just Another mod_perl Hacker
http://stason.org/     mod_perl Guide ---> http://perl.apache.org
mailto:stas@stason.org http://use.perl.org http://apacheweek.com
http://modperlbook.org http://apache.org   http://ticketmaster.com


Re: [emerg] (28)No space left on device: Couldn't create accept lock

Posted by "manaay <mlampret@email.si>" <ml...@email.si>.
I am also getting this error. Do you know how to solve the problem?

thanks,
Miha

--- In new-httpd@yahoogroups.com, Jeff Trawick <tr...@a...> wrote:
> Stas Bekman <st...@s...> writes:
> 
> > After starting the server for many times I've received:
> > 
> > [Tue Jan 14 15:55:36 2003] [emerg] (28)No space left on device:
> > Couldn't create accept lock
> > 
> > I figured out that it was the ipc device that run out of space on the
> > allocated segment, because I had encountered this problem before.
> > 
> > Is it possible to make that error message more descriptive, so users
> > won't have to wonder what device the error message is talking about?
> 
> (shields up :) )
> 
> The best compromise may be for APR to have an error code that is used
> just for when SysV IPC returns ENOSPC.  Techies will want to know that
> the kernel returned ENOSPC, but just representing it as ENOSPC like we
> do today results in an error description that doesn't help users.
> 
> -- 
> Jeff Trawick | trawick@a...
> Born in Roswell... married an alien...