15112: Report volumes without replicas as "none" in -dump output.
authorTom Clegg <tclegg@veritasgenetics.com>
Sat, 20 Apr 2019 21:22:41 +0000 (17:22 -0400)
committerTom Clegg <tclegg@veritasgenetics.com>
Mon, 22 Apr 2019 14:54:02 +0000 (10:54 -0400)
...instead of reporting as "stay" or "none" depending on
whether *other* volumes have replicas.

Arvados-DCO-1.1-Signed-off-by: Tom Clegg <tclegg@veritasgenetics.com>

services/keep-balance/balance.go

index 836be2e6080c3345758a38bbd0953ace6d7a11c0..9e8ca3a672dab68ad7f783912096a16bc675db17 100644 (file)
@@ -732,17 +732,17 @@ func (bal *Balancer) balanceBlock(blkid arvados.SizedDigest, blk *BlockState) ba
                                From:        slot.mnt,
                        })
                        change = changeTrash
-               case len(blk.Replicas) == 0:
-                       change = changeNone
-               case slot.repl == nil && slot.want && !slot.mnt.ReadOnly:
+               case len(blk.Replicas) > 0 && slot.repl == nil && slot.want && !slot.mnt.ReadOnly:
                        slot.mnt.KeepService.AddPull(Pull{
                                SizedDigest: blkid,
                                From:        blk.Replicas[0].KeepMount.KeepService,
                                To:          slot.mnt,
                        })
                        change = changePull
-               default:
+               case slot.repl != nil:
                        change = changeStay
+               default:
+                       change = changeNone
                }
                if bal.Dumper != nil {
                        var mtime int64