#935: HTTPD can use large amounts of memory for its hash table of pages ------------------------------------+--------------------------------------- Reporter: rhaas | Owner: Type: defect | Status: new Priority: minor | Milestone: Component: EinsteinToolkit thorn | Version: Resolution: | Keywords: HTTPD ------------------------------------+---------------------------------------
Comment (by rhaas):
Attached please find two patches that make HTTPD use the STL map container. The first one (use_cxx_map) turn the affected files int C++ source code and directly uses the map template class. The changes to the source files are a ugly since while HTTPD is decent C code it is rather ugly C++ code. The second one leaves the files as C files but introduces a small set of wrapper functions that map std::map's interface onto the C functions that HTTPD used. The changes to the source are essentially a search and replace of util_Hash by httpd_Map (plus removal of superfluous arguments).
Either patch is ok with me though I wrote the second (wrapping) one after having finished the first one and realizing how awkward it was and thus have a preference for the second one.
There's no test for HTTPD but running a quick test run on my workstation, both seem to not break the code.
Ok to to apply (which patch)?