[Mailman-Developers] Not sleeping for locks?

Pug Bainter pug at pug.net
Tue Sep 30 12:37:35 EDT 2003


Good Morning,

  We've been noticing a very high load on our fileserver that holds our
  mailman spool. This morning when I ran 2 archivers at once because of
  a backlog to a list, I noticed that the stat request volume sky
  rocketed.

  From strace'ing a second archiver running, I see that the system
  doesn't even a tenth of a second in what I assume is the time.sleep
  call.

[...]
11:15:10.712914 gettimeofday({1064938510, 712937}, NULL) = 0
11:15:10.712976 gettimeofday({1064938510, 712998}, NULL) = 0
<stat>
11:15:11.512977 gettimeofday({1064938511, 512995}, NULL) = 0
11:15:11.513035 gettimeofday({1064938511, 513051}, NULL) = 0
<stat>
[...]

  Now maybe I'm not understanding what the following code is supposed to
  do:

    def __sleep(self):
        interval = random.random() * 2.0 + 0.01
        time.sleep(interval)

  but I read it to be sleeping for between 0.01 and 2.01 seconds. During
  my traces, I never saw it sleep even 0.01 seconds, let alone anything
  ressembling something reasonably random.

  Am I just missing something?

  This was noticed on:

Mailman version: 2.1.2
Python version:  2.2.2
OS version:      Solaris 2.8 and RedHat 7.3

  Thanks for any help!

  NOTE: I'm not on the developers list, but I thought they might have an
        answer for this behavior.

Ciao,

-- 
Pug Bainter                                        |        AMD, Inc.
System Engineer, MTS                               |      Mail Stop 625
 Pug.Bainter at amd.com      |  pug at pug.net           |  5900 E. Ben White Blvd
 Phone: (512) 602-0364    |  Fax: (512) 602-6970   |     Austin, TX 78741
Note: The views may not reflect my employers, or even my own for that matter.



More information about the Mailman-Developers mailing list