Commit graph

53 commits

Author SHA1 Message Date
Jonas Bonér
4ec050c12e Major refactoring of RemoteActorRefProvider, remote Routing and FailureDetector, including lots of fixes and improvements.
- Decoupled FailureDetector from Routing by introducing ConnectionManager which uses FailureDetector instead of it being the same thing.
- Added ConnectionManager
- Added LocalConnectionManager
- Added RemoteConnectionManager
- Improved RoutedProps
- Integrated and added configuration for Scatter Gather router
- Added NoOpFailureDetector
-  Misc API and documentation improvements

Signed-off-by: Jonas Bonér <jonas@jonasboner.com>
2011-10-07 15:42:55 +02:00
Viktor Klang
0f049d67e6 Removing ActorRef.isRunning - replaced in full by isShutdown, if it returns true the actor is forever dead, if it returns false, it might be (race) 2011-10-03 19:43:45 +02:00
Jonas Bonér
08c1e918f4 Fixed broken 'stop' method on RoutedActorRef, now shuts down its connections by sending out a 'Broadcast(PoisonPill)'.
Signed-off-by: Jonas Bonér <jonas@jonasboner.com>
2011-09-28 17:43:51 +02:00
Peter Vlugter
8297f459e3 Some clean up of the compile and test output 2011-09-27 18:00:26 +02:00
Viktor Klang
a7cb5b5212 Upgrading to SBT 0.11 2011-09-27 10:37:53 +02:00
Peter Vlugter
c84d33ef99 Fix ticket 1111 spec by creating compatible exception-throwing behaviour for now. 2011-09-26 15:43:11 +02:00
Jonas Bonér
00d3b87586 Merge branch 'remote-actorref-provider'
Signed-off-by: Jonas Bonér <jonas@jonasboner.com>
2011-09-22 04:38:33 +02:00
Jonas Bonér
978cbe4437 Change the package name of all classes in remote module to 'akka.remote'.
Signed-off-by: Jonas Bonér <jonas@jonasboner.com>
2011-09-20 22:08:38 +02:00
Viktor Klang
b66d45ec6c Removing deployId from config, should be replaced with patterns in deployment configuration that is checked towards the address 2011-09-19 15:20:52 +02:00
Jonas Bonér
e70ab6d12c Added lockless FailureDetector.putIfAbsent(connection).
Signed-off-by: Jonas Bonér <jonas@jonasboner.com>
2011-09-19 14:40:12 +02:00
Peter Vlugter
b96f3d9260 Initial breakout of ActorInstance. See #1195 2011-09-15 09:54:40 +02:00
Viktor Klang
8a7eacb3c6 Merge with master 2011-09-09 12:00:19 +02:00
Jonas Bonér
2dea305136 Merge branch 'master' into wip-remote-connection-failover 2011-09-08 19:50:33 +02:00
Jonas Bonér
47bfafe81e Moved FailureDetector trait and utility companion object to its own file.
Signed-off-by: Jonas Bonér <jonas@jonasboner.com>
2011-09-08 19:46:05 +02:00
Viktor Klang
6114df1efd Merge branch 'master' into wip-nostart 2011-09-08 17:22:52 +02:00
Viktor Klang
d8390a61f6 #1180 - moving the Java API to Futures and Scala API to Future 2011-09-08 15:54:06 +02:00
Viktor Klang
bbb79d8e0d Start removed but cluster is broken 2011-09-08 11:02:17 +02:00
Jonas Bonér
bf7ef7234a Refactored and renamed API for FailureDetector.
Signed-off-by: Jonas Bonér <jonas@jonasboner.com>
2011-09-01 14:58:18 +02:00
Jonas Bonér
0a63350452 Added configuration for failure detection; both via akka.conf and via Deploy(..).
Signed-off-by: Jonas Bonér <jonas@jonasboner.com>
2011-08-31 15:07:18 +02:00
Jonas Bonér
e17a376236 Refactored state management in routing fail over.
Signed-off-by: Jonas Bonér <jonas@jonasboner.com>
2011-08-30 18:42:35 +02:00
Jonas Bonér
e0385e5203 Added failure detection to clustered and local routing.
Still not turned on since need deployment config support first.
Also refactored current routing quite a lot.

