X-Git-Url: https://git.opendaylight.org/gerrit/gitweb?a=blobdiff_plain;f=opendaylight%2Fmd-sal%2Fsal-distributed-datastore%2Fsrc%2Ftest%2Fjava%2Forg%2Fopendaylight%2Fcontroller%2Fcluster%2Fdatastore%2FShardTestKit.java;h=d08258a2a026ec890ddb736f1456c6682e2a3c5c;hb=b5167b9bc04f2792b275cfe0eac78c0f5eb9442d;hp=9a0e8f9e18416d104f059e316577d377e5c718f2;hpb=f9f6d8ed4b12e39386801f6b16b9485f5558336e;p=controller.git diff --git a/opendaylight/md-sal/sal-distributed-datastore/src/test/java/org/opendaylight/controller/cluster/datastore/ShardTestKit.java b/opendaylight/md-sal/sal-distributed-datastore/src/test/java/org/opendaylight/controller/cluster/datastore/ShardTestKit.java index 9a0e8f9e18..d08258a2a0 100644 --- a/opendaylight/md-sal/sal-distributed-datastore/src/test/java/org/opendaylight/controller/cluster/datastore/ShardTestKit.java +++ b/opendaylight/md-sal/sal-distributed-datastore/src/test/java/org/opendaylight/controller/cluster/datastore/ShardTestKit.java @@ -8,6 +8,7 @@ package org.opendaylight.controller.cluster.datastore; import java.util.concurrent.TimeUnit; +import java.util.concurrent.TimeoutException; import org.junit.Assert; import org.opendaylight.controller.cluster.raft.client.messages.FindLeader; import org.opendaylight.controller.cluster.raft.client.messages.FindLeaderReply; @@ -15,6 +16,7 @@ import com.google.common.util.concurrent.Uninterruptibles; import scala.concurrent.Await; import scala.concurrent.Future; import scala.concurrent.duration.Duration; +import scala.concurrent.duration.FiniteDuration; import akka.actor.ActorRef; import akka.actor.ActorSystem; import akka.pattern.Patterns; @@ -45,17 +47,21 @@ class ShardTestKit extends JavaTestKit { } protected void waitUntilLeader(ActorRef shard) { + FiniteDuration duration = Duration.create(100, TimeUnit.MILLISECONDS); for(int i = 0; i < 20 * 5; i++) { - Future future = Patterns.ask(shard, new FindLeader(), new Timeout(5, TimeUnit.SECONDS)); + Future future = Patterns.ask(shard, new FindLeader(), new Timeout(duration)); try { - FindLeaderReply resp = (FindLeaderReply)Await.result(future, Duration.create(5, TimeUnit.SECONDS)); + FindLeaderReply resp = (FindLeaderReply)Await.result(future, duration); if(resp.getLeaderActor() != null) { return; } - } catch (Exception e) { + } catch(TimeoutException e) { + } catch(Exception e) { + System.err.println("FindLeader threw ex"); e.printStackTrace(); } + Uninterruptibles.sleepUninterruptibly(50, TimeUnit.MILLISECONDS); }