Mikhail Cherkasov created IGNITE-10244: ------------------------------------------
Summary: Peer classloading creates a new class on each call for nested compute tasks Key: IGNITE-10244 URL: https://issues.apache.org/jira/browse/IGNITE-10244 Project: Ignite Issue Type: Bug Affects Versions: 2.7 Reporter: Mikhail Cherkasov Attachments: JustServer.java, MyCall.java, NestedCall.java, Test.java If a compute task has embedded compute tasks, embeded task will be loaded by peer class loading as a new class on each call, which leads to metadata OOM. Reproducer is attached. Make sure that you run ignite nodes with -XX:MaxMetaspaceSize=64m , by default JVM doesn't limit meta space size. So what happens: # client sends compute taks MyCall to server_1 # server_1 execute MyCall and MyCall sends NestedCall task to server_2 # server_2 loads NestedCall as a new class and execute it # repeat it's again and on second iteration server_2 will load NestedCall as new class again, after few iterations this will lead to OOM -- This message was sent by Atlassian JIRA (v7.6.3#76005)