From 63dd4623e12dda47303ff30a5cf66054dfcd5bf3 Mon Sep 17 00:00:00 2001 From: Justin Erenkrantz Date: Sat, 27 Nov 2004 19:06:48 +0000 Subject: [PATCH] At long last, promote mod_cache and friends out of experimental/. Also, take quick pass through docs files to remove experimental label for them. Reviewed by: Paul Querna, Bill Stoddard, Justin Erenkrantz git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@106737 13f79535-47bb-0310-9956-ffa450edef68 --- CHANGES | 4 +- STATUS | 56 +++++++------------ docs/manual/mod/mod_cache.xml | 13 ----- docs/manual/mod/mod_disk_cache.xml | 9 +-- docs/manual/mod/mod_mem_cache.xml | 6 -- modules/{experimental => cache}/NWGNUdsk_cach | 0 modules/{experimental => cache}/NWGNUmem_cach | 0 modules/{experimental => cache}/NWGNUmod_cach | 0 modules/{experimental => cache}/cache_cache.c | 0 modules/{experimental => cache}/cache_cache.h | 0 modules/{experimental => cache}/cache_hash.c | 0 modules/{experimental => cache}/cache_hash.h | 0 .../{experimental => cache}/cache_pqueue.c | 0 .../{experimental => cache}/cache_pqueue.h | 0 .../{experimental => cache}/cache_storage.c | 0 modules/{experimental => cache}/cache_util.c | 0 modules/cache/config.m4 | 17 ++++++ modules/{experimental => cache}/mod_cache.c | 0 modules/{experimental => cache}/mod_cache.dsp | 0 modules/{experimental => cache}/mod_cache.h | 0 modules/{experimental => cache}/mod_cache.imp | 0 .../{experimental => cache}/mod_disk_cache.c | 0 .../mod_disk_cache.dsp | 0 .../{experimental => cache}/mod_mem_cache.c | 0 .../{experimental => cache}/mod_mem_cache.dsp | 0 modules/experimental/config.m4 | 16 ------ 26 files changed, 43 insertions(+), 78 deletions(-) rename modules/{experimental => cache}/NWGNUdsk_cach (100%) rename modules/{experimental => cache}/NWGNUmem_cach (100%) rename modules/{experimental => cache}/NWGNUmod_cach (100%) rename modules/{experimental => cache}/cache_cache.c (100%) rename modules/{experimental => cache}/cache_cache.h (100%) rename modules/{experimental => cache}/cache_hash.c (100%) rename modules/{experimental => cache}/cache_hash.h (100%) rename modules/{experimental => cache}/cache_pqueue.c (100%) rename modules/{experimental => cache}/cache_pqueue.h (100%) rename modules/{experimental => cache}/cache_storage.c (100%) rename modules/{experimental => cache}/cache_util.c (100%) rename modules/{experimental => cache}/mod_cache.c (100%) rename modules/{experimental => cache}/mod_cache.dsp (100%) rename modules/{experimental => cache}/mod_cache.h (100%) rename modules/{experimental => cache}/mod_cache.imp (100%) rename modules/{experimental => cache}/mod_disk_cache.c (100%) rename modules/{experimental => cache}/mod_disk_cache.dsp (100%) rename modules/{experimental => cache}/mod_mem_cache.c (100%) rename modules/{experimental => cache}/mod_mem_cache.dsp (100%) diff --git a/CHANGES b/CHANGES index 5621ca4138..a5b5572016 100644 --- a/CHANGES +++ b/CHANGES @@ -2,8 +2,10 @@ Changes with Apache 2.1.2-dev [Remove entries to the current 2.0 section below, when backported] + *) mod_cache/mod_mem_cache/mod_disk_cache: Move out of experimental. + *) Upgraded PCRE to version 5.0. [Brian Pane] - + *) mod_cgid: Catch configuration problem where two web server instances share same ServerRoot but admin forgot to use ScriptSock. [Jeff Trawick] diff --git a/STATUS b/STATUS index 62000bb87f..02ce71922f 100644 --- a/STATUS +++ b/STATUS @@ -37,35 +37,6 @@ RELEASE SHOWSTOPPERS: CURRENT VOTES: - * Promote mod_cache from experimental to non-experimental - status (keep issues noted below in EXPERIMENTAL MODULES as - items to be addressed as a supported module). - +1: jerenkrantz, pquerna, stoddard - +0: jim, bnicholes - -1: - There are a couple of problems that need to be resolved - before this module is moved out of experimental. - 1) We need to at least review and comment on the RFC violations - 2) Resolve issue of how to cache page fragements (or perhaps -if- we - want to cache page fragements). Today, mod_cache/mod_mem_cache - will cache #include 'virtual' requests (but not #include 'file' - requests). This was accomplished by making CACHE_IN a - CONTENT_SET-1 filter to force it to run before the SUBREQ_CORE - filter. But now responses cannot be cached that include the - effects of having been run through CONTENT_SET filters - (mod_deflate, mod_expires, etc). We could rerun all the - CONTENT_SET filters on the cached response, but this will not - work in all cases. For example, mod_expires relies on installing - the EXPIRATION filter during fixups. Contents served out of - mod_cache (out of the quick_handler) bypass -all- the request - line server hooks (Ryan really hated this. It is great for - performance, but bad because of the complications listed above). - - jerenkrantz: I think it's time. We've done a *lot* of work to it, and - we think most of the blatant RFC violations are now gone. - mod_cache just belongs in cache/. There may still be bugs, - but not likely to be major ones. - * httpd-std.conf and friends a) httpd-std.conf should be tailored by install (from src or @@ -478,12 +449,20 @@ WISH LIST * mod_cache: Handle ESI tags. -EXPERIMENTAL MODULES: - - Experimental modules should eventually be be promoted to fully supported - status or removed from the repository entirely (ie, the - 'experiment' failed). This section tracks what needs to happen to - get the modules promoted to fully supported status. + * mod_cache: Resolve issue of how to cache page fragements (or perhaps + -if- we want to cache page fragements). Today, mod_cache/mod_mem_cache + will cache #include 'virtual' requests (but not #include 'file' + requests). This was accomplished by making CACHE_IN a + CONTENT_SET-1 filter to force it to run before the SUBREQ_CORE + filter. But now responses cannot be cached that include the + effects of having been run through CONTENT_SET filters + (mod_deflate, mod_expires, etc). We could rerun all the + CONTENT_SET filters on the cached response, but this will not + work in all cases. For example, mod_expires relies on installing + the EXPIRATION filter during fixups. Contents served out of + mod_cache (out of the quick_handler) bypass -all- the request + line server hooks (Ryan really hated this. It is great for + performance, but bad because of the complications listed above). mod_cache/mod_mem_cache/mod_disk_cache: @@ -508,6 +487,13 @@ EXPERIMENTAL MODULES: HTTP or SNMP? jerenkrantz says: Yawn. Who cares. +EXPERIMENTAL MODULES: + + Experimental modules should eventually be be promoted to fully supported + status or removed from the repository entirely (ie, the + 'experiment' failed). This section tracks what needs to happen to + get the modules promoted to fully supported status. + PRs that have been suspended forever waiting for someone to put them into 'the next release': diff --git a/docs/manual/mod/mod_cache.xml b/docs/manual/mod/mod_cache.xml index 7ff3a294f5..9f672caa13 100644 --- a/docs/manual/mod/mod_cache.xml +++ b/docs/manual/mod/mod_cache.xml @@ -23,15 +23,10 @@ mod_cache Content cache keyed to URIs. -Experimental mod_cache.c cache_module - - This module is experimental. Documentation is still under development... - -

