On Fri, Jul 07, 2023 at 03:52:46PM -0000, [email protected] wrote:
> Author: ylavic
> Date: Fri Jul 7 15:52:45 2023
> New Revision: 1910861
>
> URL: http://svn.apache.org/viewvc?rev=1910861&view=rev
> Log:
> ab: Fix accounting of started connections.
>
> Revert when a kept alive connection is aborted on read.
> Stop the polling loop when there is nothing to poll anymore, it's simpler.
Not related to this change but I noticed that trunk ab has stopped
failing if trying to connect to a closed port, strace looks like:
epoll_wait(3, [{events=EPOLLOUT|EPOLLERR|EPOLLHUP, data={u32=33073216,
u64=33073216}}], 2, 30000) = 1
epoll_wait(3, [{events=EPOLLOUT|EPOLLERR|EPOLLHUP, data={u32=33073216,
u64=33073216}}], 2, 30000) = 1
...
With HUP set in the returned events it enters the first if() at
https://github.com/apache/httpd/blob/trunk/support/ab.c#L2523 but
STATE_CONNECTING is not handled there and so it loops indefinitely.
That's as far as I debugged it, sorry. Any ideas?