Commit graph

63 commits

Author SHA1 Message Date
Roland
f317aaf711 rewrite mailbox selection logic, see #3342
- add “mailbox-requirement” key to dispatcher section
- split out mailbox section, add akka.actor.default-mailbox
- rewrite findMarker method and use it for Props.create() and getting
  the required mailbox of an actor
- add ProducesMessageQueue trait for MailboxType so that requirements
  can be checked before trying to create the actor for real
- verify actor as well as dispatcher requirements for message queue
  before creation, even in remote-deployed case
- change MessageDispatcher constructor to take a Configurator, add that
  to migration guide
2013-06-02 12:32:04 +02:00
Patrik Nordwall
c05262f406 Change default tick-duration to 10ms, see #3387 2013-05-27 09:20:25 +02: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
Roland Kuhn
7066b37077 Merge pull request #1027 from akka/wip-2904-timer-∂π
first cut of new AkkaTimer, see #2904
2013-01-23 11:06:41 -08:00
Roland
8dea20a1f1 LightArrayRevolverScheduler, see #2904
- based on a wheel (AtomicReferenceArray) from which atomic
  single-linked lists dangle
- no locks
- deterministic tests due to overridable time source
- also bring docs up to date
2013-01-23 19:57:44 +01:00
Viktor Klang
adfeb2c1f0 #2879 - updating copyright info 2013-01-09 11:38:00 +01:00
Viktor Klang
a3f9e12d9f Adding ConfigSpec test for unstarted-push-timeout 2012-11-16 17:20:40 +01:00
Viktor Klang
6c89f640b6 Bumping the version of Akka master to 2.2-SNAPSHOT 2012-10-17 01:00:57 +02:00
Roland
0f04239f67 move Duration classes according to scala 2.10 nightly and remove casts to FiniteDuration, see #2504 2012-10-11 15:18:10 -07:00
Patrik Nordwall
5a90d7198c Improvements based on review feedback, see #944 2012-09-13 18:06:35 +02:00
Viktor Klang
3b4d605f95 Adding a IOManager.Settings type and adding ConfigSpec validation for the io module 2012-08-09 17:08:44 +02:00
Viktor Klang
b8e7569e56 Merge branch 'master' into wip-scala210M4-√ 2012-07-13 15:36:59 +02:00
Viktor Klang
016eaffbfb Fixing broken ConfigSpec 2012-07-13 15:36:30 +02:00
Viktor Klang
4b2164411c Merge branch 'master' into wip-scala210M4-√ 2012-07-13 12:23:21 +02:00
Viktor Klang
423beed54b #2285 - Making it possible to emit warning output when a router is configured but not in code. 2012-07-13 12:21:55 +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
543737a933 Updating to scalatest 2.10.0-M4-x-B2 and adding feature imports 2012-06-21 16:09:14 +02:00
Peter Vlugter
1fd28e429e Update version to 2.1-SNAPSHOT 2012-03-05 10:50:54 +13:00
Viktor Klang
cc5e675f22 Fixing a couple of places where the classloader wasn't specified to load the config 2012-03-01 17:24:29 +01:00
Roland
11f067abfc fix DefaultResizer.pressure, make ResizerSpec less flaky
- also clean up left-over reference to “buddy-wakeup-threshold”
2012-02-13 20:42:14 +01:00
Roland
5a9ec45d01 first stab at balancing algorithm: it passes the tests
- add new config item "buddy-wakeup-threshold" which defaults to 5
- if BWT>=0, then check mailbox.numberOfMessages in case the target
  actor was not scheduled during dispatch and schedule a buddie if that
  is found >=BWT (BWT is a getfield)
- if during unregister() there are messages in the queue, schedule a
  buddie