mod_cache implements an RFC 2616 compliant HTTP content cache that can be used to cache either local or proxied content. @@ -65,17 +60,10 @@ CacheRoot CacheSize - CacheGcInterval CacheDirLevels CacheDirLength - CacheExpiryCheck CacheMinFileSize CacheMaxFileSize - CacheTimeMargin - CacheGcDaily - CacheGcUnused - CacheGcClean - CacheGcMemUsage MCacheSize MCacheMaxObjectCount MCacheMinObjectSize @@ -101,7 +89,6 @@ <IfModule mod_disk_cache.c>
CacheRoot c:/cacheroot
- CacheSize 256
CacheEnable disk /
CacheDirLevels 5
CacheDirLength 3
diff --git a/docs/manual/mod/mod_disk_cache.xml b/docs/manual/mod/mod_disk_cache.xml index 83c8e7c0fc..3541333cac 100644 --- a/docs/manual/mod/mod_disk_cache.xml +++ b/docs/manual/mod/mod_disk_cache.xml @@ -23,18 +23,13 @@ mod_disk_cache Content cache storage manager keyed to URIs -Experimental mod_disk_cache.c disk_cache_module

- - This module is experimental. Documentation is still under development... - -

mod_disk_cache implements a disk based storage - manager. It is primarily of use in conjunction with - mod_proxy.

