Failed to connect, Operation now in progress for socket
I'm running 64 bit LispWorks 5.1.1 on Linux 2.6.15 and am seeing "Operation now in progress" errors when I open a socket with timeouts using COMM:OPEN-TCP-STREAM. This only seems to happen when my machine starts to saturate its bandwidth. Is this expected behavior and just part of the timeout logic? Once the machine gets into this state I get the EINPROGRESS error for several hours. I do have a retry loop in my code, but it usually just fails all the retries. If memory serves, this is the behavior I would expect from a non blocking socket if I was calling the C functions directly and the connection wasn't ready. It that case I would start a select with some timeout. Slightly massaged backtrace below. Cheers, Chris Dean Call to ERROR (offset 92) SYSTEM::ESTRING : "Error making TCP connection: host=~S, service=~S, reason=~@?" SYSTEM::EARGS : ("mysample.sokitomi.com" 80 "~A: ~A (~D)." "Failed to connect" "Operation now in progress" 115) Catch frame: "<* Catch All Object *>" Catch frame: "<* Catch All Object *>" Binding frame: FLI::*FOREIGN-OBJECT-SCOPE-STACK-DETAILS* : #(0 NIL NIL) Catch frame: (NIL) Call to COMM:CONNECT-TO-TCP-SERVER (offset 2154) COMM::HOST : "mysample.sokitomi.com" COMM::SERVICE : 80 DBG::|rest-| : (:ERRORP T :TIMEOUT 20 :LOCAL-ADDRESS NIL :LOCAL-PORT NIL :NODELAY T :KEEPALIVE NIL) COMM::ERRORP : T COMM::TIMEOUT : 20 COMM::LOCAL-ADDRESS : NIL COMM::LOCAL-PORT : NIL COMM::KEEPALIVE : NIL COMM::NODELAY : T Call to COMM:OPEN-TCP-STREAM (offset 520) COMM::HOSTNAME : "mysample.sokitomi.com" COMM::SERVICE : 80 DBG::|rest-| : (:ELEMENT-TYPE FLEXI-STREAMS:OCTET :TIMEOUT 20 :READ-TIMEOUT 20 :WRITE-TIMEOUT 20 :ERRORP T) COMM::DIRECTION : :IO COMM::ELEMENT-TYPE : FLEXI-STREAMS:OCTET COMM::ERRORP : T COMM::READ-TIMEOUT : 20 COMM::WRITE-TIMEOUT : 20 COMM::TIMEOUT : 20 COMM::SSL-CTX : NIL COMM::SSL-CONFIGURE-CALLBACK : NIL COMM::CTX-CONFIGURE-CALLBACK : NIL COMM::DO-HANDSHAKE : T COMM::HANDSHAKE-TIMEOUT : NIL COMM::LOCAL-ADDRESS : NIL COMM::LOCAL-PORT : NIL COMM::NODELAY : T COMM::KEEPALIVE : NIL