Changes after review
This commit is contained in:
parent
2ea0bba9e9
commit
9691dd0325
1 changed files with 10 additions and 25 deletions
|
|
@ -21,7 +21,7 @@ object UnreachableNodeRejoinsClusterMultiJvmSpec extends MultiNodeConfig {
|
||||||
val allRoles = Seq(first, second, third, fourth)
|
val allRoles = Seq(first, second, third, fourth)
|
||||||
|
|
||||||
def allBut(role: RoleName, roles: Seq[RoleName] = allRoles): Seq[RoleName] = {
|
def allBut(role: RoleName, roles: Seq[RoleName] = allRoles): Seq[RoleName] = {
|
||||||
roles.filter(_ != role)
|
roles.filterNot(_ == role)
|
||||||
}
|
}
|
||||||
|
|
||||||
commonConfig(debugConfig(on = false).
|
commonConfig(debugConfig(on = false).
|
||||||
|
|
@ -45,12 +45,12 @@ class UnreachableNodeRejoinsClusterSpec
|
||||||
|
|
||||||
override def initialParticipants = allRoles.size
|
override def initialParticipants = allRoles.size
|
||||||
|
|
||||||
val sortedRoles = clusterSortedRoles(allRoles)
|
lazy val sortedRoles = clusterSortedRoles(allRoles)
|
||||||
val master = sortedRoles(0)
|
lazy val master = sortedRoles(0)
|
||||||
val victim = sortedRoles(1)
|
lazy val victim = sortedRoles(1)
|
||||||
|
|
||||||
var endBarrierNumber = 0
|
var endBarrierNumber = 0
|
||||||
def endBarrier = {
|
def endBarrier: Unit = {
|
||||||
endBarrierNumber += 1
|
endBarrierNumber += 1
|
||||||
testConductor.enter("after_" + endBarrierNumber)
|
testConductor.enter("after_" + endBarrierNumber)
|
||||||
}
|
}
|
||||||
|
|
@ -58,16 +58,7 @@ class UnreachableNodeRejoinsClusterSpec
|
||||||
"A cluster of " + allRoles.size + " members" must {
|
"A cluster of " + allRoles.size + " members" must {
|
||||||
|
|
||||||
"reach initial convergence" taggedAs LongRunningTest in {
|
"reach initial convergence" taggedAs LongRunningTest in {
|
||||||
runOn(master) {
|
awaitClusterUp(allRoles:_*)
|
||||||
cluster.self
|
|
||||||
awaitUpConvergence(numberOfMembers = allRoles.size)
|
|
||||||
}
|
|
||||||
|
|
||||||
runOn(allBut(master):_*) {
|
|
||||||
cluster.join(node(master).address)
|
|
||||||
awaitUpConvergence(numberOfMembers = allRoles.size)
|
|
||||||
}
|
|
||||||
|
|
||||||
endBarrier
|
endBarrier
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
@ -77,15 +68,12 @@ class UnreachableNodeRejoinsClusterSpec
|
||||||
allBut(victim).foreach { roleName =>
|
allBut(victim).foreach { roleName =>
|
||||||
testConductor.blackhole(victim, roleName, Direction.Both).await
|
testConductor.blackhole(victim, roleName, Direction.Both).await
|
||||||
}
|
}
|
||||||
testConductor.enter("unplug_victim")
|
|
||||||
}
|
}
|
||||||
|
|
||||||
runOn(allBut(first):_*) {
|
|
||||||
testConductor.enter("unplug_victim")
|
testConductor.enter("unplug_victim")
|
||||||
}
|
|
||||||
|
|
||||||
runOn(victim) {
|
runOn(victim) {
|
||||||
val otherAddresses = sortedRoles.filter(_ != victim).map(node(_).address)
|
val otherAddresses = sortedRoles.collect { case x if x != victim => node(x).address }
|
||||||
within(30 seconds) {
|
within(30 seconds) {
|
||||||
awaitCond(cluster.latestGossip.overview.unreachable.size == (allRoles.size - 1))
|
awaitCond(cluster.latestGossip.overview.unreachable.size == (allRoles.size - 1))
|
||||||
awaitCond(cluster.latestGossip.members.size == 1)
|
awaitCond(cluster.latestGossip.members.size == 1)
|
||||||
|
|
@ -135,12 +123,9 @@ class UnreachableNodeRejoinsClusterSpec
|
||||||
allBut(victim).foreach { roleName =>
|
allBut(victim).foreach { roleName =>
|
||||||
testConductor.passThrough(victim, roleName, Direction.Both).await
|
testConductor.passThrough(victim, roleName, Direction.Both).await
|
||||||
}
|
}
|
||||||
testConductor.enter("plug_in_victim")
|
|
||||||
}
|
}
|
||||||
|
|
||||||
runOn(allBut(first):_*) {
|
|
||||||
testConductor.enter("plug_in_victim")
|
testConductor.enter("plug_in_victim")
|
||||||
}
|
|
||||||
|
|
||||||
runOn(victim) {
|
runOn(victim) {
|
||||||
cluster.join(node(master).address)
|
cluster.join(node(master).address)
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue