Pavel Pereslegin created IGNITE-9128: ----------------------------------------
Summary: Continuous query handlers don't clean up after cache was stopped. Key: IGNITE-9128 URL: https://issues.apache.org/jira/browse/IGNITE-9128 Project: Ignite Issue Type: Bug Components: cache Affects Versions: 2.6 Reporter: Pavel Pereslegin Continuous query handlers don't clean up after the cache was stopped. Reproducer shows resource leak: {code:java} public class Reproducer extends GridCommonAbstractTest { /** */ private static final String CACHE1 = "cache1"; /** */ public void testCacheRecreate() throws Exception { IgniteEx node = startGrid(0); int hndCntr = 0; try { for (int i = 0; i < 100; i++) { IgniteCache<Integer, Integer> cache = node.createCache(CACHE1); cache.query(new ContinuousQuery<>().setLocalListener(evts -> {})); cache.put(1, 1); cache.destroy(); } for (Object locInfo : ((Map)U.field(node.context().continuous(), "locInfos")).values()) { GridContinuousHandler hnd = U.field(locInfo, "hnd"); if (CACHE1.equals(hnd.cacheName())) ++hndCntr; } assertEquals("No local handlers expected after cache was stopped.", 0, hndCntr); } finally { stopAllGrids(); } } } {code} Output: {noformat} junit.framework.AssertionFailedError: No local handlers expected after cache was stopped. Expected :0 Actual :100 {noformat} -- This message was sent by Atlassian JIRA (v7.6.3#76005)