Commit graph

26 commits

Author SHA1 Message Date
Viktor Klang
0330a5fd29 Adding the low watermark option 2012-06-01 21:47:14 +02:00
Viktor Klang
5ec38e82e5 Switching over to foreach, anticipating the use of -optimize for 2.10 2012-06-01 21:42:18 +02:00
Viktor Klang
12b9af25cf #2168 - Exposing more Netty options in remtoe config 2012-06-01 21:29:47 +02:00
Viktor Klang
ea1817b6d8 Merging with latest master 2012-05-24 11:59:36 +02:00
Viktor Klang
6bed19c6c9 Binary compat work for Akka Remote 2012-05-24 11:44:39 +02:00
Roland
fa5960372c Merge branch 'wip-2069-DirectRoutedRemoteActorMultiJvmSpec-patriknw' 2012-05-24 11:40:05 +02:00
Roland
e054816047 make failure injection idempotent
- instead of creating local top-level actors per pipeline, just create
  one system actor through which everything is sent
- this enables storing settings (like what to throttle how) within this
  actor and applying settings when connections come up later
- it also gets rid of the blocking actor creation from
  NetworkFailureInjector, fixing the dead-lock
- moved also the ServerFSMs to be children of the Controller
- all actors have proper names now for easier debugging
2012-05-24 10:56:32 +02:00
Roland
6c67149512 Merge branch 'wip-testconductor-∂π'
fixing up constructor of TestConductorTransport and adding resolver for
sbt-assembly (Ivy-style for scalasbt.artifactoryonline.com)
2012-05-22 16:22:10 +02:00
Jonas Bonér
ae84ee0a57 Updated copyright to 2012 2012-05-21 16:45:15 +02:00
Roland
33cea733a3 rename mkPipeline => createPipeline 2012-05-08 10:05:14 +02:00
Roland
9266ac451b integrate NetworkFailureInjector and add first test
- rework socket pipeline to transform protobuf into case classes and
  back
- introduce NetworkOp messages for that purpose
- make API asynchronous (because it is, really) and add Done
  notification for all server operations; enter(...) is still
  synchronous, because that is its only purpose in life
- factor out mkPipeline in NettyRemoteTransport, enabling the very slick
  TestConductorTransport (essentially a one-liner)
- switch NetworkFailureInjector from Channel{Up,Down}streamHandler to
  subclassing SimpleChannelHandler, because otherwise deadlocks
  occurred, not sure why (but SCH is the recommended way from the netty
  docs, so there may well be a reason)
2012-05-04 22:33:08 +02:00
Roland
5cf0fa66f8 TestConductor: convert to Akka Extension and add test
- make start-up synchronous and explicit for client and server
- server can be queried for actual port, client requires explicit port
- simple multi-jvm-test for verification of TestConductor barriers
2012-05-03 20:48:27 +02:00
Roland
6c786d20b8 porting to 2.0, making it compile: UNTESTED! 2012-05-02 21:56:26 +02:00
Viktor Klang
7cb67ce0ee Removing ChannelLocalSystem (binary incompat change) as well as increasing timeout for ConcurrentSocketActorSpec 2012-04-30 16:26:11 +02:00
Viktor Klang
a99d980bb9 Changing so that you can specify any dispatcher id to be used for remoting 2012-04-27 01:10:20 +02:00
Viktor Klang
45694c65f4 Added support for a config flag that allows the user to reuse the default dispatcher as the ExecutorService for the Netty Remote Pipeline (IO) 2012-04-25 10:41:16 +02:00
Viktor Klang
127b2a305b Switching to using a ChannelLocal to keep tabs on the inbound clients address 2012-02-20 19:33:52 +01:00
Roland
669a4ff9ca make unbalanced Address() constructor private, fix parsing, see #1806 2012-02-13 17:46:14 +01:00
Roland
d8fa7578e1 move RemoteServerStarted message to NettyRemoteTransport, fixes #1771
- also make port=0 (auto) for two remote tests (config&deployer)
- also fix remote-sample conf files to configure “netty” section
2012-02-02 11:46:52 +01:00
Viktor Klang
e58d0d9940 Switching to an orchestrated teardown on READ_TIMEOUT 2012-02-01 16:20:51 +01:00
Viktor Klang
9421f37f96 Ripping out ReadTimeout and adding Idle timeout and fixing issues with configured port on top of that 2012-02-01 16:06:30 +01:00
Roland
4fb0858e55 remote cleanup: include feedback from Viktor and Patrik
- re-label Client/Server to Inbound/Outbound for netty settings
  description
- move to just using exactly one class loader for all reflective
  activities of the ActorSystem, which is either the context class
  loader or the one which loaded the ActorSystem’s class; document that
  putting Akka on boot class path will not work
- be more careful with initializing the Client- and ServerBootstrap
- rename Port to DesiredPortFromConfig to discourage misuse
- write test for NettySettings
- various small fixes
2012-01-30 11:57:24 +01:00
Roland
4482f14650 properly fix the port==0 issue and use it in more tests
- add documentation to RemoteTransport interface what is expected wrt.
  address’ availability before, during and after start()
2012-01-27 15:21:05 +01:00
Roland
ac1ee9ae91 rework use of ClassLoaders, see #1736 2012-01-27 14:21:54 +01:00
Roland
c5fc153a10 rework system initialization, remove remote address from LocalActorRef
- move all creation of ActorRefs into the ActorRefProvider (deadLetters,
  locker)
- rootPath does not contain remote transport address any longer in order
  to start the LocalActorRefProvider before the RemoteTransport; the
  transport address is inserted during serialization only, which enables
  us later to have more than one transport available for one actor
  system (maybe even needed for clustering)
- fix inheritance between DeadLetterActorRef and EmptyLocalActorRef
- document some start-up dependencies by reordering constructor code
- fix remote tests which used self.path for identifying remote actors
  (since that no longer includes the remote transport address)
2012-01-27 12:14:28 +01:00
Roland
edceda8edf restructure remoting
- remove Remote, incorporate its few fields into RemoteActorRefProvider
- rename RemoteSupport to RemoteTransport to sync up with conf and
  the way we talk about it
- remove LocalAddress/RemoteAddress etc. and just have a final case
  class Address(protocol, system, host, port)
- split netty settings out or RemoteSettings into NettySettings
- split out from NettyRemoteSupport.scala: Server.scala, Client.scala,
  Settings.scala

plus a few fixes, including using the contextClassLoader when loading
the provider for ActorSystemImpl
2012-01-20 14:41:15 +01:00