Hi, Wanted to mention a scenario when cache misconfiguration can lead to a hard-to-detect memory leak. More details are available in this Jira [1], but the short story is that when you are using JCache/EhCache, make sure that *all* the cache groups used in queries are *explicitly* configured with desired size limits in ehcache.xml [2], including an entry for a no-cache group scenario that corresponds to "cayenne.default.cache" cache name.
Andrus [1] https://issues.apache.org/jira/browse/CAY-2642 [2] <config xmlns:xsi='http://www.w3.org/2001/XMLSchema-instance' xmlns='http://www.ehcache.org/v3' xsi:schemaLocation=" http://www.ehcache.org/v3 http://www.ehcache.org/schema/ehcache-core-3.0.xsd"> <!-- Used by Cayenne for queries without explicit cache groups. --> <cache alias="cayenne.default.cache"> <expiry> <ttl unit="minutes">1</ttl> </expiry> <heap>100</heap> </cache> <cache alias="my-cache-group"> <expiry> <ttl unit="minutes">1</ttl> </expiry> <heap>10</heap> </cache> </config>