
On Sun, Dec 27, 2009 at 05:00:11AM -0500, Stelian Ionescu wrote:
commit b8a3c1a535009ba60a3f9156c9e01386efd7e7ba Author: Stelian Ionescu <sionescu@cddr.org> Date: Sat Dec 26 22:36:11 2009 +0100
Fix a couple of bugs in echo-server.lisp
Thanks to Peter Keller.
examples/echo-server.lisp | 4 ++-- 1 files changed, 2 insertions(+), 2 deletions(-)
It turns out I found another unrelated bug. :) To reproduce unreliably: ; run the server like this: * (run-server :port 10000 :new-process nil :timeout 60) In another xterm:
telnet localhost 10000 Trying 127.0.0.1... Connected to localhost. Escape character is '^]'. hello 1: hello how 1: how
1: are 1: are you telnet> close Connection closed. Then:
telnet localhost 10000 Trying 127.0.0.1... Connected to localhost. Escape character is '^]'. <hangs>
Transcript of what SBCL 1.0.33.30 does: * (run-server :port 10000 :new-process nil :timeout 60) Accepted client 1 1: hello 1: how 1: 1: are Accepted client 2 1: you 1: closing debugger invoked on a TYPE-ERROR in thread #<THREAD "initial thread" RUNNING {AA09C79}>: The value NIL is not of type IOLIB.MULTIPLEX::FD-HANDLER. Type HELP for debugger help, or (SB-EXT:QUIT) to exit from SBCL. restarts (invokable by number or by possibly-abbreviated name): 0: [ABORT] Exit debugger, returning to top level. (IOLIB.MULTIPLEX::%DISPATCH-EVENT #S(IOLIB.MULTIPLEX::FD-ENTRY :FD 8 :READ-HANDLER NIL :WRITE-HANDLER NIL :ERROR-CALLBACK NIL) :WRITE :ERROR 1478256.382031317d0) 0] * Trouble is, it doesn't happen all the time, so maybe a thread race condition? It only happened once for me so far in my testing. Had I known it wasn't easily reproducable, I would have gotten a full backtrace. Thank you. -pete