"Roy Smith" <r...@panix.com> wrote in message news:l3riea$82$1...@panix2.panix.com... > I'm running: > > Ubuntu Precise > Python 2.7.3 > django 1.4.5 > gunicorn 0.17.4 > gevent 1.0dev (rc3) > > I haven't been able to pin this down exactly, but it looks like if I > do (inside of a custom logging.Handler subclass): > > # Paraphrased from the actual code > remote_addr = ("localhost", 9700) > self.socket = socket.socket(type=socket.SOCK_DGRAM) > payload = "..." > self.socket.connect(remote_addr) > self.socket.send(payload) > > I get intermittant hangs in the connect() call. If I rewrite this as: > > remote_addr = ("localhost", 9700) > self.socket = socket.socket(type=socket.SOCK_DGRAM) > payload = "..." > self.socket.sendto(payload, remote_addr) > > everything works fine. Has anybody seen anything like this? I'm > guessing this is some kind of gevent bug.
Those are two different things. You would normally use connect() on a SOCK_STREAM socket. It requires that the remote endpoint, in this case localhost:9700, has an open socket listening for connections. sendto() is the right thing to use with SOCK_DGRAM. James -- https://mail.python.org/mailman/listinfo/python-list