httpd

Checkout Tools
  • last updated 59 mins ago
Constraints
Constraints: committers
 
Constraints: files
Constraints: dates

Changeset 1772481 is being indexed.

update transformation

update transformation

Updated Markdown code to the dev guidelines page - part 3
Updated Markdown code to the dev guidelines page - part 2
Updated Markdown code to the dev guidelines page
Merge r1772418 from trunk:

loop in checking response headers

w/ HTTPProtocolOptions Unsafe

loop in checking response headers

w/ HTTPProtocolOptions Unsafe

Add testing hint
mpm-event's doc rebuild
Fixed some wording in mpm-event's doc page
mpm-event's documentation rebuild
Add a section to mpm-event's documentation to advertise new changes

I tried to add a summary of Stefan's last patches just backported to

2.4.x today. I've read all of them and tried to report Stefan's comment

from PR 53555 as much as possible. Please review and let me know if I wrong

something incorrect or not precise enough.

This isn't in 2.4.24, yet.

silence warning. No functional change

Merge r1770771 from trunk:

Describe new behavior of ServerLimit

This has changed a bit after the fix for PR 53555. Better wording is welcome.

Submitted by: sf

Reviewed/backported by: jim

Merge r1738631, r1738633, r1738635, r1757030, r1757031, r1770752, r1770768 from trunk:

Don't take over scoreboard slots from gracefully finishing threads

Otherwise the old and the new thread will both update the same scoreboard slot

with undefined results.

add comments

Document which directives set which variables

Make ap_find_child_by_pid() look at all slots that have ever been used.

This is preparation to allow to use more scoreboard slots in mpm event.

mpm_event: minor code simplification

- move variable initializations into declarations

- use max_workers variable

mpm_event: don't re-use scoreboard slots that are still in use

This causes inconsistent data in the scoreboard (due to async

connections) and makes it difficult to determine what is going on.

Therefore it is not a useful fix for the scoreboard-full issues (PR

53555).

The consent on the dev list is that we should allocate/use more

scoreboard entries instead.

Use all available scoreboard slots

Allow to use all slots up to ServerLimit. This makes 'scoreboard full'

errors much less likely.

And if ther is a situation where the scoreboard is full, don't make any

more processes finish gracefully due to reduced load until some old

processes have terminated. Otherwise, the situation would get worse once

the load increases again.

ap_daemon_limit is renamed to the more descriptive active_server_limit,

to make sure that all its uses are taken care of.

PR 53555

mpm_event: add clarifying comment

from jim

Submitted by: sf

Reviewed/backported by: jim

Merge r1705922, r1706523, r1738464, r1738466, r1738486 from trunk:

When shutting down a process, free resources early

Due to lingering connections, shutting down a process may take a very

long time. Free all recycled pools early in the hope that we can already

give some memory back to the OS.

rename some variables to be more descriptive

pid -> pslot

tid -> tslot

remove unused 'sd'

Terminate keep-alive connections when dying

When shutting down a process gracefully, terminate keep-alive connections so

that we don't get any new requests which may keep the dying process alive

longer.

Exit threads early during shutdown

During graceful shutdown, if there are more running worker threads than open

connections, terminate some threads. This frees resources faster, which may be

needed for new processes.

Exit threads early during shutdown, part 2

Follow up to r1738466: During graceful shutdown, when the listener thread is

closing a connection, it needs to wake up a worker thread so that it may

terminate.

Submitted by: sf

Reviewed/backported by: jim

Merge r1738628, r1757009, r1756848, r1757029 from trunk:

Display process slot number in the async overview

Fix the number of column for 'Async connections'.

There are only 3 columns (writing, keep-alive, closing), not 4.

Try to improve the code layout for it to be more readable.

Each <th> is on its own line so keep the corresponding "colspan" <td> fields grouped together.

r1738628 introduced a new column, 'Slot'.

Add an empty cell for it in the last line of the table, in order to fix the layout of the Totals.

Replace tab by spaces to be consistent

mod_status: note stopping procs in async info table

* add new column "stopping", denoting if a process is shutting down

* add additional "(old gen)", if a process is from before a graceful reload

* add counts of processes and stopping processes to summary line

Submitted by: sf, jailletc36, jailletc36, sf

Reviewed/backported by: jim

Merge r1757061, r1770750 from trunk:

ap_reclaim_child_processes() ignores its first argument

note this in the docs, add comment

ap_reclaim_child_processes(): Implement terminate immediately

The behavior for terminate == 1 was documented but not implemented. Do

that now.

Submitted by: sf

Reviewed/backported by: jim

Merge r1496711, r1597533, r1649491, r1665216, r1756553, r1756631, r1726675, r1718496, r1718476, r1747469 from trunk:

recognize the "default handler name" in r->handler, which is used when

no SetHandler/AddHandler and no matching mimetype during type_checker.

Submitted by: Eric Covener

mod_cache: try to use the key of a possible open but stale cache entry

if we have one in cache_try_lock(). PR 50317

Submitted by: Ruediger Pluem

* modules/cache/mod_socache_memcache.c (socache_mc_store): Pass

through expiration time.

Submitted by: Faidon Liambotis <paravoid debian.org>, jorton

* mod_cache: Preserve the Content-Type in case of 304 response.

304 does not contain Content-Type and mod_mime regenerates

the Content-Type based on the r->filename. This later leads to original

Content-Type to be lost (overwriten by whatever mod_mime generates).

mod_cache: Use the actual URI path and query-string for identifying the

cached entity (key), such that rewrites are taken into account when

running afterwards (CacheQuickHandler off). PR 21935.

mod_cache: follow up to r1756553: log the real/actual cached URI (debug).

better s-maxage support

+ *) mod_cache: Consider Cache-Control: s-maxage in expiration

+ calculations. [Eric Covener]

+

+ *) mod_cache: Allow caching of responses with an Expires header

+ in the past that also has Cache-Control: max-age or s-maxage.

+ PR55156. [Eric Covener]

remove dead code leftover from r1023387.

Prior to this revision, there was an apr_atoi64 in this context.

Now, ap_cache_control() sets control.max_age (which is checked here) when

the maxage value was parsed OK.

duplicate debug-level AH00764 in the just-validated path.

Rename ap_casecmpstr[n]() to ap_cstr_casecmp[n](), update with APR doxygen

Submitted by: jkaluza, jorton, jkaluza, ylavic, ylavic, covener, covener, covener, wrowe

Reviewed/backported by: jim

Merge r1702948, r1759415 from trunk:

httpd compiles warning free on gcc and every new warning will be treated as an error, standard c-89 is enforced

http_config: follow up to r1702948: maybe unused, yet maybe usefull too.

Submitted by: icing, ylavic

Reviewed/backported by: jim

Promoted
Straightforward votes first
One more whitespace compression test

Drop bad header name token whitespace, validate OBS-fold whitespace compression

Revert the change of status codes; I hadn't noted that :: was a split notation

for multiple packets. Including r1765475 in the backport proposal, implicit

trailing whitespace is always accepted now, in multiple or as a single packet.

Appears we cannot disallow this whitespace, since the chunk BNF coexisted

with the implied *LWS rule, before RFC7230 eliminated the later. Whether

this is actually OWS or BWS is an editorial decision beyond our pay grade.

Backports: r1765475

Submitted by: wrowe

Generated doc changes
Change 2.2 installation doc to recommend a minimum APR version of 1.4
For those reviewing the strict backport proposal, provide the tests