Commit graph

9357 commits

Author SHA1 Message Date
Jonas Bonér
76f29a80d8 Fixed ugly log printout in ActorRefProvider.
Signed-off-by: Jonas Bonér <jonas@jonasboner.com>
2012-03-05 11:23:42 +01:00
Jonas Bonér
0ad00bd699 Cleaned up cluster daemons instantiation. Added address field to all cluster commands. Added more state transitions in Joining phase + tests to cover it.
Signed-off-by: Jonas Bonér <jonas@jonasboner.com>
2012-03-03 23:55:48 +01:00
Jonas Bonér
9e5f42c17d Added '/system/cluster' top-level supervisor for all cluster daemons.
Signed-off-by: Jonas Bonér <jonas@jonasboner.com>
2012-03-02 16:20:30 +01:00
Jonas Bonér
a3026b3316 Fixed misc issues after review.
Signed-off-by: Jonas Bonér <jonas@jonasboner.com>
2012-03-02 09:55:54 +01:00
Jonas Bonér
06ec519c7c Reverted two lines of code mistakenly pushed to early.
Signed-off-by: Jonas Bonér <jonas@jonasboner.com>
2012-02-29 11:34:11 +01:00
Jonas Bonér
14d7632771 Cleaned up failure detector fixing minor issues after review. Renamed internal classes in Node.
Signed-off-by: Jonas Bonér <jonas@jonasboner.com>
2012-02-29 10:02:00 +01:00
Jonas Bonér
e91af31fb9 Added FSM to the Node's ClusterCommandDaemon to manage the cluster command state as an FSM. Also added tests for all the FSM state changes.
Signed-off-by: Jonas Bonér <jonas@jonasboner.com>
2012-02-28 17:04:48 +01:00
Jonas Bonér
96ed8bdccf Added 'akka.cluster' package object with implicit conversion which creates an augmented 'ActorSystem' with a method 'def node: Node'.
Signed-off-by: Jonas Bonér <jonas@jonasboner.com>
2012-02-28 12:57:27 +01:00
Jonas Bonér
517981101f Added docs about how to enable 'long-running' and 'timing' tests.
Signed-off-by: Jonas Bonér <jonas@jonasboner.com>
2012-02-28 11:46:37 +01:00
Jonas Bonér
8069813cb9 Merge branch 'wip-cluster-membership-jboner' of github.com:jboner/akka into wip-cluster-membership-jboner
Signed-off-by: Jonas Bonér <jonas@jonasboner.com>
2012-02-28 11:46:13 +01:00
Jonas Bonér
da5a5d1316 Added ensime files to .gitignore. Plus fixed error from merge.
Signed-off-by: Jonas Bonér <jonas@jonasboner.com>
2012-02-28 11:39:10 +01:00
Jonas Bonér
a62755c5da Turned cluster Node into an Extension.
Signed-off-by: Jonas Bonér <jonas@jonasboner.com>
2012-02-28 11:15:53 +01:00
Jonas Bonér
e4b1d8609f Added support for 'deputy-nodes'.
* Added 'nr-of-deputy-nodes' config option
* Added fetching of current deputy node addresses
* Minor refactorings

Signed-off-by: Jonas Bonér <jonas@jonasboner.com>
2012-02-28 11:15:53 +01:00
Jonas Bonér
83c97d08da Added support for "leader election", the isLeader method and leader election tests. Also fixed bug in scrutinizer not maintaining the 'seen' map.
Signed-off-by: Jonas Bonér <jonas@jonasboner.com>
2012-02-28 11:15:53 +01:00
Jonas Bonér
3c2f5ab93c Renamed Gossiper to Node (and selfNode to vclockNode).
Signed-off-by: Jonas Bonér <jonas@jonasboner.com>
2012-02-28 11:15:53 +01:00
Jonas Bonér
2c67a6d50d Split up ClusterDaemon into ClusterGossipDaemon (routed with configurable N instances) and ClusterCommandDaemon (shortly to be an FSM). Removed ConnectionManager crap.
Signed-off-by: Jonas Bonér <jonas@jonasboner.com>
2012-02-28 11:15:53 +01:00
Jonas Bonér
0d022afa5e Created test tag LongRunningTest ("long-running") for excluding long running (cluster) tests from standard suite.
Signed-off-by: Jonas Bonér <jonas@jonasboner.com>
2012-02-28 11:15:53 +01:00
Jonas Bonér
0e6d272a8d Added support for checking for Cluster Convergence and completed support for MembershipChangeListener (including tests).
Signed-off-by: Jonas Bonér <jonas@jonasboner.com>
2012-02-28 11:15:53 +01:00
Jonas Bonér
cfd04bba3d Fixed remaining issues with gossip based failure detection and removal of unreachable nodes.
* Completed gossip based failure detection.
* Completed removal of unreachable nodes according to failure detector.
* Added passing tests.
* Misc other fixes, more logging, more comments.

