We use separate drives for account and container servers, one per server. When 2 drives crashed we noticed that used space on all rest account and container DB storages increased 2 times.
Space was consumed slowly - every replication cycle was consumed 1/server_count of space. There was increase from 15% to 30% used space where trends stopped and then increased to 45% when 2 drives were failed. When drive was replaced after few hours, everything returned to normal state.
------------------------------------------
How to reproduce with SAIO:
* configure 2 replica with 4 servers or increase container servers count to have drives count >= replicas + 2,
* create some containers
for c in {1..50} ; do swift -A http://127.0.0.1:8080/auth/v1.0 -U test:tester -K testing post cont$c ; done
* configure one (or more) container servers to see device as unmounted: set mount_check = true in /etc/swift/container-server/2.conf (check_mount fails on directory that is not mounted device) and restart container server(s),
* replicate, replicate - every replicator cycle replicates databases of unmounted device into next servers
for n in {1..2} ; do for i in 1 3 4 ; do swift-container-replicator /etc/swift/container-server/$i.conf -o ; done ; done
We use separate drives for account and container servers, one per server. When 2 drives crashed we noticed that used space on all rest account and container DB storages increased 2 times.
Space was consumed slowly - every replication cycle was consumed 1/server_count of space. There was increase from 15% to 30% used space where trends stopped and then increased to 45% when 2 drives were failed. When drive was replaced after few hours, everything returned to normal state.
------- ------- ------- ------- ------- -------
How to reproduce with SAIO:
* configure 2 replica with 4 servers or increase container servers count to have drives count >= replicas + 2,
* create some containers 127.0.0. 1:8080/ auth/v1. 0 -U test:tester -K testing post cont$c ; done
for c in {1..50} ; do swift -A http://
* configure one (or more) container servers to see device as unmounted: set mount_check = true in /etc/swift/ container- server/ 2.conf (check_mount fails on directory that is not mounted device) and restart container server(s),
* replicate, replicate - every replicator cycle replicates databases of unmounted device into next servers -replicator /etc/swift/ container- server/ $i.conf -o ; done ; done
for n in {1..2} ; do for i in 1 3 4 ; do swift-container