since tox v4.0.13, it parses the variables differently, so the newlines
in a variable are passed right to the command referencing it. so we now
have failure like:
```
flake8: commands[0] /home/jenkins-build/build/workspace/ceph-pull-requests/src/pybind/mgr> flake8 --config=tox.ini alerts
flake8: commands[1] /home/jenkins-build/build/workspace/ceph-pull-requests/src/pybind/mgr> balancer
flake8: exit 2 (0.00 seconds) /home/jenkins-build/build/workspace/ceph-pull-requests/src/pybind/mgr> balancer
flake8: FAIL ✖ in 3.33 seconds
```
so we have to add comma as line continuation separator to address
this problem.
Signed-off-by: Kefu Chai <tchaikov@gmail.com>
avoid pytest warnings like:
4: pg_autoscaler/tests/test_cal_final_pg_target.py::TestPgAutoscaler::test_even_pools_one_meta_three_bulk
4: /home/kefu/dev/ceph/src/pybind/mgr/.tox/py3/lib/python3.10/site-packages/_pytest/fixtures.py:900: PytestRemovedIn8Warning: Support for nose tests is deprecated and will be removed in a future release.
4: pg_autoscaler/tests/test_cal_final_pg_target.py::TestPgAutoscaler::test_even_pools_one_meta_three_bulk is using nose-specific method: `setup(self)`
4: To remove this warning, rename it to `setup_method(self)`
4: See docs: https://docs.pytest.org/en/stable/deprecations.html#support-for-tests-written-for-nose
4: fixture_result = next(generator)
Signed-off-by: Kefu Chai <tchaikov@gmail.com>
to silence warnings like:
4: prometheus/module.py:35
4: /var/ssd/ceph/src/pybind/mgr/prometheus/module.py:35: DeprecationWarning: distutils Version classes are deprecated. Use packaging.version instead.
4: v = StrictVersion(cherrypy.__version__)
Signed-off-by: Kefu Chai <tchaikov@gmail.com>
option() defines a boolean, so its default value cannot be populated
to find_package() as expected. so we need to set it as a cached STRING
variable.
this addresses the regression introduced by 051ec194df16927187cbe4b26dacd06c31fa186a
Signed-off-by: Kefu Chai <tchaikov@gmail.com>
as it should be const, and more importantly, it'd fail the build with
fmtlib v9, as its caller(s) is marked as `const`.
Signed-off-by: Kefu Chai <tchaikov@gmail.com>
1.RBD images in dashboard shows default mirroring as journal
2.snapshot based mirroring schedule Interval got disabled to edit
3.unable to create snapshot of an image using dashboard
4.provide snapshot schedule info in a new column
5.dashboard doesn't allow importing peer bootstrap key to be imported for subsequent pools
Fixes: https://tracker.ceph.com/issues/58297
Signed-off-by: Aashish Sharma <aasharma@redhat.com>
(cherry picked from commit 1a37c5e001e0bbc2720e6dfabf6ba04442acabb7)
The Windows rbd-wnbd python test performs various IO operations
against raw disks.
However, it can be useful to test overlaying filesystems as well.
For this reason, we're adding the following tests:
* RbdFsTest
* RbdFsFioTest
* RbdFsStampFioTest
To simplify the implementation, those tests reuse the existing
ones along with a mixin class (RbdFsTestMixin).
Signed-off-by: Lucian Petrut <lpetrut@cloudbasesolutions.com>
We'll make the following improvements to the Windows rbd-wnbd
Python test:
* expose fio write validation, defaulting to crc32c
* change the default fio operation to "rw"
* enable the disk and clear the "rw" flag only if required by the
test and if "--skip-enabling-disk" is not set (useful with custom
SAN policies). This operation can take a significant amount of
time under heavy load.
* print fio read and write results separately instead of
aggregating them, useful when running rw tests
Signed-off-by: Lucian Petrut <lpetrut@cloudbasesolutions.com>
The Windows SAN policy determines which disks will be mounted
automatically. We're going to document this as well as some
Windows limitations.
Signed-off-by: Lucian Petrut <lpetrut@cloudbasesolutions.com>
so we can identify changes which breaks the build with fmtlib v9.0
while running "make check" performed by jenkins.
Signed-off-by: Kefu Chai <tchaikov@gmail.com>
now that crimson::net::Connection can be formatted using fmt::format(),
instead of printing the pointer, let's print its value.
Signed-off-by: Kefu Chai <tchaikov@gmail.com>
so we are able to format Payload using fmtlib v9. before fmtlib v9,
fmtlib is able to fall back to the operator<<() to format the the
types with the operator<<() defined. but after fmtlib v9, we need to
explicitly define them for accessing the specialized formatter.
now that we have specialized fmt::format<> for Payload, and the only
consumer of operator<<() is the fmtlib, we can safely drop the latter.
Signed-off-by: Kefu Chai <tchaikov@gmail.com>
since fmt v9, fmt::formatter<> is not specialized for the types with
operator<<(ostream&, ...) anymore. so we need to specialize it manually.
in this change, fmt::formatter<> is specialized for some types to be
formatted with fmtlib, so the tree can compile with fmt v9.
Signed-off-by: Kefu Chai <tchaikov@gmail.com>
for accessing the macro definition of FMT_VERSION, so we can have
definition of fmt::format<> if required.
Signed-off-by: Kefu Chai <tchaikov@gmail.com>
in fmtlib v9, it does not format typed pointers anymore, instead,
we need to print them using fmt::ptr().
Signed-off-by: Kefu Chai <tchaikov@gmail.com>
When we finish scanning one stray inode we should reset next.frag
so that next stray inode could start from its first dir fragment
rather than last stray inode's last frag.
Fixes: https://tracker.ceph.com/issues/58294
Signed-off-by: ethanwu <ethanwu@synology.com>
Distinguish between the default erasure-coded pool (k=2 m=2) and the
simplest erasure-coded pool (k=2 m=1).
Signed-off-by: Zac Dover <zac.dover@gmail.com>
Problem:
Currently, https://github.com/ceph/ceph/pull/44993
failed to completely fix:
https://tracker.ceph.com/issues/50089
There are certain code paths such as
Elector::handle_ping → Elector::begin_peer_ping →
Elector::send_peer_ping.
that when a monitor is removed before shutdown in
Cephadm it can hit the assert failure.
Solution:
Therefore, we have to enforce sanity checks on
all code paths.
We do this by compressing the `peer >= rank_size`
sanity check into `send_peer_ping`. We also make
`send_peer_ping` return true/false
caller of `send_peer_ping` would drop itself if
recieves a `false`.
Fixes: https://tracker.ceph.com/issues/58155
Signed-off-by: Kamoltat <ksirivad@redhat.com>
On a nautilus version we ran into an issue where bi list was not
listing out all entries and also not reporting any errors. Even after
turning up logging it was impossible to follow the code paths. This
adds level 20 logging in order to follow the code paths even if no
error is generated, so we can better handle such situations in the
future.
Signed-off-by: J. Eric Ivancich <ivancich@redhat.com>
Add base files rgw_arrow.h and rgw_arrow.cc. Additionally handle
initialization and shutdown of a Flight Server in radosgw.
Integration requires WITH_RADOSGW_ARROW_FLIGHT to be defined.
Signed-off-by: J. Eric Ivancich <ivancich@redhat.com>
Adds "--rgw_arrow_flight" as a command-line option to vstart.sh that
will enable arrow_flight on the first RGW created, but not for
subsequent RGWs (so as not to create port conflicts). It adds a
frontend to ceph.conf and as an option to the command-line that starts
the radosgw daemon.
Signed-off-by: J. Eric Ivancich <ivancich@redhat.com>
Arrow Flight integration is triggered by defining
WITH_RADOSGW_ARROW_FLIGHT=ON with the cmake invocation.
For now this assumes that grpc-plugins is installed on the system and
won't be built internally.
Signed-off-by: J. Eric Ivancich <ivancich@redhat.com>
Arrow Flight integration is triggered by defining
WITH_RADOSGW_ARROW_FLIGHT=ON with the cmake invocation.
For now this assumes that grpc-plugins is installed on the system and
won't be built internally.
Signed-off-by: J. Eric Ivancich <ivancich@redhat.com>
os/bluestore: improve cache_onode and cache_buffer mempool accounting
Reviewed-by: Igor Fedotov <ifedotov@suse.com>
Reviewed-by: Adam Kupczyk <akupczyk@redhat.com>
Reviewed-by: Anthony D'Atri <anthony.datri@gmail.com>
s->bucket is guaranteed to exist at this point, since this is a bucket
OP (and we use it earlier in the function).
Fixes: https://tracker.ceph.com/issues/57911
Signed-off-by: Daniel Gryniewicz <dang@redhat.com>
Chown was not unlinking, and was partially leaving the ownership wrong.
Fix this by reworking chown. Bucket::chown now just changes ownership
of the bucket from it's previous owner to a new one. An Object::chown
was added to change the ownership of an object. The chown admin API was
modified to loop through all the objects in a bucket, changing the
ownership, so that a normal Bucket::chown doesn't need to do that
anymore.
Fixes https://tracker.ceph.com/issues/57936
Signed-off-by: Daniel Gryniewicz <dang@redhat.com>
marginal suite was probably used sometime back and seems obsolete
now. Remove it and its corresponding restart task.
Signed-off-by: Venky Shankar <vshankar@redhat.com>