From: Francesco Chemolli Date: Thu, 1 Oct 2015 01:20:20 +0000 (-0700) Subject: Bug 4190: assertion 'hash_remove_link' from Auth::User::cacheCleanup X-Git-Tag: SQUID_4_0_1~21 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=d1c95ddadcd9ee36e53af7edd6099a8c078ba2cf;p=thirdparty%2Fsquid.git Bug 4190: assertion 'hash_remove_link' from Auth::User::cacheCleanup The hash_link based cache depends on raw-ptr key comparisons to store hash entries. This does not work at all well with SBuf as the key, since the backing MemBlob behind SBuf can change its memory location. * replace the implementation of User credentials caching with an STL based container class that can handle SBuf. * revert the global Auth::User cache design to per-scheme caches which get combined only when reporting statistics. * add a RunnersRegistry helper class to control Squid startup, reconfigure, and shutdown events activity in regards to the caches. * suppress useless cache garbage collection events when auth has no credentials to cleanup. * make the cache key dynamic at the caller codes discretion. --- d1c95ddadcd9ee36e53af7edd6099a8c078ba2cf