Use SelectorAwaiting in case of read and delete load in s3_dar.js scenario #150

Merged
fyrchik merged 2 commits from mmalygina/xk6-frostfs:investigate-deletes into master 2024-09-04 19:51:18 +00:00

View file

@ -71,11 +71,23 @@ if (write_vu_count > 0) {
};
}
const read_vu_count = parseInt(__ENV.READERS || '0');
if (read_vu_count > 0) {
scenarios.read = {
executor : 'constant-vus',
vus : read_vu_count,
duration : `${duration}s`,
exec : 'obj_read',
gracefulStop : '5s',
};
}
const delete_age = __ENV.DELETE_AGE ? parseInt(__ENV.DELETE_AGE) : undefined;
let obj_to_delete_selector = undefined;
let obj_to_delete_exit_on_null = undefined;
if (registry_enabled && delete_age) {
obj_to_delete_exit_on_null = write_vu_count == 0;
if (registry_enabled ) {

How does it help?

How does it help?

In case we are running both read and delete load we don't use SelectorOneshot, but use SelectorAwaiting

In case we are running both read and delete load we don't use SelectorOneshot, but use SelectorAwaiting
obj_to_delete_exit_on_null = (write_vu_count == 0) && (read_vu_count == 0)
let constructor = obj_to_delete_exit_on_null ? registry.getOneshotSelector
: registry.getSelector;
@ -88,16 +100,7 @@ if (registry_enabled && delete_age) {
});
}
const read_vu_count = parseInt(__ENV.READERS || '0');
if (read_vu_count > 0) {
scenarios.read = {
executor : 'constant-vus',
vus : read_vu_count,
duration : `${duration}s`,
exec : 'obj_read',
gracefulStop : '5s',
};
}
const delete_vu_count = parseInt(__ENV.DELETERS || '0');
if (delete_vu_count > 0) {