Commit graph

447 commits

Author SHA1 Message Date
Roland Kuhn
4dd5fe3257 Merge pull request #2047 from drexin/wip-3858-make-case-classes-final-drexin
=all #3858 Make case classes final
2014-03-11 16:06:31 +01:00
dario.rexin
826cc74de3 !tes #2971 Make TestKit.remaining throw AssertionError outside of within 2014-03-11 11:23:12 +01:00
dario.rexin
2cbad298d6 =all #3858 Make case classes final 2014-03-07 13:20:01 +01:00
Patrik Nordwall
2548ebd727 =clu #3871 Harden SurviveNetworkInstabilitySpec
* The problem was that the unreachability observed by second node
  was leaking from previous test step and when adding the blackhole,
  it could not heal and that caused the leader to not be able to remove
  the downed second node because some other nodes were still marked as
  unreachable.
* The first node was not included in the the awaitAllReachable check
  in the previous step, and the order of awaitAllReachable and
  awaitMembersUp was wrong.
* Included the awaitAllReachable check in assertCanTalk.
* Changed to two-way blackhole and using barrier instead of scheduled
  event to trigger the exceptions when the blackhole was in place
* We should investigate if unreachable observations from downed node
  can be excluded in the convergence check. Created separate ticket for
  that 3875.
2014-02-19 11:42:16 +01:00
Patrik Nordwall
f1edf78979 Merge pull request #1980 from vossad01/wip-3838-SetCopyrightYear2014-vossad01
Update Copyright to 2014, see #3838
2014-02-06 11:14:38 +01:00
Adam Voss
cce29dfa51 Changes all occurances of Typesafe copyright to extend to 2014. 2014-02-04 21:20:09 -06:00
Patrik Nordwall
186f2ae5e1 =act #3853 Fix consistent hashing group inconsistency
* It did not use the toString (including full address of destination) of the
  node entries, instead it used the hashCode which always included the self
  address
* This was a regression in 2.3, it is correct in 2.2.3
2014-02-02 11:16:47 +01:00
Patrik Nordwall
ba3587de64 =clu #3826 Harden cluster.StressSpec
* The Identify message didn't get through to the master, which
  was stopping at the same time, and it didn't got redirected to
  deadletters, i.e. the "termination race"
2014-01-20 11:01:10 +01:00
Patrik Nordwall
a11fb1dafc =act #3572 Add parens to sender
* because it is not referentially transparent; normally we reserved parens for
  side-effecting code but given how people thoughtlessly close over it we revised
  that that decision for sender
* caller can still omit parens
2014-01-17 18:21:14 +01:00
Endre Sándor Varga
cf58402dd9 !rem #3765: Change the defaults for remoting
- removed retry-window and related settings
 - removed gate-invalid-addresses-for
 - gate is now mandatory
 - remoting has a dedicated dispatcher by default
 - updated tests to work with changed timings
 - added doc section for association lifecycle
2014-01-17 11:29:22 +01:00
Patrik Nordwall
e441d1b29b !pro #3809 Update to config 1.2.0
* Changed all duration reads to use implicit conversion
  and the new getDuration to reduce boilerplate
2014-01-15 19:26:47 +01:00
Björn Antonsson
003609c9c5 =pro #3759 Changed to using non-deprecated ScalaTest Matchers 2013-12-18 11:32:51 +01:00
Björn Antonsson
00a268b6b3 =pro #3753 Override dependency versions from command line 2013-12-03 16:47:10 +01:00
Patrik Nordwall
eaad7ecf7e !clu #3683 Change cluster heartbeat to req/rsp protocol
* The previous one-way hearbeat was elegant, but comlicated to
  understand and without giving much extra value compared to this approach.
* The previous one-way heartbeat have some kind of bug when joining
  several (10-20) nodes at approximately the same time (but not exactly
  the same time) with a false failure detection triggered by the extra heartbeat,
  which would not heal.
* This ping-pong approach will increase network traffic slightly, but heartbeat
  messages are small and each node is limited to monitor (default) 5 peers.
2013-11-15 08:18:52 +01:00
Patrik Nordwall
402674ce10 +clu #3627 Cluster router group with multiple paths per node
* Use the ordinary routees.paths config property instead of
  cluster.routees-path
