Attempt to fix an error [#METR-20659].

This commit is contained in:
Alexey Milovidov 2016-03-30 01:52:11 +03:00
parent 04875a022a
commit bcb8e4e92c

View File

@ -1289,7 +1289,11 @@ void StorageReplicatedMergeTree::executeDropRange(const StorageReplicatedMergeTr
zkutil::Ops ops;
removePartFromZooKeeper(part->name, ops);
zookeeper->multi(ops);
auto code = zookeeper->tryMulti(ops);
/// Если кусок уже удалён (например, потому что он старый и только что удалился в cleanupThread), то всё Ок.
if (code != ZOK && code != ZNONODE)
throw zkutil::KeeperException(code);
/// Если кусок нужно удалить, надежнее удалить директорию после изменений в ZooKeeper.
if (!entry.detach)