Joe: with r1892615 I fixed a bug in waiting for the server to become
unresponsive after a stop. This *should* make timed waits unnecessary
in the http2 test suite.

- Stefan

> Am 26.08.2021 um 10:43 schrieb ste...@eissing.org:
> 
> 
> 
>> Am 26.08.2021 um 10:27 schrieb Ruediger Pluem <rpl...@apache.org>:
>> 
>> 
>> 
>> On 8/26/21 10:21 AM, ste...@eissing.org wrote:
>>> 
>>> 
>>>> Am 26.08.2021 um 10:16 schrieb Joe Orton <jor...@redhat.com>:
>>>> 
>>>> On Thu, Aug 26, 2021 at 09:51:07AM +0200, ste...@eissing.org wrote:
>>>>> https://app.travis-ci.com/github/apache/httpd
>>>>> 
>>>>>>    assert env.apache_restart() == 0
>>>>> 3026E       assert 1 == 0
>>>>> 3027E        +  where 1 = <bound method H2TestEnv.apache_restart of 
>>>>> <h2_env.H2TestEnv object at 0x7ffb03366a60>>()
>>>>> 3028E        +    where <bound method H2TestEnv.apache_restart of 
>>>>> <h2_env.H2TestEnv object at 0x7ffb03366a60>> = <h2_env.H2TestEnv object 
>>>>> at 0x7ffb03366a60>.apache_restart
>>>>> 3029
>>>>> 3030test/modules/http2/test_002_curl_basics.py:11: AssertionError
>>>>> 3031---------------------------- Captured stderr setup 
>>>>> -----------------------------
>>>>> 3032WARNING: exit 1, stdout: , stderr: (98)Address already in use: 
>>>>> AH00072: make_sock: could not bind to address [::]:40001
>>>>> 3033(98)Address already in use: AH00072: make_sock: could not bind to 
>>>>> address 0.0.0.0:40001
>>>>> 3034AH03272: no listening sockets available, shutting down
>>>>> 3035
>>>>> 
>>>>> Looks like the stop/start cycle instead of reload is not timing safe. 
>>>>> If httpd is no longer responding, it does not mean that the ports are 
>>>>> available again for the new process. Reloads are just better here, as 
>>>>> wait loops can be avoided. Hmm....thinking...
>>>> 
>>>> Yeah :( Next build I've pushed has r1892598 reverted and a sleep(2) 
>>>> after running apachectl, that was sufficient for me when I was testing 
>>>> locally before.
>>> 
>>> Can we add a configuration directive for this server behaviour? Like
>>> 
>>> AcceptOnGraceful on|off
>>> 
>>> So that people who do not want the server to accept new connections
>>> during graceful reloads can influence this?
>> 
>> What about a graceful stop first and a start afterwards?
> 
> Just tested: "graceful-stop" seems to make it worse. Connections are 
> being served using the old configuration.
> 
>> 
>> Regards
>> 
>> RĂ¼diger

Reply via email to