This way people can tune which behavior they want, knowing full well
that numberOfMessages is O(n).
2012-02-10 22:22:09 +01:00
Jonas Bonér
51a218b87f Fixes ticket #1809 - Harmonize configuration option names.
Signed-off-by: Jonas Bonér <jonas@jonasboner.com>
2012-02-09 20:40:09 +01:00
Patrik Nordwall
ac38686593 System.exit on fatal error and removed actor null check. See #1799 and #1768
* Config property jvmExitOnFatalError
* System.exit in case of fatal error, such as OutOfMemoryError
* Adjusted NonFatal extractor, ok with StackOverflowError, not ok with LinkageError
* Removed the actor null check in ActorCell
2012-02-07 12:00:50 +01:00
Viktor Klang
3d226cb8ef Switching to fork join as default dispatcher and adding tests for it 2012-01-31 10:12:45 +01:00
Viktor Klang
c1dd4463b9 Restructuring how executors are configured and making sure people can plug in their own 2012-01-30 13:44:56 +01:00
Viktor Klang
8dfe619140 #1703 & #1693 - moving daemonicity to one place, and in doing so creating a thread factory in ActorSystem 2012-01-20 12:30:19 +01:00
Viktor Klang
03bc15feb1 #1692 - Adding config option for making the Scheduler daemonic 2012-01-19 20:55:27 +01:00
Viktor Klang
c4b4302266 Damn you ConfigSpec 2012-01-19 19:48:57 +01:00
Viktor Klang
149fbea5a7 Updating Copyright as per #1660 2012-01-19 18:21:06 +01:00
Patrik Nordwall
517fceae34 Adjust pool size of default-dispatcher. See #1654
* Changed reference.conf
  core-pool-size-min = 6
  core-pool-size-factor = 3.0
  core-pool-size-max = 64
  max-pool-size-min = 6
  max-pool-size-factor  = 3.0
  max-pool-size-max = 64
* Limited to smaller pool size in AkkaSpec
* Adjusted some tests that needed more threads
2012-01-17 17:28:57 +01:00
Patrik Nordwall
fdf93fe2cc Removed some unessary dispatcher constants in ActorSystem.Settings. See #1458 2011-12-21 20:57:57 +01:00
Patrik Nordwall
f772b0183e Initial commit of dispatcher key refactoring, for review. See #1458
* Changed signatures and constructor of MessageDispatcherConfigurator
* Changed Dispatchers.lookup, keep configurators instead of dispatchers
* Removed most of the Dispatchers.newX methods, newDispatcher is still there because of priority mailbox
* How should we make it easy to configure priority mailbox?
* Changed tons tests
* Documentation and ScalaDoc is not updated yet
* Some tests in ActorModelSpec are temporary ignored due to failure
2011-12-21 13:27:50 +01:00
Patrik Nordwall
60f45c72f6 Move dispatcher-shutdown-timeout to dispatcher config. See #1512. 2011-12-20 13:40:51 +01:00
Patrik Nordwall
61813c6635 Make MailboxType implementation configurable. See #1484
* Added mailboxType property to dispatcher config
* Changed durable mailboxes to use this
* Updated docs for durable mailboxes
2011-12-19 21:41:02 +01:00
Peter Vlugter
b058e6a471 Add config spec for akka kernel 2011-12-14 17:15:06 +13:00
Patrik Nordwall
56dc18106b ActorContext instead of ActorRef in HotSwap code parameter. See #1441 2011-12-07 11:25:35 +01:00
Patrik Nordwall
b56201ab7f Updated to latest config lib and changed how reference config files are loaded.
* Config lib 4f3a91f
* All reference files named reference.conf, all will be loaded
* Usage of ConfigFactor.load as default way
* Extensions use same config as ActorSystem.settings.config
2011-11-29 11:56:41 +01:00
Patrik Nordwall
c53d5e16e5 Merge branch 'master' into wip-1361-modularize-config-reference-patriknw
Conflicts:
	akka-actor/src/main/resources/akka-actor-reference.conf
	akka-actor/src/main/scala/akka/actor/ActorRefProvider.scala
	akka-actor/src/main/scala/akka/actor/ActorSystem.scala
	akka-remote/src/main/scala/akka/remote/Gossiper.scala
	akka-remote/src/main/scala/akka/remote/netty/NettyRemoteSupport.scala
