summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--src/mongo/db/s/scoped_operation_completion_sharding_actions.cpp13
1 files changed, 8 insertions, 5 deletions
diff --git a/src/mongo/db/s/scoped_operation_completion_sharding_actions.cpp b/src/mongo/db/s/scoped_operation_completion_sharding_actions.cpp
index dfc82d46894..80e1efd2c3d 100644
--- a/src/mongo/db/s/scoped_operation_completion_sharding_actions.cpp
+++ b/src/mongo/db/s/scoped_operation_completion_sharding_actions.cpp
@@ -36,6 +36,7 @@
#include "mongo/db/s/implicit_create_collection.h"
#include "mongo/db/s/operation_sharding_state.h"
#include "mongo/db/s/shard_filtering_metadata_refresh.h"
+#include "mongo/db/s/sharding_state.h"
#include "mongo/s/cannot_implicitly_create_collection_info.h"
#include "mongo/s/stale_exception.h"
#include "mongo/util/log.h"
@@ -78,11 +79,13 @@ ScopedOperationCompletionShardingActions::~ScopedOperationCompletionShardingActi
<< causedBy(redact(handleMismatchStatus));
} else if (auto cannotImplicitCreateCollInfo =
status->extraInfo<CannotImplicitlyCreateCollectionInfo>()) {
- auto handleCannotImplicitCreateStatus =
- onCannotImplicitlyCreateCollection(_opCtx, cannotImplicitCreateCollInfo->getNss());
- if (!handleCannotImplicitCreateStatus.isOK())
- log() << "Failed to handle CannotImplicitlyCreateCollection exception"
- << causedBy(redact(handleCannotImplicitCreateStatus));
+ if (ShardingState::get(_opCtx)->enabled()) {
+ auto handleCannotImplicitCreateStatus =
+ onCannotImplicitlyCreateCollection(_opCtx, cannotImplicitCreateCollInfo->getNss());
+ if (!handleCannotImplicitCreateStatus.isOK())
+ log() << "Failed to handle CannotImplicitlyCreateCollection exception"
+ << causedBy(redact(handleCannotImplicitCreateStatus));
+ }
}
}