From 9029c98308fab09e3f06a89bb96a5389d078a697 Mon Sep 17 00:00:00 2001 From: Karasiq Date: Fri, 17 Apr 2020 17:52:04 +0300 Subject: [PATCH] Storage selector fixes --- .../storage/replication/selectors/SimpleStorageSelector.scala | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/core/src/main/scala/com/karasiq/shadowcloud/storage/replication/selectors/SimpleStorageSelector.scala b/core/src/main/scala/com/karasiq/shadowcloud/storage/replication/selectors/SimpleStorageSelector.scala index ca8b5f83..e00e96cc 100644 --- a/core/src/main/scala/com/karasiq/shadowcloud/storage/replication/selectors/SimpleStorageSelector.scala +++ b/core/src/main/scala/com/karasiq/shadowcloud/storage/replication/selectors/SimpleStorageSelector.scala @@ -57,7 +57,7 @@ class SimpleStorageSelector(region: RegionContext) extends StorageSelector { chunk.writeStatus match { case WriteStatus.Pending(affinity) ⇒ val newList = affinity.mandatory.filterNot(chunk.availability.isFailed) ++ generatedList - affinity.copy(mandatory = (selectStoragesToWrite(newList) ++ settings.writeInclude).distinct) + affinity.copy(mandatory = (selectStoragesToWrite(newList)).distinct) case _ ⇒ ChunkWriteAffinity(selectStoragesToWrite(generatedList)) @@ -75,6 +75,6 @@ class SimpleStorageSelector(region: RegionContext) extends StorageSelector { } protected def selectStoragesToWrite(storages: Seq[StorageId]): Seq[StorageId] = { - Utils.takeOrAll(sortStorages(storages.distinct), settings.dataRF) + Utils.takeOrAll(sortStorages(storages.filterNot(settings.writeInclude).distinct), settings.dataRF) ++ settings.writeInclude } }