Not having it causes a compile error in 'sbt ++2.12.6 clean akka-actor/compile'
on jdk9, though I can't quite explain why: using the jdk8 classpath otherwise
seems to work, and I can't reproduce it in a minimal example yet.
This reverts commit c6735b630b75408b0c8bbdb22dd31f7d144346ef.
* The TimerMsg was wrapped in IncomingCommand and therefore stashed,
and when unstashed causing the ClassCastException
* Solved by not using timers here but plain scheduler
* Also fixing journalPluginId and snapshotPluginId
* Optimize LoadSnapshot if toSequenceNr == 0, i.e. SnapshotCriteria.none,
then no need to involve the snapshot store
* Optimize ReplayMessages if toSequenceNr == 0, i.e. Recovery.none,
then no need to do asyncReplayMessages, but asyncReadHighestSequenceNr
is still needed
* should still load snapshot if critera != none and toSeqNr == 0,
weird case for saving/loading snapshots with seqNr 0
* Ensure NPE is always through when VirtualProcessor.onError(null) is invoked
This fix is similar to #24749, fixing a spec violation bug that was
introduced in #24722.
* Check remembered entities before remembering entity
Messages that come through for an entity before StartEntity
has been processed for that entity caused redundant persistence
of the entity.
When a Success is received, call onCompleteThenStop instead of just
context.stop; that takes care of the completion logic instead of just
stopping the actor and leaving the stream going.
Add test to ensure the stream materializes on Source.actorRef receiving
Status.Success
Remove tests around stream completion behaviour in response to
PoisonPill - as well as these tests not correctly demonstrating that the
completion was passed on downstream, they describe behaviour which was
previously incidental and is no longer accurate.
Update the docs to reflect that PoisonPill should not be used on the
actor ref as this scenario will necessarily result in bad behaviour as
it will be unable to signal the completion downstream.
Make a few grammar fixes and remove some trailing space while updating the
docs.
* Rather than stop so that users can add their own supervision e.g.
restartWithBackOff
* Only allow back off supervisoir for persistent behaviors
* Handle persist rejections
* Composable javadsl CommandHandlerBuilder, #25226
* CommandHandlerBuilder with stateClass and statePredicate parameters
* CommandHandlerBuilder.orElse
* Remove ActorContext from handler function signatures, can be
passed in constructor
Default is 5s which means if the first Read is lost and
a test ddata have any secondary nodes to query it'll
timeout waiting to get the state.
E.g. read being ignored due to loading durable state then
never gets retries