Commit graph

760 commits

Author SHA1 Message Date
Patrik Nordwall
d6e5b0a46b Terminate remote-deployed actors when system shutdown, see #2552
* Termination hook mechanism in system guardian to be able to
  notify RemoteSystemDaemon and wait for it to terminate children
* Stopping the children will trigger ordinary death watch mechanism,
  in for example routers
* Note bug in RemoteSystemDaemon, watch of children was not done
  properly, which might have been a memory leak for remote deployed
  actors.
2012-09-25 14:12:04 +02:00
Viktor Klang
750f430bab Fixing so that the 0MQ tests will run on 0mq 3 and removed some boiler from RemoteClientLifeCycleEvent 2012-09-21 16:22:57 +02:00
Patrik Nordwall
9423d37da9 Merge branch 'master' into wip-cluster-docs-patriknw
Conflicts:
	project/AkkaBuild.scala
2012-09-20 10:40:08 +02:00
Patrik Nordwall
a790f5bb32 Use named parameters to Deploy, avoid strange path param 2012-09-20 09:22:30 +02:00
Björn Antonsson
5f63469264 Clean up akka-remote for OSGi and re-enable OSGi bundles. See #2497 2012-09-17 13:47:57 +02:00
Patrik Nordwall
ac16d567ea Improvements based on review comments from √, see #2103 2012-09-11 19:11:20 +02:00
Patrik Nordwall
13515088c7 Merge branch 'master' into wip-2103-cluster-routers-patriknw
Conflicts:
	akka-docs/project/migration-guide-2.0.x-2.1.x.rst
2012-09-11 16:41:26 +02:00
Patrik Nordwall
911ef6b97e Merge pull request #668 from akka/wip-1588-cluster-death-watch-patriknw
Death watch hooked up with cluster failure detector, see #1588
2012-09-11 06:13:44 -07:00
Patrik Nordwall
018a949678 Merge branch 'master' into wip-2103-cluster-routers-patriknw
Conflicts:
	akka-cluster/src/multi-jvm/scala/akka/cluster/ClientDowningNodeThatIsUnreachableSpec.scala
	akka-cluster/src/multi-jvm/scala/akka/cluster/ClientDowningNodeThatIsUpSpec.scala
	akka-cluster/src/multi-jvm/scala/akka/cluster/ConvergenceSpec.scala
	akka-cluster/src/multi-jvm/scala/akka/cluster/LeaderDowningNodeThatIsUnreachableSpec.scala
	akka-cluster/src/multi-jvm/scala/akka/cluster/LeaderElectionSpec.scala
	akka-cluster/src/multi-jvm/scala/akka/cluster/MultiNodeClusterSpec.scala
	akka-cluster/src/multi-jvm/scala/akka/cluster/SingletonClusterSpec.scala
	akka-cluster/src/multi-jvm/scala/akka/cluster/SplitBrainSpec.scala
	akka-cluster/src/multi-jvm/scala/akka/cluster/UnreachableNodeRejoinsClusterSpec.scala
	akka-cluster/src/test/scala/akka/cluster/ClusterSpec.scala
	akka-remote/src/main/scala/akka/routing/RemoteRouterConfig.scala
2012-09-11 10:55:47 +02:00
Patrik Nordwall
4b8a73cc7f Add comment about attachChild 2012-09-11 09:28:05 +02:00
Patrik Nordwall
14f66d9c05 received Supervise from unregistered child Actor, see #2485
* The problem was that RemoteRouteeProvider didn't attachChild
  when creating routees
* Added test for it
2012-09-10 11:45:13 +02:00
Patrik Nordwall
b400b0b818 Merge branch 'master' into wip-2103-cluster-routers-patriknw
Conflicts:
	akka-remote/src/main/scala/akka/routing/RemoteRouterConfig.scala
2012-09-07 16:57:49 +02:00
Patrik Nordwall
f1f145ab43 Revert "Reduce exposure of ActorContext to RouteeProvider"
This reverts commit fd847535d4.

Conflicts:

	akka-cluster/src/main/scala/akka/cluster/routing/ClusterRouterConfig.scala