+ manager. It is primarily of use in conjunction + mod_cache.

Content is stored in and retrieved from the cache using URI based keys. Content with access protection is not cached.

diff --git a/docs/manual/mod/mod_mem_cache.xml b/docs/manual/mod/mod_mem_cache.xml index 7a84ccc783..839baba908 100644 --- a/docs/manual/mod/mod_mem_cache.xml +++ b/docs/manual/mod/mod_mem_cache.xml @@ -23,16 +23,10 @@ mod_mem_cache Content cache keyed to URIs -Experimental mod_mem_cache.c mem_cache_module - - This module is experimental. Documentation is still under - development... - -

This module requires the service of mod_cache. It acts as a support module for mod_cache and provides a memory based storage manager. diff --git a/modules/experimental/NWGNUdsk_cach b/modules/cache/NWGNUdsk_cach similarity index 100% rename from modules/experimental/NWGNUdsk_cach rename to modules/cache/NWGNUdsk_cach diff --git a/modules/experimental/NWGNUmem_cach b/modules/cache/NWGNUmem_cach similarity index 100% rename from modules/experimental/NWGNUmem_cach rename to modules/cache/NWGNUmem_cach diff --git a/modules/experimental/NWGNUmod_cach b/modules/cache/NWGNUmod_cach similarity index 100% rename from modules/experimental/NWGNUmod_cach rename to modules/cache/NWGNUmod_cach diff --git a/modules/experimental/cache_cache.c b/modules/cache/cache_cache.c similarity index 100% rename from modules/experimental/cache_cache.c rename to modules/cache/cache_cache.c diff --git a/modules/experimental/cache_cache.h b/modules/cache/cache_cache.h similarity index 100% rename from modules/experimental/cache_cache.h rename to modules/cache/cache_cache.h diff --git a/modules/experimental/cache_hash.c b/modules/cache/cache_hash.c similarity index 100% rename from modules/experimental/cache_hash.c rename to modules/cache/cache_hash.c diff --git a/modules/experimental/cache_hash.h b/modules/cache/cache_hash.h similarity index 100% rename from modules/experimental/cache_hash.h rename to modules/cache/cache_hash.h diff --git a/modules/experimental/cache_pqueue.c b/modules/cache/cache_pqueue.c similarity index 100% rename from modules/experimental/cache_pqueue.c rename to modules/cache/cache_pqueue.c diff --git a/modules/experimental/cache_pqueue.h b/modules/cache/cache_pqueue.h similarity index 100% rename from modules/experimental/cache_pqueue.h rename to modules/cache/cache_pqueue.h diff --git a/modules/experimental/cache_storage.c b/modules/cache/cache_storage.c similarity index 100% rename from modules/experimental/cache_storage.c rename to modules/cache/cache_storage.c diff --git a/modules/experimental/cache_util.c b/modules/cache/cache_util.c similarity index 100% rename from modules/experimental/cache_util.c rename to modules/cache/cache_util.c diff --git a/modules/cache/config.m4 b/modules/cache/config.m4 index cdec8c56eb..9572e06d5b 100644 --- a/modules/cache/config.m4 +++ b/modules/cache/config.m4 @@ -6,4 +6,21 @@ APACHE_MODPATH_INIT(cache) APACHE_MODULE(file_cache, File cache, , , no) +dnl # list of object files for mod_cache +cache_objs="dnl +mod_cache.lo dnl +cache_storage.lo dnl +cache_util.lo dnl +" +dnl # list of object files for mod_mem_cache +mem_cache_objs="dnl +mod_mem_cache.lo dnl +cache_cache.lo dnl +cache_pqueue.lo dnl +cache_hash.lo dnl +" +APACHE_MODULE(cache, dynamic file caching, $cache_objs, , no) +APACHE_MODULE(disk_cache, disk caching module, , , no) +APACHE_MODULE(mem_cache, memory caching module, $mem_cache_objs, , no) + APACHE_MODPATH_FINISH diff --git a/modules/experimental/mod_cache.c b/modules/cache/mod_cache.c similarity index 100% rename from modules/experimental/mod_cache.c rename to modules/cache/mod_cache.c diff --git a/modules/experimental/mod_cache.dsp b/modules/cache/mod_cache.dsp similarity index 100% rename from modules/experimental/mod_cache.dsp rename to modules/cache/mod_cache.dsp diff --git a/modules/experimental/mod_cache.h b/modules/cache/mod_cache.h similarity index 100% rename from modules/experimental/mod_cache.h rename to modules/cache/mod_cache.h diff --git a/modules/experimental/mod_cache.imp b/modules/cache/mod_cache.imp similarity index 100% rename from modules/experimental/mod_cache.imp rename to modules/cache/mod_cache.imp diff --git a/modules/experimental/mod_disk_cache.c b/modules/cache/mod_disk_cache.c similarity index 100% rename from modules/experimental/mod_disk_cache.c rename to modules/cache/mod_disk_cache.c diff --git a/modules/experimental/mod_disk_cache.dsp b/modules/cache/mod_disk_cache.dsp similarity index 100% rename from modules/experimental/mod_disk_cache.dsp rename to modules/cache/mod_disk_cache.dsp diff --git a/modules/experimental/mod_mem_cache.c b/modules/cache/mod_mem_cache.c similarity index 100% rename from modules/experimental/mod_mem_cache.c rename to modules/cache/mod_mem_cache.c diff --git a/modules/experimental/mod_mem_cache.dsp b/modules/cache/mod_mem_cache.dsp similarity index 100% rename from modules/experimental/mod_mem_cache.dsp rename to modules/cache/mod_mem_cache.dsp diff --git a/modules/experimental/config.m4 b/modules/experimental/config.m4 index 2266904c01..c5bfacd6db 100644 --- a/modules/experimental/config.m4 +++ b/modules/experimental/config.m4 @@ -9,22 +9,6 @@ else APACHE_MODULE(charset_lite, character set translation, , , no) fi -dnl # list of object files for mod_cache -cache_objs="dnl -mod_cache.lo dnl -cache_storage.lo dnl -cache_util.lo dnl -" -dnl # list of object files for mod_mem_cache -mem_cache_objs="dnl -mod_mem_cache.lo dnl -cache_cache.lo dnl -cache_pqueue.lo dnl -cache_hash.lo dnl -" -APACHE_MODULE(cache, dynamic file caching, $cache_objs, , no) -APACHE_MODULE(disk_cache, disk caching module, , , no) -APACHE_MODULE(mem_cache, memory caching module, $mem_cache_objs, , no) APACHE_MODULE(example, example and demo module, , , no) APACHE_MODULE(case_filter, example uppercase conversion filter, , , no) APACHE_MODULE(case_filter_in, example uppercase conversion input filter, , , no) -- 2.50.1