[Twisted-Python] epollreactor for pyicq-0.6-t

Steven ZHOU steven_zhou at ctl.creative.com
Thu Jan 10 21:53:06 EST 2008

Hi Jean-Paul,

Thanks for the help. It's indeed the python 2.4.3 bug. I changed it to
2.4.4 or 2.5. It works.

The adhoc way I did to epollreactor seems to work. Maybe I am lucky.


The information in this message is confidential and may be legally
privileged.  It is intended solely for the addressee.  Access to this
message by anyone else is unauthorized.  If you are not the intended
recipient,  any disclosure,  copying or distribution of the message,  or
any action taken by you in reliance on it,  is prohibited and may be
unlawful.  If you have received this message in error,  please delete it
and contact the sender immediately.  Thank you.

             <exarkun at divmod.c                                          To 
             om>                       Twisted general discussion          
             Sent by:                  <twisted-python at twistedmatrix.com>  
             twisted-python-bo                                          cc 
             unces at twistedmatr                                             
             ix.com                                                Subject 
                                       Re: [Twisted-Python] epollreactor   
                                       for pyicq-0.6-t                     
             01/08/2008 11:03                                              
             Please respond to                                             
              Twisted general                                              
             <twisted-python at t                                             

On Tue, 8 Jan 2008 22:50:54 +0800, Steven ZHOU
<steven_zhou at ctl.creative.com> wrote:
>I hope some one could offer me some help on this. I am quite new to both
>python and twisted.
>The thing I do may sounds a bit wierd. I am using a pyicq-0.6-t. As
>pyicq-0.6-t only works with twisted-2.2 or earlier, so I chose to install
>twisted-2.2. However, I wished to use epollreactor as the default
>selectreactor only supports 1024 file descriptors. So I copied the
>files of epollreactor which is installed on twisted-2.5 to the
>site-packages/twisted-2.2 directory. I copied 5 files in the total,
>epollreactor.py, epoll..pyx to the twisted/internet directory, _epoll.py
>_epoll.pyc and _epoll.so to twisted/python directory. I can't remember the
>exact file names. I copied it with a hope that it works. I am not sure
>whether I am doing thing stupid here. correct me if I am.

I don't know if this works.  I've never tried it.  The epoll reactor
implementation shares code from other parts of Twisted.  It may be
the case that that code changed between Twisted 2.2 and Twisted 2.5
in a way which will prevent epollreactor from working.  It may also
be the case that it hasn't.

>The thing is, after I changed the reactor.py to import epollreactor,
>pyicq-0.6-t seems to be using epollreactor but it still can only supports
>1024 open sockets. I thought the problem is only in selectreactor? I
>figured this out by doing a netstat -a -n on linux and found that
>pyicq-0.6-t only opened about 1017 maximum concurrent sockets. I presume
>that would mean only around 1000 connections can be made.
>Although strange, but I do have a reason to use pyicq-0.6-t which is an
>outdated version.

Are you using Python 2.4.3?  This sounds like it may be related to the
issue described here:



Twisted-Python mailing list
Twisted-Python at twistedmatrix.com


More information about the Twisted-Python mailing list