On 6/20/22 8:53 AM, Ruediger Pluem wrote:
>
>
> On 6/17/22 11:24 AM, ic...@apache.org wrote:
>> Author: icing
>> Date: Fri Jun 17 09:24:57 2022
>> New Revision: 1902005
>>
>> URL: http://svn.apache.org/viewvc?rev=1902005&view=rev
>> Log:
>> *) mod_http2: new implementation of h2 worker pool.
>> - O(1) cost at registration of connection processing producers
>> - no limit on registered producers
>> - join of ongoing work on unregister
>> - callbacks to unlink dependencies into other h2 code
>> - memory cleanup on workers deactivation (on idle timeouts)
>> - idle_limit as apr_time_t instead of seconds
>>
>>
>> Modified:
>> httpd/httpd/trunk/modules/http2/h2_c1.c
>> httpd/httpd/trunk/modules/http2/h2_config.c
>> httpd/httpd/trunk/modules/http2/h2_config.h
>> httpd/httpd/trunk/modules/http2/h2_mplx.c
>> httpd/httpd/trunk/modules/http2/h2_mplx.h
>> httpd/httpd/trunk/modules/http2/h2_workers.c
>> httpd/httpd/trunk/modules/http2/h2_workers.h
>> httpd/httpd/trunk/modules/http2/mod_http2.c
>>
>> Modified: httpd/httpd/trunk/modules/http2/h2_c1.c
>> URL:
>> http://svn.apache.org/viewvc/httpd/httpd/trunk/modules/http2/h2_c1.c?rev=1902005&r1=1902004&r2=1902005&view=diff
>> ==============================================================================
>> --- httpd/httpd/trunk/modules/http2/h2_c1.c (original)
>> +++ httpd/httpd/trunk/modules/http2/h2_c1.c Fri Jun 17 09:24:57 2022
>> @@ -56,11 +56,8 @@ apr_status_t h2_c1_child_init(apr_pool_t
>> {
>> apr_status_t status = APR_SUCCESS;
>> int minw, maxw;
>> - int max_threads_per_child = 0;
>> - int idle_secs = 0;
>> + apr_time_t idle_limit;
>>
>> - ap_mpm_query(AP_MPMQ_MAX_THREADS, &max_threads_per_child);
>> -
>> status = ap_mpm_query(AP_MPMQ_IS_ASYNC, &async_mpm);
>> if (status != APR_SUCCESS) {
>> /* some MPMs do not implemnent this */
>> @@ -70,12 +67,8 @@ apr_status_t h2_c1_child_init(apr_pool_t
>>
>> h2_config_init(pool);
>>
>> - h2_get_num_workers(s, &minw, &maxw);
>> - idle_secs = h2_config_sgeti(s, H2_CONF_MAX_WORKER_IDLE_SECS);
>> - ap_log_error(APLOG_MARK, APLOG_TRACE3, 0, s,
>> - "h2_workers: min=%d max=%d, mthrpchild=%d, idle_secs=%d",
>> - minw, maxw, max_threads_per_child, idle_secs);
>> - workers = h2_workers_create(s, pool, minw, maxw, idle_secs);
>> + h2_get_workers_config(s, &minw, &maxw, &idle_limit);
>> + workers = h2_workers_create(s, pool, maxw, minw, idle_limit);
>
> Shouldn't that be
>
> workers = h2_workers_create(s, pool, minw, maxw, idle_limit);
>
> instead?
Scratch that. I just noticed that the order of the parameters in
h2_workers_create was changed as well.
Regards
RĂ¼diger