On Thu, Feb 25, 2016 at 11:27 AM, <ic...@apache.org> wrote: > Author: icing > Date: Thu Feb 25 10:27:27 2016 > New Revision: 1732275 > > URL: http://svn.apache.org/viewvc?rev=1732275&view=rev > Log: > merging pre_close_connection hook, prep_lingering_close and ap_update_child() > additions from trunk > > Modified: [] > httpd/httpd/branches/2.4.x/server/scoreboard.c [] > > Modified: httpd/httpd/branches/2.4.x/server/scoreboard.c > URL: > http://svn.apache.org/viewvc/httpd/httpd/branches/2.4.x/server/scoreboard.c?rev=1732275&r1=1732274&r2=1732275&view=diff > ============================================================================== > --- httpd/httpd/branches/2.4.x/server/scoreboard.c (original) > +++ httpd/httpd/branches/2.4.x/server/scoreboard.c Thu Feb 25 10:27:27 2016 > @@ -32,6 +32,7 @@ > #include "http_main.h" > #include "http_core.h" > #include "http_config.h" > +#include "http_protocol.h" > #include "ap_mpm.h" > > #include "scoreboard.h" > @@ -457,7 +458,9 @@ static int update_child_status_internal( > int thread_num, > int status, > conn_rec *c, > - request_rec *r) > + server_rec *s, > + request_rec *r, > + const char *descr) > { > int old_status; > worker_score *ws; [] > @@ -489,28 +495,44 @@ static int update_child_status_internal( > } > ws->conn_count = 0; > ws->conn_bytes = 0; > + ws->last_used = apr_time_now(); > } > - if (r) { > - const char *client = ap_get_remote_host(c, r->per_dir_config, > - REMOTE_NOLOOKUP, NULL); > - if (!client || !strcmp(client, c->client_ip)) { > - apr_cpystrn(ws->client, r->useragent_ip, sizeof(ws->client)); > + if (status == SERVER_READY) { > + ws->client[0]='\0'; > + ws->vhost[0]='\0'; > + ws->request[0]='\0'; > + ws->protocol[0]='\0'; > + }
This seems to have changed mod_status' output. Prior to this change the previous values were displayed until the worker was reused for another connection/request, now it is reset as soon as the worker is idle (i.e. each connection/request end). I prefer the new behaviour, but there are some concerns on users@...