Commit graph

10152 commits

Author SHA1 Message Date
Roland
b60210362e make system.actorOf() non-blocking (and working), see #2031
- introducing RepointableActorRef, which starts out with an
  UnstartedActorCell which can cheaply be created; the Supervise()
  message will trigger child.activate() in the supervisor, which means
  that the actual creation (now with normal ActorCell) happens exactly
  in the right place and with the right semantics. Messages which were
  enqueued to the dummy cell are transferred atomically into the
  ActorCell (using normal .tell()), so message sends keep working
  exactly as they used to
- this enables getting rid of the brittle synchronization around
  RoutedActorRef by replacing that one with a RepointableActorRef
  subclass which creates RoutedActorCells upon activate(), with the nice
  benefit that there is no hurry then to get it right because the new
  cell is constructed “on the side”

misc fixes:

- InvalidMessageException is now actually enforced when trying to send
  “null”
- Mailboxes may be created without having an ActorCell, which can come
  in handy later, because the cell is only needed when this mailbox is
  going to be scheduled on some executor
- remove occurrences of Props(), which is equivalent to Props[Nothing],
  which is equivalent to «bug»
- add test case which verifies that context.actorOf is still synchronous
- plus all the stuff I have forgotten.
2012-06-13 17:57:56 +02:00
Roland
8cd11550fa ActorCell: move out and reuse children updaters, add stress test 2012-06-08 00:10:05 +02:00
Roland
dd596a20cb fold reservedNames into normal ChildStats trees inside ChildrenContainers 2012-06-08 00:10:05 +02:00
Roland
4f862c4328 add test for waves of top-level actors 2012-06-08 00:10:05 +02:00
Roland
df89184b30 make system.actorOf non-blocking (*), see #2031
(*) that actually depends on whether provider.actorOf blocks, which
currently MAY happen when actor creation triggers a remote connection

- properly CAS childrenRefs within ActorCell, making it safe to update
  from the outside
- add reserve/unreserve to ChildrenContainer and move uniqueness check
  there
- when creating, first reserve, then add the actor; unreserve if
  provider.actorOf did fail
2012-06-08 00:10:05 +02:00
Roland
d4070d36ab remove LocalActorRef.systemService (residue, very old) 2012-06-07 23:56:04 +02:00
Roland
1b68ea7c9d document processAllSystemMessages semantics 2012-06-07 23:50:23 +02:00
Patrik Nordwall
f6365e83e7 Change to logback 1.0.4, see #2198 2012-06-07 20:40:14 +02:00
Viktor Klang
2cbc04a5ab #2196 - Updating Logback dep to 1.0.0 2012-06-07 18:38:24 +02:00
patriknw
bd979a8845 Merge pull request #522 from akka/wip-2184-join-again-patriknw
Node that joins again should be ignored, see #2184
2012-06-07 08:14:28 -07:00
Patrik Nordwall
8c9d40eb00 Add missing assert 2012-06-07 15:56:59 +02:00
Patrik Nordwall
dbac17621f Node that joins again should be ignored, see #2184 2012-06-07 15:45:10 +02:00
patriknw
7e55c8424b Merge pull request #521 from akka/wip-2194-slow-multi-jvm-tests-patriknw
Totally skip running multi-jvm tests when long-running is excluded, see #2194
2012-06-07 05:25:36 -07:00
Patrik Nordwall
0aa81229e5 Fix feedback, see #2194 2012-06-07 14:12:13 +02:00
viktorklang
ab7c3eb27b Merge pull request #520 from akka/wip-2183-assorted-fixes-∂π
Wip 2183 assorted fixes ∂π
2012-06-07 04:34:06 -07:00
Patrik Nordwall
9ca794dcc8 Totally skip running multi-jvm tests when long-running is excluded, see #2194 2012-06-07 13:32:42 +02:00
viktorklang
e8e0ef83bb Merge pull request #518 from akka/wip-2189-remote-deadletters-√
#2189 - Removing RemoteClientWriteFailed and log it as a RemoteClientErr...
2012-06-07 04:25:18 -07:00
patriknw
cb304d3ae3 Merge pull request #519 from akka/wip-2163-cluster-unit-test-patriknw
Unit tests of Cluster, see #2163
2012-06-07 03:19:10 -07:00
Patrik Nordwall
921d900f99 Change protected to private[akka], see #2163 2012-06-07 12:03:34 +02:00
Roland
bff03676fe add java testing doc chapter and link to Munish’s blog 2012-06-07 10:50:13 +02:00
Roland
3271fddd92 do not discard system messages silently after stop 2012-06-07 10:49:20 +02:00
Roland
4e9a658609 remove unused _receiveTimeout constructor args (ActorCell and LocalActorRef) 2012-06-07 10:49:13 +02:00
Roland
502bf5f8d5 unbreak config check in RoutedActorRef, which blocked&leaked threads 2012-06-07 10:49:06 +02:00
Patrik Nordwall
bc289df018 Unit tests of Cluster, see 2163
* ClusterSpec
- Test gossiping rules for deputies and unreachable
- Fix strange/wrong probabilites for gossip to unreachable and deputy nodes
- Fix lost order of Members when using map (without .toSeq) on the members SortedSet

