Commit graph

1433 commits

Author SHA1 Message Date
Konrad Malawski
49e6e7f38c Merge pull request #17876 from akka/wip-17729-Implicits.global-patriknw
=rem #17729 Don't use Implicits.global in remoting shutdown
2015-07-03 11:47:28 +02:00
Konrad Malawski
7eeaf6cd9f =doc remove duplicated word typos 2015-07-01 23:48:17 +02:00
Patrik Nordwall
099adc500b =rem #17729 Don't use Implicits.global in remoting shutdown 2015-07-01 13:31:11 +02:00
Roland Kuhn
0de9f0ff40 Merge pull request #17641 from kukido/kukido-spellings-normalization
=doc #17329 Fixed and normalized spellings in ScalaDoc and comments
2015-06-19 12:06:53 +02:00
Patrik Nordwall
dec53381b6 =rem #17554 Improve flow control of system message delivery
When watching many (5000) actors at the same time the
following problems were found:

* first send of a sys msg is sent without any flow control
  => limit the number of outstanding sys msg by using
     the buffer to send them later (ordinary resend)
* when msg cannot be written sys msg is dropped (relying on resend),
  but that cause message re-ordering and negative acknowledgment,
  which is very costly
  => buffer the sys msg on write failure
  => minor optimization of AckedReceiveBuffer

I also made the resend-limit configurable.

(cherry picked from commit ecfc271e9a9d7efcf76945632d89c78740291cc6)
2015-06-16 06:55:24 +02:00
Patrik Nordwall
ecd19ecf06 =rem #17583 Increase default value of system-message-buffer-size
(cherry picked from commit 8cdf837c1f36edbd3b4d5cecaec8928e6b9c4994)
2015-06-12 16:28:55 +02:00
Andrey Myatlyuk
bc791eb86c =doc #17329 Fixed and normalized spellings in ScalaDoc and comments 2015-06-02 21:06:25 -07:00
Patrik Nordwall
b99b8090f0 Merge pull request #17604 from akka/wip-17567-DeadlineFailureDetector-patriknw
=rem #17567 Adjust parameters for DeadlineFailureDetector
2015-06-02 15:07:02 +02:00
Patrik Nordwall
740f006a38 +act #17576 Support serializer with string manifest
* useful when evolution is needed, e.g. Akka Persistence

* docs, comments, cluster-metrics and cluster-tools serializers
2015-06-01 13:45:31 +02:00
Patrik Nordwall
96c84a1df6 =rem #17567 Adjust parameters for DeadlineFailureDetector
To be more aligned with PhiAccrualFailureDetector the
DeadlineFailureDetector should trigger after
heartbeat-interval + acceptable-heartbeat-pause
2015-05-29 10:20:42 +02:00
Martynas Mickevičius
7fc2790458 =pro run multi-jvm tests when validating pr
* addunidoc task via an AutoPlugin that depends on PrValidation and Unidoc autoplugins
* separate cli option logic to a case class
* remove autoplugin for root project
2015-05-28 13:57:50 +03:00
Roland Kuhn
5dc25fbb44 add crosscompilation for 2.12.0-M1 2015-05-21 21:09:30 +02:00
Patrik Nordwall
0e8264856b !act #13919 Make ActorRef.isTerminated internal
* until we have replaced all internal usages of it,
  or we could decide that it is good to keep as an
  internal facility and then we can remove the deprecation
  annotations
2015-05-19 12:08:24 +02:00
Patrik Nordwall
85a5cc61aa !act #13919 Make actorFor internal
* until we can replace all internal usages of it, which
  is only in akka-camel
2015-05-19 12:07:18 +02:00
Patrik Nordwall
3d9ce5ef5e =rem #17084 Skip test if 127.0.1.1 is not available 2015-05-19 09:04:56 +02:00
Roland Kuhn
18688fc84b = #17380 fix doc comments for java8 doclint
* actor and cluster-metrics comments
* agent/camel/cluster/osgi/persistence/remote comments
* comments in contrib/persistence-tck/multi-node/typed
2015-05-18 12:51:36 +02:00
Thibaut Robert
12cbf83927 =rem improve remote watching mechanism
This improves the remote watching mechanism as follows: Watch requests
are intercepted by the RemoteWatcher and not sent on the wire,
excepted watches from the remoteWatcher itself.

RemoteWatcher is then in charge of forwarding DeathWatchNotification
messages to the watchers.

This reduces the number of watch message to one per watchee, even if
there are several watcher on the same watchee (instead of n+1 before).

Reversed watch messages, and watch on ref with undefinedUid are excluded from
interception by the RemoteWatcher and so are handled as before this commit.

In addition, the following changes are made:
- Keep watchers in a map watchee -> watchers for more efficient retrieval
(in a scala Multimap)
- Keep watchees in a map address -> watchee for more efficient retrieval
(in a scala Multimap)
- Use of InternalActorRef more thoroughly to avoid casts
- Rewatch use a standard watch message, as the distinction is longer needed
2015-05-13 14:10:35 +02:00
Patrik Nordwall
b30e460be7 = #17342 Make 2.4 binary compatible with 2.3
(cherry picked from commit 89af8bdb90)

