Skip to content

Commit 295c41f

Browse files
ruby-oujoEvergreen Agent
authored andcommitted
Import wiredtiger: 13392cc987b86ff0d131ea20255f019f54f42521 from branch mongodb-master
ref: 99698d7a8b..13392cc987 for: 7.2.0-rc0 WT-11771 Be able to skip the validation stage in the cppsuite
1 parent 92094a9 commit 295c41f

File tree

7 files changed

+83
-49
lines changed

7 files changed

+83
-49
lines changed

src/third_party/wiredtiger/dist/test_data.py

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -234,12 +234,12 @@ def __ge__(self, other):
234234
The cache size that wiredtiger will be configured to run with''', min=0, max=100000000000),
235235
Config('compression_enabled', 'false', r'''
236236
Whether the database files will use snappy compression or not.''', type='boolean'),
237-
Config('reverse_collator', 'false', r'''
238-
Configure the database files to use the reverse collator.''', type='boolean'),
239237
Config('duration_seconds', 0, r'''
240238
The duration that the test run will last''', min=0, max=1000000),
241239
Config('enable_logging', 'false', r'''
242240
Enables write ahead logs''', type='boolean'),
241+
Config('reverse_collator', 'false', r'''
242+
Configure the database files to use the reverse collator.''', type='boolean'),
243243
Config('statistics_config', '', r'''
244244
Statistic configuration that is passed into wiredtiger on open.''',
245245
type='category', subconfig=[
@@ -250,6 +250,8 @@ def __ge__(self, other):
250250
Configuration enabling or disabling statistics logging in the form of json logging.''',
251251
type='boolean')
252252
]),
253+
Config('validate', 'true', r'''
254+
Enables the validation stage.''', type='boolean'),
253255
]
254256

255257
#

src/third_party/wiredtiger/import.data

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,5 +2,5 @@
22
"vendor": "wiredtiger",
33
"github": "wiredtiger/wiredtiger.git",
44
"branch": "mongodb-master",
5-
"commit": "99698d7a8bd6ea4e15a6c4da5cfecb6f169daba9"
5+
"commit": "13392cc987b86ff0d131ea20255f019f54f42521"
66
}

src/third_party/wiredtiger/src/config/test_config.c

Lines changed: 70 additions & 42 deletions
Large diffs are not rendered by default.

src/third_party/wiredtiger/test/cppsuite/README.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -33,10 +33,10 @@ There is no default implementation as this function is intended to be user-defin
3333
A checkpoint operation executes a checkpoint on the database every 60 seconds. Checkpoints are enabled or disabled by assigning one or zero threads in the configuration file, and are enabled by default. The checkpoint frequency is defined in the configuration file.
3434

3535
### Validate
36-
The default validation algorithm requires the default [operation tracker](#operation-tracker) configuration. If the operation tracker is reconfigured, the default validation is skipped. The default validator checks if the WiredTiger tables are consistent with the tables tracked by the operation tracker by comparing their content. The validation (and hence the test) fails if there is any mismatch.
36+
The default validation algorithm requires the default [operation tracker](#operation-tracker) configuration. If the operation tracker is reconfigured, the default validation is skipped. The default validator checks if the WiredTiger tables are consistent with the tables tracked by the operation tracker by comparing their content. The validation (and hence the test) fails if there is any mismatch. The validation stage can be disabled in the configuration file.
3737

3838
## Components
39-
The framework provides built-in components that each offer a set of features to enhance the testing experience. Their behavior is customized through a configuration file. A component has a life cycle made of three stages: *load*, *run*, and *finish*. Each of these stages is described for each component below.
39+
The framework provides built-in components that each offer a set of features to enhance the testing experience. Their behavior is customized through a configuration file. A component has a life cycle made of three stages: *load*, *run*, and *finish*. Each of these stages is described for each component below.
4040

4141

4242
### Workload manager

src/third_party/wiredtiger/test/cppsuite/src/common/constants.cpp

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -76,6 +76,7 @@ const std::string TRACKING_KEY_FORMAT = "tracking_key_format";
7676
const std::string TRACKING_VALUE_FORMAT = "tracking_value_format";
7777
const std::string TYPE = "type";
7878
const std::string UPDATE_OP_CONFIG = "update_config";
79+
const std::string VALIDATE = "validate";
7980
const std::string VALUE_SIZE = "value_size";
8081

8182
/* WiredTiger API consts. */

src/third_party/wiredtiger/test/cppsuite/src/common/constants.h

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -79,6 +79,7 @@ extern const std::string TRACKING_KEY_FORMAT;
7979
extern const std::string TRACKING_VALUE_FORMAT;
8080
extern const std::string TYPE;
8181
extern const std::string UPDATE_OP_CONFIG;
82+
extern const std::string VALIDATE;
8283
extern const std::string VALUE_SIZE;
8384

8485
/* WiredTiger API consts. */

src/third_party/wiredtiger/test/cppsuite/src/main/test.cpp

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -168,8 +168,10 @@ test::run()
168168
it->finish();
169169

170170
/* Validation stage. */
171-
this->validate(_operation_tracker->enabled(), _operation_tracker->get_operation_table_name(),
172-
_operation_tracker->get_schema_table_name(), _workload_manager->get_database());
171+
if (_config->get_bool(VALIDATE))
172+
this->validate(_operation_tracker->enabled(),
173+
_operation_tracker->get_operation_table_name(),
174+
_operation_tracker->get_schema_table_name(), _workload_manager->get_database());
173175

174176
/* Log perf stats. */
175177
metrics_writer::instance().output_perf_file(_args.test_name);

0 commit comments

Comments
 (0)