Commit graph

94 commits

Author SHA1 Message Date
Konrad Malawski
92671e6d98 +act,rem,str add SECURITY marker to logs (#21749)
* +act,rem,str add SECURITY marker to logs

* Update TlsSpec.scala
2016-10-28 14:52:17 +02:00
Patrik Nordwall
e8ce261faf Merge branch 'master' into wip-sync-2.4.10-patriknw 2016-09-09 14:12:16 +02:00
Patrik Nordwall
fa084fc5ce treat serialization (toBinary) exception of remote message as transient error, #21343 2016-09-02 11:05:00 +02:00
Patrik Nordwall
a814034342 Option value class, to avoid allocations for optional sender 2016-06-07 18:58:59 +02:00
Björn Antonsson
c66ce62d63 Update to a working version of Scalariform 2016-06-02 22:12:36 +02:00
Patrik Nordwall
96b68f6437 rem #19780: Skip acks during connection handoff
* The problem: ACK that was targeted to an old incarnation
  was sent to the new, restarted, system with same host:port, and
  therefore resulting issues noticed as
  "Error encountered while processing system message acknowledgement buffer: [-1 {}] ack: ACK[0, {}]"
  when restarting actor system

* The reason:

  1. The endpoint reader was about to send OutgoingAck to parent reader,
     targeted to the old system.
  2. At the same time there is an incoming connection from new system
     that triggered TakeOver in the endpoint writer, i.e. replacing
     the handle to the connection of the new system.
  3. The OutgoingAck is received by the writer, which happily sends it
     to the new handle, the new system.

* The solution: Ignore OutgoingAck during the handoff (TakeOver) process.
2016-03-21 08:55:19 +01:00
Patrik Nordwall
7e924a8c75 =rem #19322 reset bufferWasInUse 2016-03-15 18:57:11 +01:00
Johannes Rudolph
b6cbc7f13a =all remove unused imports 2016-02-23 20:29:22 +01:00
Johan Andrén
62e30b3c08 Update copyrights and links to the new company name #19851 2016-02-23 12:58:39 +01:00
Prayag Verma
b7783968a0 =pro #19068 All copyrights ranges and single years updated to a range ending in 2016 2016-01-25 10:20:30 +01:00
Eugene Dzhurinsky
fb763040f2 Add named exception to detect when a cluster node has been quarantined by others #18758
Publish appropriate events to the current ActorSystem event stream upon remote ActorSystem shutdown or when current ActorSystem is quarantined by the remote ActorSystem.
2015-12-20 13:02:19 -05:00
Patrik Nordwall
b6b498bd2c =rem #19133 avoid DeathPactException race condition
* DeathPactException could occur if the ReliableDeliverySupervisor
  was gated but not yet received Terminated and got an Ungate message
  from the EndpointManager and thereby entered idle state, followed by
  receiving the Terminated message, which is not handled in idle
2015-12-16 14:20:30 +01:00
Endre Sándor Varga
c4e326c9dd +rem #18353: Prune reliable deliver actors
(cherry picked from commit 6643f56)
2015-11-13 10:15:31 +01: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
Andrey Myatlyuk
bc791eb86c =doc #17329 Fixed and normalized spellings in ScalaDoc and comments 2015-06-02 21:06:25 -07: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
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
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
Patrik Nordwall
4a505cdc81 +rem #15530 Include cause in some remote log messages 2014-11-11 08:15:37 +01:00
Patrik Nordwall
0fd9198f5d +act #13992 Improve identify replies of wildcard selections
(cherry picked from commit 4747b18d66fafb5699168288b09b7f39da5c2e4e)

Conflicts:
	akka-actor/src/main/scala/akka/actor/ActorSelection.scala
	project/AkkaBuild.scala
2014-06-23 12:19:03 +02:00
Endre Sándor Varga
0e46db47d9 =rem #15109: Separate field in Pass for refuseUid
- Fixes #15109
  - also fix GotUid race with InvalidAddress supervision event
(cherry picked from commit 3fe83fa)
2014-05-15 14:33:16 +02:00
Patrik Nordwall
a97de7db90 =rem #13960 #13989 #13742 #13985 Optimize EndpointWriter
* Replace stash with internal bufferi, j.u.LinkedList
* Replace FSM with become
* Adaptive backoff, important to backoff, but not for too long,
  depends on environment and use case
* Prioritize heartbeat messages from remote watcher and cluster
  failure detector
* Use payload messages as heartbeats for transport failure detector,
  change transport failure detector to be based on absolute timeout,
  see ticket #13989 and #13742
* Log remote disassociate from transport failure detector,
  see ticket #13985
* Add benchmark sample in akka-sample-remote-scala
2014-04-24 13:39:58 +02:00
Roland Kuhn
b97a257f9a =rem #3930 part 2: track UID of associated systems
for proper clean-up of the old association (including the writer) when
the restarted system connects before the old association has been torn
down
2014-03-21 20:43:14 +01:00
dario.rexin
2cbad298d6 =all #3858 Make case classes final 2014-03-07 13:20:01 +01:00
Endre Sándor Varga
e69d068cc0 =rem #3879: Stop sysmsg redelivery for unknown systems after a timeout 2014-02-19 14:44:19 +01:00
Patrik Nordwall
35b1d6879a =rem #3867 Make sure endpointWriter is terminated before ungate
* actor name [endpointWriter] is not unique
* The problem was that the test used 100ms until ungate and
  that made it possible for the endpointWriter to not be
  completely terminated (and removed) before Ungate and
  new Send in idle state, which created new endpointWriter
* I could reproduce it with a sleep in EndpointWriter.postStop
* The solution is to start the scheduled Ungate after Terminated
  has been received
2014-02-10 14:41:48 +01:00
Adam Voss
cce29dfa51 Changes all occurances of Typesafe copyright to extend to 2014. 2014-02-04 21:20:09 -06:00
Patrik Nordwall
a11fb1dafc =act #3572 Add parens to sender
* because it is not referentially transparent; normally we reserved parens for
  side-effecting code but given how people thoughtlessly close over it we revised
  that that decision for sender
* caller can still omit parens
2014-01-17 18:21:14 +01:00
Endre Sándor Varga
cf58402dd9 !rem #3765: Change the defaults for remoting
- removed retry-window and related settings
 - removed gate-invalid-addresses-for
 - gate is now mandatory
 - remoting has a dedicated dispatcher by default
 - updated tests to work with changed timings
 - added doc section for association lifecycle
2014-01-17 11:29:22 +01:00
Endre Sándor Varga
c9fcc5eb5c +rem: Implement Quarantine piercing
- Added refuseUid support in Akka protocol and EndpointManager
 - The AkkaProtocolTransport interface is now a first-class citizen in remoting and endpoint actors
 - The AkkaProtocolTransport interface is now a first-class citizen in endpoint actors
2013-12-11 15:38:39 +01:00
Björn Antonsson
7c8fcc4c61 Merge pull request #1840 from akka/wip-3633-failed-systemmessagedeliverynopassive-ban
=rem #3633 Fix race between EndpointWriter Terminated and TakeOver
2013-12-04 01:59:38 -08:00
Björn Antonsson
838e8ffbc1 =rem #3633 Fix race between EndpointWriter Terminated and TakeOver 2013-12-02 12:23:11 +01:00
Patrik Nordwall
67393c0fb6 +rem #3665 Allow trusted selections in untrusted-mode 2013-11-14 14:08:46 +01:00
Patrik Nordwall
f89422c18e =act,rem #3073 Make ActorSelection faster 2013-11-06 12:41:53 +01:00
Endre Sándor Varga
b39ab37045 !rem #3646: Optimize sending of Ack messages 2013-10-14 10:30:33 +02:00
Björn Antonsson
fdde09690a =rem #3643 Remove warning message from normal remote system shutdown.
Conflicts:
	akka-remote/src/main/scala/akka/remote/Remoting.scala
	project/AkkaBuild.scala
2013-10-10 14:17:32 +02:00
Endre Sándor Varga
9fcae8ae5e =rem #3606 Properly reset system message buffer between remote sys restarts 2013-09-18 14:16:10 +02:00
Endre Sándor Varga
b566e9393d =act, rem, clu #3521: make serialize-messages work with core modules 2013-08-27 11:05:54 +02:00
Endre Sándor Varga
132c30d6cf +rem #3504: Toned down error logging and made loglevel configurable 2013-08-26 15:44:47 +02:00
Patrik Nordwall
637598a28b =rem #3527 Take actor system uid into consideration in remote watch
* When actor system was restarted quickly the new system replied to
  heartbeats and Terminated was never triggered for actors in old
  system.
* Solved by sending an extra Watch system message when first hearbeat
  is received for an address and when a change of system uid is detected.
2013-08-22 11:03:02 +02:00
Endre Sándor Varga
cc15919512 =rem #3527 Throw away system message delivery state when new UID from a remote Address is detected 2013-08-22 11:02:51 +02:00
Endre Sándor Varga
01b3be1242 +rem #3485 Make dispatcher for all remoting actors configurable 2013-08-20 14:01:30 +02:00
Endre Sándor Varga
89a3454245 =rem #3555: Wrong and superfluous match in EndpointWriter 2013-08-20 11:01:42 +02:00
Roland Kuhn
23060f1d03 Merge pull request #1573 from drewhk/wip-3475-always-log-error-remoting-drewhk
Error level remoting events are logged by default #3475
2013-07-04 04:58:11 -07:00
Endre Sándor Varga
d30c5bcef7 Logging of transient errors in remoting attempt 2. 2013-07-01 12:51:15 +02:00
Endre Sándor Varga
634d60d027 ! remoting: EndpointWriter uses mailbox requirements instead of dispatchers #3480 2013-07-01 12:16:06 +02:00
Endre Sándor Varga
e6e5be859b Fixes for leaked connection
- Also introduces reason in the Disassociate message
 - Reliable delivery now transitions from idle to active if there are pending system msgs
 - Minor fix in merging receive buffers (reduces resends)
 - Tweaked WireFormat
 - Removed busy-wait in startup
 - throwing the proper exception type in EndpointReader
 - InvalidAssociationException extends NoStackTrace
2013-06-20 17:28:26 +02:00
Endre Sándor Varga
46fb44737c Proper handoff of readers #3286 2013-06-03 15:59:05 +02:00