2012-09-07 10:02:05 +02:00
Viktor Klang
4eee04cb60 #2469 - Switching to scala.util.Try instead of Either[Throwable, T] in the codebase 2012-09-06 03:17:51 +02:00
Patrik Nordwall
ea59b952ce Direct failed remote sends to deadLetters, see #1588
* When Watch is sent to deadLetters it will generate Terminated
* Test: receive Terminated when watched node is unknown host
* Test: receive Terminated when watched path doesn't exist
2012-09-04 09:55:08 +02:00
Patrik Nordwall
7744081224 Incorporate review comments, see #2433 2012-08-31 11:16:57 +02:00
Patrik Nordwall
fd847535d4 Reduce exposure of ActorContext to RouteeProvider
* Introduced RouterContext which is a subset of
  ActorContext that makes sense for RouteeProvider
  to use.
* It's not possible (without major rethinking) to
  create routees by sending message to the Router
  actor because we rely on immediate return of ActorRef
2012-08-30 13:12:23 +02:00
Patrik Nordwall
695ce49727 Deploy to new members in cluster, see #2103
* Config max-nr-of-instances-per-node
* selectDeploymentTarget that takes max-nr-of-instances-per-node
  and nr-of-instances into account
* Deploy when new member added or removed
* Moved routeeProps to RouteeProvider constructor, needed for
  this feature, but also simplifies createRoute, createRoutee,
  and resize, since routeeProps doesn't have to be passed around.
2012-08-29 19:33:19 +02:00
Patrik Nordwall
bf20ae5157 Better methods in RouteeProvider
* createRoutees only for new nrOfInstances
* createRoutees also registers
* New registerRouteesFor for path lookup
* removeRoutees to gracefully unregister and stop routee
2012-08-29 14:56:51 +02:00
Patrik Nordwall
9f389a7950 Resizer specified in code combined with other router config, see #2433
* Use withFallback to use Resizer specified in code if not configured
* Use withFallback in RemoteRouterConfig also
* Fix bug of child name in RemoteRouteeProvider
2012-08-27 14:51:51 +02:00
Roland
8211fd6e8f change settings to FiniteDuration where applicable 2012-08-21 09:22:09 +02:00
Roland
48b68c650d Merge branch 'wip-2376-guardianStrategy-∂π' 2012-08-17 14:35:39 +02:00
Roland
85dcfd87d1 inline manually CatchingSend() 2012-08-16 11:31:53 +02:00
Roland
c1c05ef95e fix CTD vs. RepointableRef by swallowing exceptions during send
- it was always intended that tell() (and sendSystemMessage()) shall not
  throw any exceptions
- this is implemented by swallowing in ActorCell
  (suspend/resume/restart/stop/!/sendSystemMessage) and in
  RemoteActorRef (!/sendSystemMessage)
- current implementation uses a normal method, which adds overhead but
  keeps the code in one place (ActorCell.catchingSend); this is a great
  opportunity for making use of macros
