Commit graph

568 commits

Author SHA1 Message Date
Jonas Bonér
d38aa2ed9c Added ScalaDoc about the Leaving, Exiting and Removed states 2012-06-19 20:11:54 +02:00
Björn Antonsson
14184e99e9 Changed tests to use enterBarrier 2012-06-19 17:10:03 +02:00
Björn Antonsson
4a56f195fc Merge branch 'master' into wip-2218-test-conductor-barrier-timeouts 2012-06-19 15:11:50 +02:00
Jonas Bonér
9011c310e1 Minor cleanup.
Signed-off-by: Jonas Bonér <jonas@jonasboner.com>
2012-06-19 14:27:12 +02:00
Jonas Bonér
fd54a93135 Added ScalaDoc on 'def status: MemberStatus' describing the MemberStatus.Removed semantics.
Signed-off-by: Jonas Bonér <jonas@jonasboner.com>
2012-06-19 14:21:56 +02:00
Jonas Bonér
4f8522dc63 Merged in the old MemberSpec with the new MemberOrderingSpec.
Signed-off-by: Jonas Bonér <jonas@jonasboner.com>
2012-06-19 14:21:11 +02:00
Jonas Bonér
c51c06aaf4 Merged with master 2012-06-18 18:39:28 +02:00
Jonas Bonér
6e60d51263 Reenabled LeaderLeavingSpec and added successful leader-handoff assertion
Signed-off-by: Jonas Bonér <jonas@jonasboner.com>
2012-06-18 15:26:23 +02:00
Jonas Bonér
6b02c48be9 Added spec testing the Ordering[Address] and Ordering[Member].
Signed-off-by: Jonas Bonér <jonas@jonasboner.com>
2012-06-18 15:25:46 +02:00
Jonas Bonér
49586bd01d Change Member ordering so it sorts members by host and port with the exception that it puts all members that are in MemberStatus.EXITING last.
To fix LEADER leaving and allow handoff to new leader before moving old leader from EXITING -> REMOVED.

Signed-off-by: Jonas Bonér <jonas@jonasboner.com>
2012-06-18 15:25:17 +02:00
Patrik Nordwall
67a52ea5e1 Shorter gossip interval, until we optimize join, see #2239 2012-06-18 14:10:57 +02:00
Jonas Bonér
8b6652a794 Fixed all issues from review. In particular fully separated state transformation and preparation for side-effecting processing.
Signed-off-by: Jonas Bonér <jonas@jonasboner.com>
2012-06-18 13:53:49 +02:00
Jonas Bonér
c0dff0050b Minor edit .
Signed-off-by: Jonas Bonér <jonas@jonasboner.com>
2012-06-18 13:52:06 +02:00
Jonas Bonér
e362c2f488 Cleaned up LeaderLeavingSpec.
…and turned it off until redesign of leader leaving is implement.

Signed-off-by: Jonas Bonér <jonas@jonasboner.com>
2012-06-18 13:51:54 +02:00
Jonas Bonér
6d96d04234 Merge branch 'master' into wip-2162-redesign-of-management-of-the-exiting-to-removed-life-cycle-jboner 2012-06-16 00:18:26 +02:00
Jonas Bonér
07dadc40cb Added spec testing telling a LEADER to LEAVE (and transition from UP -> LEAVING -> EXITING -> REMOVED).
Signed-off-by: Jonas Bonér <jonas@jonasboner.com>
2012-06-16 00:04:37 +02:00
Jonas Bonér
486853b7bd Removed MembershipChangeListenerRemovedSpec.
Since there is no listener being called for the transition to REMOVED.

Signed-off-by: Jonas Bonér <jonas@jonasboner.com>
2012-06-16 00:03:13 +02:00
Jonas Bonér
616aaacbe8 Changed logging in FD from INFO to DEBUG.
Signed-off-by: Jonas Bonér <jonas@jonasboner.com>
2012-06-16 00:02:20 +02:00
Jonas Bonér
2822ba5246 Fixed and enabled tests that test LEAVING -> EXITING -> REMOVED.
Signed-off-by: Jonas Bonér <jonas@jonasboner.com>
2012-06-16 00:01:58 +02:00
Jonas Bonér
469fcd8305 Redesign of life-cycle management of EXITING -> REMOVED. Fixes #2177.
- Removed REMOVED as explicit valid member state
- Implemented leader moving either itself or other member from EXITING -> REMOVED
- Added sending Remove message for removed node to shut down itself
- Fixed a few bugs
- Removed 'remove' from Cluster and JMX interface
- Added bunch of ScalaDoc
- Added isRunning method

Signed-off-by: Jonas Bonér <jonas@jonasboner.com>
2012-06-16 00:00:19 +02:00
Patrik Nordwall
3945490aa6 Minor cleanup based on feedback, see #2223 2012-06-15 17:12:09 +02:00
Björn Antonsson
fd42c3d49a Allow barrier timeouts to be shortened and other review fixes 2012-06-15 14:39:47 +02:00
Patrik Nordwall
51a38f318a Real SunnyWeather 2012-06-15 13:44:37 +02:00
Patrik Nordwall
309b460367 Test state transitions and actions step-by-step, see #2223 2012-06-15 13:35:52 +02:00
Patrik Nordwall
11c85b84b9 Fail fast in cluster tests if prevous step failed 2012-06-15 13:35:52 +02:00
Patrik Nordwall
08c47591c0 Use max of periodic-tasks-initial-delay and the interval 2012-06-15 13:35:52 +02:00
Patrik Nordwall
f7a01505ba Correction of gossip merge when joining, see #2204
The problem:
* Node that is Up joins a cluster and becomes Joining in that cluster
* The joining node receives gossip, which results in conflict,
  merge results in Up
