Commit graph

222 commits

Author SHA1 Message Date
Patrik Nordwall
6eb7e1d438 Rename dispatcherFactory to dispatchers in ActorSystem. See #1458 2011-12-21 19:07:54 +01:00
Patrik Nordwall
df260f8939 Improvements based on feedback. See #1458 2011-12-21 19:02:06 +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
Viktor Klang
c904fd3913 Making TestLatch Awaitable and fixing tons of tests 2011-12-19 15:05:33 +01:00
Viktor Klang
47c1be6b42 Adding FIXME comments to unprotected casts to ActorSystemImpl (4 places) 2011-12-19 14:04:32 +01:00
Viktor Klang
6c96397711 Merge branch 'wip-1456-document-typed-actors-√' 2011-12-15 19:09:57 +01:00
Viktor Klang
5e03cda4bb Adding Typed Actor docs for Java, as well as some minor tweaks on some Java APIs 2011-12-15 16:57:29 +01:00
Jonas Bonér
ce296b0481 Misc additions to, and rewrites and formatting of, the documentation.
Signed-off-by: Jonas Bonér <jonas@jonasboner.com>
2011-12-15 14:26:17 +01:00
Patrik Nordwall
e456213e31 Merge branch 'master' into wip-1503-remove-stm-patriknw
Conflicts:
	akka-actor-tests/src/test/scala/akka/actor/SchedulerSpec.scala
	akka-actor-tests/src/test/scala/akka/dispatch/FutureSpec.scala
	akka-docs/modules/camel.rst
2011-12-14 18:56:39 +01:00
patriknw
d9e9efe2d7 Merge pull request #156 from jboner/wip-1504-config-comments-patriknw
Rewrite config comments
2011-12-14 08:47:19 -08:00
Viktor Klang
e959493e12 Enormous merge with master which probably led to the indirect unfortunate deaths of several kittens 2011-12-14 17:36:39 +01:00
Patrik Nordwall
c1826abee1 Merge branch 'master' into wip-1504-config-comments-patriknw
Conflicts:
	akka-actor/src/main/resources/reference.conf
2011-12-14 17:02:29 +01:00
Patrik Nordwall
8ffa85c590 DOC: Rewrite config comments. See #1505 2011-12-14 15:12:40 +01:00
Patrik Nordwall
06a08c5823 Removed STM module. See #1503
* Removed from build. Didn't remove akka-stm directory, contains transactors also.
* Replaced usage of org.multiverse.api.latches.StandardLatch in some tests with testkit.TestLatch
2011-12-14 12:39:27 +01:00
Roland
5eedbdd69f rename ActorSystem.stop() to .shutdown() 2011-12-14 01:06:20 +01:00
Roland
cb85778b12 remove ActorRef.stop()
- replace ActorRef.stop() by ActorRefFactory.stop(child) everywhere
- ActorCell “optimizes” this to remove the child from its childrenRefs
  in order to allow immediate recycling of the name
- the lost soul must have a place, for which the Locker has been
  created, where Davy Jones will happily rebind the soul to his ship
  (i.e. set “parent” to the locker to avoid mem leak) and periodically
  revisit it (.stop(), in case of that being lost in comm failure,
  similar .watch() to re-check liveness)
2011-12-14 00:10:53 +01:00
Roland
92e7693203 Merge remote-tracking branch 'origin/master' into wip-remote-supervision-rk 2011-12-13 16:59:43 +01:00
Roland
040f3076bc add watch/unwatch for testActor to TestKit 2011-12-13 15:41:00 +01:00
Jonas Bonér
c9b787f029 Removed all 'actorOf' methods that does not take a 'Props', and changed all callers to use 'actorOf(Props(..))'
Signed-off-by: Jonas Bonér <jonas@jonasboner.com>
2011-12-13 14:09:40 +01:00
Viktor Klang
b32cbbc764 Renaming Block to Await, renaming sync to result, renaming on to ready, Await.ready and Await.result looks and reads well 2011-12-12 22:50:08 +01:00
Viktor Klang
d8fe6a5509 Removing Future.get 2011-12-12 22:24:17 +01:00
Viktor Klang
2d418c188f Renaming completeWithResult to success, completeWithException to failure, adding tryComplete to signal whether the completion was made or not 2011-12-12 17:25:34 +01:00
Viktor Klang
2673a9c047 Removing Future.as[] and commenting out 2 Java Specs because the compiler can't find them? 2011-12-11 20:12:55 +01:00
Viktor Klang
3b1330c6d7 Tests are green with new Futures, consider this a half-way-there marker 2011-12-11 00:40:52 +01:00
Roland
d4a764cfd9 remove LocalActorRef.underlyingActorInstance
- was used only in BalancingDispatcherSpec (was dirty, fixed dirty) and
  TestActorRef
- fixing the latter involved opening up ActorCell slightly for allowing
  new AutoReceivedMessage types (that trait is now not sealed anymore)
- TestActorRef then checks underlying.actor and retrieves it using a
  message-based request if it is still null
2011-12-10 16:56:53 +01:00
Roland
fac840adfc make remote lookup work
- create RemoteActorRef in actorFor
- simplify send/receive because Futures/Exceptions do not go over the
  wire anymore
- add RemoteCommunicationSpec which uses two ActorSystems communicating
  in the same JVM via TCP socket
2011-12-08 14:44:05 +01:00
Patrik Nordwall
f7d6393027 Removed actorOf methods from AkkaSpec. See #1439 2011-12-07 11:10:54 +01:00
Patrik Nordwall
1402c7692e Minor fixes from review comments. See #1377 2011-12-07 10:07:46 +01:00
Patrik Nordwall
1a93ddb7c0 Merge branch 'master' into wip-1377-context-patriknw 2011-12-07 08:07:58 +01:00
Patrik Nordwall
bfa14a692c Merge branch 'master' into wip-1377-context-patriknw
Conflicts:
	akka-actor/src/main/scala/akka/actor/ActorCell.scala
	akka-actor/src/main/scala/akka/actor/ActorRef.scala
	akka-actor/src/main/scala/akka/dispatch/AbstractDispatcher.scala
	akka-actor/src/main/scala/akka/event/EventStream.scala
	akka-tutorials/akka-tutorial-first/src/main/java/akka/tutorial/first/java/Pi.java
	akka-tutorials/akka-tutorial-first/src/main/scala/Pi.scala
2011-12-07 07:49:34 +01:00
Roland
c4ed57100e make Jenkins wait for Davy Jones
- AkkaSpecSpec failed with nothing in the locker, but only on Jenkins
- cause: Davy Jones doesn’t get a chance to run because nobody actually
  waits for his processing
- thus, give him permission to leave this world and have him confirm
  that
2011-12-06 22:50:19 +01:00
Patrik Nordwall
7595e52bc9 Renamed startsWatching to watch, and stopsWatching to unwatch 2011-12-06 09:59:52 +01:00
Patrik Nordwall
3204269f6a Cleanup of methods in Actor and ActorContext trait. See #1377
* Added JavaActorContext, UntypedActor.getContext
* implicit val context in Actor needs to be implicit to support forward,
it would be nice if it wasn't implicit because now I can't override context
in UntypedActor
* Removed implicit def system in Actor
* Removed implicit def defaultTimeout in Actor
* Removed receiveTimeout, children, dispatcher, become, unbecome, watch,
unwatch in Actor
* Removed corresponding as above from UntypedActor
* Removed implicit from dispatcher in ActorSystem
* Removed implicit def timeout in TypedActor
* Changed receiveTimeout to use Duration (in api)
* Changed many tests and samples to match new api
2011-12-06 09:50:16 +01:00
Roland
9d7597c728 Merge branch master into wip-ActorPath-rk
Had to make Davy Jones a bit more robust, i.e. put him into a different
system to guarantee survival until all messages are delivered.
2011-12-05 22:46:34 +01:00
Roland
cdc5492101 correct spelling of Davy Jones 2011-12-05 21:03:05 +01:00
Roland
c0c9487451 make testActor spew out uncollected messages after test end
(so you don’t need expectNoMsg after tests)
2011-12-05 19:03:01 +01:00
Roland
3c06992d2e incorporate review comments 2011-12-05 17:31:54 +01:00
Roland
eeca88d674 add test for “unorderly” shutdown of ActorSystem by PoisonPill
- uncovered nasty endless loop bug wrt. dead letters and a dead listener
- fixing that bug removed the MainBusReaper (sigh)
- also fix compilation of tutorial-first, but that REALLY needs to be
  changed not to create RoutedActorRef using new!
2011-12-05 15:18:22 +01:00
Patrik Nordwall
c8a1a96310 Updated config documentation 2011-12-05 10:41:36 +01:00
Roland
4c1d722398 fix bug in ActorRef.stop() implementation
- it was telling all children to stop(), then waited for the
  ChildTerminated messages and finally terminated itself
- this worked fine, except when the stop came from the supervisor, i.e.
  the recipient was suspended and did not process the ChildTerminated
- so, as the mirror of Supervise() that it is, I changed
  ChildTerminated() to be a system message and instead of stopping
  processing normal messages by checking the stopping flag, just suspend
  the actor while awaiting the ChildTerminated's to flow in.
2011-12-03 18:53:04 +01:00
Roland
a3e6fca530 rename RefInternals to InternalActorRef and restructure
- IAR is subclass of AR and SAR
- all concrete ARs implement IAR
- move sendSystemMessage to IAR

all in preparation for unifying the ActorPath look-up for local&remote
actor refs
2011-12-02 14:45:10 +01:00
Roland
e38cd19af9 Merge branch 'master' into wip-ActorPath-rk 2011-12-02 13:31:48 +01:00
Patrik Nordwall
79866e5729 Made DefaultScheduler Closeable 2011-12-02 10:32:17 +01:00
Patrik Nordwall
b488d70f54 Fixed several memory and thread leaks. See #1404
* Dispatchers need Scheduler to be able to shutdown themselves. Stop Scheduler after dispatchers.
* Changed CallingThreadDispatcher global object to Extension, since it holds map of references to mailboxes. Will be GC:ed when system is GC:ed.
* Made testActor lazy, since it is not used in all tests, and it creates CallingThreadDispatcher.
* Activated some java tests that were not running
* Many tests were not stopping created ActorSystems. VERY IMPORTANT TO STOP ActorSystem in tests. Use AkkaSpec as much as possible.
* Used profiler to verify (and find) dangling ActorSystemImpl and threads from dispatchers.
* FutureSpec creates ForkJoinPool threads that are not cleared, but number of threads don't grow so it's not a problem.
2011-12-02 09:48:21 +01:00
Patrik Nordwall
82bbca43ab Merge branch 'master' into wip-1378-fixme-patriknw
Conflicts:
	akka-actor/src/main/scala/akka/actor/ActorRef.scala
	akka-remote/src/main/scala/akka/remote/RemoteActorRefProvider.scala
	akka-remote/src/main/scala/akka/remote/netty/NettyRemoteSupport.scala
2011-12-02 09:03:03 +01:00
Patrik Nordwall
c5a367ad54 Merge branch 'master' into wip-config-patriknw 2011-12-02 08:49:34 +01:00
Viktor Klang
fcc6169ede Removing the final usages of startsWatching/stopsWatching 2011-12-02 01:00:55 +01:00
Roland
b65799c7f3 remove ActorRef.address & ActorRef.name
- address => path.toString
- name => path.name
- forward hashCode, equals and compareTo to path
- implement recursive efficient ActorPath.compareTo
- fix ActorPath.equals endless recursion
- remove wrong warning in ActorCell.systemInvoke.supervise()
2011-11-30 23:30:56 +01:00
Roland
7e4333a612 fix actor creation with duplicate name within same message invocation
- ActorCell will pre-fill the childrenRefs with the reserved name in
  order to detect duplicates
- also clean up some test outputs (some ActorSystems forgot to fall back
  to testConf so they did not get the TestEventListener anymore)
- fix race in start-up of LoggingReceiveSpec by ignoring messages from
  testActor start (never was slow enough on my machine to trigger =>
  thank you Jenkins, again!)
- represent actors in logging only by their path, i.e. remote Actor[...]
  decoration
- fix automatic naming of AkkaSpec ActorSystems after the true class
  name of the test spec
2011-11-30 22:19:48 +01:00
Patrik Nordwall
80ac1737cd First walk throught of FIXME. See #1378
* Fixed obvious
* Created tickets for several, #1408, #1409, #1410, #1412, #1415, 1416, #1418
* Moved LoggingReceive from akka.actor to akka.event
* Touched several of the FIXME to make them visible in code review
2011-11-30 10:48:26 +01:00