On Wed, 13 Mar 2019 09:58:54 -0700 Chad Wallace <cwall...@lodgingcompany.com> wrote: > Here are lines 396 and 397 of HTTP/Server/Simple.pm (version 0.52): > > my $remote_sockaddr = getpeername( $self->stdio_handle ); > my $family = sockaddr_family($remote_sockaddr); > > So $remote_sockaddr is undef. It should avoid calling > sockaddr_family() in that case.
It looks like Chad is right - it would appear to be a problem with HTTP::Server::Simple. That means (a) it should be reported there, (b) it should only affect you while running Dancer standalone. You could, if you're keen, patch your local HTTP::Server::Simple with a check that the call to getpeername( $self->stdio_handle ) did indeed return something useful, before then passing that to sockaddr_family(), and if not, emit as much potentially-useful debug info as you can, to try to isolate the conditions under which this could happen. Some form of stress-testing might help, too - maybe it's a timing issue, a race condition where another request arrives while a previous one is in a certain state, where the client (or another/previous client) drops its connection right whne the server isn't expecting it, or similar? Cheers Dave P _______________________________________________ dancer-users mailing list dancer-users@dancer.pm http://lists.preshweb.co.uk/mailman/listinfo/dancer-users