* one Replicator per configured role
* log LMDB directory at startup
* clarify the imporantce of the LMDB directory
* use more than one key to support many entities
* The reason is to have a consistent approach for Sequence and
TimeBasedUUID, which are both intended as unique event identifiers.
* This means that you can use the offset that is returned in `EventEnvelope`
as the `offset` parameter in a subsequent query.
* CoordinatedShutdown that can run tasks for configured phases in order (DAG)
* coordinate handover/shutdown of singleton with cluster exiting/shutdown
* phase config obj with depends-on list
* integrate graceful leaving of sharding in coordinated shutdown
* add timeout and recover
* add some missing artery ports to tests
* leave via CoordinatedShutdown.run
* optionally exit-jvm in last phase
* run via jvm shutdown hook
* send ExitingConfirmed to leader before shutdown of Exiting
to not have to wait for failure detector to mark it as
unreachable before removing
* the unreachable signal is still kept as a safe guard if
message is lost or leader dies
* PhaseClusterExiting vs MemberExited in ClusterSingletonManager
* terminate ActorSystem when cluster shutdown (via Down)
* add more predefined and custom phases
* reference documentation
* migration guide
* problem when the leader order was sys2, sys1, sys3,
then sys3 could not perform it's duties and move Leving sys1 to
Exiting because it was observing sys1 as unreachable
* exclude Leaving with exitingConfirmed from convergence condidtion
- All Map types are now generic in their key: ORMap, ORMultiMap, LWWMap,
PNCounterMap
- test for binary compatibility with previous version for serialization
- entries are sorted for deterministic SHA-1 on same value
* to be able to introduce new messages and still support rolling upgrades,
i.e. a cluster of mixed versions
* note that it's only catching NotSerializableException, which we already
use for unknown serializer ids and class manifests
* note that it is not catching for system messages, since that could result
in infinite resending
we're moving away from remote deployment in any case which was the
prime reason for the worry about serializable Props. The macro style
actually will be implemented in macWire it seems.
* reference akka/akka-cluster-management in cluster docs
* deprecate the command line tool, including migration note
* cleanup old migration guides
* remove YourKit as sponsor, since we pay license
* Fix incorrect materialized types = Unit in stream documentation (Fixes#21937)
* Correct Int, which should be Integer in Java
* Replace BoxedUnit in stream doc
* speedup ActorCreationPerfSpec
* reduce iterations in ConsistencySpec
* tag SupervisorHierarchySpec as LongRunningTest
* various small speedups and tagging in actor-tests
* speedup expectNoMsg in stream-tests
* tag FramingSpec, and reduce iterations
* speedup QueueSourceSpec
* tag some stream-tests
* reduce iterations in persistence.PerformanceSpec
* reduce iterations in some cluster perf tests
* tag RemoteWatcherSpec
* tag InterpreterStressSpec
* remove LongRunning from ClusterConsistentHashingRouterSpec
* sys property to disable multi-jvm tests in test
* actually disable multi-node tests in validatePullRequest
* doc sbt flags in CONTRIBUTING
* treat snapshot load failure in same way as other recovery failures
* if load of snapshot fails the persistent actor will be stopped, since
we can't assume that a consistent state would be recovered just by
replaying all events, since events may have been deleted
* additional recovery docs
* improve log message
* Move (de)compression helpers to akka-stream #21395
* Move compression and decompression -related classes from
akka-http-experimental to akka-stream
* Add Compression helper object with functions to create
decompressing Flows
* Add a short cookbook entry
* =str move compression impl classes into their own directory (and change visibility)
* =str also expose gzip/deflate compression flows
* Fix formatting of plural ByteStrings in cookbook
* =str #21395 make compressor call Deflater.end in postStop to release resources
Also simplified the creation of the flow given a compressor.
* =str #21395 decompressors call Inflater.end in postStop to release resources
* =str #21395 smallish Scaladoc fixes