Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

It turns out that a large percentage of people who visited eser.org were getting error 500's.

I just now fixed this bug.

I had written my own single-process event-driven HTTP server using Linux epoll, and my code improperly handled a boundary case where the HTTP request header was split up amongst more than one read operation from the open socket.

Specifically, if the code did not see a \r\n\r\n within the first chunk of bytes it read from the socket, that specific client connection would hang and go unanswered. The front-end load balancer would see this and report an error 500 to the client, which is what people were seeing.

I should have tested this more thoroughly, but the whole thing is only a few days old since conception. Hopefully, I've got all of the major bugs out of it ;)

eser.org



Consider applying for YC's Summer 2026 batch! Applications are open till May 4

Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: