[Zodb-checkins] CVS: ZEO/ZEO/zrpc - client.py:1.1.2.5

Jeremy Hylton jeremy@alum.mit.edu
Sat, 26 Jan 2002 08:38:32 -0500


>>>>> "TP" == Tim Peters <tim.one@home.com> writes:

  TP>                  s.setblocking(0) self.sockets[s] = addr
  TP>                  # XXX can still block for a while if addr
  TP>                  # requires DNS
  TP> + # YYY What is that XXX comment trying to say?  self.connect
  TP> + # YYY explicitly tolerates EINPROGRESS.
  TP>                  e = self.connect(s)
 
The XXX comments that while the socket connect() operation is done in
non-blocking mode the DNS resolution of the address "my.foo.com" is
still a synchronous operation; the name lookup doesn't use the socket
at all, it uses C library ops like gethostbyname().  The method is
intended to be sort-of fast, but DNS could take a long time.

Jeremy