2012-08-15 21:46:05 +02:00
Roland
f05447408c make guardian supervisorStrategy configurable, see #2376 2012-08-14 08:07:49 +02:00
Viktor Klang
17f21480b6 #2372 - Making RemoteActorRefProvider public since it is in the signature of RemoteTransport, which is public 2012-08-12 11:16:43 +02:00
Roland
6145d4313b some cleanup after Viktor’s comments
- remove useless `cause` argument from some akka exceptions
- improve names of some method arguments
- eliminate some closure allocation
2012-08-08 14:13:52 +02:00
Roland
810d65068e test exceptions from actor constructor in hierarchy, see #2336
This has brought to light some interesting effects (aka bugs) both in
the general implementation as well as in previous fixes.
SupervisorHierarchySpec is without TODOs now and GREEN.
2012-08-08 07:48:23 +02:00
Roland
dca8d15c68 Merge branch 'wip-2212-recursive-resume-∂π' into wip-scala210M5-√
only merged so that it compiles, will clean up warnings in the following
commits
2012-07-23 14:17:45 +02:00
Viktor Klang
1261fab3af Removing akka.util.NonFatal and replacing it with scala.util.control.NonFatal 2012-07-22 15:33:18 +02:00
Viktor Klang
f3078263bc Making sure that akka-remote and akka-remote-tests compiles and that tests are green 2012-07-21 18:30:14 +02:00
Viktor Klang
df2389f3bf Merge branch 'master' into wip-scala210M4-√ 2012-07-11 23:31:07 +02:00
Viktor Klang
37d5a1e135 #2325 - Adding AkkaProtocolMessageSizeEstimator to NettyRemoteTransport 2012-07-11 22:32:53 +02:00
Viktor Klang
ac5b5de90a Merging in master, huge work trying to get things to compile, tests not green at this stage 2012-07-06 17:04:04 +02:00
Roland
1cb204da49 Merge branch 'master' into wip-2212-recursive-resume-∂π
also split out ChildrenContainer into its own file and add
suspendCounter to UnstartedActorCell
2012-07-05 13:18:19 +02:00
Viktor Klang
3911b18069 Merging in master 2012-07-04 15:24:23 +02:00
Viktor Klang
0008d41c84 Minor touch-ups 2012-07-04 15:00:03 +02:00
Roland
78a39198f1 another round of fixes due to suspend counting, see #2212
- always suspend/resume for Suspend/Resume/Recreate, no matter which
  state the actor is in, to keep the counter balanced
- preRestart failures are logged but otherwise ignored; there’s nothing
  else (apart from terminating the actor) which we could do at that
  point
- preRestart/postRestart exceptions have their own distinguishable
  subtype of ActorKilledException now
- fix some race conditions in tests to make them produce fewer false
  failures
- remove cruft from SupervisorStrategy and add methods which can
  actually be used to implement your own (with proper warning signs)
2012-07-04 09:20:17 +02:00
Peter Badenhorst
b9ce4e04de fixed dangling exception, reusing code, removed DevRandomSeedGenerator 2012-07-03 10:43:57 +02:00
Peter Badenhorst
04a53b0865 Fixed license, lazy and naming issues 2012-07-02 14:35:04 +02:00
Peter Badenhorst
dc2d918ec2 Implemented a custom InternetSeedGenerator to override seed generator ordering to try and fix long waiting times on Linux because DefaultSeedGenerator uses /dev/random first instead of random.org
1) Added SeedSize to provide easier access to 'magic' numbers
2) Added AES256CounterSecureRNG
2012-07-02 13:36:23 +02:00
Peter Badenhorst
eac778d8da Implemented a custom InternetSeedGenerator to override seed generator ordering to try and fix long waiting times on Linux because DefaultSeedGenerator uses /dev/random first instead of random.org
1) Added SeedSize to provide easier access to 'magic' numbers
2) Added AES128CounterSecureRNG
2012-07-02 13:13:45 +02:00
Viktor Klang
54a3a44bf8 #2292 - Removing akka.util.Duration etc and replace it with scala.concurrent.util.Duration 2012-06-29 13:33:20 +02:00
Viktor Klang
4f1caeefd4 Merge branch 'master' into wip-scala210M4-√ 2012-06-29 10:07:12 +02:00
Viktor Klang
0517fac42e Making use-dispatcher-for-io also used for the client connector 2012-06-28 17:24:14 +02:00
Viktor Klang
dec7824de8 Merge branch 'master' into wip-scala210M4-√ 2012-06-28 15:55:47 +02:00
Viktor Klang
54a9fc3035 #2279 - making logging of RLCEs configurable 2012-06-28 10:44:23 +02:00
Viktor Klang
083039d379 Akka Remote now compiles and tests pass 2012-06-25 16:29:08 +02:00
Viktor Klang
7f429ed63e Merge with master 2012-06-25 12:55:25 +02:00
Roland
3c15dcdfb8 Merge branch 'wip-2031-sync-actorOf-3.0-∂π'
Some tests fail ATM, but I prefer not to hide semantic fixes within
merge commits.
2012-06-25 11:12:08 +02:00