Commit graph

64 commits

Author SHA1 Message Date
Björn Antonsson
e00ab533bb Wait on shutdown of extra actor systems in tests. See #3217 2013-05-07 11:02:03 +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
drexin
b9d1e000d3 fixed indentation 2013-05-02 21:36:36 +02:00
drexin
308428e7bc removed calls to deprecated Props constructor in java code 2013-05-02 17:00:44 +02:00
Dario Rexin
3ffabf00ec removed some deprecation warnings from akka-contrib 2013-04-26 20:44:07 +02: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
7634964b96 API adjustments to ClusterClient, see #3264
* Message wrappers in ClusterClient, so that DistributedPubSubMediator
  is not leaking to the client api
* Register methods in ClusterReceptionistExtension, for convenience and
  clarity
2013-04-22 13:03:29 +02:00
drewhk
98d4bcc9dd Merge pull request #1338 from drewhk/wip-1478-sysmsg-guaranteed-delivery-drewhk
Guaranteed delivery of system messages (and now praying...)
2013-04-18 12:38:28 -07:00
Patrik Nordwall
4293bd7a2d Factory methods for Props
* cleanup of deprecated usage of Props in cluster sample
2013-04-18 16:41:05 +02:00
Endre Sándor Varga
2b0a27be9e Added acknowledged delivery of system messages 2013-04-18 16:10:20 +02:00
Roland Kuhn
57d71b0b44 Merge pull request #1336 from akka/wip-3081-PropsClosures-∂π
deprecate closure-taking Props factories, see #3081
2013-04-16 03:49:49 -07:00
Roland
28aad82b1a deprecate closure-taking Props factories, see #3081
- base Props on Deploy, Class and Seq[Any] (i.e. constructor args)
- remove deprecated Props usage from akka-docs sample code
- rewrite UntypedActorDocTestBase
- rewrite Java/Scala doc section on actor creation
- add migration guide entry
2013-04-16 12:48:31 +02:00
Patrik Nordwall
089b25b3d4 Cluster client and receptionist, see #1165 2013-04-14 22:30:09 +02:00
Patrik Nordwall
1d1a6383df Distributed pub-sub in cluster, see #3203 2013-04-14 19:58:12 +02:00
Viktor Klang
e59394628c #3206 - Adding expectTerminated to TestKit 2013-04-09 14:48:17 +02:00
Patrik Nordwall
887af975ae Deprecate actorFor in favor of ActorSelection, see #3074
* Deprecate all actorFor methods
* resolveActorRef in provider
* Identify auto receive message
* Support ActorPath in actorSelection
* Support remote actor selections
* Additional tests of actor selection
* Update tests (keep most actorFor tests)
* Update samples to use actorSelection
* Updates to documentation
* Migration guide, including motivation
2013-04-08 18:11:52 +02:00
Viktor Klang
6976317bc7 Merged with master 2013-04-03 16:21:22 +02:00
Viktor Klang
48c0b3aa2c #3166 - Adding parenthesis to FSM.initialize 2013-03-30 02:32:40 +01:00
Viktor Klang
c883705242 #3018 - Enabling -Xlint and dealing with the situation that occurs 2013-03-29 01:43:17 +01:00
Patrik Nordwall
b738487dc8 Add UID to RemoteActorRef, see #3072
* Sending to a previous incarnation of an actor shall fail,
  to make remote actors work the same way as local ones (in
  the sense that after Terminated() the ref is not working anymore)
* Changed equality of ActorRef to take the uid into account
* Parse uid fragment in RelativeActorPath and ActorPathExtractor
* Handle uid in getChild and in RemoteSystemDaemon
* Use toSerializationFormat and toSerializationFormatWithAddress
  in serialization
* Replaced var uid in ActorCell and ChildRestartStats with
  constructor parameters (path)
* Create the uid in one single place, in makeChild in parent
* Handle ActorRef with and without uid in DeathWatch
* Optimize ActorPath.toString and friends
* Update documentation and migration guide
2013-03-21 20:25:16 +01:00
Patrik Nordwall
7eac88f372 Cluster node roles, see #3049
* Config of node roles cluster.role
* Cluster router configurable with use-role
* RoleLeaderChanged event
* Cluster singleton per role
* Cluster only starts once all required per-role node
  counts are reached,
  role.<role-name>.min-nr-of-members config
