Possible hang with slave instances of the ESB when using Oracle JDBC lock.
If we start up the master and slave as normal, then try to stop the slave, it does not release its attempted JDBC lock, and therefore hangs during shutdown. If we then stop the master, the slave throws an error and finally exits.
It's not a major problem, as (1) it's not something we would need to do often, (2) it does not affect the master, and (3) we can work around it by forcefully killing the slave. However it looks ugly, and forceful shutdowns are never a good thing, so if there's a quick fix you can do before tonight's build, please try.
Reproducing the problem is fairly easy, once you have Oracle installed...
- install two instances (master and slave) of FUSE ESB onto one host
- edit the slave's configuration as follows:
- replace all occurrances of "61616" with "61617"
- replace all occurrances of "default" with "slave"
- add JDBC lock configuration to both instances:
(exits as usual)
- the slave now exits, with the following exception:
- the slave's log file shows it shutting down and unregistering various bundles, then hanging until the master exits, at which point it prints just two additional lines of logging before exiting:
20-Jan-2010 10:20:03 org.apache.felix.karaf.main.OracleJDBCLock setUpdateCursor
SEVERE: Cleaning up DB connection.