Signed-off-by: Jonas Bonér <jonas@jonasboner.com>
2011-08-30 14:31:59 +02:00
Jonas Bonér
344dab94f1 Misc reformatting, clean-ups and removal of '()' at a bunch of methods.
Signed-off-by: Jonas Bonér <jonas@jonasboner.com>
2011-08-29 15:50:40 +02:00
Jonas Bonér
5e290ec393 Merge branch 'master' of github.com:jboner/akka
Signed-off-by: Jonas Bonér <jonas@jonasboner.com>
2011-08-29 14:26:24 +02:00
Jonas Bonér
66f339e202 Moved all 'akka.remote' to 'akka.cluster', no more 'remote' package.
Signed-off-by: Jonas Bonér <jonas@jonasboner.com>
2011-08-29 11:44:33 +02:00
Peter Veentjer
56d4fc7d7c Merge ClusterActoRef & RoutedActorRef: After merge with master 2011-08-29 09:22:14 +03:00
Peter Veentjer
ee4d241ceb Use RoutedProps to configure Routing (local and remote). Ticket #1060 2011-08-27 08:10:25 +03:00
Viktor Klang
c7d58c600b Adding initial support for Props 2011-08-26 17:25:18 +02:00
Jonas Bonér
a4c66bb4d9 Minor changes to logging and reformatting.
Signed-off-by: Jonas Bonér <jonas@jonasboner.com>
2011-08-26 08:24:26 +02:00
Jonas Bonér
dfc1a68aac Fixed race condition in initial and dynamic management of node connections in Cluster
* Using CAS optimistic concurrency using versioning to fix initial and dynamic management of node connections in Cluster
* Fixed broken bootstrap of ClusterNode - reorganized booting and removed lazy from some fields
* Removed 'start' and 'isRunning' from Cluster
* Removed 'isStarted' Switch in Cluster which was sprinkled all-over cluster impl
* Added more and better logging
* Moved local Cluster ops from Cluster to LocalCluster
* Rewrote RoundRobinFailoverMultiJvmSpec to be correct
* RoundRobinFailoverMultiJvmSpec now passes
* Minor reformatting and edits

Signed-off-by: Jonas Bonér <jonas@jonasboner.com>
2011-08-18 11:35:14 +02:00
Vasil Remeniuk
b121da7d2b Scatter-gather router. ScatterGatherRouter boradcasts the message to all connections of a clustered actor, and aggregates responses due to a specified strategy. Fixes #1111
* ScatterGatherRouter can be mixed in with other router types, and inherit their behavior on processing standard and broadcast messages
        * ScatterGatherFirstCompletedRouter is a sample implementation of a ScatterGatherRouter that gathers the first reply came from connections
        * Multi-JVM tests are commented out so far (custom routers dooesn't work well in a clustered mode, so far), until #1109 is closed
2011-08-17 10:21:27 +03:00
Peter Veentjer
1c39ed1ad6 cleanup of unused imports 2011-08-13 08:27:10 +03:00
Jonas Bonér
5b2b463ce0 Changed the elements in actor.debug section in the config from receive = "false" to receive = off. Minor other reformatting changes 2011-08-12 14:35:45 +02:00
Peter Veentjer
6786f934ce minor doc improvent 2011-08-12 10:30:26 +03:00
Peter Veentjer
0c58b38a5a RoutedActorRef makes use of composition instead of inheritance. Solves ticket 1075 and 1062 (broken roundrobin router)* 2011-08-12 10:03:33 +03:00
Peter Veentjer
a5ca2bad15 ticket #958, resolved review comments 2011-08-07 14:47:45 +03:00
Peter Veentjer
43031cb94b ticket #889 some cleanup 2011-08-01 09:01:15 +03:00
Peter Veentjer
4b4f38c973 ticket #889 after merge 2011-07-28 16:56:35 +03:00
Peter Veentjer
0fcc35d4b0 ticket #889 2011-07-28 15:48:03 +03:00
Peter Veentjer
21fee0fa34 ticket 889, initial checkin 2011-07-26 11:16:39 +03:00
Viktor Klang
9d71be7778 Updating copyright section to Typesafe Inc. etc 2011-07-14 16:03:08 +02:00
Jonas Bonér
4d31751793 Fixed clustered management of actor serializer.
Various renames and refactorings.
Changed all internal usages of 'actorOf' to 'localActorOf'.

Signed-off-by: Jonas Bonér <jonasremove@jonasboner.com>
2011-06-22 09:59:00 +02:00
Viktor Klang
417fcc779d Adding support for mailboxIsEmpty on MessageDispatcher and removing getMailboxSize and mailboxSize from ActorRef, use actorref.dispatcher.mailboxSize(actorref) and actorref.dispatcher.mailboxIsEmpty(actorref) 2011-06-07 13:23:24 -05:00
Viktor Klang
f9d0b188af Removing ActorRef.isDefinedAt and Future.empty and moving Future.channel to Promise, renaming future to promise for the channel 2011-06-04 12:42:06 -07:00
Jonas Bonér
f75dcdbd15 Full clustering circle now works, remote communication.
Added test for cluster communication.
Refactored deployment parsing.
Added InetSocketAddress to remote protocol.

Signed-off-by: Jonas Bonér <jonasremove@jonasboner.com>
2011-05-24 19:04:25 +02:00
Viktor Klang
5f03cc5d87 Switching to a non-blocking strategy for the CyclicIterator and the RoundRobin router 2011-05-21 15:37:09 +02:00
Viktor Klang
70137b45e5 Fixing a race in CyclicIterator 2011-05-21 13:13:28 +02:00
Viktor Klang
cd3cb8cd57 Renaming akka.routing.Dispatcher to Router, as per ticket #729 2011-05-20 12:29:48 +02:00
Jonas Bonér
a7311c83e6 Added Scalariform sbt plugin which formats code on each compile. Also checking in reformatted code 2011-05-18 17:25:30 +02:00
Jonas Bonér
cfea06c5d5 Added consistent hashing abstraction class 2011-05-17 21:15:27 +02:00
Patrik Nordwall
087191f19f Added parens to start 2011-04-12 09:56:17 +02:00