Peter Johnson wrote:How did you install Eclipse on Ubuntu? Did you go through the package manager? I recommend that you don't do that, instead download Eclipse from the Eclipse web site (get the "Eclipse IDE for Java EE Developers" package) and install that. Installation is easy - simply unpack the file; I put mine at /opt/eclipse. Then add it to the start menu and you are ready to go.
Paul Clapham wrote:Yeah, I often have that problem that I forget to have Eclipse build the project before I deploy it. Drives you crazy when you're running a previous version and debugging based on the current version.
But anyway I have one suggestion: is it possible that something else is synchronizing on the Logger? Like maybe some logging code? I would suggest creating a new Object for your code to synchronize on, rather than using the Logger.
Paul Clapham wrote:That wouldn't work because you can't pass a type name as a parameter. You need an instance of ThreadPoolExecutor.DiscardPolicy in that position, don't you?
Rob Spoor wrote:Is this synchronized block executed inside another synchronized block or method? If so you could have deadlock if some other thread tries to get the locks in reverse order.
Vijitha Kumara wrote:Are there any warnings (if no errors) in the logs? Are you sure this is the code causes this issue? And as you said you created a thread pool within your code, are they properly terminated?