Hi devs, Recently we were plagued with OOM errors and as a result we decided to limit the number of testing forks/disable fork reuse for almost all tests. Currently AFAIK each JVM fork has assigned 4GB of memory (2GB heap and 2GB off heap) and we are running two forks, on a machine that has 7GB of RAM in total.
What I would like to discuss is to introduce test categories, for example small and large tests, where small tests would require less memory and thus we would be able to increase the number of forks for them. We could probably achieve this differentiation via different means (annotations, test naming conventions, etc), but I would propose to just re-use our pre-existing convention of suffixing more "unity" testing classes with `Test` suffix, while more "integration like" classes with `ITCase` suffix. We could keep running `ITCase`'s with two forks 4GB memory each, while for example unit tests we could run with four forks 2GB memory each. What do you think? Best, Piotrek