1

A little background

I am working on a project which uses RAD and Websphere . We also use JBOSS Rules for validation. I have a flow in the application which loads the JBOSS Rules from the database. The rules are compiled and .drl is generated and stored in the database. We use workmanager (multithreading)for loading the rules.

When I try to load the rules to memory from application it works fine with start mode in RAD. But gives me hung threads while in debug mode.

the following is given by thread dump of most of the threads
ThreadMonitor W   WSVR0605W: Thread "WorkManager.WorkManager : 11" (0000002b) has been active for 726657 milliseconds and may be hung.  There is/are 11 thread(s) in total in the server that may be hung.

    at java.lang.ClassLoader.loadClass(ClassLoader.java:609)
        at java.lang.Class.forNameImpl(Native Method)
        at java.lang.Class.forName(Class.java:169)
        at org.drools.rule.CompositeClassLoader.loadClass(CompositeClassLoader.java:61)

The above place is where all the threads are hung

But one of the threads is hung at Thread.sleep(10000);

[3/6/12 15:00:42:192 EST] 0000000f ThreadMonitor W   WSVR0605W: Thread "WebContainer : 0" (0000001c) has been active for 753174 milliseconds and may be hung.  There is/are 13 thread(s) in total in the server that may be hung.
    at java.lang.Thread.sleep(Native Method)
    at java.lang.Thread.sleep(Thread.java:850)

Question

If it was something releated to memory or dynamic class generation it should have been there in start mode of RAD also?

Things that I tried Increase the heap size and -XX:MaxPermsize as I see it is stuck in some class loading. All of the these are not really logical as this does not happen in start mode. But I was just trying. It is working for some other developers .I compared the my server.xml with them ,but no luck. Is there anything that is different with debug mode of rad? Any suggestion would be appreciated?

Sherin Syriac
  • 447
  • 6
  • 13
  • One suggestion - RAD when working with multiple threads waits for the other threads to complete if they are nested threads. If the inner thread takes much time, the outer thread throws a time out and the process gets hung. So it is better to start the server in start mode instead of Debug mode while performing dataload or publishing etc – arvind_cool May 01 '12 at 03:42
  • The funny thing about it is that some of my colleagues are able to load same JBOSS rules in debug mode within 4mins without any issues. So I believe it is some issue with my setup that is causing the issue. And I have run into many situations where I need the JBOSS rules to be loaded in debug mode. – Sherin Syriac May 04 '12 at 14:43

0 Answers0