Bug -3221 : Adding a new DataStoreUnavailableException for external applications. 59/21259/2
authorHarman Singh <harmasin@cisco.com>
Mon, 18 May 2015 21:51:46 +0000 (14:51 -0700)
committerGerrit Code Review <gerrit@opendaylight.org>
Wed, 27 May 2015 22:51:27 +0000 (22:51 +0000)
commit163df4f862bcafd625b9d02d367243bbcf43aa04
tree4eaf8aa2fcee63d578700e08d7d60526257ad355
parent0aedb207da64e63900e2dbc85ba2a030ea7800e4
Bug -3221 : Adding a new DataStoreUnavailableException for external applications.
If cluster member, which is a leader of one or multiple shards becomes unavailable,
Shard re-election happens after certain time period and anyone tries to access datastore,
receives akka.timeout exception. No application can act upon such exception.

DataStoreUnavailableException will help external applications to retry if they see this exception.

Change-Id: Iceb10580bbe73ae91dc8abb4bc6a183cb4fad6f8
Signed-off-by: Harman Singh <harmasin@cisco.com>
(cherry picked from commit 6823ef1fd8f0a2f7ea39a2e85276a73e5de0bf72)
opendaylight/md-sal/sal-common-api/src/main/java/org/opendaylight/controller/md/sal/common/api/data/DataStoreUnavailableException.java [new file with mode: 0644]
opendaylight/md-sal/sal-distributed-datastore/src/main/java/org/opendaylight/controller/cluster/datastore/ConcurrentDOMDataBroker.java
opendaylight/md-sal/sal-distributed-datastore/src/main/java/org/opendaylight/controller/cluster/datastore/NoOpTransactionContext.java
opendaylight/md-sal/sal-distributed-datastore/src/main/java/org/opendaylight/controller/cluster/datastore/ShardManager.java
opendaylight/md-sal/sal-distributed-datastore/src/test/java/org/opendaylight/controller/cluster/datastore/ConcurrentDOMDataBrokerTest.java
opendaylight/md-sal/sal-distributed-datastore/src/test/java/org/opendaylight/controller/cluster/datastore/ShardManagerTest.java
opendaylight/md-sal/sal-distributed-datastore/src/test/java/org/opendaylight/controller/cluster/datastore/utils/ActorContextTest.java
opendaylight/md-sal/sal-distributed-datastore/src/test/java/org/opendaylight/controller/cluster/datastore/utils/MockClusterWrapper.java