#450 Use inotify instead of polling in Runner.py

Mailman 2.2 / 3.0
open
nobody
5
2007-09-20
2007-08-17
No

Hi,
the Mailman wakes up 7 times per second which is somehow resource unfriendly. This is caused by qrunners that poll for new files in queue directory. The proposed patch replaces polling in Runner.py with inotify which enables CPU to idle when possible.

The patch requires python-inotify (http://pyinotify.sourceforge.net) to be installed.
--ts

Discussion

  • Barry Warsaw

    Barry Warsaw - 2007-08-17

    Logged In: YES
    user_id=12800
    Originator: NO

    IIUC, inotify is a Linux-only thing so this would have to be optional. I haven't looked at the patch, but I would target this for Mailman 3 instead of 2.2.

     
  • Tomas Smetana

    Tomas Smetana - 2007-08-17

    Logged In: YES
    user_id=1869522
    Originator: YES

    Yes, you're right... I didn't realize that inotify is Linux specific. I will add a configure script option -- this should solve the Linux-only problem and make the python-inotify dependency optional. Also I will take a look at Mailman 3 and try to create a patch for it as well.

     
  • Tomas Smetana

    Tomas Smetana - 2007-08-21

    Logged In: YES
    user_id=1869522
    Originator: YES

    File Added: mailman-inotify.patch

     
  • Tomas Smetana

    Tomas Smetana - 2007-08-21

    Logged In: YES
    user_id=1869522
    Originator: YES

    I'm adding updated patch for Mailman 2.2 and a new patch for Mailman 3. I've moved the python-inotify parts in conditionals, so if inotify is not present in the system, everything should work as in the unpatched version.
    File Added: mailman3-inotify.patch

     
  • Tomas Smetana

    Tomas Smetana - 2007-08-24

    Logged In: YES
    user_id=1869522
    Originator: YES

    The patches will make Mailman working but unstoppable. It looks to be a python's problem with handling signals in threads. I'm closing this ticket until the issues got solved.

     
  • Tomas Smetana

    Tomas Smetana - 2007-08-24
    • status: open --> closed-invalid
     
  • Tomas Smetana

    Tomas Smetana - 2007-09-20
    • status: closed-invalid --> open
     
  • Tomas Smetana

    Tomas Smetana - 2007-09-20

    Logged In: YES
    user_id=1869522
    Originator: YES

    Reopening: I have prepared new patches that were tested with Mailman 2 and look to be OK. Please consider incorporating the patches.
    File Added: mailman3-inotify.patch

     
  • Tomas Smetana

    Tomas Smetana - 2007-09-20

    New patch for Mailman 3

     
  • Tomas Smetana

    Tomas Smetana - 2007-09-20

    New patch for Mailman 2

     
    Attachments
  • Tomas Smetana

    Tomas Smetana - 2007-09-20

    Logged In: YES
    user_id=1869522
    Originator: YES

    File Added: mailman-inotify.patch

     

Get latest updates about Open Source Projects, Conferences and News.

Sign up for the SourceForge newsletter:





No, thanks