You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@ignite.apache.org by "Alexey Scherbakov (Jira)" <ji...@apache.org> on 2021/08/18 07:18:00 UTC
[jira] [Commented] (IGNITE-15313) JRaft doesn't properly free
resources after stop
[ https://issues.apache.org/jira/browse/IGNITE-15313?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17400854#comment-17400854 ]
Alexey Scherbakov commented on IGNITE-15313:
--------------------------------------------
[~maliev]
There is an issue with executor shutdown - it destroyed in the class which is not responsible for it's creation.
The same problem is here [1]
Can you check the code base and fix it ? Executors (and other resources) should be freed where they are created.
For IgniteRpcServer I think it's ok to move executor creation inside the class because it's not supposed to be reused.
[1] org.apache.ignite.raft.jraft.rpc.TestIgniteRpcServer#shutdown
> JRaft doesn't properly free resources after stop
> ------------------------------------------------
>
> Key: IGNITE-15313
> URL: https://issues.apache.org/jira/browse/IGNITE-15313
> Project: Ignite
> Issue Type: Bug
> Reporter: Mirza Aliev
> Assignee: Mirza Aliev
> Priority: Major
> Labels: ignite-3
> Fix For: 3.0.0-alpha3
>
> Attachments: image-2021-08-16-11-10-22-941.png
>
> Time Spent: 10m
> Remaining Estimate: 0h
>
> When you run {{testInstallLargeSnapshotWithThrottle}} several times, you can see, that the number of live threads are being increased during the test run. (see attached image from VisualVM)
> Threads analyzing has shown that {{JRaft-Request-Processor}} threads have been still alive after test ending.
> Solution:
> {{IgniteRpcServer#shutdown}} shoud be implemented and {{rpcExecutor}} must be terminated in the {{shutdown}} method
--
This message was sent by Atlassian Jira
(v8.3.4#803005)