Bruce Momjian wrote:
> So, this is what needs to be dealt with to get it working.
> 
More to the point, why is sub-second precision needed in this function? 
Connection timeout is given to us in whole seconds (1.205 code, i.e. prior to 
the patch in question):
     remains.tv_sec = atoi(conn->connect_timeout);     if (!remains.tv_sec)     {         conn->status =
CONNECTION_BAD;        return 0;     }     remains.tv_usec = 0;     rp = &remains;
 
So there is no way to bail out prior to one second. Once you accept that the 
timeout is >= 1 second, and in whole second increments, why does it need 
sub-second resolution?
Joe