* MemberSpec
- Test equals, hashCode

* GossipSpec
- Test member merge by status prio
- Fix bug in member merge (groupBy was wrong)
2012-06-07 08:29:07 +02:00
viktorklang
60c11cab7b Adding missing slash 2012-06-07 00:46:01 +03:00
Viktor Klang
82fbca9241 Clarifying semantics for ActorSystem.registerOnTermination 2012-06-06 16:35:15 +02:00
Viktor Klang
5ec760680a Minor restructuring of the send-callback 2012-06-06 14:28:06 +02:00
Viktor Klang
c686622acf Deciding not to publish errors when a message delivery fails 2012-06-06 14:23:34 +02:00
Viktor Klang
1c5d0bdf42 Adding a FIXME 2012-06-06 14:04:02 +02:00
Viktor Klang
211435048a #2189 - Removing RemoteClientWriteFailed and log it as a RemoteClientError and send the message to DeadLetters 2012-06-06 13:56:46 +02:00
Viktor Klang
4d3e9f19fe Fixing ScalaDoc messup 2012-06-05 18:19:46 +02:00
patriknw
94864a23b4 Merge pull request #515 from akka/wip-start-cluster-patriknw
Refactor cluster startup in tests
2012-06-05 06:55:21 -07:00
Patrik Nordwall
ac98dddfe8 ScalaDoc of awaitClusterUp 2012-06-05 15:53:30 +02:00
Patrik Nordwall
f02793ebd6 Refactor cluster startup join in tests and fix barrier race
* Refactored common code to MultiNodeClusterSpec.awaitClusterUp
* Fixed some race conditions of barriers
2012-06-05 14:17:07 +02:00
Patrik Nordwall
5ccfb2cfee Remove cluster settings vals 2012-06-05 14:17:07 +02:00
Roland
d56c0b4b34 update ActorPath.png, see #2147 2012-06-05 13:07:01 +02:00
viktorklang
9581ec8403 Merge pull request #511 from akka/wip-2134-deathwatch2.0-√
Wip 2134 deathwatch2.0 √
2012-06-05 03:33:01 -07:00
Viktor Klang
46c9cf41cd Review cleanup 2012-06-05 11:38:41 +02:00
Björn Antonsson
1dd1d98208 Merge branch 'master' into wip-2175-problem-with-fault-injector-throttling-ban 2012-06-05 11:31:43 +02:00
Björn Antonsson
c6b2572623 changed val to lazy after review 2012-06-05 11:27:37 +02:00
Jonas Bonér
2d2e19578c Merge pull request #512 from akka/wip-2162-membership-change-listener-spec-jboner
Ticket #2162 - Tests for trigging of MemberChangeListener on life-cycle state changes
2012-06-05 00:55:18 -07:00
Roland
0a011ee50e fix a few doubled the’s 2012-06-04 23:35:52 +02:00
Jonas Bonér
4acee03195 Merge branch 'master' into wip-2162-membership-change-listener-spec-jboner
Signed-off-by: Jonas Bonér <jonas@jonasboner.com>
2012-06-04 23:32:27 +02:00
Jonas Bonér
391fed6594 Misc changes, fixes and improvements after review.
- Renamed all 'frequency' to 'interval'
- Split up NodeJoinAndUpSpec and into NodeJoinSpec and NodeUpSpec.
- Split up MembershipChangeListenerJoinAndUpSpec and into MembershipChangeListenerJoinSpec and MembershipChangeListenerUpSpec.
- Added utility method 'startClusterNode()'
- Fixed race in register listener and telling node to leave
- Removed 'after' blocks
- Cleaned up unused code
- Improved comments

Signed-off-by: Jonas Bonér <jonas@jonasboner.com>
2012-06-04 23:21:28 +02:00
Roland
b98fb0e37a clarify deployment using anonymous factories 2012-06-04 23:10:03 +02:00
Roland
14769828d9 Merge branch 'wip-2122-actorsystem-in-test-∂π' 2012-06-04 21:21:36 +02:00
Roland Kuhn
9b88cf75bf Merge pull request #509 from akka/wip-2174-testkit-trait-∂π
offer TestKitBase trait, see #2174
2012-06-04 10:29:35 -07:00
Roland
b840624b78 warn against using TestKitBase trait 2012-06-04 19:28:58 +02:00
viktorklang
2a06744223 Merge pull request #514 from akka/wip-2093-testactorref-receive-w-sender-√
#2093 - Adding support for setting the sender when using TestActorRef.re...
2012-06-04 09:45:16 -07:00
Viktor Klang
54febffb28 #2093 - Adding support for setting the sender when using TestActorRef.receive 2012-06-04 17:07:44 +02:00