*  Update documentation and make use of the roles in the examples
2013-03-18 11:56:11 +01:00
Patrik Nordwall
d98a7ef1e8 Cluster singleton failure due to down-removed, see #3130
* The scenario was that previous leader left.
* The problem was that the new leader got MemberRemoved
  before it got the HandOverDone and therefore missed the
  hand over data.
* Solved by not changing the singleton to leader when receiving
  MemberRemoved and instead do that on normal HandOverDone or
  in failure cases after retry timeout.
* The reason for this bug was the new transition from Down to
  Removed and that there is now no MemberDowned event. Previously
  this was only triggered by MemberDowned (not MemberRemoved) and
  that was safe because that was "always" preceeded by unreachable.
* The new solution means that it will take longer for new singleton
  to startup in case of unreachable previous leader, but I don't
  want to trigger it on MemberUnreachable because it might in the
  future be possible to switch it back to reachable.
2013-03-11 12:37:35 +01:00
Patrik Nordwall
5b844ec1e6 Publish member events when state change first seen, see #3075
* Remove InstantMemberEvent
2013-03-07 14:07:17 +01:00
Patrik Nordwall
b2bdcfebaf Use fishForMessage instead of ignoreMsg, see #3116
* ignoreMsg doesn't filter already received messages
2013-03-06 08:39:56 +01:00
Patrik Nordwall
8a22d9c98b Merge pull request #1220 from akka/wip-3116-ClusterSingletonManagerSpec-patriknw
Harden ClusterSingletonManagerSpec, see #3116
2013-03-05 12:01:43 -08:00
Patrik Nordwall
2cba3606ae Harden ClusterSingletonManagerSpec, see #3116
* One of the test steps was not deterministic and verification too strict
* Created a separate test for the chaotic scenarios
2013-03-05 10:47:11 +01:00
Patrik Nordwall
1445f07217 Harden TimerBasedThrottlerSpec, see #3103
* Race between throttler timer and within/expectNoMsg
* Use within intervals instead of expectNoMsg
2013-03-04 16:42:34 +01:00
Patrik Nordwall
2a45d99ab3 Change more copyright to 2009-2013, see #2879
* Also added some missing headers
2013-02-20 21:26:52 +01:00
Roland
c3b363c9b3 move multi-node-testkit into its own module, see #2981 2013-02-11 14:37:37 +01:00
Patrik Nordwall
323e5c80b5 Polish the API/SPI of remoting, see #2827
* Changed TransportAdapterProvider to support java impl
* Verified java impl of AbstractTransportAdapter and
  ActorTransportAdapter
* Privatized things that should not be public api
* Consistent usage of INTERNAL API marker in scaladoc
* Added some missing doc in conf
* Added missing SerialVersionUID
2013-02-10 17:47:43 +01:00
Patrik Nordwall
d32a2edc51 Buffer LeaderChanged events and publish all on convergence, see #3017
* Otherwise some changes might never be published, since it doesn't have
  to be convergence on all nodes inbetween all transitions.
* Detected by a failure ClusterSingletonManagerSpec.
* Added a test to simulate the failure scenario.
2013-02-08 12:29:11 +01:00
Patrik Nordwall
4ee299c729 Hardening of another corner case in cluster singleton, see #3017
* It was an unlikely situatation that was not covered,
  the new leader didn't know previous, because it transitioned
  from Start -> BecomeLeader, old leader was removed and got
  LeaderChanged(None), so none of them could request the other
  for hand-over or take-over.
* Taken care of with the retry timeouts, also when leader
  receives LeaderChanged(None)
* The old leader should have received a propert LeaderChanged
  earlier, which is a flaw in the way we publish leader events.
  That part will be fixed in a separate commit.
2013-02-08 08:04:23 +01:00
Patrik Nordwall
2476831705 Rename event-handlers to loggers, see #2979
* Rename config akka.event-handlers to akka.loggers
* Rename config akka.event-handler-startup-timeout to
  akka.logger-startup-timeout
