I can see from the docs for IgniteConfiguration that some properties auto-size based on visible OS resources. In docker, "visible" ends up being the host values, which will exceed any CPU/memory limits applied via cgroups to the container.
I see on IgniteConfiguration.DataStorageConfiguration.DataRegionConfiguration the properties initialSize and maxSize, which I've set substantially lower than the container memory allocation, which helped avoid being killed due to exceeding memory limits, but I'm still seeing the oom reaper kick in occasionally. Am I missing some other configuration value that controls off-heap memory use? I've set the DataRegionConfiguration initial/max size to 16GB, the JVM heap to 8GB, and the container is currently allocated 32GB, which seems more than enough for OS and other ancillary uses. In case relevant, I've enabled persistence, and set the relevant CacheConfiguration to partitioned mode with backups=2 and writeSynchronizationMode=full_sync. Running Ignite 2.5.0, Oracle JDK 8u172. Thanks! Andrew.
