HTTPS tests occasionally fails due to closed server sockets.

Create issue
Issue #192 resolved
Takashi Kato repo owner created an issue

HTTPS tests sometimes fails due to closed server socket. Below is one of the error signalled on appveyor

Unhandled exception
  Condition components:
  1. &socket #<socket closed:3491168 "APPVYR-WIN(">
  2. &who socket-recv
  3. &message An operation was attempted on something that is not a socket.
  4. &stack-trace
stack trace:
  [1] socket-recv
  [2] read-record
  [3] %tls-socket-recv
  [4] dynamic-wind
  [5] tls-socket-recv
  [6] read!
  [7] get-line
  [8] loop
    src: (get-line in/out)
  [9] dynamic-wind
  [10] #f
    src: ((call/cc (lambda (guard-k) (lambda () (with-excep

The error message is rather weird but seems passing (or passed) socket handle was not valid (or maybe closed during socket-recv?)

Comments (3)

  1. Takashi Kato reporter

    This might be related to the speed of TLS sockets. If client request is not sent in one go, then HTTPS request might contain invalid headers or status line.

  2. Takashi Kato reporter

    There was couple of problems on this issue:

    • test case used transcoded-port which would close underlying binary port
    • (at least on OS X) tls socket port was GCed even if it's used on buffered port or transcoded port

    Should be fixed by <<7407ef5>> but not sure since there isn't a reproducible tests. So keep this open but make it low priority.

  3. Log in to comment