Add write_append_excl: false to all erasure-code workloads and use the
same workload in all upgrade tests. write_append_excl: false is not
meaningfull for all Ceph versions but when it's not it will just be
ignored.
Signed-off-by: Loic Dachary <ldachary@redhat.com>
Add a workload that uses the lrc erasure code plugin. Instead of adding
it to suites/rados/thrash-erasure-code/workloads, a new suite is created
at suites/rados/thrash-erasure-code-big because it needs more OSDs than
other erasure code plugins. The alternative would be to increase the
number of OSDs for all erasure code plugins, but that would needlessly
increase the resources requirements.
* cluster/12-osds.yaml creates a 12 OSDs, 3 MONs cluster
* thrash-erasure-code-big/thrashers/*.yaml are the same as
thrash-erasure-code/thrashers/*.yaml except they require that at
least 8 OSDs are in at all times (instead of 4) because lrc PGs with
k=4, m=2, l=3 are undersized if they do not have 8 OSDs. It is
possible that crush fails to map 8 OSDs when only 8 OSDs are
available, but that must not disturb the workload because min_size is
4.
http://tracker.ceph.com/issues/11666Fixes: #11666
Signed-off-by: Loic Dachary <ldachary@redhat.com>
The ec-rados-default.yaml started with:
workload:
sequential:
which is only suitable for suites/upgrade/giant-x/parallel/2-workload/sequential_run/ec-rados-default.yaml
because suites/upgrade/giant-x/parallel/1-giant-install/giant.yaml has
- parallel:
- workload
- upgrade-sequence
The same file was included in contexts where the parallel task was not
used and the workload did not run:
./suites/upgrade/firefly-x/stress-split-erasure-code/5-workload/ec-rados-default.yaml
./suites/upgrade/giant-x/stress-split-erasure-code/5-workload/ec-rados-default.yaml
./suites/upgrade/giant-x/stress-split-erasure-code-x86_64/5-workload/ec-rados-default.yaml
The ec-rados-default.yaml is modified to be a task instead of a
sequential task in a parallel tasks. The ec-rados-sequential.yaml is
added and is linked in
suites/upgrade/giant-x/parallel/2-workload/sequential_run instead of ec-rados-default.yaml.
http://tracker.ceph.com/issues/11221Fixes: #11221
Signed-off-by: Loic Dachary <loic@dachary.org>
The ec-rados-default.yaml was linked to suites as if it was a task
although it is a workload intended for parallel upgrade tests.
The ec-rados-plugin=jerasure-k=2-m=1.yaml task is defined and used
instead, where relevant.
http://tracker.ceph.com/issues/9549Fixes: #9549
Signed-off-by: Loic Dachary <loic-201408@dachary.org>
The erasure-code directory is populated with files describing rados
workloads suitable to test the default erasure code plugins. They are
linked to the rados suite. The pre-existing rados workloads from the
rados suite are replaced with those. Two workloads only differed by the
fact that one of them had less operations than the other. The more
complete set of operations is kept and used for all workloads to
maximize coverage.
Signed-off-by: Loic Dachary <loic-201408@dachary.org>