* It became Up in the new cluster without passing the ordinary leader
  action to move it to Up

The solution:
* Change priority order of Up and Joining so that Joining is used when
  merging
2012-06-15 13:35:52 +02:00
Jonas Bonér
f74c96b424 Merged with master 2012-06-14 16:21:03 +02:00
Jonas Bonér
cb0cfac6c7 Merged with master 2012-06-14 16:13:53 +02:00
Björn Antonsson
54717cd178 Merge branch 'master' into wip-2218-test-conductor-barrier-timeouts
Conflicts:
	akka-cluster/src/multi-jvm/scala/akka/cluster/MembershipChangeListenerJoinSpec.scala
2012-06-14 08:56:40 +02:00
Patrik Nordwall
c5164085b2 Merge branch 'master' into wip-2077-gossip-merge-patriknw
Conflicts:
	akka-cluster/src/main/scala/akka/cluster/Cluster.scala
2012-06-13 17:04:09 +02:00
Patrik Nordwall
391e633329 Improve docs based on feedback, see #2077 2012-06-13 16:54:21 +02:00
Patrik Nordwall
bd7bdff269 Improve debug log message of no convergence, see #2222 2012-06-13 16:15:16 +02:00
Patrik Nordwall
82645ca3c9 Additional check of expectedAddresses in listener tests 2012-06-13 16:06:34 +02:00
Patrik Nordwall
afbeb3e5f9 import MemberStatus._ 2012-06-13 15:33:38 +02:00
Patrik Nordwall
5b89d25c37 Add invariant assertions to Gossip, see #2077
* Add doc about how members are "moved"
2012-06-13 15:23:45 +02:00
Björn Antonsson
5714d8327f Make multi node tests use the within() aware barrier 2012-06-13 14:55:33 +02:00
Patrik Nordwall
f3d9f9c4e8 Merge seen table by starting with empty seen after merge, see #2077 2012-06-13 11:19:06 +02:00
Patrik Nordwall
ff5c99a80d Minor cleanup, based on review comments, see #2077 2012-06-13 11:04:27 +02:00
Patrik Nordwall
42c5281d5a Correct? implementation of merge and other actions, see #2077
* Merge unreachable using  highestPriorityOf
* Avoid merge result in node existing in both members and unreachable
* Fix joining only allowed when !alreadyMember && !isUnreachable (non Down)
* Fix filter bug of unreachable in downing and leaderActions
* Minor cleanups
2012-06-13 09:37:47 +02:00
Patrik Nordwall
92cab53b1e Rename + operator of VectorClock and Versioned to :+
* + is kind of reserved for string concatination
2012-06-12 16:16:44 +02:00
Patrik Nordwall
de1ad30217 Fix false convergence when singleton cluster, see #2222
* All members must be in seen table for convergence
* Added extra debug logging due to convergence issues
* Enabled test of convergence for node joining singleton
  cluster
2012-06-12 16:16:44 +02:00
Patrik Nordwall
40d9b27e73 Info log about dedicated scheduler, and refactoring, see #2214
* Refactoring with wrapping of Scheduler according to @viktorklang's wish
2012-06-12 14:16:30 +02:00
Patrik Nordwall
7b6ae2f5c9 Use nanoTime in FixedRateTask, see #2214
* Rewrote test to use latch and assert rate instead
2012-06-12 13:37:21 +02:00
Patrik Nordwall
b27bae6554 Use dedicated cluster scheduler only when default scheduler resolution isn't good enough, see #2214
* Config properties for scheduler
* Commented shutdown considerations
2012-06-12 13:34:59 +02:00
Patrik Nordwall
a7d2be10eb Merge branch 'master' into wip-2214-heartbeats-patriknw
Conflicts:
	akka-cluster/src/main/scala/akka/cluster/AccrualFailureDetector.scala
	akka-cluster/src/main/scala/akka/cluster/Cluster.scala
2012-06-11 22:27:08 +02:00
Patrik Nordwall
34c9e49ee0 Schedule cluster tasks with more accurate, see #2114
* Use scheduler with more accurate settings
* New FixedRateTask that compensates for inaccuracy
2012-06-11 22:20:44 +02:00
Patrik Nordwall
d957c68639 Incorporate feedback from review, see #2214 2012-06-11 21:12:57 +02:00
Viktor Klang
36b040cfab Unbreaking master 2012-06-11 18:11:02 +02:00
Jonas Bonér
c0e2362daa Merge branch 'master' into wip-failure-detector-puppet-jboner
Signed-off-by: Jonas Bonér <jonas@jonasboner.com>
2012-06-11 16:53:55 +02:00