Signed-off-by: Jonas Bonér <jonas@jonasboner.com>
2012-02-28 11:15:53 +01:00
Jonas Bonér
db1e1da7e7 Added testkit time ratio sensitive durations.
Signed-off-by: Jonas Bonér <jonas@jonasboner.com>
2012-02-28 11:15:53 +01:00
Jonas Bonér
c24485040d Removed printed stack trace from remote client/server errors. Just annoying when client hangs retrying and does not provide any real value since they are the same every time.
Signed-off-by: Jonas Bonér <jonas@jonasboner.com>
2012-02-28 11:15:53 +01:00
Jonas Bonér
bc70db4bb0 Fixed error in merge.
Signed-off-by: Jonas Bonér <jonas@jonasboner.com>
2012-02-28 11:14:26 +01:00
Jonas Bonér
84f886def1 Merged with master 2012-02-28 11:14:26 +01:00
Jonas Bonér
07defa71a4 Fixed bug in failure detector which also fixes bug in cluster scrutinize service. Also added test case for the bug.
Signed-off-by: Jonas Bonér <jonas@jonasboner.com>
2012-02-28 11:14:26 +01:00
Jonas Bonér
709c86b48d Disabling out erroneous cluster 'scrutinize' service until fixed and proper tests are written.
Signed-off-by: Jonas Bonér <jonas@jonasboner.com>
2012-02-28 11:14:26 +01:00
Jonas Bonér
b36a6987f6 Renamed NodeGossipingSpec to NodeMembershipSpec since it is testing consistency of the cluster node membership table
Signed-off-by: Jonas Bonér <jonas@jonasboner.com>
2012-02-28 11:14:25 +01:00
Jonas Bonér
a2785bc89e Finalized initial cluster membership and merging of vector clocks and gossips in case of concurrent cluster updates. Plus misc other fixes.
* Finalized initial cluster membership.
* Added merging of vector clocks and gossips in case of concurrent cluster updates.
* Added toString methods to all cluster protocol classes
* Fixed bugs in incrementation of vector clocks
* Added updates of 'seen' table for cluster convergence
* Revamped to use new VectorClock impl
* Refactored Gossip.State

Signed-off-by: Jonas Bonér <jonas@jonasboner.com>
2012-02-28 11:14:25 +01:00
Jonas Bonér
5f537a7d4c Rewrite of the VectorClock impl. Now with 'merge' support and slicker API. Also added more tests.
Signed-off-by: Jonas Bonér <jonas@jonasboner.com>
2012-02-28 11:14:25 +01:00
Jonas Bonér
9de7a2daae Added NodeGossipingSpec for testing gossiping and cluster membership.
Signed-off-by: Jonas Bonér <jonas@jonasboner.com>
2012-02-28 11:14:25 +01:00
Jonas Bonér
cb9ce7b663 Implemented 'receive(newGossip)' plus misc other changes and fixes.
* Implemented 'receive(newGossip)'
* Added GossipEnvelope
* Added MetaDataChangeListener
* Changed MembershipChangeListener API
* Changed most internal API to work with Address rather than Member
* Added builder style API to Gossip for changing it in an immutable way
* Moved 'self: Member' from Gossip to State

