* #21725 cluster-sharding doesn't delete snapshots and messages Fixes #21725 Without deleting messages those pollute persistence with not needed anymore messages. Naive and bullet proof flow is snapshot -> delete messges -> delete snapshots. # Пожалуйста, введите сообщение коммита для ваших изменений. Строки, # начинающиеся с «#» будут оставлены; вы можете удалить их вручную, # если хотите. Пустое сообщение отменяет процесс коммита. # # Дата: Mon Oct 31 23:24:37 2016 +0300 # # интерактивное перемещение в процессе; над432b53c# Последняя команда выполнена (1 команда выполнена): # edit f86b015 21725 cluster-sharding doesn't delete snapshots and messages Fixes #21725 Without deleting messages those pollute persistence with not needed anymore messages. Naive and bullet proof flow is snapshot -> delete messges -> delete snapshots. # Следующая команда для выполнения (1 команда осталась): # pick 56adb40 #21725 keeping N number of batches (messages and snapshot) using N from configuration # Вы сейчас редактируете коммит при перемещении ветки «fix-21725-delete-messages-after-snapshot» над «432b53c». # # Изменения, которые будут включены в коммит: # изменено: akka-cluster-sharding/src/main/scala/akka/cluster/sharding/Shard.scala # изменено: akka-cluster-sharding/src/main/scala/akka/cluster/sharding/ShardCoordinator.scala # * #21725 keeping N number of batches (messages and snapshot) using N from configuration
This commit is contained in:
parent
59a3596360
commit
c5ba0a3565
5 changed files with 118 additions and 18 deletions
|
|
@ -37,6 +37,7 @@ object ClusterShardingSettings {
|
|||
entityRestartBackoff = config.getDuration("entity-restart-backoff", MILLISECONDS).millis,
|
||||
rebalanceInterval = config.getDuration("rebalance-interval", MILLISECONDS).millis,
|
||||
snapshotAfter = config.getInt("snapshot-after"),
|
||||
keepNrOfBatches = config.getInt("keep-nr-of-batches"),
|
||||
leastShardAllocationRebalanceThreshold =
|
||||
config.getInt("least-shard-allocation-strategy.rebalance-threshold"),
|
||||
leastShardAllocationMaxSimultaneousRebalance =
|
||||
|
|
@ -87,6 +88,7 @@ object ClusterShardingSettings {
|
|||
val entityRestartBackoff: FiniteDuration,
|
||||
val rebalanceInterval: FiniteDuration,
|
||||
val snapshotAfter: Int,
|
||||
val keepNrOfBatches: Int,
|
||||
val leastShardAllocationRebalanceThreshold: Int,
|
||||
val leastShardAllocationMaxSimultaneousRebalance: Int,
|
||||
val waitingForStateTimeout: FiniteDuration,
|
||||
|
|
@ -99,6 +101,44 @@ object ClusterShardingSettings {
|
|||
entityRecoveryStrategy == "all" || entityRecoveryStrategy == "constant",
|
||||
s"Unknown 'entity-recovery-strategy' [$entityRecoveryStrategy], valid values are 'all' or 'constant'")
|
||||
|
||||
// included for binary compatibility
|
||||
def this(
|
||||
coordinatorFailureBackoff: FiniteDuration,
|
||||
retryInterval: FiniteDuration,
|
||||
bufferSize: Int,
|
||||
handOffTimeout: FiniteDuration,
|
||||
shardStartTimeout: FiniteDuration,
|
||||
shardFailureBackoff: FiniteDuration,
|
||||
entityRestartBackoff: FiniteDuration,
|
||||
rebalanceInterval: FiniteDuration,
|
||||
snapshotAfter: Int,
|
||||
leastShardAllocationRebalanceThreshold: Int,
|
||||
leastShardAllocationMaxSimultaneousRebalance: Int,
|
||||
waitingForStateTimeout: FiniteDuration,
|
||||
updatingStateTimeout: FiniteDuration,
|
||||
entityRecoveryStrategy: String,
|
||||
entityRecoveryConstantRateStrategyFrequency: FiniteDuration,
|
||||
entityRecoveryConstantRateStrategyNumberOfEntities: Int) = {
|
||||
this(
|
||||
coordinatorFailureBackoff,
|
||||
retryInterval,
|
||||
bufferSize,
|
||||
handOffTimeout,
|
||||
shardStartTimeout,
|
||||
shardFailureBackoff,
|
||||
entityRestartBackoff,
|
||||
rebalanceInterval,
|
||||
snapshotAfter,
|
||||
2,
|
||||
leastShardAllocationRebalanceThreshold,
|
||||
leastShardAllocationMaxSimultaneousRebalance,
|
||||
waitingForStateTimeout,
|
||||
updatingStateTimeout,
|
||||
entityRecoveryStrategy,
|
||||
entityRecoveryConstantRateStrategyFrequency,
|
||||
entityRecoveryConstantRateStrategyNumberOfEntities)
|
||||
}
|
||||
|
||||
// included for binary compatibility
|
||||
def this(
|
||||
coordinatorFailureBackoff: FiniteDuration,
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue