Commit 045815e7 authored by Jim Jagielski's avatar Jim Jagielski
Browse files

Add in a configuration generation... this is independent of

MPM gen, just in case we ever switch MPMs at a graceful ;)

git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@1087331 13f79535-47bb-0310-9956-ffa450edef68
parent c57ba7c2
Loading
Loading
Loading
Loading
+2 −0
Changes for include/http_core.h: 2 added lines, 0 removed lines.
Original line number Diff line number Diff line
@@ -808,6 +808,8 @@ AP_DECLARE(int) ap_state_query(int query_code);
#define AP_SQ_MAIN_STATE        0
  /** are we going to serve requests or are we just testing/dumping config */
#define AP_SQ_RUN_MODE          1
    /** generation of the top-level apache parent */
#define AP_SQ_CONFIG_GEN        2

/*
 * return values for ap_state_query()
+2 −0
Changes for include/http_main.h: 2 added lines, 0 removed lines.
Original line number Diff line number Diff line
@@ -51,6 +51,8 @@ AP_DECLARE_DATA extern apr_pool_t *ap_pglobal;
AP_DECLARE_DATA extern int ap_main_state;
/** run mode (normal, config test, config dump, ...) */
AP_DECLARE_DATA extern int ap_run_mode;
/** run mode (normal, config test, config dump, ...) */
AP_DECLARE_DATA extern int ap_config_generation;

/* for -C, -c and -D switches */
/** An array of all -C directives.  These are processed before the server's
+3 −1
Changes for modules/generators/mod_status.c: 3 added lines, 1 removed line.
Original line number Diff line number Diff line
@@ -390,7 +390,9 @@ static int status_handler(request_rec *r)
                             ap_scoreboard_image->global->restart_time,
                             DEFAULT_TIME_FORMAT, 0),
                  "</dt>\n", NULL);
        ap_rprintf(r, "<dt>Parent Server Generation: %d</dt>\n",
        ap_rprintf(r, "<dt>Parent Server Config. Generation: %d</dt>\n",
                   ap_state_query(AP_SQ_CONFIG_GEN));
        ap_rprintf(r, "<dt>Parent Server MPM Generation: %d</dt>\n",
                   (int)mpm_generation);
        ap_rputs("<dt>Server uptime: ", r);
        show_time(r, up_time);
+3 −0
Changes for server/core.c: 3 added lines, 0 removed lines.
Original line number Diff line number Diff line
@@ -112,6 +112,7 @@ static apr_table_t *server_config_defined_vars = NULL;

AP_DECLARE_DATA int ap_main_state = AP_SQ_MS_INITIAL_STARTUP;
AP_DECLARE_DATA int ap_run_mode = AP_SQ_RM_UNKNOWN;
AP_DECLARE_DATA int ap_config_generation = 1;

static void *create_core_dir_config(apr_pool_t *a, char *dir)
{
@@ -4368,6 +4369,8 @@ AP_DECLARE(int) ap_state_query(int query)
        return ap_main_state;
    case AP_SQ_RUN_MODE:
        return ap_run_mode;
    case AP_SQ_CONFIG_GEN:
        return ap_config_generation;
    default:
        return AP_SQ_NOT_SUPPORTED;
    }
+1 −0
Changes for server/main.c: 1 added line, 0 removed lines.
Original line number Diff line number Diff line
@@ -686,6 +686,7 @@ int main(int argc, const char * const argv[])
    apr_pool_destroy(ptemp);

    for (;;) {
        ap_config_generation++;
        ap_main_state = AP_SQ_MS_DESTROY_CONFIG;
        apr_hook_deregister_all();
        apr_pool_clear(pconf);