Andrew MacBean created QPID-5831:
------------------------------------
Summary: Unexpected internal exception when closing JE Replicated
environment
Key: QPID-5831
URL: https://issues.apache.org/jira/browse/QPID-5831
Project: Qpid
Issue Type: Bug
Components: Java Broker
Affects Versions: 0.29
Reporter: Andrew MacBean
Assignee: Andrew MacBean
Intermittant test failure stating: "Problem closing handle testNodeName(1)
UNEXPECTED_EXCEPTION: Unexpected internal Exception, may have side effects.
Environment is invalid and must be closed" during test runs of
ReplicatedEnvironmentFacadeTest on both Jenkins and dev box.
Log Output:
Tests run: 26, Failures: 0, Errors: 2, Skipped: 0, Time elapsed: 73.315 sec <<<
FAILURE! - in
org.apache.qpid.server.store.berkeleydb.replication.ReplicatedEnvironmentFacadeTest
testReplicationGroupListenerHearsAboutExistingRemoteReplicationNodes(org.apache.qpid.server.store.berkeleydb.replication.ReplicatedEnvironmentFacadeTest)
Time elapsed: 3.176 sec <<< ERROR!
com.sleepycat.je.EnvironmentFailureException: (JE 5.0.97)
testNodeName(1):/tmp/bdb-1402928024476/testNodeName Problem closing handle
testNodeName(1) UNEXPECTED_EXCEPTION: Unexpected internal Exception, may have
side effects. Environment is invalid and must be closed.
at com.sleepycat.je.Environment.close(Environment.java:390)
at
com.sleepycat.je.rep.ReplicatedEnvironment.close(ReplicatedEnvironment.java:702)
at
org.apache.qpid.server.store.berkeleydb.replication.ReplicatedEnvironmentFacade.closeEnvironment(ReplicatedEnvironmentFacade.java:786)
at
org.apache.qpid.server.store.berkeleydb.replication.ReplicatedEnvironmentFacade.close(ReplicatedEnvironmentFacade.java:257)
at
org.apache.qpid.server.store.berkeleydb.replication.ReplicatedEnvironmentFacadeTest.tearDown(ReplicatedEnvironmentFacadeTest.java:87)
Issue happens due to race condition between ReplicatedEnvironmentFacade.close()
and DatabasePinger.pingDb(...) which means that while environment closing, JE
still things there is a database open (PINGDB), this is despite the open call
failing in the pingDb method.
Race seems unavoidable and probably the best course of action is make the close
smarter to swallow the associated JE EnvironmentFailureException.
--
This message was sent by Atlassian JIRA
(v6.2#6252)
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]