* Also cleanup javadsl Receive, which is only used from AbstractBehavior
* Clarify further in docs that the functional vs OO style is a matter of taste
* Optimize flatMapConcat for single element source, #25241
* Grab the SourceSingle via TraversalBuilder
* Also handle the case when there is no demand
* don't match when mapMaterializedValue and async
* fix memory leak in SystemMessageDelivery
* initial set of tests for idle outbound associations, credit to mboogerd
* close inbound compression when quarantined, #23967
* make sure compressions for quarantined are removed in case they are lingering around
* also means that advertise will not be done for quarantined
* remove tombstone in InboundCompressions
* simplify async callbacks by using invokeWithFeedback
* compression for old incarnation, #24400
* it was fixed by the other previous changes
* also confirmed by running the SimpleClusterApp with TCP
as described in the ticket
* test with tcp and tls-tcp transport
* handle the stop signals differently for tcp transport because they
are converted to StreamTcpException
* cancel timers on shutdown
* share the top-level FR for all Association instances
* use linked queue for control and large streams, less memory usage
* remove quarantined idle Association completely after a configured delay
* note that shallow Association instances may still lingering in the
heap because of cached references from RemoteActorRef, which may
be cached by LruBoundedCache (used by resolve actor ref).
Those are small, since the queues have been removed, and the cache
is bounded.
* Refactoring to separate the Aeron specific things, ArteryAeronUdpTransport
* move Aeron specific classes to akka.remote.artery.aeron package
* move Version to ArterySettings, and describe strategy for envelope header changes
* add+use UniformFanOutShape#outSeq for consistency
UniformFanInShape has inSeq, whereas UniformFanOutShape has outArray.
There's probably no good reason for this discrepancy.
* 2.5.3 is gold, deprecation would start in 2.5.4
* specialize in/outlets where possible
* review comments, binary compatibility
* optimize imports
* use Array copy internally
* give FanInShape1N the deprecation treatment
also, s/T\d/I\d/g
* delete ignored file
* process additional review comments
* make inArray fully private everywhere
* add benchmark heavy on the use of FanInShape.in()
* benchmark says: do not use Array for most n
* add JavaDoc to un-final'ed defs to not override
* change deprecated val to def; do not use it
* process patriknw's review comments
Notably:
* Reimplementation of ImmutableIntMap for much faster performance
* Benchmark for ImmutableIntMap added to akka-bench-jmh
* Many small performance improvements to the impl of AffinityPool
* Correctness fixes for pool lifecycle management