This is the clone of https://issues.folio.org/browse/CIRC-969 to be back-ported in Q2 2020
As Taras_Spashchenko stated in
CIRC-961 comments, "the usage of PubSubClientUtils outside of the Vert.x context in mod-circulation that causes the creation of new Vert.x instances again and again", which causes memory leak.
Possible solution: use thenCompose and thenApply methods instead of thenComposeAsync and thenApplyAsync for sending event messages.
Steps to Reproduce:
- Trigger events that cause sending of event messages
- Check module's memory for VertxImpl objects
The number of VertxImpl objects is not increasing
The number of VertxImpl objects increases after every event