diff options
author | Arne H Juul <arnej27959@users.noreply.github.com> | 2018-01-03 21:16:06 +0100 |
---|---|---|
committer | GitHub <noreply@github.com> | 2018-01-03 21:16:06 +0100 |
commit | 53155ff5b315eb55cb605ff7d92e47c073cfab5c (patch) | |
tree | 532d832b1a4edf1600bf42892de0b6618b8a4c95 /storage/src | |
parent | 5561f3976b1244d81398f380bc62f5bea28c7f19 (diff) | |
parent | e26364f8c3b63ab19c6969eaceedf350f0a9327d (diff) |
Merge pull request #4510 from vespa-engine/arnej/remove-from-db-if-all-nodes-down
guard against empty set of nodes
Diffstat (limited to 'storage/src')
-rw-r--r-- | storage/src/vespa/storage/distributor/distributorcomponent.cpp | 5 |
1 files changed, 5 insertions, 0 deletions
diff --git a/storage/src/vespa/storage/distributor/distributorcomponent.cpp b/storage/src/vespa/storage/distributor/distributorcomponent.cpp index f0643eec37e..ac6a2957052 100644 --- a/storage/src/vespa/storage/distributor/distributorcomponent.cpp +++ b/storage/src/vespa/storage/distributor/distributorcomponent.cpp @@ -281,6 +281,11 @@ DistributorComponent::updateBucketDatabase( if (updateFlags & DatabaseUpdate::RESET_TRUSTED) { dbentry->resetTrusted(); } + if (dbentry->getNodeCount() == 0) { + LOG(warning, "all nodes in changedNodes set (size %zu) are down, removing dbentry", changedNodes.size()); + bucketSpace.getBucketDatabase().remove(bucket.getBucketId()); + return; + } bucketSpace.getBucketDatabase().update(dbentry); } |