[racket] Continue: reentrant promises and custodian suicides

From: Jay McCarthy (jay.mccarthy at gmail.com)
Date: Sat Jul 16 17:48:34 EDT 2011

2011/7/14 Dominic Pearson <lists at technoanimal.net>:
>> >     thread: the custodian has been shut down: #<custodian>
>> I'm not sure about this one. Do you get a context/backtrace with this error?
> Unfortunately that is the only message printed to the console. If
> there's a way to make this more verbose or helpful I am more than
> happy to try and reproduce this. I suspect this is with Continue as it
> kills the accepting TCP socket, but I'm no expert.

Yes, I'd like more information. It sounds like what would happen if
the connection timed out because it didn't get scheduled.

Something really good Web servers do is prioritize threads that are
handling connections in proportion to how close they are to
completing. The Racket Web Server doesn't do that, so it is plausible
that a connection's thread doesn't get scheduled long enough for its
timeout to fire.


p.s. The Racket Web server is not called "Continue". There was a
conference manager that used it named "Continue", but that's not the
same as the server.

Jay McCarthy <jay at cs.byu.edu>
Assistant Professor / Brigham Young University

"The glory of God is Intelligence" - D&C 93

Posted on the users mailing list.