You are viewing a plain text version of this content. The canonical link for it is here.
Posted to docs-cvs@perl.apache.org by st...@apache.org on 2003/05/05 04:41:41 UTC

cvs commit: modperl-docs/src/docs/2.0/user/troubleshooting troubleshooting.pod

stas        2003/05/04 19:41:41

  Modified:    src/docs/2.0/user/troubleshooting troubleshooting.pod
  Log:
  document how to deal with '(28)No space left on device' startup errors
  
  Revision  Changes    Path
  1.7       +44 -0     modperl-docs/src/docs/2.0/user/troubleshooting/troubleshooting.pod
  
  Index: troubleshooting.pod
  ===================================================================
  RCS file: /home/cvs/modperl-docs/src/docs/2.0/user/troubleshooting/troubleshooting.pod,v
  retrieving revision 1.6
  retrieving revision 1.7
  diff -u -r1.6 -r1.7
  --- troubleshooting.pod	19 Jan 2003 23:03:45 -0000	1.6
  +++ troubleshooting.pod	5 May 2003 02:41:40 -0000	1.7
  @@ -21,6 +21,50 @@
   =head1 Configuration and Startup
   
   
  +=head2 (28)No space left on device
  +
  +httpd-2.0 is not very helpful at telling which device has run out of
  +precious space. Most of the time when you get an error like:
  +
  +  (28)No space left on device:
  +  mod_rewrite: could not create rewrite_log_lock
  +
  +it means that your system have run out of semaphore arrays. Sometimes
  +it's full with legitimate semaphores at other times it's because some
  +application has leaked semaphores and haven't cleaned them up during
  +the shutdown (which is usually the case when an application
  +segfaults).
  +
  +Use the relevant application to list the ipc facilities usage. On most
  +Unix platforms this is usually an C<ipcs(1)> utility. For example
  +linux to list the semaphore arrays you should execute:
  +
  +  % ipcs -s
  +  ------ Semaphore Arrays --------
  +  key        semid      owner      perms      nsems
  +  0x00000000 2686976    stas      600        1
  +  0x00000000 2719745    stas      600        1
  +  0x00000000 2752514    stas      600        1
  +
  +Next you have to figure out what are the dead ones and remove
  +them. For example to remove the semid 2719745 execute:
  +
  +  % ipcrm -s 2719745
  +
  +Instead of manually removing each, and if you know that none of listed
  +the semaphores is really used (all leaked), you can do:
  +
  +  % ipcs -s | perl -ane '`ipcrm -s $F[1]`'
  +
  +httpd-2.0 seems to use key C<0x00000000> for its semaphores, so to
  +remove only those you can use:
  +
  +  % ipcs -s | perl -ane '/^0x00000000/ && `ipcrm -s $F[1]`'
  +
  +Notice that on other platforms the output of C<ipcs -s> might be
  +different, so you may need to apply a different one liner.
  +
  +
   =head2 Segmentation Fault when Using DBI
   
   Update DBI to at least version 1.31.
  
  
  

---------------------------------------------------------------------
To unsubscribe, e-mail: docs-cvs-unsubscribe@perl.apache.org
For additional commands, e-mail: docs-cvs-help@perl.apache.org