Signed-off-by: Jonas Bonér <jonas@jonasboner.com>
2012-02-28 11:14:25 +01:00
Jonas Bonér
9aa5b08f38 Added 'or' method to Versioned.
Signed-off-by: Jonas Bonér <jonas@jonasboner.com>
2012-02-28 11:14:25 +01:00
Jonas Bonér
ccba27a829 Refactored Gossip state and management. Introduced GossipOverview with convergence info, renamed some fields, added some new cluster commands.
Signed-off-by: Jonas Bonér <jonas@jonasboner.com>
2012-02-28 11:14:25 +01:00
Jonas Bonér
84f63db0ae Skips gossipping and cluster scrutinization if singleton cluster.
Signed-off-by: Jonas Bonér <jonas@jonasboner.com>
2012-02-28 11:14:25 +01:00
Jonas Bonér
379e9b9219 Switching node status to Up if singleton cluster. Added 'switchStatusTo' method. Updated the test. Profit.
Signed-off-by: Jonas Bonér <jonas@jonasboner.com>
2012-02-28 11:14:25 +01:00
Jonas Bonér
0413b44c98 Completed singleton and N-node cluster boot up and joining phase.
* Simplified node join phase.
* Added tests for cluster node startup and joining, both for singleton cluster and 2-node cluster.
* Fixed bug in cluster node address and cluster daemon lookup.
* Changed some APIs.
* Renamed 'contact-point' to 'node-to-join'.
* Minor refactorings.

Signed-off-by: Jonas Bonér <jonas@jonasboner.com>
2012-02-28 11:14:25 +01:00
Jonas Bonér
3b5c5e5f0f Removed cluster seed nodes, added 'join.contact-point', changed joining phase, added singleton cluster mode plus misc other changes.
Signed-off-by: Jonas Bonér <jonas@jonasboner.com>
2012-02-28 11:14:25 +01:00
Jonas Bonér
bf7c307424 Changes to cluster specification.
- Added section on single-node cluster.
- Changed seed nodes to deputy nodes.
- Seed nodes are no longer used as contact points only to break logical partitions.

Signed-off-by: Jonas Bonér <jonas@jonasboner.com>
2012-02-28 11:14:24 +01:00
Jonas Bonér
75c1b5717c Completed singleton and N-node cluster boot up and joining phase.
* Simplified node join phase.
* Added tests for cluster node startup and joining, both for singleton cluster and 2-node cluster.
* Fixed bug in cluster node address and cluster daemon lookup.
* Changed some APIs.
* Renamed 'contact-point' to 'node-to-join'.
* Minor refactorings.

Signed-off-by: Jonas Bonér <jonas@jonasboner.com>
2012-02-28 11:14:24 +01:00
Jonas Bonér
bb0e5536be Removed cluster seed nodes, added 'join.contact-point', changed joining phase, added singleton cluster mode plus misc other changes.
Signed-off-by: Jonas Bonér <jonas@jonasboner.com>
2012-02-28 11:14:24 +01:00
Jonas Bonér
5726481601 Changes to cluster specification.
- Added section on single-node cluster.
- Changed seed nodes to deputy nodes.
- Seed nodes are no longer used as contact points only to break logical partitions.

Signed-off-by: Jonas Bonér <jonas@jonasboner.com>
2012-02-28 11:13:31 +01:00
Roland
73170d1f4b Merge remote-tracking branch 'origin/master' into testing-2.9.2 2012-02-28 10:52:27 +01:00
Viktor Klang
db6bad7fc0 spelling 2012-02-28 10:32:14 +01:00
viktorklang
4162443565 Merge pull request #307 from jboner/wip-stash
Add stash and deque-based mailbox
2012-02-28 01:23:14 -08:00
Viktor Klang
8ea949857b Merge branch 'master' into wip-stash 2012-02-28 10:22:23 +01:00
Viktor Klang
a768b53299 Removing catch-block and clearing up the ScalaDoc 2012-02-28 10:21:01 +01:00
Roland
750e7158c0 switch to 2.9.1-1-RC1, which fixes the outstanding problems 2012-02-28 10:14:40 +01:00
Viktor Klang
0837948753 Merge branch 'master' of github.com:jboner/akka 2012-02-28 09:00:11 +01:00
viktorklang
b329bf3718 Merge pull request #356 from jboner/wip-ticket-1869
Capture early exception within Future.flow, fixes #1869
2012-02-27 23:59:55 -08:00
Derek Williams
b730c0b427 Capture early exception within Future.flow, fixes #1869 2012-02-27 20:01:08 -07:00
Viktor Klang
778bab40ea Removing dataflow docs for Java, as there is no such thing 2012-02-28 00:23:47 +01:00