diff options
author | Silvia Surroca <silvia.surroca@mongodb.com> | 2022-11-02 16:44:05 +0000 |
---|---|---|
committer | Evergreen Agent <no-reply@evergreen.mongodb.com> | 2022-11-02 17:55:48 +0000 |
commit | 8e3ffddd878f3a1faa508c2dbddd5e0cdec314a8 (patch) | |
tree | 67904503c917f12e554cd28303264d4abaedaa4d | |
parent | b8c329e86ae43522ff0fa52cdecbc23f1b823c00 (diff) | |
download | mongo-8e3ffddd878f3a1faa508c2dbddd5e0cdec314a8.tar.gz |
SERVER-70928 Range Deleter OpObserver should consider the DBExceptions thrown by AutoGetCollection
-rw-r--r-- | src/mongo/db/s/range_deleter_service_op_observer.cpp | 16 |
1 files changed, 12 insertions, 4 deletions
diff --git a/src/mongo/db/s/range_deleter_service_op_observer.cpp b/src/mongo/db/s/range_deleter_service_op_observer.cpp index 9c1e51f9a6f..10bbbb6a924 100644 --- a/src/mongo/db/s/range_deleter_service_op_observer.cpp +++ b/src/mongo/db/s/range_deleter_service_op_observer.cpp @@ -35,6 +35,9 @@ #include "mongo/db/s/range_deleter_service.h" #include "mongo/db/s/range_deletion_task_gen.h" #include "mongo/db/update/update_oplog_entry_serialization.h" +#include "mongo/logv2/log.h" + +#define MONGO_LOGV2_DEFAULT_COMPONENT ::mongo::logv2::LogComponent::kShardingRangeDeleter namespace mongo { namespace { @@ -54,10 +57,15 @@ void registerTaskWithOngoingQueriesOnOpLogEntryCommit(OperationContext* opCtx, (void)RangeDeleterService::get(opCtx)->registerTask( rdt, std::move(waitForActiveQueriesToComplete)); } catch (const DBException& ex) { - dassert(ex.code() == ErrorCodes::NotYetInitialized, - str::stream() << "No error different from `NotYetInitialized` is expected " - "to be propagated to the range deleter observer. Got error: " - << ex.toStatus()); + if (ex.code() != ErrorCodes::NotYetInitialized && + !ErrorCodes::isA<ErrorCategory::NotPrimaryError>(ex.code())) { + LOGV2_WARNING(7092800, + "No error different from `NotYetInitialized` or `NotPrimaryError` " + "category is expected to be propagated to the range deleter " + "observer. Range deletion task not registered.", + "error"_attr = redact(ex), + "task"_attr = rdt); + } } }); } |