ceph/qa/tasks
Kotresh HR 83c4442c76 mgr/volumes: Make number of cloner threads configurable
The number of cloner threads is set to 4 and it can't be
configured. This patch makes the number of cloner threads
configurable via the mgr config option "max_concurrent_clones".

On an increase in number of cloner threads, it will just
spawn the difference of threads between existing number of
cloner threads and the new configuration. It will not cancel
the running cloner threads.

On decrease in number of cloner threads, the cases are as follows.

1. If all cloner threads are waiting for the job:
      In this case, all threads are notified and required number
   threads are terminated.

2. If all the cloner threads are processing a job:
      In this case, the condition is validated for each thread after
   the current job is finished and the thread is termianted if the
   condition for required number of cloner threads is not satisified.

3. If few cloner threads are processing and others are waiting:
      The threads which are waiting are notified to validate the
   number of threads required. If terminating those doesn't satisfy the
   required number of threads, the remaining threads are terminated
   upon completion of existing job.

Fixes: https://tracker.ceph.com/issues/46892
Signed-off-by: Kotresh HR <khiremat@redhat.com>
2020-09-11 14:36:37 +05:30
..
cephadm_cases mgr/cephadm: add qa tests for daemon restart 2020-07-30 09:02:04 +12:00
cephfs mgr/volumes: Make number of cloner threads configurable 2020-09-11 14:36:37 +05:30
mgr mgr/dashboard: fix tasks.mgr.dashboard.test_rbd.RbdTest.test_move_image_to_trash error 2020-08-04 10:12:14 +08:00
tests qa/tasks: drop python2 support from rgw related tests 2020-07-22 11:55:49 +08:00
util qa/tasks: drop python2 support from rgw related tests 2020-07-22 11:55:49 +08:00
__init__.py
admin_socket.py qa/tasks/admin_socket: get rid of cStringIO for py3 2020-03-04 13:09:17 +08:00
autotest.py qa/tasks: drop python2 support 2020-07-21 19:52:11 +08:00
aver.py
barbican.py qa/tasks/barbican: drop six dependency 2020-07-05 10:58:28 +08:00
blktrace.py
boto.cfg.template
cbt.py qa/tasks: use next(iter(..)) for accessing first element in a view 2020-04-07 20:33:47 +08:00
ceph_client.py
ceph_deploy.py qa/tasks: flake8 fixes 2020-06-23 23:00:56 +08:00
ceph_fuse.py qa: defer cleaning the mountpoint's netnses and the bridge 2020-07-29 20:58:36 -04:00
ceph_manager.py qa/tasks/{ceph,ceph_manager}: drop py2 support 2020-07-05 10:58:28 +08:00
ceph_objectstore_tool.py qa/tasks/ceph_objectstore_tool: drop six dependency 2020-07-05 10:58:28 +08:00
ceph_test_case.py qa: add exception for test timeouts 2020-08-06 11:21:54 -07:00
ceph.conf.template mon/OSDMonitor: add flag --yes-i-really-mean-it for setting pool size 1 2020-03-09 23:27:36 +05:30
ceph.py Merge pull request #36337 from tchaikov/wip-qa-ceph-waiting 2020-07-31 20:32:13 +08:00
cephadm.conf qa/tasks/ceph2 -> cephadm 2019-12-11 19:14:24 -06:00
cephadm.py qa/tasks/cephadm: drop python2 support 2020-07-21 19:52:11 +08:00
cephfs_test_runner.py qa/tasks/cephfs_test_runner: setattr to class not instance 2020-01-09 20:48:23 +08:00
cephfs_upgrade_snap.py
check_counter.py qa/tasks: use next(iter(..)) for accessing first element in a view 2020-04-07 20:33:47 +08:00
cifs_mount.py
cram.py qa/tasks: drop python2 support 2020-07-21 19:52:11 +08:00
create_verify_lfn_objects.py qa: Enable flake8 tox and fix failures 2019-12-12 10:21:01 +01:00
daemonwatchdog.py qa/tasks/daemonwatchdog: py3 compat 2020-03-04 13:09:16 +08:00
devstack.py qa/tasks: drop python2 support 2020-07-21 19:52:11 +08:00
die_on_err.py qa: import with full path 2020-03-24 18:27:55 +08:00
divergent_priors2.py qa: import with full path 2020-03-24 18:27:55 +08:00
divergent_priors.py qa: import with full path 2020-03-24 18:27:55 +08:00
dnsmasq.py qa/tasks: use next(iter(..)) for accessing first element in a view 2020-04-07 20:33:47 +08:00
dump_stuck.py qa: import with full path 2020-03-24 18:27:55 +08:00
ec_lost_unfound.py qa: import with full path 2020-03-24 18:27:55 +08:00
exec_on_cleanup.py qa: Enable flake8 tox and fix failures 2019-12-12 10:21:01 +01:00
filestore_idempotent.py qa/tasks: use next(iter(..)) for accessing first element in a view 2020-04-07 20:33:47 +08:00
fs.py qa/tasks/fs: drop python2 support 2020-07-21 19:52:11 +08:00
immutable_object_cache_thrash.py librbd/image: fix immutable object cache read failed bug when daemon down 2020-07-01 14:19:59 -04:00
immutable_object_cache.py librbd/image: fix immutable object cache read failed bug when daemon down 2020-07-01 14:19:59 -04:00
kclient.py qa: defer cleaning the mountpoint's netnses and the bridge 2020-07-29 20:58:36 -04:00
keystone.py qa/keystone: pin python-openstackclient and osc-lib 2020-07-22 19:20:00 +08:00
locktest.py
logrotate.conf
lost_unfound.py qa: import with full path 2020-03-24 18:27:55 +08:00
manypools.py qa/tasks/manypools: get rid of itervalues for py3 compat 2020-03-04 13:09:17 +08:00
mds_creation_failure.py qa: import with full path 2020-03-24 18:27:55 +08:00
mds_pre_upgrade.py
mds_thrash.py qa/tasks/mds_thrash: s/random.sample/random.choice/ 2020-05-23 11:29:53 +08:00
metadata.yaml
mon_clock_skew_check.py qa: import with full path 2020-03-24 18:27:55 +08:00
mon_recovery.py qa/tasks: use "a // b" instead of "a / b" 2020-04-07 20:33:47 +08:00
mon_thrash.py qa/tasks: fix import module path for py3 compat 2020-03-04 13:09:16 +08:00
multibench.py qa: import with full path 2020-03-24 18:27:55 +08:00
netem.py qa/tasks/netem: get rid of cStringIO for py3 2020-03-04 13:09:17 +08:00
object_source_down.py qa: import with full path 2020-03-24 18:27:55 +08:00
omapbench.py qa/tasks: drop python2 support 2020-07-21 19:52:11 +08:00
openssl_keys.py qa/tasks/openssl_keys.py: sort cert configs before creating certs 2020-04-08 21:07:07 +08:00
osd_backfill.py qa: import with full path 2020-03-24 18:27:55 +08:00
osd_failsafe_enospc.py qa/tasks/osd_failsafe_enospc: drop py2 support 2020-07-05 10:58:28 +08:00
osd_max_pg_per_osd.py qa/tasks/osd_max_pg_per_osd: get rid of itervalues for py3 2020-03-04 13:09:16 +08:00
osd_recovery.py qa: import with full path 2020-03-24 18:27:55 +08:00
peer.py qa: import with full path 2020-03-24 18:27:55 +08:00
peering_speed_test.py qa: import with full path 2020-03-24 18:27:55 +08:00
populate_rbd_pool.py
qemu.py qa/tasks/qemu: open file in text mode 2020-05-01 16:55:45 +08:00
rados.py qa/tasks: drop python2 support 2020-07-21 19:52:11 +08:00
radosbench.py qa/tasks: drop python2 support 2020-07-21 19:52:11 +08:00
radosbenchsweep.py qa/tasks: drop python2 support 2020-07-21 19:52:11 +08:00
radosgw_admin_rest.py qa/tasks: use next(iter(..)) for accessing first element in a view 2020-04-07 20:33:47 +08:00
radosgw_admin.py qa/tasks/radosgw_admin: drop py2 support 2020-07-05 10:58:28 +08:00
ragweed.py qa/tasks/ragweed: always set ragweed_repo 2020-07-31 13:08:56 +08:00
rbd_fio.py qa: add tests for immutable object cache 2020-07-01 14:19:59 -04:00
rbd_fsx.py qa: Enable flake8 tox and fix failures 2019-12-12 10:21:01 +01:00
rbd_mirror_thrash.py qa: Enable flake8 tox and fix failures 2019-12-12 10:21:01 +01:00
rbd_mirror.py qa: import with full path 2020-03-24 18:27:55 +08:00
rbd.py qa/tasks/rbd: drop python2 support 2020-07-22 11:55:49 +08:00
rebuild_mondb.py qa: import with full path 2020-03-24 18:27:55 +08:00
reg11184.py qa: import with full path 2020-03-24 18:27:55 +08:00
rep_lost_unfound_delete.py qa: import with full path 2020-03-24 18:27:55 +08:00
repair_test.py
resolve_stuck_peering.py qa: import with full path 2020-03-24 18:27:55 +08:00
restart.py qa: Fix problems detected by mypy 2020-03-05 06:53:31 +01:00
rgw_logsocket.py qa: import with full path 2020-03-24 18:27:55 +08:00
rgw_multi
rgw_multisite_tests.py qa: import with full path 2020-03-24 18:27:55 +08:00
rgw_multisite.py qa: import with full path 2020-03-24 18:27:55 +08:00
rgw.py qa/rgw: allow the rgw teuthology task to capture/set dns names 2020-05-04 13:55:00 -04:00
s3a_hadoop.py qa: s3a-hadoop: fix user creation 2020-01-28 10:20:39 -08:00
s3tests_java.py qa/tasks/s3tests_java.py: do not change a dict while iterating it 2020-04-07 21:51:23 +08:00
s3tests.py Merge pull request #35910 from galsalomon66/add_s3select_filter 2020-07-08 08:52:22 -04:00
samba.py qa/tasks/samba: drop python2 support 2020-07-22 11:55:49 +08:00
scrub_test.py qa: import with full path 2020-03-24 18:27:55 +08:00
scrub.py qa/tasks: flake8 fixes 2020-06-23 23:00:56 +08:00
systemd.py qa/tasks: flake8 fixes 2020-06-23 23:00:56 +08:00
tempest.py qa/tasks: drop python2 support from rgw related tests 2020-07-22 11:55:49 +08:00
teuthology_integration.py
tgt.py
thrash_pool_snaps.py
thrasher.py
thrashosds-health.yaml qa/tasks/thrashosds-health: disable osd_max_markdown behavior 2020-02-28 03:05:45 -06:00
thrashosds.py qa/tasks: logger.warn() -> logger.warning() 2020-05-13 17:18:13 -06:00
tox.py qa/tasks/tox: use the latest stable tox 2020-06-02 09:48:32 +08:00
userdata_setup.yaml
userdata_teardown.yaml
vault.py qa/tasks: drop python2 support from rgw related tests 2020-07-22 11:55:49 +08:00
vstart_runner.py qa: defer cleaning the mountpoint's netnses and the bridge 2020-07-29 20:58:36 -04:00
watch_notify_same_primary.py qa/tasks: drop python2 support 2020-07-21 19:52:11 +08:00
watch_notify_stress.py qa/tasks: drop python2 support 2020-07-21 19:52:11 +08:00
workunit.py qa/tasks/workunit: drop py2 support 2020-07-05 10:58:28 +08:00