Aleksey Plekhanov created IGNITE-12530: ------------------------------------------
Summary: Pages list caching can cause IgniteOOME when checkpoint is triggered by "too many dirty pages" reason Key: IGNITE-12530 URL: https://issues.apache.org/jira/browse/IGNITE-12530 Project: Ignite Issue Type: Bug Affects Versions: 2.8 Reporter: Aleksey Plekhanov Assignee: Aleksey Plekhanov When a checkpoint is triggered, we need some amount of page memory to store pages list on-heap cache. If data region is too small, a checkpoint is triggered by "too many dirty pages" reason and pages list cache is rather big, we can get IgniteOutOfMemoryException. Reproducer: {code:java} @Override protected IgniteConfiguration getConfiguration(String name) throws Exception { IgniteConfiguration cfg = super.getConfiguration(name); cfg.setDataStorageConfiguration(new DataStorageConfiguration() .setDefaultDataRegionConfiguration(new DataRegionConfiguration() .setPersistenceEnabled(true) .setMaxSize(50 * 1024 * 1024) )); return cfg; } @Test public void testUpdatesNotFittingIntoMemoryRegion() throws Exception { IgniteEx ignite = startGrid(0); ignite.cluster().active(true); ignite.getOrCreateCache(DEFAULT_CACHE_NAME); try (IgniteDataStreamer<Object, Object> streamer = ignite.dataStreamer(DEFAULT_CACHE_NAME)) { for (int i = 0; i < 100_000; i++) streamer.addData(i, new byte[i % 2048]); } } {code} -- This message was sent by Atlassian Jira (v8.3.4#803005)