- Move all entry related logic out of the ShardRegion and into a
new dedicated child `Shard` actor.
- Shard actor persists entry started and passivated messages.
- Non passivated entries get restarted on termination.
- Shard Coordinator restarts shards on other regions upon region failure or handoff
- Ensures shard rebalance restarts shards.
- Shard buffers messages after an EntryStarted is received until state persisted
- Shard buffers messages (still) after a Passivate is received until state persisted
- Shard will retry persisting state until success
- Shard will restart entries automatically (after a backoff) if not passivated and remembering entries
- Added Entry path change to the migration docs
* scala-library.jar had changed name to scala-library-2.10.4.jar
* use wildcard to avoid same problem when scala-library version is changed
* the wilcard will only include jar files in the lib directory, and not the
lib/akka directory, see 'Understanding class path wildcards'
http://docs.oracle.com/javase/6/docs/technotes/tools/windows/classpath.html
(cherry picked from commit 996de05b44531bda517ef8ee274a34ad76e9716f)
AtLeastOnceDelivery can delivery out-of-order, and that's OK.
Although, in the case of message replay followed by taking user land
commands which may trigger `deliver` calls, it is nicer to at least once
try to send the replayed but not confirmed deliveries *first*, before
sending the completely new deliveries.
This change acomplishes this by triggering redelivery explicitly when
recovery has finished, and setting the timestamps on these messages a
bit in the past, so they hit their redelivery deadline right away during
this recovery induced redelivery.
Resolves#15590
* The filter is used by the LoggingAdapter before publishing
to the event bus
* Slf4jLoggingFilter uses backend log level configuration
(e.g. logback.xml)
isEmpty() need not rely on peek(which is intended for consumer use) and instead compare head to tail.
count() should stop counting at max int to avoid wrap.
Since the updated github issues views, it shows all "removed tags",
events in the issue even if the removed tag was never set on the issue.
So this script would always show up as "removed validating,needs-attention"
Even if the issue never had the label needs-attention set to it,
which is confusing visually.
This change introduces that we only remove tags that actually are set on
the issue.