Smithi nodes used by teuthology tests have 8 CPU cores and typically run
4 OSD processes. When bluestore software compression is enabled the size
of the OSD thread pool needs to be reduced to 2 threads per OSD because
these threads can easily use 100% of a core. This avoids excessive
amounts of context switches, which leads to OSD threads timing out,
which causes the OSD to drop heartbeat pings and for the monitor to
temporarily mark it down. In extreme cases this can lead to PGs getting
stuck in repeated loops of peering until the teuthology test times out.
Context switches happen oppurtunistically at the end of system calls
so functions with lots of logging are some of the worst affected.
Fixes: https://tracker.ceph.com/issues/72879
Signed-off-by: Bill Scales <bill_scales@uk.ibm.com>
The change refactors structure of objectstore_debug/bluestore.
1) compr$ dir is not longer independant dimension.
2) compr$ dir is multiplied into write$/(v1+v2+random)
3) write$/v1 gets original compr settings
4) write$/(v2+random) get modified compr with
osd_mclock_skip_benchmark=true
The rationale is to disable bench when both v2 and compression are enabled.
Fixes: https://tracker.ceph.com/issues/71168
Note: Not really fixes, it just disables detecting symptoms.
Real solution needs more sophisticated approach.
Signed-off-by: Adam Kupczyk <akupczyk@ibm.com>
Modified bluestore_debug to expand testing base.
Now bluestore config is assembled from various independent aspects.
The model can easily be expanded.
+ enabled testing of avl, btree, hybrid_btree2 allocators
Signed-off-by: Adam Kupczyk <akupczyk@ibm.com>
Add framework for various random options for debug bluestore.
Use framework to select:
- write_v1
- write_v2
- write_v1 / write_v2 selected at random
Signed-off-by: Adam Kupczyk <akupczyk@ibm.com>
Removing and changing all suites to no longer use filestore
Signed-off-by: Nitzan Mordechai <nmordec@redhat.com>
ceph_volume: remove all filestore tests suites
Since filestore removed, no need to test it
Signed-off-by: Nitzan Mordechai <nmordech@redhat.com>
This will retain the debug log settings for all RADOS suites
that were previously symlinked to the 'objectstore'
directory. The next commit will reduce the debug log level
for the original 'objectstore' directory for the remainder
of tests.
Signed-off-by: Jason Dillaman <dillaman@redhat.com>