diff options
author | Jack Mulrow <jack.mulrow@mongodb.com> | 2019-11-12 16:18:43 +0000 |
---|---|---|
committer | evergreen <evergreen@mongodb.com> | 2019-11-12 16:18:43 +0000 |
commit | 25101f418ecc42d62339ad5e219177a6822bd59b (patch) | |
tree | f13eae1ee305a78d52e39e6a68ee52e0bcc7d33f | |
parent | cc1842516ec7626c7a201a32c8bb94b4b23f3143 (diff) | |
download | mongo-25101f418ecc42d62339ad5e219177a6822bd59b.tar.gz |
SERVER-43217 Secondaries should ignore lastCollectionVersion field when waiting for a refresh to finish
-rw-r--r-- | src/mongo/db/s/shard_server_op_observer.cpp | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/src/mongo/db/s/shard_server_op_observer.cpp b/src/mongo/db/s/shard_server_op_observer.cpp index fe9b34c8e64..f96a566e501 100644 --- a/src/mongo/db/s/shard_server_op_observer.cpp +++ b/src/mongo/db/s/shard_server_op_observer.cpp @@ -272,8 +272,8 @@ void ShardServerOpObserver::onUpdate(OperationContext* opCtx, const OplogUpdateE // Need the WUOW to retain the lock for CollectionVersionLogOpHandler::commit() AutoGetCollection autoColl(opCtx, updatedNss, MODE_IX); - if (setField.hasField(ShardCollectionType::kLastRefreshedCollectionVersionFieldName) && - !setField.getBoolField("refreshing")) { + auto refreshingField = setField.getField(ShardCollectionType::kRefreshingFieldName); + if (refreshingField.isBoolean() && !refreshingField.boolean()) { opCtx->recoveryUnit()->registerChange( std::make_unique<CollectionVersionLogOpHandler>(opCtx, updatedNss)); } |