* Backwards compatible in deprecation phase
2013-10-16 11:44:00 +02:00
Patrik Nordwall
ebadd567b2 !act,rem,clu #3549 Simplify and enhance routers
* Separate routing logic, to be usable stand alone, e.g. in actors
* Simplify RouterConfig, only a factory
* Move reading of config from Deployer to the RouterConfig
* Distiction between Pool and Group router types
* Remove usage of actorFor, use ActorSelection
* Management messages to add and remove routees
* Simplify the internals of RoutedActorCell & co
* Move resize specific code to separate RoutedActorCell subclass
* Change resizer api to only return capacity change
* Resizer only allowed together with Pool
* Re-implement all routers, and keep old api during deprecation phase
* Replace ClusterRouterConfig, deprecation
* Rewrite documentation
* Migration guide
* Also includes related ticket:
  +act #3087 Create nicer Props factories for RouterConfig
2013-10-16 09:27:13 +02:00
Patrik Nordwall
c449f5afff +clu #3636 Revert join to uninitialized
* Revert the change introduced in
  https://github.com/akka/akka/pull/1738/files
* The cleanup/improvements aside of the actual
  feature is not reverted by this patch
* Clarify the documentation
2013-10-14 17:53:07 +02:00
Patrik Nordwall
d3f295e5fe Merge pull request #1738 from akka/wip-3612-join-self-patriknw
+clu #3612 Allow join to uninitialized node
2013-09-29 22:41:15 -07:00
Patrik Nordwall
cb42bf0785 +clu #3612 Allow join to uninitialized node
* join to self not needed when performing manual joining
2013-09-27 14:40:09 +02:00
Patrik Nordwall
d5b25cbbc6 !act #3583 Timer based auto-down
* Replace (deprecate) akka.cluster.auto-down config setting with
  akka.cluster.auto-down-unreachable-after
* AutoDown actor that keeps track of unreachable members
  and performs down from the leader node when they have been
  unreachable for the specified duration
* Migration guide
2013-09-27 14:32:03 +02:00
Patrik Nordwall
0826689c47 =clu #3603 Handle removed member in Gossip and Reachability merge
* It was a regression introduced in dc9fe4f
* Two problems:
  1) Gossip merge could pop back removed member (was previously
     covered by the filter of unreachable)
  2) Reachability merge didn't handle all cases for removed member,
     i.e. when node not in allowed set
2013-09-13 17:18:27 +02:00
Patrik Nordwall
dc9fe4f19c !clu #2307 Allow transition from unreachable to reachable
* Replace unreachable Set with Reachability table
* Unreachable members stay in member Set
* Downing a live member was moved it to the unreachable Set,
  and then removed from there by the leader. That will not
  work when flipping back to reachable, so a Down member must
  be detected as unreachable before beeing removed. Similar
  to Exiting. Member shuts down itself if it sees itself as
  Down.
* Flip back to reachable when failure detector monitors it as
  available again
* ReachableMember event
* Can't ignore gossip from aggregated unreachable (see SurviveNetworkInstabilitySpec)
* Make use of ReachableMember event in cluster router
* End heartbeat when acknowledged, EndHeartbeatAck
* Remove nr-of-end-heartbeats from conf
* Full reachability info in JMX cluster status
* Don't use interval after unreachable for AccrualFailureDetector history
* Add QuarantinedEvent to remoting, used for Reachability.Terminated
* Prune reachability table when all reachable
* Update documentation
* Performance testing and optimizations
2013-09-11 13:10:29 +02:00
Endre Sándor Varga
b566e9393d =act, rem, clu #3521: make serialize-messages work with core modules 2013-08-27 11:05:54 +02:00
Patrik Nordwall
f34909c490 unhandled msg in cluster StressSpec 2013-06-25 22:10:05 +02:00
Endre Sándor Varga
bf3180c0f3 Test was not using the view from the fresh system #3460 2013-06-24 11:54:46 +02:00
Patrik Nordwall
cd2b77157c Log dead letters, see #3453 2013-06-20 12:09:09 +02:00
Roland Kuhn
8df8541801 Merge pull request #1500 from akka/wip-3210-local-only-∂π
make LocalScope mean “purely local” and avoid Props serialization check,...
2013-05-30 08:03:32 -07:00
Roland
92db59183e make LocalScope mean “purely local” and avoid Props serialization check, see #3210 2013-05-29 23:36:39 +02:00
Patrik Nordwall
a323936299 Disable cluster stats by default, see #3348
* Add VectorClockStats
2013-05-28 16:15:57 +02:00
Patrik Nordwall
c05262f406 Change default tick-duration to 10ms, see #3387 2013-05-27 09:20:25 +02:00
Patrik Nordwall
ee6e80d31a Add previousStatus in MemberRemoved, see #3252 2013-05-23 11:09:32 +02:00
Patrik Nordwall
8f04b53ac7 Merge pull request #1443 from akka/wip-3359-auto-join-patriknw
Remove auto-join config, derive from seed-nodes, see #3359
2013-05-17 04:57:07 -07:00
Patrik Nordwall
ad1eaa6d4a Remove auto-join config, derive from seed-nodes, see #3359 2013-05-17 13:54:51 +02:00
Patrik Nordwall
a0a0f39613 Hardening of cluster member leaving path, see #3309
* Removed leader commands for Shutdown and Exit
* Member shutdown itself  when it sees itself as Exiting
* Singleton cluster with status Exiting will shutdown itself,
  in case the Exiting gossip never arrives
