[GeoNetwork-devel] Harvest nodes hanging Tomcat shutdown

Hello -

I'm using Tomcat6 on an Ubunut 9.10 server. I've ran into this problem both using Geonetwork 2.4.2 as well as a build from the SVN trunk. What we've noticed is that from time to time when we stop Tomcat by running its shutdown script, the java vm process hangs. In order to get Tomcat back up and running again we need to manually kill the process before starting a new one. I looked at a thread dump of the hung process and noticed a handful of non-daemon threads related, I'm guessing, to Geonetwork harvesting. The dump looks like:

"Thread-13" prio=10 tid=0x08749c00 nid=0x2a21 waiting on condition [0xb3276000]
    java.lang.Thread.State: TIMED_WAITING (sleeping)
     at java.lang.Thread.sleep(Native Method)
     at org.fao.geonet.kernel.harvest.harvester.Executor.await(Executor.java:104)
     at org.fao.geonet.kernel.harvest.harvester.Executor.run(Executor.java:82)

We've been experimenting with Geonetwork's harvest function against OGC services. We have ~150 harvest nodes, all set to only run once. Five or six of them failed because of some problem with the WMS or WFS service that was being harvested. After that it looked like there were 6 non-daemon threads waiting and keeping the jvm from shutting down. Our suspicion is that each hung thread represents a failed harvesting attempt, but we will have to do a little more testing to pin it down to that.

In the meantime I wonder if anyone else has noticed anything similar to this, or can offer any kind of solution?

Thanks,
Ryan