in fbd4836d, a regression is introduced:
self.log("failed to read erasure_code_profile. %s was likely removed",
pool)
because `self.log` is actually a lambda which just do
self.logger.info(x)
in this change
* `Thrasher.log()` is added for three reasons:
- in PEP-8,
> Always use a def statement instead of an assignment statement that
> binds a lambda expression directly to an identifier
so a better way is to define a method using `def`
- and i think it helps with the readability
* `logger` parameter is now mandatory now in the constructor of
`Thrasher` class. because the instance of this class is only created
by `qa/tasks/thrashosds.py`, like:
thrash_proc = ceph_manager.Thrasher(
cluster_manager,
config,
logger=log.getChild('thrasher')
)
and `log.getChild()` does not return `None`, so there is no need to
handle that case.
Signed-off-by: Kefu Chai <kchai@redhat.com>
when several extents use the same spanning blob, we reclaim the
blob if all Pextent are to be released, but we erase the spanning blob
from spanning blob map several times. Although it's not a error, I think
it's better to erase the spanning blob with the last Oldextent who's
blob empty flag will be set true.
Signed-off-by: Xiangyang Yu <penglaiyxy@gmail.com>
Tests creating, editing and deleting RGW users.
Tests providing invalid input to user creation and editing forms.
Fixes: https://tracker.ceph.com/issues/40364
Fixes: https://tracker.ceph.com/issues/40908
Signed-off-by: Adam King <adking@redhat.com>
Signed-off-by: Rafael Quintero <rquinter@redhat.com>
UpdateWatchCtx used a mix of 2 spaces and 4 spaces. This fixes the
function to use 2 spaces which is used in the rest of the file.
Signed-off-by: Mike Christie <mchristi@redhat.com>
This adds resize support to rbd nbd when using the netlink interface.
It requires this linux kernel patch:
https://marc.info/?l=linux-block&m=155916096905474&w=2
which has been merged into the block tree for 5.4.
Signed-off-by: Mike Christie <mchristi@redhat.com>
there is chance that a distro offer a newer python3 version than the
supported one, so we need to avoid using the latest python3 version by
specifying the supported python3
Signed-off-by: Kefu Chai <kchai@redhat.com>
`find_package(Python ${version}...)` tries to find the greater python version
which is greater than `${version}`, on fc30, at the time of writing, both
python3.8 and python3.7 are offered. but `python3-Cython` is packaged only
for python3.7. so if user installs python3.8, this will prevent user from
building Ceph. as Ceph will not be able to find Cython python module, as it
will try to run `python3.8 -m cython --version`, where python3.8 is the
greatest python version available in the system. but since cython module is
not available to python3.8, cmake will fail to find cython even if is available
to python3.7.
in this change, if user specifies a python version with minor version, we
will use the exact specified version instead of trying to use a version
greater than the specified one.
Signed-off-by: Kefu Chai <kchai@redhat.com>
We should expect being able to run multiple rgws with different ids
using vstart, and yet that was not the case as they were sharing the
same name (and same key).
We now mimic each rgw running on a different host, with ids being their
ports; as such, we'll have 'client.rgw.X', 'client.rgw.X+1', and so
forth. These will match the ports the daemons are running on.
Signed-off-by: Joao Eduardo Luis <joao@suse.com>
* refs/pull/28628/head:
pybind: Fixes print of path as byte object in error message
pybind: Print standard error messages
Reviewed-by: Patrick Donnelly <pdonnell@redhat.com>