* remove final identifier in serializers

i* revert/deprecate ProtobufSerializer.ARRAY_OF_BYTE_ARRAY

* adding back compatible empty constructor in serializers

* make FSM.State compatible

* add back ActorPath.ElementRegex

* revert SocketOption changes and add SocketOptionV2
  see a6d3704ef6

* problem filter for ActorSystem and ActorPath

* problem filter for ByteString

* problem filter for deprecated Timeout methods

* BalancingPool companion

* ask

* problem filter for ActorDSL

* event bus

* exclude hasSubscriptions

* exclude some problems in testkit

* boundAddress and addressFromSocketAddress

* Pool nrOfInstances

* PromiseActorRef

* check with 2.3.9

* migration guide note

* explicit exclude of final class problems
2015-05-11 21:11:52 +02:00
Patrik Nordwall
93d7c0493d Merge pull request #17272 from akka/wip-17240-deadletter-supression-master-patriknw
= #17240 Use some more DeadLetterSuppression (for validation)
2015-04-23 07:13:04 +02:00
Patrik Nordwall
c1d14f1887 = #17240 Use some more DeadLetterSuppression
* sysmsg.Terminate, sysmsg.DeathWatchNotification, io.Tcp.Closed
  were needed to silence normal usage of http client/server
* other things based on jenkins logs, but not a complete audit

(cherry picked from commit 270e3b2f49af3c34fd5ea4c3bcfd8257402b5cbe)
2015-04-22 21:40:23 +02:00
Endre Sándor Varga
1a6f7cc44c =rem #17213: Remove wrong assertion from EndpointManager
(cherry picked from commit 5b6085664ba2d69cd3f5662c1f4b21c417e4afb1)
2015-04-22 21:09:49 +02:00
Patrik Nordwall
0d403311b2 =rem #16346 Close connection after refused connection attempt 2015-04-15 13:46:44 +02:00
Patrik Nordwall
79e7fe22de =tes #17080 Move TestUtils to testkit.SocketUtil
(cherry picked from commit 3df2a822efa7e1330d564ceea7506d606359e17c)

Conflicts:
	akka-actor-tests/src/test/scala/akka/actor/ActorPerfSpec.scala
	akka-actor-tests/src/test/scala/akka/io/UdpIntegrationSpec.scala
	akka-durable-mailboxes/akka-file-mailbox/src/main/scala/akka/actor/mailbox/filebased/filequeue/Journal.scala
	akka-testkit/src/main/scala/akka/testkit/SocketUtil.scala
2015-04-08 08:21:38 +02:00
drewhk
213a5a4300 Merge pull request #16880 from drewhk/wip-16224-gate-should-open-on-inbound-connect-drewhk
=rem #16224: Not terminate connections if quarantine id do not match
2015-03-26 18:59:04 +01:00
Endre Sándor Varga
a6e10f154f =rem #16224: Not terminate connections if quarantine id do not match 2015-03-26 16:11:48 +01:00
drewhk
d9db42b757 Merge pull request #16884 from drewhk/wip-16505-forwardport-drewhk
=rem #16505: Do not publish AddressTerminated (missing fwd port)
2015-03-25 14:44:15 +01:00
Julian Tescher
00f6a58e7c Changes all occurances of Typesafe copyright to extend to 2015 2015-03-10 14:12:19 -07:00
Patrik Nordwall
30df518421 =tes Use ConversionCheckedTripleEquals 2015-03-10 08:17:03 +01:00
Andrei Pozolotin
6332f888ce +all #16632 Make serialization identifiers configurable in reference.conf 2015-03-05 11:55:05 -06:00
Endre Sándor Varga
b3f4012746 =rem #16505: Do not publish AddressTerminated
- also not throw IllegalAssocEx from transport
 - added a test for stashing behavior
(cherry picked from commit b7295a8)
2015-02-17 13:40:48 +01:00
Roland Kuhn
82b8238a9c fix warnings in remote and cluster 2015-01-30 19:02:18 +01:00
Roland Kuhn
d9efd041f7 add akka-typed project with generic ActorRef
This is the first step towards more type-safety in Actor interactions,
comprising:

* generic ActorRef[T] that only accepts T messages
* generic ActorSystem[T] extends ActorRef[T] (sending to the guardian,
  whose Props[T] are provided for ActorSystem construction)
* removed the Actor trait: everything in there has been made into
  messages and signals
* new Behavior[T] abstraction that consumes messages (of type T) or
  Signals (lifecycle hooks, Terminated, ReceiveTimeout, Failed),
  producing the next Behavior[T] as the result each time
* the ask pattern is provided and yields properly typed Futures
* variants of ActorContext are provided for synchronous testing of
  Behaviors

