-
Type: Bug
-
Resolution: Unresolved
-
Priority: Major - P3
-
None
-
Affects Version/s: None
-
Component/s: None
-
Storage Engines
-
StorEng - Defined Pipeline
Coverity has detected violations of the "Rule of three" at various points in cppsuite.
Compiler generated special functions may behave incorrectly if the class requires a user-definition for any of its special functions. This class has user-definitions for at least one but not all of its special functions (copy constructor, copy assignment operator, destructor). If one of these functions requires a user-definition then it is likely all of them should have a definition.
Here are all the coverity occurrences:
Coverity CID: code location: 138767 test/cppsuite/src/common/random_generator.h:47 138867 test/cppsuite/src/common/thread_manager.h:36 138901 test/cppsuite/src/component/metrics_monitor.h:47 138974 test/cppsuite/src/component/metrics_writer.h::38 138926 test/cppsuite/src/main/collection.h:37 138892 test/cppsuite/src/main/configuration.h:58 138803 test/cppsuite/src/util/barrier.h:43 138955 test/cppsuite/src/util/execution_timer.h:39
/test/cppsuite/src/common/random_generator.h:47: RULE_OF_ZERO_THREE_FIVE 138767 Class "test_harness::random_generator" has a user definition for at least one special function (copy constructor, copy assignment, destructor) but not all. If one of these functions requires a user definition then the others likely do as well.
/test/cppsuite/src/common/random_generator.h:52: RULE_OF_ZERO_THREE_FIVE 138767 User-defined copy constructor.
/test/cppsuite/src/common/random_generator.h:53: RULE_OF_ZERO_THREE_FIVE 138767 User-defined copy assignment operator.