[SERVER-74678] Coverity analysis defect 135355: Copy without assign Created: 07/Mar/23  Updated: 29/Oct/23  Resolved: 15/Jun/23

Status: Closed
Project: Core Server
Component/s: Internal Code
Affects Version/s: None
Fix Version/s: 7.1.0-rc0

Type: Improvement Priority: Minor - P4
Reporter: Coverity Collector User Assignee: Brett Nawrocki
Resolution: Fixed Votes: 0
Labels: coverity, sharding-nyc-subteam1
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Issue Links:
Problem/Incident
is caused by SERVER-73081 Implement MovePrimaryCumulativeMetrics Closed
Related
is related to SERVER-74677 Coverity analysis defect 135358: Copy... Closed
Assigned Teams:
Sharding NYC
Backwards Compatibility: Fully Compatible
Participants:

 Description   

Copy without assign

This class has a user-defined copy constructor but no user-defined assignment operator. If the copy constructor is necessary to manage owned resources then a corresponding assignment operator is usually required. If an object of this type is assigned memory leaks and/or use-after-free errors may occur. Note that a compiler-generated assignment operator will perform only a bit-wise copy for any fields that do not have their own assignment operators defined. Class has user-written copy constructor but no user-written assignment operator
/src/mongo/db/s/metrics/with_oplog_application_latency_metrics.h:39: COPY_WITHOUT_ASSIGN 135355 Class "mongo::WithOplogApplicationLatencyMetrics<mongo::WithOplogApplicationCountMetrics<mongo::WithStateManagementForCumulativeMetrics<mongo::ShardingDataTransformCumulativeMetrics, mongo::resharding_cumulative_metrics::ReshardingMetricsEnumSizeTemplateHelper, mongo::CoordinatorStateEnum, mongo::DonorStateEnum, mongo::RecipientStateEnum> > >" has a user-written copy constructor "mongo::WithOplogApplicationLatencyMetrics<mongo::WithOplogApplicationCountMetrics<mongo::WithStateManagementForCumulativeMetrics<mongo::ShardingDataTransformCumulativeMetrics, mongo::resharding_cumulative_metrics::ReshardingMetricsEnumSizeTemplateHelper, mongo::CoordinatorStateEnum, mongo::DonorStateEnum, mongo::RecipientStateEnum> > >::WithOplogApplicationLatencyMetrics<mongo::WithOplogApplicationLatencyMetrics<mongo::WithOplogApplicationCountMetrics<mongo::WithStateManagementForCumulativeMetrics<mongo::ShardingDataTransformCumulativeMetrics, mongo::resharding_cumulative_metrics::ReshardingMetricsEnumSizeTemplateHelper, mongo::CoordinatorStateEnum, mongo::DonorStateEnum, mongo::RecipientStateEnum> > > >(mongo::WithOplogApplicationLatencyMetrics<mongo::WithOplogApplicationCountMetrics<mongo::WithStateManagementForCumulativeMetrics<mongo::ShardingDataTransformCumulativeMetrics, mongo::resharding_cumulative_metrics::ReshardingMetricsEnumSizeTemplateHelper, mongo::CoordinatorStateEnum, mongo::DonorStateEnum, mongo::RecipientStateEnum> > > &&)" but no corresponding user-written assignment operator.
/src/mongo/db/s/metrics/with_oplog_application_latency_metrics.h:42: COPY_WITHOUT_ASSIGN 135355 User-written copy constructor.



 Comments   
Comment by Githook User [ 01/Jun/23 ]

Author:

{'name': 'Brett Nawrocki', 'email': 'brett.nawrocki@mongodb.com', 'username': 'brettnawrocki'}

Message: SERVER-74678 Fix coverity issue for WithOplogApplicationLatencyMetrics
Branch: master
https://github.com/mongodb/mongo/commit/d16c31b296c497ec0150d3ec384f7e6533d92b4f

Generated at Thu Feb 08 06:28:09 UTC 2024 using Jira 9.7.1#970001-sha1:2222b88b221c4928ef0de3161136cc90c8356a66.