All of this is implemented without touching code outside akka-typed
(apart from making guardianProps configurable), creating wrapper objects
around ActorRef, ActorContext, ActorSystem, Props and providing an Actor
implementation that just runs a Behavior.
2015-01-29 11:42:28 +01:00
Patrik Nordwall
a1d7199a42 =rem #16623: Fix concurrent reliable delivery actors
(cherry picked from commit 4f7c90660226b05edc3581454d18fd53a4762802)

Conflicts:
	project/AkkaBuild.scala
2015-01-19 10:03:40 +01:00
Roland Kuhn
f0be7f8a21 Merge pull request #16429 from hepin1989/master
=rem #16428 optimize protobuf serializer for master
2015-01-15 15:17:37 +01:00
Konrad Malawski
e110cd1213 Merge pull request #16595 from Arneball/master-arneball-patch
Rebased 16537 - Constant moved to val, will removed unneccesary allocation
2015-01-13 17:23:34 +01:00
Raul Bache
51f5454581 =act Constant value made a val to avoid unnecessary allocation
Changed the parameter type of targetName in PromiseActorRef#apply and changed so that toString of targetName is called once the value is actually needed, eg in the case of timeout.

The creating of the String used in the AskTimeOutException will then be deferred to when timeouts actually occur rather than before, as it was before this change.

Callsites of PromiseActorRef#apply are changed so that they instead of ActorSel#toString and ActorRef#toString send the ActorSel / ActorRef itself, thus not creating the Strings from toString unless necessary, saving StringBuilders and char[] used in ActorRef#toString and ActorSel#toString
2015-01-07 23:56:02 +01:00
hepin
a19e02b9e5 =rem #16428 optimize protobuf serializer 2014-12-23 01:52:55 +08:00
Sergey Krauchenia
f08f1727fb =act, ker, rem, doc #16330 deprecate akka.util.Crypt
* deprecate akka.util.Crypt
* fix documentation after deprecating
2014-12-20 13:30:37 +03:00
Ostapenko Evgeniy
dee5ad3deb =act #16361 Added more information to AskTimeoutException 2014-11-27 11:54:02 +03:00
Konrad Malawski
fd498d34a5 Merge pull request #16322 from carrot-garden/name-space-for-loggers
= akka-*: full name space for loggers - resolve #16138
2014-11-19 09:46:15 +01:00
Patrik Nordwall
4c7adf919f Merge pull request #16276 from akka/wip-15530-remote-log-cause-patrikwn
+rem #15530 Include cause in some remote log messages
2014-11-19 07:42:33 +01:00
Andrei Pozolotin
d83acb92c3 = akka-*: full name space for loggers - resolve #16138
reflect logger name changes in the migration guide

fix typo in migration guide

fix typo in migration guide (xml)
2014-11-18 09:17:07 -06:00
Björn Antonsson
1a5007009d =rem #16241 Added helpful message for remoting startup timeout. 2014-11-11 10:00:49 +01:00
Patrik Nordwall
4a505cdc81 +rem #15530 Include cause in some remote log messages 2014-11-11 08:15:37 +01:00
Konrad 'ktoso' Malawski
3f12ef262f !clu #15042 useRole restriction on local node is now respected
This is an API breaking change if someone implemented their own Routers.
The change is required because the router must know if the local routees
should be started or not so it has to check the roles of the cluster
member (the local one). We could delay this decision of starting local
routees, but that would allow messages to be dead-letter-ed (bad).
2014-10-31 22:33:23 +01:00
Martynas Mickevičius
9311e9474e =pro Grab binary version for MIMA combatibility testing from a setting.
Thanks to @jsuereth
2014-10-28 15:13:13 +02:00
Martynas Mickevicius
47556a0ebf =rem #15007 add ability to bind to a different address than the remoting waits messages from
This can be used to traverse NATs with the following configuration:

akka.remote.netty.tcp {
  ...
  hostname = my-external-address.lt
  bind-hostname = 192.168.1.100
}

Use Akka BoundAddressesExtension to get bound addresses
2014-09-15 18:30:12 +03:00
Roland Kuhn
1eda0d9b23 =act,clu,rem #15828 Turkish I bug
Conflicts:
	akka-cluster/src/main/scala/akka/cluster/ClusterSettings.scala
2014-09-09 10:05:19 +02:00
Konrad Malawski
bb0955d635 Merge pull request #15782 from ktoso/wip-props-with-nulls-ktoso
=act,rem #13946 fix handling of null parameters in Props
2014-09-01 16:50:03 +02:00
Konrad 'ktoso' Malawski
f13d4975cc =act,rem #13946 fix handling of null parameters in Props
+ Props creation with nulls does not fail any longer
+ null values are now serialised properly and can be used in remote
  deployments too
+ added tests for Reflect.findConstructor
> does not change wire protocol, so that's open for discussion (if we
> want it to be more like SerialisedMessage or not)

Resolves #13946
2014-09-01 13:33:16 +02:00