You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@hc.apache.org by "Pascal Lacombe (Jira)" <ji...@apache.org> on 2023/07/20 18:34:00 UTC

[jira] [Created] (HTTPCLIENT-2284) BasicHttpCacheStorage leaking variant keys in root response's variantMap

Pascal Lacombe created HTTPCLIENT-2284:
------------------------------------------

             Summary: BasicHttpCacheStorage leaking variant keys in root response's variantMap
                 Key: HTTPCLIENT-2284
                 URL: https://issues.apache.org/jira/browse/HTTPCLIENT-2284
             Project: HttpComponents HttpClient
          Issue Type: Bug
          Components: HttpCache
    Affects Versions: 4.5.13
            Reporter: Pascal Lacombe


BasicHttpCacheStorage has a memory leak in the root response's variantMap. When a variant cached entry is evicted due to CacheMap being too large, the root cache entry does not remove this variant key in its variantMap. This is a memory leak that can grow the variantMap indefinitely, or until the root entry get's evicted itself.

Simplified testcase:
 # A request is being sent from a client that contains a header (x-my-variant) with a hash of the current timestamp.
 # The server responds 200, with a cacheable response. The response Vary's on "x-my-variant"
 # These requests repeat, causing:the root CacheEntry to be kept in CacheMap, 



--
This message was sent by Atlassian Jira
(v8.20.10#820010)

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@hc.apache.org
For additional commands, e-mail: dev-help@hc.apache.org