OK I found what makes the memory leak. In the project I work with I use a java Model class which is java Collection proxy/facade for a single transaction. Unfortunately it's not thread safe. In a few places I passed single instance of model into several threads.... Also I requested the instance with -> which makes new thread as well. I was surprised that -> makes trouble but after thinking that might be expected. Especially that internally the wrapper doesn't do simple mapping - it uses some iterator, etc. Anyway the machinery is fragile. It seems I need to rewrite code and replace all multithreading parts by something simpler.
If you want see the stacktrace just look at: https://github.com/jgrzebyta/triple-loader/issues/53 On 2 February 2018 at 11:16, Jacek Grzebyta <[email protected]> wrote: > > On 2 February 2018 at 08:34, Niels van Klaveren < > [email protected]> wrote: > >> +1 for Claypoole, it removed the needs of using agents or futures in 95% >> of the cases in my code. >> >> > Thanks a lot. I modify the code using claypoole. I imagine with-shutdown > will close the pool properly after finish all tasks so there is no need to > watch them? > > J > > -- You received this message because you are subscribed to the Google Groups "Clojure" group. To post to this group, send email to [email protected] Note that posts from new members are moderated - please be patient with your first post. To unsubscribe from this group, send email to [email protected] For more options, visit this group at http://groups.google.com/group/clojure?hl=en --- You received this message because you are subscribed to the Google Groups "Clojure" group. To unsubscribe from this group and stop receiving emails from it, send an email to [email protected]. For more options, visit https://groups.google.com/d/optout.
