We ran into an issue a few days ago with one of our applications where a thread has been making the same call over and over again for almost 2 days now (yes, this part is a bug and we are fixing it ). The question that one of our developers has though is this. Shouldn't that thread have been handled by the Websphere container and eventually been garbage collected or atleast timed-out? I think to give you a better idea of what our application is, here is the design... We have an MDB running that pulls a message from a queue. The MDB then turns around and makes a call to a stateless session bean. The stateless session bean then makes calls to non-bean code in the same jvm to perform our business logic. The code in the business logic is where our infinite loop is occurring. So, besides the fact that we need to fix that code, can somebody explain where the thread handling lays and why this thread is allowed to continue on?