2011-11-24 14:56:19 +01:00
Patrik Nordwall
179399296e Modularize configuration. See #1361
* Split config reference to one for each module/extension.
* Adjusted signature of registerExtension to avoid race of extension init
* Moved Duration.dilated to testkit
* TestKitExtension
* RemoteExtension
* SerializationExtension
* Durable mailboxes extensions
* Fixed broken serialization bindings and added test
* Updated configuration documentation
* System properties akka.remote.hostname akka.remote.port replaced with akka.remote.server.hostname and akka.remote.server.port
* Adjustments of ActorSystem initialization. Still don't like the two-phase constructor/init flow. Very fragile for changes.

Review fixes. SerializationExtension
2011-11-23 20:31:58 +01:00
Henrik Engstrom
e2ad1088b0 Updated the scheduler implementation after feedback; changed Duration(x, timeunit) to more fluent 'x timeunit' and added ScalaDoc 2011-11-23 15:16:46 +01:00
Patrik Nordwall
e5f8a41cb8 Remove default time unit in config. All durations explicit. See #1363
* Also changed in dispatcher to use explicit Duration instead of Int/Long
2011-11-21 15:18:52 +01:00
Patrik Nordwall
4b8f11ea92 Replaced akka.config with new configuration utility. See #1141 and see #1342
* All default values removed from code and loaded from akka-actor-reference.conf, located in src/main/resources (included in jar)
* Default test configuration included in AkkaSpec instead of using akka.test.conf, avoids problems when running test (in IDE) and forgetting to use -Dakka.mode=test.
* System.properties used first, if availble
* Next step will be to split akka-actor-reference.conf in separate -reference for each module
2011-11-18 10:05:40 +01:00
Roland
62032cb1ff merge system-cleanup into master 2011-11-17 14:38:49 +01:00
Roland
c31695bef4 rename AkkaConfig to Settings 2011-11-17 12:11:55 +01:00
Roland
648661c548 clean up initialization of ActorSystem, fixes #1050
- create ActorSystemImpl trait to make ActorSystem fully abstract
- add Java API for constructing (ActorSystem.create(...))
- only go through factory methods because .start() has become necessary
- rename all user-facing occurrences of “app” to “system” (Actor trait
  and TestKit/AkkaSpec)
- pass ActorSystemImpl to ActorRefs upon creation, which means that
  actorOf() and friends need such an argument, which must be provided to
  the ActorRefProvider by the ActorRefFactory implementation
2011-11-16 17:18:36 +01:00
Viktor Klang
727c7de58d Removing bounded executors since they have probably never been used, also, removing possibility to specify own RejectedExecutionHandler since Akka needs to know what to do there anyway. Implementing a sane version of CallerRuns 2011-11-15 10:32:00 +01:00
Viktor Klang
13647b2b61 Doh 2011-11-14 19:52:35 +01:00
Roland
945b1aedf9 rename akka.AkkaApplication to akka.actor.ActorSystem
Renaming it to System did not appeal after seeing that such a thing is
already imported from Predef ...
2011-11-10 21:00:01 +01:00
Roland
bb942750aa make most AkkaSpec-based tests runnable in Eclipse 2011-10-21 17:01:22 +02:00
Roland
3b698b9470 nearly done, only two known test failures
- moved typed actor factories to app/context (like actor factories)
- fixed a few misplaced supervision changes, all such tests green now
- actually test akka-reference.conf in ConfigSpec
- made DispatcherActorSpec more deterministic (failed intermittently
  here, was due to race towards thread pool)
- wrapped all actor initialization failures into
  ActorInitializationException and made sure that this leads to Stop
- default to Stop on ActorKilledException
- fixed ActorModelSpec to separately supervise the “waves of actors”
  because otherwise the app.guardian is way too busy processing all
  those ChildTerminated messages
- change ActorCell._children from Vector[Stats] to TreeMap[ActorRef,
  Stats] for performance reasons, have not measured memory impact, yet
- ensured that InterrupedException does not leave current thread via
  Failed message to supervisor (wrapped in ActorInterruptedException)
- set core-size=1 and max-size=4 for default dispatcher during test
2011-10-20 23:37:54 +02:00