[
https://issues.apache.org/jira/browse/IGNITE-10244?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16688159#comment-16688159
]
Evgenii Zhuravlev commented on IGNITE-10244:
--------------------------------------------
Hi Yakov,
I've rewritten the test to use Junit. Looks like it's the regression after the
fix that David mentioned:
https://github.com/apache/ignite/commit/d2050237ee2b760d1c9cbc906b281790fd0976b4#diff-3fae20691c16a617d0c6158b0f61df3c.
Also, it's not reproducible with CONTINUOUS mode.
> 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
> Priority: Critical
> Attachments: IGNITE_10244_Test_for_metaspace_OOM.patch,
> 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.
> Also, we need to keep client and server in different JVM to make peer
> classloading be engaged.
> 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)