If the server is used in a J2EE environment (e.g. OpenAM) then we need to be aware of leaking threads and thread locals, since these will prevent hot redeployment. In particular, all APIs which need to use additional threads should expose a means control the thread life-cycle, e.g. by using a ThreadFactory, Executor, etc.
In the server there are a couple of potential leaks:
- thread local org.opends.server.backends.jeb.ID2Entry.EntryCoder
- Idle time limit thread
- Monitor provider state updater