* Exiting member not part convergence check
* Exiting member is removed by leader (on convergence) when the
  exiting member is in the unreachable set, i.e. sucessfully shutdown
* Reverted the change made for #3266, i.e. Exiting is
  detected as unreachable again.
* Adjust ClusterSingletonManager to new Exiting behaviour
* Fix bug in HeartbeatSender, which caused it to continue to
  send heartbeats to removed nodes, instead of rebalancing
* Refactoring of leaderActions method
* Leaving section in docs
2013-05-17 11:39:49 +02:00
Patrik Nordwall
9ec0b7ca71 Better test timeouts in UnreachableNodeJoinsAgainSpec, see #3285 2013-05-09 21:27:23 +02:00
Björn Antonsson
e00ab533bb Wait on shutdown of extra actor systems in tests. See #3217 2013-05-07 11:02:03 +02:00
Roland
b3db19ee05 Merge branch 'wip-3281-NullMessage-∂π' 2013-05-03 19:40:36 +02:00
Patrik Nordwall
b8b65c9153 Cluster member age, and usage in singleton, see #3195
* Assign internal upNumber when member is moved to Up
* Public API Member.isOlder
* Change cluster singleton to use oldest member instead of leader
* Update samples and docs
2013-05-03 13:38:35 +02:00
Patrik Nordwall
e2b0fdeff9 Move barriers of conditional tests in StressSpec, see #2787 2013-05-02 20:23:14 +02:00
Patrik Nordwall
6635ac4032 Reduce amount of gossip data transferred in idle cluster, see #3279
* When seen same the gossip chat is initated with GossipStatus
  message containing the vclock only
* Remove conversation flag in GossipEnvelope
* Ordinary tell instead of actorSelection when replying
2013-05-02 19:17:09 +02:00
Patrik Nordwall
33a8808a6d Enable usage of MultiJvm nrOfNodes in cluster StressSpec, see #2787
* Adjustments to StressSpec for testing large clusters
* Performance improvement of mute deadLetters
2013-05-02 19:17:08 +02:00
Roland
738796c625 remove NullMessage, see #3281 2013-05-02 18:48:36 +02:00
dario.rexin
3e8597d94b more deprecation warnings removed 2013-04-26 13:54:10 +02:00
Patrik Nordwall
b62f5f46f5 Merge pull request #1361 from akka/wip-3247-UnreachableNodeJoinsAgainSpec-patriknw
Solve UnreachableNodeJoinsAgainSpec problem, see #3247
2013-04-25 05:32:08 -07:00
Patrik Nordwall
19283207ff Additional coordination of shutdown in ClusterDeathWatchSpec, see #3255
* Added testconductor shutdown of actor system
* Renamed previous shutdown to exit
2013-04-24 11:58:07 +02:00
Patrik Nordwall
2ebb2a0b9c Solve UnreachableNodeJoinsAgainSpec problem, see #3247
* UnreachableNodeJoinsAgain failed because of gated connection
* Removed default test value of retry-gate-closed-for, instead
  default from reference.conf is used, i.e. 0s
* deadLetters logging love
2013-04-23 15:43:10 +02:00
Patrik Nordwall
428e71690f Coordinate shutdown of ClusterDeathWatchSpec with messages, see #3255
* Added MultiNodeClusterSpec.EndActor for this purpose
* Changed UnreachableNodeJoinsAgainSpec to use the same
2013-04-23 11:56:12 +02:00
Endre Sándor Varga
fa5ab15450 Ignoring test that relies on actorFor and remote watch 2013-04-19 14:51:21 +02:00
Endre Sándor Varga
7735cb87b9 Adding workaround for UnreachableNodeJoinsAgain
- see #3247
2013-04-18 20:31:31 +02:00
Patrik Nordwall
d2939fa39a Fix failing UnreachableNodeJoinsAgainSpec
* Shutting down test conductor controller is never a good idea
2013-04-17 22:22:22 +02:00