-
Bug
-
Resolution: Done
-
Critical
-
39.0.0.Final, 39.0.1.Final
-
None
-
Workaround Exists
-
-
---
-
---
WildFly already handles JVM shutdown gracefully so it should by default disable register_shutdown_hook which defaults to true in vanilla JGroups. We can only do this for loadable protocols.
This impl is problematic as it causes a memory leak.
Follow up on JGRP-2976:
FILE_PING registers a JVM shutdown hook in init() but doesn't keep a reference to it, so the hook cannot be removed when the protocol stops.
- The shutdown hook to remain registered even after the channel is closed
- Memory leaks when channels are repeatedly created and destroyed - Thread is anonymous class and keeps reference to the stack via up/down protocol references
- Errors when closing gracefully and then shutdown hook operates on closed resources
This also affects subclasses such as JDBC_PING, S3_PING, etc.
- clones
-
JGRP-2976 FILE_PING and its subclasses shutdown hook is not removed when protocol stops
-
- Resolved
-