You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@qpid.apache.org by "Keith Wall (JIRA)" <ji...@apache.org> on 2014/06/19 14:07:24 UTC

[jira] [Resolved] (QPID-5831) Unexpected internal exception when closing JE Replicated environment

     [ https://issues.apache.org/jira/browse/QPID-5831?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Keith Wall resolved QPID-5831.
------------------------------

       Resolution: Fixed
    Fix Version/s: 0.29

> 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: Keith Wall
>             Fix For: 0.29
>
>   Original Estimate: 8h
>  Remaining Estimate: 8h
>
> 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(...) methods. This means that potentially while the environment is closing, the DatabasePinger trys to open a DB but despite this failing it causes underying JE environment to think there is a database open and subsequently causes the close to fail.
> 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: dev-unsubscribe@qpid.apache.org
For additional commands, e-mail: dev-help@qpid.apache.org