diff options
author | Trevor Guidry <trevor.guidry@mongodb.com> | 2022-09-15 17:38:01 +0000 |
---|---|---|
committer | Evergreen Agent <no-reply@evergreen.mongodb.com> | 2022-09-15 21:02:47 +0000 |
commit | 2c903273045c274083dbb7a25746e927100ba634 (patch) | |
tree | 37b77cede53771bb8fd2e729d29000fdc88941e1 | |
parent | d2c70e27724e27ffa412929bc7b11a64afde194e (diff) | |
download | mongo-2c903273045c274083dbb7a25746e927100ba634.tar.gz |
SERVER-69578 add bugprone-misplaced-widening-cast check to clang-tidy
-rw-r--r-- | .clang-tidy | 2 | ||||
-rw-r--r-- | src/mongo/db/repl/oplog_applier_test.cpp | 3 | ||||
-rw-r--r-- | src/mongo/db/repl/tenant_oplog_batcher_test.cpp | 2 | ||||
-rw-r--r-- | src/mongo/db/s/auto_split_vector.cpp | 2 | ||||
-rw-r--r-- | src/mongo/db/s/balancer/balancer_defragmentation_policy_impl.cpp | 11 | ||||
-rw-r--r-- | src/mongo/db/sorter/sorter.cpp | 2 | ||||
-rw-r--r-- | src/mongo/util/tcmalloc_server_status_section.cpp | 4 |
7 files changed, 15 insertions, 11 deletions
diff --git a/.clang-tidy b/.clang-tidy index efdc688a0af..f45cd314ec8 100644 --- a/.clang-tidy +++ b/.clang-tidy @@ -16,6 +16,7 @@ Checks: '-*, bugprone-incorrect-roundings, bugprone-macro-repeated-side-effects, bugprone-misplaced-operator-in-strlen-in-alloc, + bugprone-misplaced-widening-cast, bugprone-multiple-statement-macro, bugprone-string-integer-assignment, bugprone-suspicious-enum-usage, @@ -40,7 +41,6 @@ Checks: '-*, -bugprone-forwarding-reference-overload, -bugprone-lambda-function-name, -bugprone-macro-parentheses, - -bugprone-misplaced-widening-cast, -bugprone-move-forwarding-reference, -bugprone-narrowing-conversions, -bugprone-parent-virtual-call, diff --git a/src/mongo/db/repl/oplog_applier_test.cpp b/src/mongo/db/repl/oplog_applier_test.cpp index c8b8016d4ca..fbd35674d1e 100644 --- a/src/mongo/db/repl/oplog_applier_test.cpp +++ b/src/mongo/db/repl/oplog_applier_test.cpp @@ -237,7 +237,8 @@ TEST_F(OplogApplierTest, GetNextApplierBatchChecksBatchLimitsForSizeOfOperations _applier->enqueue(opCtx(), srcOps.cbegin(), srcOps.cend()); // Set batch limits so that only the first two operations can fit into the first batch. - _limits.bytes = std::size_t(srcOps[0].getRawObjSizeBytes() + srcOps[1].getRawObjSizeBytes()); + _limits.bytes = + std::size_t(srcOps[0].getRawObjSizeBytes()) + std::size_t(srcOps[1].getRawObjSizeBytes()); // First batch: [insert, insert] auto batch = unittest::assertGet(_applier->getNextApplierBatch(opCtx(), _limits)); diff --git a/src/mongo/db/repl/tenant_oplog_batcher_test.cpp b/src/mongo/db/repl/tenant_oplog_batcher_test.cpp index 5b82a4c4afe..e7e1e4791a8 100644 --- a/src/mongo/db/repl/tenant_oplog_batcher_test.cpp +++ b/src/mongo/db/repl/tenant_oplog_batcher_test.cpp @@ -299,7 +299,7 @@ TEST_F(TenantOplogBatcherTest, GetNextApplierBatchChecksBatchLimitsForSizeOfOper // Set batch limits so that only the first two operations can fit into the first batch. auto limits = bigBatchLimits; - limits.bytes = std::size_t(srcOps[0].objsize() + srcOps[1].objsize()); + limits.bytes = std::size_t(srcOps[0].objsize()) + std::size_t(srcOps[1].objsize()); auto batcher = std::make_shared<TenantOplogBatcher>( _migrationUuid, &_oplogBuffer, _executor, Timestamp(), OpTime()); ASSERT_OK(batcher->startup()); diff --git a/src/mongo/db/s/auto_split_vector.cpp b/src/mongo/db/s/auto_split_vector.cpp index 26eaac24669..efbdad8c3c5 100644 --- a/src/mongo/db/s/auto_split_vector.cpp +++ b/src/mongo/db/s/auto_split_vector.cpp @@ -271,7 +271,7 @@ std::pair<std::vector<BSONObj>, bool> autoSplitVector(OperationContext* opCtx, lastSplitPoint = splitKeys.back(); numScannedKeys = 0; - if (limit && splitKeys.size() == static_cast<size_t>(*limit + 1)) { + if (limit && splitKeys.size() == static_cast<size_t>(*limit) + 1) { // If the user has specified a limit, calculate the first `limit + 1` split // points (avoid creating small chunks) break; diff --git a/src/mongo/db/s/balancer/balancer_defragmentation_policy_impl.cpp b/src/mongo/db/s/balancer/balancer_defragmentation_policy_impl.cpp index 2cadf4e26b0..59d6bae1fc7 100644 --- a/src/mongo/db/s/balancer/balancer_defragmentation_policy_impl.cpp +++ b/src/mongo/db/s/balancer/balancer_defragmentation_policy_impl.cpp @@ -336,8 +336,8 @@ public: rangesToMerge += pendingActions.rangesToMerge.size(); rangesWithoutDataSize += pendingActions.rangesWithoutDataSize.size(); } - auto remainingChunksToProcess = - static_cast<long long>(_outstandingActions + rangesToMerge + rangesWithoutDataSize); + auto remainingChunksToProcess = static_cast<long long>(_outstandingActions) + + static_cast<long long>(rangesToMerge) + static_cast<long long>(rangesWithoutDataSize); return BSON(kRemainingChunksToProcess << remainingChunksToProcess); } @@ -1129,7 +1129,8 @@ public: for (const auto& [_, unmergedRanges] : _unmergedRangesByShard) { rangesToMerge += unmergedRanges.size(); } - auto remainingRangesToProcess = static_cast<long long>(_outstandingActions + rangesToMerge); + auto remainingRangesToProcess = + static_cast<long long>(_outstandingActions) + static_cast<long long>(rangesToMerge); return BSON(kRemainingChunksToProcess << remainingRangesToProcess); } @@ -1343,8 +1344,8 @@ public: rangesToFindSplitPoints += pendingActions.rangesToFindSplitPoints.size(); rangesToSplit += pendingActions.rangesToSplit.size(); } - auto remainingChunksToProcess = - static_cast<long long>(_outstandingActions + rangesToFindSplitPoints + rangesToSplit); + auto remainingChunksToProcess = static_cast<long long>(_outstandingActions) + + static_cast<long long>(rangesToFindSplitPoints) + static_cast<long long>(rangesToSplit); return BSON(kRemainingChunksToProcess << remainingChunksToProcess); } diff --git a/src/mongo/db/sorter/sorter.cpp b/src/mongo/db/sorter/sorter.cpp index fccf8cbd956..c39876dd1da 100644 --- a/src/mongo/db/sorter/sorter.cpp +++ b/src/mongo/db/sorter/sorter.cpp @@ -1319,7 +1319,7 @@ void SortedFileWriter<Key, Value>::writeChunk() { snappy::Compress(outBuffer, size, &compressed); verify(compressed.size() <= size_t(std::numeric_limits<int32_t>::max())); - const bool shouldCompress = compressed.size() < size_t(_buffer.len() / 10 * 9); + const bool shouldCompress = compressed.size() < (size_t(_buffer.len()) / 10 * 9); if (shouldCompress) { size = compressed.size(); outBuffer = const_cast<char*>(compressed.data()); diff --git a/src/mongo/util/tcmalloc_server_status_section.cpp b/src/mongo/util/tcmalloc_server_status_section.cpp index 2df8d9022d6..292d60001bf 100644 --- a/src/mongo/util/tcmalloc_server_status_section.cpp +++ b/src/mongo/util/tcmalloc_server_status_section.cpp @@ -119,7 +119,9 @@ public: MallocExtension::instance()->GetNumericProperty("tcmalloc.thread_cache_free_bytes", &thread)) { sub.appendNumber("total_free_bytes", - static_cast<long long>(central + transfer + thread)); + static_cast<long long>(central) + + static_cast<long long>(transfer) + + static_cast<long long>(thread)); } appendNumericPropertyIfAvailable( sub, "central_cache_free_bytes", "tcmalloc.central_cache_free_bytes"); |