generation in the scoreboard so that mod_status can accurately
represent workers in processes which are gracefully terminating.
New child processes with worker MPM can take over slots of
individual threads within gracefully terminating processes.
Sometimes this is a problem (too many of these gracefully
terminating processes), so it is helpful to have mod_status
provide the information required to recognize these processes.
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@156274 13f79535-47bb-0310-9956-ffa450edef68
MPM.
Note: It worked before with linuxthreads and it still does. But now
it works with normal thread implementations too.
PR: 23795
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@101614 13f79535-47bb-0310-9956-ffa450edef68
old generation requests included after a graceful restart. But we
shouldn't count workers who are starting up.
OTOH, the "ready" counter needs to pay attention to the generation, so it
stays in sync with how p_i_s_m counts idle workers.
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@95272 13f79535-47bb-0310-9956-ffa450edef68
at the same time quiet a gcc warning (it assumed that thread_limit
could be zero, which would leave ps_record uninitialized when
referenced after the end of the thread loop)
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@94579 13f79535-47bb-0310-9956-ffa450edef68
Obtained from:
Submitted by: Ryan Morgan <rmorgan@covalent.net>
Reviewed by: dougm, jimjag
Change mod_status to use scoreboard accessor functions so it can
be used in any MPM without having to be recompiled.
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@94558 13f79535-47bb-0310-9956-ffa450edef68
1. rename ap_rset_content_type to ap_set_content_type
2. reverse the arguments on the call to aligh with ap_set_content_length
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@94056 13f79535-47bb-0310-9956-ffa450edef68
the !HAVE_TIMES path. This will help avoid future errors similar
to the ones fixed earlier today.
The code change also has the benefit of getting the paren-matching
feature of some editors to work properly.
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@93954 13f79535-47bb-0310-9956-ffa450edef68
the main loop
clean up the main loop by continuing when the server isn't active instead
of introducing yet another level of nesting
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@93950 13f79535-47bb-0310-9956-ffa450edef68
(currently nobody sets the start/stop times so this fix isn't
immediately apparent)
Submitted by: Stas Bekman
Reviewed by: Jeff Trawick
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@93901 13f79535-47bb-0310-9956-ffa450edef68
properly initialized.
Move ap_restart_time into the scoreboard global area so the child process
on non-forking platforms can have access to it.
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@93502 13f79535-47bb-0310-9956-ffa450edef68
pointer math. This is required for portable scoreboards.
vhost becomes the 'vhost name string' so it now survives ap_generation
clicks. next was apparently never used.
This patch also accounts for the changes to the apr_shm api, and gives
Win32 the magic of a shared scoreboard.
Breakage aplenty on non-win32 platforms, I suspect, but this radical
surgery, and culling of unused functions, was really, really needed.
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@92791 13f79535-47bb-0310-9956-ffa450edef68
and instead use the mpm query function to retrieve those limits and
use those dynamically-retrieved values when walking the scoreboard.
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@92510 13f79535-47bb-0310-9956-ffa450edef68
causing the server not to start.
previous method was to call exit(1) which would not fail
gracefully
PR:
Obtained from:
Submitted by:
Reviewed by: (Idea only Jeff Trawick)
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@92144 13f79535-47bb-0310-9956-ffa450edef68
it is necessary to check for the generation as well as "quiescing", in the
case of a restart where no workers have seen the PoD yet.
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@89821 13f79535-47bb-0310-9956-ffa450edef68
"requests currently being processed" or "idle" counts
also, change term from "servers" to "workers" - servers sounds like what
you call the whole thing
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@89820 13f79535-47bb-0310-9956-ffa450edef68
XHTML 1.0 legibility. One XHTML issue remains, <td nowrap>, which has
an issue that "attribute minimization is not supported in XML". Since
?notables drops that thorny issue, I'm ignoring this for now.
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@89752 13f79535-47bb-0310-9956-ffa450edef68
no idea what exactly this computation was trying to accomplish...
req_time = (long)(((ws_record.stop_time - ws_record.start_time) * 1000)
+ ((ws_record.stop_time - ws_record.start_time) / 1000));
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@89712 13f79535-47bb-0310-9956-ffa450edef68
being indexed by worker slot during initialization, then by process slot when
generating output.
This saves a little storage and a few cycles, too.
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@89534 13f79535-47bb-0310-9956-ffa450edef68
output
I don't have 100% confidence in my guess as to why some of the state labels
are in bold and some aren't (e.g., "<b>Write</b>" vs. "Graceful". Hopefully
any rhyme or reason to it is maintained with my change.
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@89249 13f79535-47bb-0310-9956-ffa450edef68
workers when counting the number of requests being processed
we won't count such workers as idle either, since they aren't available
to process new requests
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@89248 13f79535-47bb-0310-9956-ffa450edef68
. get the SS field in extended status output formatted correctly
(seconds since beginning of request shouldn't be a huge
negative number :) )
. use APR_OS_PID_T_FMT and pid_t where appropriate in mod_status
to avoid casting, some of which may have been broken on some
architectures
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@89048 13f79535-47bb-0310-9956-ffa450edef68