* Rename JulEventHandler to JavaLogger
* Rename Slf4jEventHandler to Slf4jLogger
* Change all places in tests and docs
* Deprecation, old still works, but with warnings
* Migration guide
* Test for the deprecated event-handler config
2013-02-05 11:19:02 +01:00
Viktor Klang
e519e3dc3b #2986 - Changing ActorContext and ActorRefFactory's dispatcher to return ExecutionContext 2013-01-31 15:41:31 +01:00
Patrik Nordwall
c48d9c058e Clarifications of cluster singleton docs, see #2895 2013-01-29 11:03:25 +01:00
Patrik Nordwall
0c38a76c37 Cluster singleton actor pattern, see #2895
* ClusterSingletonManager
* ClusterSingletonManagerSpec multi-node test
* Use in cluster router with single master sample
* Extensive logging to be able to understand what is
  going on
* Java api
* Add cluster dependency to contrib
* Add contrib dependency to sample
* Scaladoc
* rst docs in contrib area, ref from cluster docs
2013-01-25 14:00:28 +01:00
Viktor Klang
c38be1bc4a Preserving Envelopes in UnstartedActorCell as requested by Mr Pink 2013-01-18 12:17:32 +01:00
Viktor Klang
adfeb2c1f0 #2879 - updating copyright info 2013-01-09 11:38:00 +01:00
Patrik Nordwall
06f1945561 Improve ReliableProxy resend across a slow link, see #2849
* The within margin was too small. On my machine the transition to Idle is done
  when 400 ms is remaining, which is too timing sensitive.
* Improved the "resend across a slow link" test to actually trigger resending,
  which it didn't do before.
2013-01-04 15:09:35 +01:00
Patrik Nordwall
48c6374721 Clean shutdown of ReliableProxySpec, see #2846
* Solved by adding missing Dequeue in throttler
* Changed to FSM timers in throttler
* Some boy scouting
2013-01-04 12:54:54 +01:00
Roland
ea08994d24 update to staged 2.10.0 release, CrossVersion.binary, see #2684 2012-12-21 17:18:03 +01:00
Roland
298bab0cd8 fix sometimes-off-by-one in PeekMailbox, see #2851 2012-12-21 10:46:45 +01:00
Roland
7535c24164 discuss message delivery guarantees in more detail, see #2783
- also add PeekMailbox extension for demonstration of that principle
2012-12-20 19:31:24 +01:00
Patrik Nordwall
b21d5367c7 Add java.util.logging to contrib toc, see #2837
(cherry picked from commit 1ed4e9f2efa98f92942d4a047e85be982f3c8c50)
2012-12-20 13:51:48 +01:00
Endre Sándor Varga
55be17419e Merge branch 'master' into wip-2053d-actorbased-remote-drewhk
Conflicts:
	akka-docs/rst/java/code/docs/serialization/SerializationDocTestBase.java
	akka-docs/rst/scala/code/docs/serialization/SerializationDocSpec.scala
	akka-remote-tests/src/main/scala/akka/remote/testconductor/NetworkFailureInjector.scala
	akka-remote/src/main/scala/akka/remote/RemoteActorRefProvider.scala
2012-12-18 15:15:01 +01:00
Endre Sándor Varga
6bd64d55bd - Fixes in contrib and docs
- Fixed getExternalAddressFor
2012-12-18 14:26:55 +01:00
Viktor Klang
ac67edc103 #2726 - removing a potential race between initializing the ReliableProxySpec 2012-12-17 17:37:34 +01:00
Sam Halliday
280e1aa21a java.util.logging backend for ActorLogging system, see #2805
[RK: assembled commit log from original branch, squashed]
akka-contrib:
- an event handler which properly sets the ThreadID on log records
- a LoggingAdapter which does synchronous logging to j.u.l.Logger
- a small logging mixin for the aforementioned adapter
2012-12-14 17:23:38 +01:00
Patrik Nordwall
b06b0fa087 DOC: Formatting issues, see #2723
(cherry picked from commit 15abee84875cdb534056986b9172a38b57d24d92)
2012-11-22 17:23:18 +01:00
Viktor Klang
b1d96c8794 Preventing the TimerBasedThrottlerSpec printing to the console 2012-11-15 00:46:13 +01:00