]>
git.apps.os.sepia.ceph.com Git - ceph.git/log
Jeff Layton [Tue, 13 Jul 2021 15:50:48 +0000 (11:50 -0400)]
test: add a test for zero-length OP_ZERO request
This triggered an assertion before. Verify that it's a no-op now.
Signed-off-by: Jeff Layton <jlayton@redhat.com>
Jeff Layton [Tue, 13 Jul 2021 13:50:50 +0000 (09:50 -0400)]
osd: don't assert on zero-length OP_ZERO request
I was able to crash the OSD by sending it a CEPH_OSD_OP_ZERO request
that had an op.extent.length that was 0. Convert that to a no-op
instead.
Fixes: https://tracker.ceph.com/issues/51644
Signed-off-by: Jeff Layton <jlayton@redhat.com>
Kefu Chai [Tue, 27 Jul 2021 06:37:33 +0000 (14:37 +0800)]
Merge pull request #42457 from cyx1231st/wip-seastore-segment-metrics
crimson/seastore: implement metrics in BlockSegmentManager
Reviewed-by: Chunmei Liu <chunmei.liu@intel.com>
Reviewed-by: Kefu Chai <kchai@redhat.com>
Yingxin Cheng [Fri, 23 Jul 2021 02:28:58 +0000 (10:28 +0800)]
crimson/os/seastore/segment_manager: implement metrics in BlockSegmentManager
* data read/write effort;
* metadata write effort;
* opened/closed/released segments;
* unused bytes from closed segments;
Signed-off-by: Yingxin Cheng <yingxin.cheng@intel.com>
Kefu Chai [Tue, 27 Jul 2021 02:37:07 +0000 (10:37 +0800)]
Merge pull request #42475 from tchaikov/wip-crimson-cleanup
crimson/osd: cleanups
Reviewed-by: Chunmei Liu <chunmei.liu@intel.com>
Kefu Chai [Tue, 27 Jul 2021 02:32:29 +0000 (10:32 +0800)]
Merge pull request #42483 from Astroakanksha24/master
mgr/volumes/fs/operations/group.py: add extra blank lines
Reviewed-by: Varsha Rao <varao@redhat.com>
Kefu Chai [Tue, 27 Jul 2021 02:31:41 +0000 (10:31 +0800)]
Merge pull request #42485 from tchaikov/wip-strtoll
common/strtol: replace `const char*` with `std::string_view`
Reviewed-by: Radoslaw Zarzynski <rzarzyns@redhat.com>
Sage Weil [Mon, 26 Jul 2021 23:23:26 +0000 (19:23 -0400)]
Merge PR #42292 into master
* refs/pull/42292/head:
qa/suites/upgrade: log_to_journald=false
Reviewed-by: Neha Ojha <nojha@redhat.com>
Sage Weil [Mon, 26 Jul 2021 23:23:03 +0000 (19:23 -0400)]
Merge PR #42489 into master
* refs/pull/42489/head:
qa/suites/upgrade/pacific-x/stress-split: do not avoid_pacific_features
Reviewed-by: Yuri Weinstein <yweins@redhat.com>
Reviewed-by: Kefu Chai <kchai@redhat.com>
Guillaume Abrioux [Mon, 26 Jul 2021 19:58:07 +0000 (21:58 +0200)]
Merge pull request #42181 from lyind/51526-fix-ceph-volume-zero-division-error
ceph-volume: lvm batch: fast_allocations(): avoid ZeroDivisionError
Guillaume Abrioux [Mon, 26 Jul 2021 15:08:10 +0000 (17:08 +0200)]
Merge pull request #42443 from dsavineau/ceph_volume_tests_functional_ssh_args
ceph-volume/tests: update ansible environment variables in tox
Kefu Chai [Mon, 26 Jul 2021 07:16:06 +0000 (15:16 +0800)]
*: drop strict_iecstrtoll(const char *str,..)
replace strict_iecstrtoll(const char *str,..) with
strict_iecstrtoll(std::string_view, ..). which is more convenient.
and both of them share the same implementation:
strict_iec_cast<uint64_t>(str, err);
so they are interchangeable.
Signed-off-by: Kefu Chai <kchai@redhat.com>
Kefu Chai [Mon, 26 Jul 2021 07:07:48 +0000 (15:07 +0800)]
common,mon: drop strict_sistrtoll()
strict_sistrtoll() is but an alias of strict_si_cast<uint64_t>(..),
let's just drop the former. there are way too many thin wrappers in
strtol.{h,cc}. they don't offer lots of benefit to us.
Signed-off-by: Kefu Chai <kchai@redhat.com>
Kefu Chai [Mon, 26 Jul 2021 07:00:40 +0000 (15:00 +0800)]
common/strtol: drop strict_strto*(const char*,..)
they are but proxies to strict_strto*(string_view, ...). and their
callers can just call the latter without any change. so drop these
proxies.
Signed-off-by: Kefu Chai <kchai@redhat.com>
Kefu Chai [Mon, 26 Jul 2021 06:53:43 +0000 (14:53 +0800)]
common, mon: use strict_si_cast<>(std::string_view,..)
simpler this way
Signed-off-by: Kefu Chai <kchai@redhat.com>
Kefu Chai [Mon, 26 Jul 2021 06:50:47 +0000 (14:50 +0800)]
common/strtol: expose strict_si_cast(std::string_view, ..)
this variant is better than strict_si_cast(const char*), because:
* we can just pass std::string to it, as std::string_view can be
constructed from a std::string implicitly
* strict_si_cast(std::string_view, ..) is the underlying
implementation of strict_si_cast(const char*,..), so less
indirection helps with the readability.
Signed-off-by: Kefu Chai <kchai@redhat.com>
Kefu Chai [Mon, 26 Jul 2021 06:41:24 +0000 (14:41 +0800)]
rgw,mon,common/strtol: use strict_iec_cast(std::string_view, ..)
this variant is better than strict_iec_cast(const char*), because:
* we can just pass std::string to it, as std::string_view can be
constructed from a std::string implicitly
* strict_iec_cast(std::string_view, ..) is the underlying
implementation of strict_iec_cast(const char*,..), so less
indirection helps with the readability.
* rgw,mon: use strict_iec_cast(std::string_view, ..) instead.
Signed-off-by: Kefu Chai <kchai@redhat.com>
Kefu Chai [Mon, 26 Jul 2021 10:31:13 +0000 (18:31 +0800)]
Merge pull request #42403 from BlaineEXE/ceph-volume-use-safer-check-for-has-bluestore-label
ceph-volume: use safer check for bluestore label
Reviewed-by: Sébastien Han <seb@redhat.com>
Reviewed-by: Dimitri Savineau <dsavinea@redhat.com>
Kefu Chai [Mon, 26 Jul 2021 10:29:01 +0000 (18:29 +0800)]
Merge pull request #42474 from tchaikov/wip-kv-cleanup
kv/RocksDBStore: always initialize local variable
Reviewed-by: Radoslaw Zarzynski <rzarzyns@redhat.com>
Igor Fedotov [Mon, 26 Jul 2021 10:21:28 +0000 (13:21 +0300)]
Merge pull request #42456 from ifed01/wip-ifed-alloc-histogram2
os/bluestore: implement allocation perf histogram.
Reviewed-by: Kefu Chai <kchai@redhat.com>
Akanksha Chaudhari [Mon, 26 Jul 2021 06:53:17 +0000 (12:23 +0530)]
mgr/volumes/fs/operations/group.py: add extra blank line
Fixes:https://tracker.ceph.com/issues/51393
Signed-off-by: Akanksha Chaudhari <astroakanksha24@gmail.com>
Kefu Chai [Sun, 25 Jul 2021 13:42:29 +0000 (21:42 +0800)]
Merge pull request #42466 from adk3798/mgr-stop
mgr/cephadm: Don't allow stopping full mgr, mon or osd services
Reviewed-by: Michael Fritch <mfritch@suse.com>
Kefu Chai [Sat, 24 Jul 2021 13:29:51 +0000 (21:29 +0800)]
crimson/osd: print logging using logger() in main()
more consistent and easier to parse this way.
Signed-off-by: Kefu Chai <kchai@redhat.com>
Kefu Chai [Sat, 24 Jul 2021 13:19:26 +0000 (21:19 +0800)]
kv/RocksDBStore: always initialize local variable
silences following warning from GCC:
../src/kv/RocksDBStore.cc:386:7: warning: ‘r’ may be used uninitialized in this function [-Wmaybe-uninitialized]
386 | if (r < 0) {
| ^~
Signed-off-by: Kefu Chai <kchai@redhat.com>
Kefu Chai [Sat, 24 Jul 2021 13:08:20 +0000 (21:08 +0800)]
crimson/osd: cancel timer when stopping
so that reactor does not complain when being stopped, like:
ERROR 2021-07-24 20:50:23,711 [shard 0] seastar - Timer callback failed: seastar::gate_closed_exception (gate closed)
Signed-off-by: Kefu Chai <kchai@redhat.com>
Kefu Chai [Sat, 24 Jul 2021 13:06:43 +0000 (21:06 +0800)]
crimson/osd: disable var-tracking-assignments
to disable following warning:
In file included from ../src/common/config.h:27,
from ../src/crimson/common/config_proxy.h:8,
from ../src/crimson/osd/main.cc:23:
../src/common/config_values.h: In copy constructor ‘ConfigValues::ConfigValues(const ConfigValues&)’:
../src/common/config_values.h:19:7: note: variable tracking size limit exceeded with ‘-fvar-tracking-assignments’, retrying without
19 | class ConfigValues {
| ^~~~~~~~~~~~
Signed-off-by: Kefu Chai <kchai@redhat.com>
Kefu Chai [Sat, 24 Jul 2021 09:01:05 +0000 (17:01 +0800)]
crimson: use seastar::try_with_gate to guard background task
for less indent, and for more consistency with how tools/store_nbd
runs background task.
Signed-off-by: Kefu Chai <kchai@redhat.com>
Kefu Chai [Sat, 24 Jul 2021 11:51:25 +0000 (19:51 +0800)]
Merge pull request #42467 from dsavineau/issue_51796
mgr/cephadm/grafana: check if dashboard is enabled
Reviewed-by: Adam King <adking@redhat.com>
Kefu Chai [Sat, 24 Jul 2021 11:41:19 +0000 (19:41 +0800)]
Merge pull request #42468 from dsavineau/refact_mgr_cephadm_iscsi_dashboard_check
mgr/cephadm/iscsi: simplify the dashboard check
Reviewed-by: Sebastian Wagner <sewagner@redhat.com>
Reviewed-by: Adam King <adking@redhat.com>
Kefu Chai [Sat, 24 Jul 2021 11:39:51 +0000 (19:39 +0800)]
Merge pull request #41168 from aclamk/wip-bluefs-more-sync-metadata
os/bluestore/bluefs: Force metadata sync after file rename and file deletion
Reviewed-by: Igor Fedotov <ifedotov@suse.com>
Kefu Chai [Sat, 24 Jul 2021 11:13:54 +0000 (19:13 +0800)]
Merge pull request #42460 from MrFreezeex/fix-snaptrim-log
osd: log snaptrim message to dout
Reviewed-by: Kefu Chai <kchai@redhat.com>
Kefu Chai [Sat, 24 Jul 2021 11:12:26 +0000 (19:12 +0800)]
Merge pull request #42448 from tchaikov/wip-rgw-lua-fs
rgw/rgw_lua: s/boost::filesystem/std::filesystem/
Reviewed-by: Yuval Lifshitz <ylifshit@redhat.com>
Kefu Chai [Sat, 24 Jul 2021 05:57:19 +0000 (13:57 +0800)]
Merge pull request #42286 from dvanders/dvanders_selinux
ceph.spec: selinux scripts respect CEPH_AUTO_RESTART_ON_UPGRADE
Reviewed-by: Brad Hubbard <bhubbard@redhat.com>
Reviewed-by: Boris Ranto <branto@redhat.com>
Reviewed-by: Wido den Hollander <wido@widodh.nl>
Reviewed-by: Kefu Chai <kchai@redhat.com>
Kefu Chai [Sat, 24 Jul 2021 05:54:40 +0000 (13:54 +0800)]
Merge pull request #42451 from ideepika/wip-jaeger-buildthrift
cmake: fix failure due missing thrift build scripts if building with jaeger
Reviewed-by: Kefu Chai <kchai@redhat.com>
Kefu Chai [Sat, 24 Jul 2021 05:53:33 +0000 (13:53 +0800)]
Merge pull request #42452 from smithfarm/wip-first-arg-immutable
rpm: drop use of $FIRST_ARG in ceph-immutable-object-cache
Reviewed-by: Ilya Dryomov <idryomov@gmail.com>
Reviewed-by: Kefu Chai <kchai@redhat.com>
Kefu Chai [Sat, 24 Jul 2021 05:45:54 +0000 (13:45 +0800)]
Merge pull request #42464 from tchaikov/wip-header-only-fmt
cmake, ceph.spec.in: build with header only fmt on RHEL
Reviewed-by: Josh Durgin <jdurgin@redhat.com>
Neha Ojha [Fri, 23 Jul 2021 22:39:14 +0000 (15:39 -0700)]
Merge pull request #42438 from tchaikov/wip-qa-test_module_selftest
qa/tasks/mgr: clean crash reports before waiting for clean
Reviewed-by: Neha Ojha <nojha@redhat.com>
Reviewed-by: Josh Durgin <jdurgin@redhat.com>
Adam King [Fri, 23 Jul 2021 14:01:54 +0000 (10:01 -0400)]
mgr/cephadm: Don't allow stopping full mgr, mon or osd services
I can't think of any case where we would want to allow this
Fixes: https://tracker.ceph.com/issues/51298
Signed-off-by: Adam King <adking@redhat.com>
Kefu Chai [Fri, 23 Jul 2021 10:02:36 +0000 (18:02 +0800)]
ceph.spec.in: build with header only fmt on RHEL
because fmt is packaged in EPEL, while librados is packaged
in RHEL, so we cannot have fmt as a runtime dependency of librados.
to address this issue, we should compile librados either with static library
or with header-only library of fmt. but because the fedora packaging
guideline does no encourage us to package static libraries, and it would
be complicated to package both static and dynamic library for fmt.
the simpler solution would be to compile Ceph with the header-only
version of fmt.
in this change, we compile ceph with the header-only version of fmt
on RHEL to address the runtime dependency issue.
Signed-off-by: Kefu Chai <kchai@redhat.com>
Kefu Chai [Fri, 23 Jul 2021 09:52:12 +0000 (17:52 +0800)]
cmake: add an option "WITH_FMT_HEADER_ONLY"
in this change:
* an interface library named "fmt-header-only" is introduced. it brings
the support to the header only fmt library.
* fmt::fmt is renamed to fmt
* an option named "WITH_FMT_HEADER_ONLY" is introduced
* fmt::fmt is an alias of "fmt-header-only" if "WITH_FMT_HEADER_ONLY"
is "ON", and an alias of "fmt" otherwise.
because fmt is packaged in EPEL, while librados is packaged
in RHEL, so we cannot have fmt as a runtime dependency of librados.
to address this issue an option "WITH_FMT_HEADER_ONLY" is introduced, so
that we can enable it when building Ceph with the header version of fmt.
and the built packages won't have runtime dependency of fmt.
Signed-off-by: Kefu Chai <kchai@redhat.com>
Patrick Donnelly [Fri, 23 Jul 2021 18:18:13 +0000 (11:18 -0700)]
Merge PR #42256 into master
* refs/pull/42256/head:
mds: update META_POP_READDIR/FETCH/STORE and cache_hit_rate for dump loads
Reviewed-by: Venky Shankar <vshankar@redhat.com>
Reviewed-by: Patrick Donnelly <pdonnell@redhat.com>
Patrick Donnelly [Fri, 23 Jul 2021 18:17:03 +0000 (11:17 -0700)]
Merge PR #42173 into master
* refs/pull/42173/head:
client: flush the mdlog in unsafe requests' relevant and auth MDSes only
Reviewed-by: Patrick Donnelly <pdonnell@redhat.com>
Patrick Donnelly [Fri, 23 Jul 2021 18:15:33 +0000 (11:15 -0700)]
Merge PR #42106 into master
* refs/pull/42106/head:
mds: create file system with specific ID
Reviewed-by: Patrick Donnelly <pdonnell@redhat.com>
Kefu Chai [Fri, 23 Jul 2021 16:09:58 +0000 (00:09 +0800)]
osdc/Objecter: move LingerOp's ctor to .cc
so the linkage of fmt::fmt does not spill out to other compilation
units.
Signed-off-by: Kefu Chai <kchai@redhat.com>
Josh Durgin [Fri, 23 Jul 2021 16:35:58 +0000 (09:35 -0700)]
Merge pull request #42131 from tchaikov/wip-doc-dev-ci
doc/dev/continuous-integration: use ceph repos
Reviewed-by: Josh Durgin <jdurgin@redhat.com>
Dimitri Savineau [Fri, 23 Jul 2021 15:14:25 +0000 (11:14 -0400)]
mgr/cephadm/iscsi: simplify the dashboard check
We don't need to run an extra command (mgr module ls) to obtain the mgr
modules list since we already have this information in the mgr_map.
This workflow is already done for the monitoring stack or for configuring
the iscsi integration within the dashboard (during creation) via the
config_dashboard method.
The mgr_map is mocked in the tests with the dashboard module enabled so we
don't need _mon_command_mock_mgr_module_ls anymore.
Signed-off-by: Dimitri Savineau <dsavinea@redhat.com>
Dimitri Savineau [Fri, 23 Jul 2021 15:03:42 +0000 (11:03 -0400)]
mgr/cephadm/grafana: check if dashboard is enabled
When deploying the grafana service but the mgr dashboard isn't enabled then
dashboard set-grafana-api-ssl-verify command fails.
Closes: https://tracker.ceph.com/issues/51796
Signed-off-by: Dimitri Savineau <dsavinea@redhat.com>
Kefu Chai [Fri, 23 Jul 2021 12:58:53 +0000 (20:58 +0800)]
Merge pull request #42157 from markhpc/wip-osd_client_message_cap
common/options: Set osd_client_message_cap to 256.
Reviewed-by: Neha Ojha <nojha@redhat.com>
Arthur Outhenin-Chalandre [Fri, 23 Jul 2021 07:27:00 +0000 (09:27 +0200)]
osd: log snaptrim message to dout
This log message is not an error and is done on every tick of the
snaptrim process. Replace the derr logging to dout(10) to not log it
by default.
Fixes: https://tracker.ceph.com/issues/51799
Signed-off-by: Arthur Outhenin-Chalandre <arthur.outhenin-chalandre@cern.ch>
Kefu Chai [Fri, 23 Jul 2021 06:18:11 +0000 (14:18 +0800)]
Merge pull request #42449 from kevinzs2048/wip-test-sanitize
qa/run-tox-mgr-dashboard: Do not write to /tmp/test_sanitize_password…
Reviewed-by: Alfonso Martínez <almartin@redhat.com>
Reviewed-by: Kefu Chai <kchai@redhat.com>
Kefu Chai [Fri, 23 Jul 2021 02:55:29 +0000 (10:55 +0800)]
Merge pull request #41794 from ceph/dependabot/pip/src/ceph-volume/plugin/zfs/pip-19.2
ceph-volume: bump pip in /src/ceph-volume/plugin/zfs
Reviewed-by: Willem Jan Withagen <wjw@digiware.nl>
Reviewed-by: Kefu Chai <kchai@redhat.com>
Kefu Chai [Fri, 23 Jul 2021 01:57:33 +0000 (09:57 +0800)]
ceph-volume: bump pip in /src/ceph-volume/plugin/zfs
Bumps [pip](https://github.com/pypa/pip) from 9.0.1 to 19.2.
- [Release notes](https://github.com/pypa/pip/releases)
- [Changelog](https://github.com/pypa/pip/blob/main/NEWS.rst)
- [Commits](pypa/pip@9.0.1...19.2)
---
updated-dependencies:
- dependency-name: pip
dependency-type: direct:development
...
Signed-off-by: dependabot[bot] <support@github.com>
Signed-off-by: Kefu Chai <kchai@redhat.com>
Kefu Chai [Fri, 23 Jul 2021 01:51:52 +0000 (09:51 +0800)]
Merge pull request #42255 from tchaikov/wip-cmake-mgr-cleanup
cmake: install mgr module separately
Reviewed-by: Ernesto Puerta <epuertat@redhat.com>
Reviewed-by: Sebastian Wagner <sewagner@redhat.com>
Kefu Chai [Fri, 23 Jul 2021 01:47:53 +0000 (09:47 +0800)]
Merge pull request #42437 from rzarzynski/wip-crimson-generic-alienstore
crimson/os: generalize AlienStore beyond BlueStore.
Reviewed-by: Kefu Chai <kchai@redhat.com>
Reviewed-by: Chunmei Liu <chunmei.liu@intel.com>
Reviewed-by: Mark Nelson <mnelson@redhat.com>
Nathan Cutler [Thu, 22 Jul 2021 20:52:39 +0000 (22:52 +0200)]
rpm: drop use of $FIRST_ARG in ceph-immutable-object-cache
The use of $FIRST_ARG was probably required because the SUSE-specific
%service_* rpm macros were playing tricks on the shell positional parameters.
This is bad practice and error-prone, so let's assume that no macros should do
that anymore and hence it's safe to assume that positional parameters remain
unchanged after any rpm macro call.
Thanks to Franck Bui for providing the original patch
926433f5d45e557c42f050b43798ba29dc495e02 that this patch is modeled after.
NOTE: the use of FIRST_ARG had already been eliminated by
926433f5d45e557c42f050b43798ba29dc495e02 but was re-introduced later by
9466d7098573dafcfede5e9c852374fbbd99f9e7
Fixes: 9466d7098573dafcfede5e9c852374fbbd99f9e7
Fixes: https://tracker.ceph.com/issues/51797
Signed-off-by: Nathan Cutler <ncutler@suse.com>
Casey Bodley [Thu, 22 Jul 2021 17:23:56 +0000 (13:23 -0400)]
Merge pull request #42455 from dang/wip-dang-zipper-get_obj_state
RGW - Zipper - Make default args match in get_obj_state
Reviewed-by: Casey Bodley <cbodley@redhat.com>
Igor Fedotov [Thu, 22 Jul 2021 16:39:21 +0000 (19:39 +0300)]
os/bluestore: implement allocation perf histogram.
This allows to monitor how fragmented resulting allocations are
depending on the requested block size.
Could be coupled with https://github.com/ceph/ceph/pull/41600/ for easy
live monitoring for either an individual OSD or full set of them.
Signed-off-by: Igor Fedotov <ifedotov@suse.com>
Deepika Upadhyay [Thu, 22 Jul 2021 13:18:35 +0000 (18:48 +0530)]
cmake: install libopentracing.so.1(dependency of libjaeger)
fixes:
dpkg-shlibdeps: error: cannot find library libopentracing.so.1 needed by debian/libjaeger/usr/lib/libjaegertracing.so.0.6.1 (ELF format: 'elf64-x86-64' abi: '
0201003e00000000 '; RPATH: '/build/
ceph-17.0.0-6279-g97a36368 /obj-x86_64-linux-gnu/external')
Signed-off-by: Deepika Upadhyay <dupadhya@redhat.com>
Deepika Upadhyay [Thu, 22 Jul 2021 16:06:35 +0000 (21:36 +0530)]
cmake: always require thrift v0.13.0 if WITH_JAEGER
* without this the build shall continue and eventually fail
as thrift is a required dependency for jaeger
Signed-off-by: Deepika Upadhyay <dupadhya@redhat.com>
Deepika Upadhyay [Thu, 22 Jul 2021 16:05:29 +0000 (21:35 +0530)]
cmake: reorder find_package_handle_standard_arg for thrift
* Findthrift: thrift_FOUND fails to set if called before
find_package_handle_standard_arg, hence reorder adding
thrift::libthrift target after it
Signed-off-by: Deepika Upadhyay <dupadhya@redhat.com>
Adam C. Emerson [Thu, 22 Jul 2021 15:59:29 +0000 (11:59 -0400)]
Merge pull request #42247 from pritha-srivastava/wip-rgw-sts-session-policy-fixes
rgw/sts: createbucket op should take session_policies into account
Reviewed-by: Matt Benjamin <mbenjamin@redhat.com>
Reviewed-by: Adam C. Emerson <aemerson@redhat.com>
Deepika Upadhyay [Thu, 22 Jul 2021 10:35:34 +0000 (16:05 +0530)]
cmake: remove buildthrift methods
we use Findthrift.cmake method for adding thrift dependencies, the
cleanup
80e82686ebafe36fca6dfd21cb32e63ced94d5cd missed removing these
methods intended to buildthrift from source.
this address the missing failure due to ,
```
CMake Error at cmake/modules/BuildJaeger.cmake:61 (include):
include could not find load file:
Buildthrift
```
this fixes regression introduced by:
80e82686ebafe36fca6dfd21cb32e63ced94d5cd
Signed-off-by: Deepika Upadhyay <dupadhya@redhat.com>
Casey Bodley [Thu, 22 Jul 2021 15:52:02 +0000 (11:52 -0400)]
Merge pull request #42249 from kalebskeithley/rgw-51599
rgw: cleanup virtual dtor decls and defns
Reviewed-by: Daniel Gryniewicz <dang@redhat.com>
Daniel Gryniewicz [Thu, 22 Jul 2021 15:48:08 +0000 (11:48 -0400)]
RGW - Zipper - Make default args match in get_obj_state
The default arg for follow_olh was different between the base class and
the Rados class. Fix it so they're the same.
Fixes: https://tracker.ceph.com/issues/51677
Signed-off-by: Daniel Gryniewicz <dang@redhat.com>
Neha Ojha [Thu, 22 Jul 2021 15:46:33 +0000 (08:46 -0700)]
Merge pull request #42365 from PracticalMetal/typo
doc: Fix typos and grammar in ecbackend.rst
Reviewed-by: Deepika Upadhyay <dupadhya@redhat.com>
Reviewed-by: Kefu Chai <kchai@redhat.com>
Reviewed-by: Neha Ojha <nojha@redhat.com>
Patrick Donnelly [Thu, 22 Jul 2021 14:56:40 +0000 (07:56 -0700)]
Merge PR #42431 into master
* refs/pull/42431/head:
cmake: add "mypy" back to tox envlist of "qa""
qa/tasks/vstart_runner: add optional "sudo" param to _run_python()
Reviewed-by: Sebastian Wagner <swagner@suse.com>
Reviewed-by: Patrick Donnelly <pdonnell@redhat.com>
Patrick Donnelly [Thu, 22 Jul 2021 14:54:52 +0000 (07:54 -0700)]
Merge PR #42444 into master
* refs/pull/42444/head:
doc/cephfs/journaler: document options using confval directive
Reviewed-by: Patrick Donnelly <pdonnell@redhat.com>
Casey Bodley [Thu, 22 Jul 2021 14:19:17 +0000 (10:19 -0400)]
Merge pull request #42380 from adamemerson/wip-51712
rgw: radosgw-admin errors if marker not specified on data/mdlog trim
Reviewed-by: Casey Bodley <cbodley@redhat.com>
Dimitri Savineau [Thu, 22 Jul 2021 13:58:03 +0000 (09:58 -0400)]
ceph-volume/tests: use ansible_facts
Since inject_facts_as_vars is set to false in the ansible.cfg file then we
have to update the references to use ansible_facts[<thing>] instead of
ansible_<thing>.
Signed-off-by: Dimitri Savineau <dsavinea@redhat.com>
Dimitri Savineau [Wed, 21 Jul 2021 21:07:24 +0000 (17:07 -0400)]
ceph-volume/tests: use pytest rerunfailures
We already install the dependency from ceph-ansible requirements.txt and to
avoid false positive (like after rebooting a node) we can retry failing test.
Signed-off-by: Dimitri Savineau <dsavinea@redhat.com>
Dimitri Savineau [Wed, 21 Jul 2021 20:54:57 +0000 (16:54 -0400)]
ceph-volume/tests: set ANSIBLE_CONFIG env var
Without loading the ansible.cfg file from ceph-ansible project, we don't
have the pipelining enabled which can result in significant performance
improvement.
This removes the ANSIBLE_ACTION_PLUGINS, ANSIBLE_RETRY_FILES_ENABLED and
ANSIBLE_SSH_RETRIES environment variables as it is already included in the
ansible.cfg file.
Signed-off-by: Dimitri Savineau <dsavinea@redhat.com>
Dimitri Savineau [Wed, 21 Jul 2021 20:44:57 +0000 (16:44 -0400)]
ceph-volume/tests: update ansible ssh_args env var
The ansible ssh_args parameter is usually defined in the ansible.cfg file.
Currently this variable is overrided in tox to manage the vagrant ssh file
but we lost all default values.
Signed-off-by: Dimitri Savineau <dsavinea@redhat.com>
Milind Changire [Thu, 22 Jul 2021 12:50:59 +0000 (18:20 +0530)]
Merge pull request #42329 from vshankar/wip-cephfs-mirror-dir-remove-registery
cephfs-mirror: record directory path cancel in DirRegistry
Reviewed-by: Milind Changire <mchangir@redhat.com>
Kefu Chai [Thu, 22 Jul 2021 12:25:46 +0000 (20:25 +0800)]
Merge pull request #42450 from tchaikov/wip-debian-jaeger
debian/control: depend on libjaeger only if <pkg.ceph.jaeger>
Reviewed-by: Deepika Upadhyay <dupadhya@redhat.com>
Kevin Zhao [Thu, 22 Jul 2021 06:58:20 +0000 (07:58 +0100)]
qa/run-tox-mgr-dashboard: Do not write to /tmp/test_sanitize_password.txt file
To allow running multiple instances of the same tests.
Fixes: https://tracker.ceph.com/issues/51792
Signed-off-by: Kevin Zhao <kevin.zhao@linaro.org>
Sebastian Wagner [Thu, 22 Jul 2021 10:04:54 +0000 (12:04 +0200)]
Merge pull request #42433 from sebastian-philipp/fix-gen-keepalive-config
mgr/cephadm: Fix haproxy not being recognized as a proper daemon
Reviewed-by: Adam King <adking@redhat.com>
Reviewed-by: Asbjørn Sannes <asbjorn.sannes@interhost.no>
Kefu Chai [Thu, 22 Jul 2021 09:56:52 +0000 (17:56 +0800)]
debian/control: depend on libjaeger only if <pkg.ceph.jaeger>
otherwise we'd have following failure when trying to install ceph
packages if they are not built with pkg.ceph.jaeger profile:
ceph-common : Depends: libjaeger (=
17.0.0-6321-g62349ba4 -1focal) but it is not installable
this change should address the regression introduced by
4b69d3a1844433845eb7000f56be72fb11f4e737
Signed-off-by: Kefu Chai <kchai@redhat.com>
Jonas Zeiger [Mon, 5 Jul 2021 12:59:57 +0000 (14:59 +0200)]
ceph-volume: lvm batch: fast_allocations(): avoid ZeroDivisionError
* Fixes Bug #51526 ( https://tracker.ceph.com/issues/51526 )
Signed-off-by: Jonas Zeiger <jonas.zeiger@talpidae.net>
Sebastian Wagner [Wed, 21 Jul 2021 08:45:51 +0000 (10:45 +0200)]
mgr/cephadm: Fix haproxy not being recognized as a proper daemon
Turns out daemon types != service types:
cephadm [WRN] Found unknown service type haproxy on host smithi019
cephadm [WRN] Found unknown service type keepalived on host smithi019
leading to `self.mgr.cache.get_daemons_by_service(spec.service_name())`
not returning any daemons.
Fixes: https://tracker.ceph.com/issues/51311
Signed-off-by: Sebastian Wagner <sewagner@redhat.com>
Kefu Chai [Thu, 22 Jul 2021 07:49:51 +0000 (15:49 +0800)]
rgw/rgw_lua: s/boost::filesystem/std::filesystem/
for less dependencies on 3rd party libraries, and to reduce the
compilation time.
Signed-off-by: Kefu Chai <kchai@redhat.com>
Kefu Chai [Wed, 21 Jul 2021 02:46:51 +0000 (10:46 +0800)]
cmake: s/NPM/NPM_EXECUTABLE/
so the naming is more consistent with other executables found by
find_program().
Signed-off-by: Kefu Chai <kchai@redhat.com>
Kefu Chai [Wed, 21 Jul 2021 02:44:21 +0000 (10:44 +0800)]
cmake: use ${NPM} instead of npm
so it is more explicit that ${NPM} is used when NODEENV is not
specified.
Signed-off-by: Kefu Chai <kchai@redhat.com>
Kefu Chai [Wed, 21 Jul 2021 02:05:53 +0000 (10:05 +0800)]
cmake: simplify the regex for matching npm command
npx command was added in
3fe39d4899f909d4db8bb3fbc1de5367b280620d ,
but we don't use npx anymore, so drop it.
Signed-off-by: Kefu Chai <kchai@redhat.com>
Kefu Chai [Tue, 20 Jul 2021 12:44:39 +0000 (20:44 +0800)]
cmake: push dashboard build logic down
it's simpler to build dashboard in dashboard/CMakeLists.txt
Signed-off-by: Kefu Chai <kchai@redhat.com>
Kefu Chai [Tue, 20 Jul 2021 12:38:45 +0000 (20:38 +0800)]
cmake: push frontend build logic down
it's simpler to build frontend in frontend/CMakeLists.txt
Signed-off-by: Kefu Chai <kchai@redhat.com>
Kefu Chai [Sun, 11 Jul 2021 00:30:06 +0000 (08:30 +0800)]
pybind/mgr/dashboard: build frontend/dist in build
to enable us to build out of source, we should build the frontend
artifacts out of src. in this change:
* cmake:
- install frontend/dist from build
- drop rules to exclude unused frontend artifacts.
- pass `--output-path` option to ng
- copy `frontend/package.json` to build so that the frontend
can find it
* pybind/mgr/dashboard/module.py: fall back to build directory
if frontend/dist is not found.
* pybind/mgr/dashboard/__init__.py: use frontend/dist when performing
unit test.
Signed-off-by: Kefu Chai <kchai@redhat.com>
Pulkit Mittal [Thu, 22 Jul 2021 08:18:07 +0000 (13:48 +0530)]
doc: fix typo and grammar
Signed-off-by: Pulkit Mittal <2pulkit2@gmail.com>
Kefu Chai [Thu, 22 Jul 2021 07:33:13 +0000 (15:33 +0800)]
Merge pull request #38783 from ideepika/wip-osd-tracing
cmake/ninja: support ninja for jaegertracing
Reviewed-by: Kefu Chai <kchai@redhat.com>
Yingxin Cheng [Thu, 22 Jul 2021 07:28:40 +0000 (15:28 +0800)]
crimson/os/seastore/segment_manager: respect len parameter of BlockSegmentManager::read()
Signed-off-by: Yingxin Cheng <yingxin.cheng@intel.com>
Kefu Chai [Sat, 10 Jul 2021 13:26:57 +0000 (21:26 +0800)]
cmake: use PATTERN instead of REGEX to exclude installed files
for better readability
Signed-off-by: Kefu Chai <kchai@redhat.com>
Kefu Chai [Fri, 9 Jul 2021 03:04:04 +0000 (11:04 +0800)]
cmake: install mgr module separately
instead of installing the whole directory, install mgr modules
individually, so it's more clear that what EXCLUDE pattern is
used in which mgr module.
this improves the maintability and readability. in future, we
should only install the artifacts. with this change, we can
specify the include pattern only for dashboard mgr module so
that, for instance, only .js, .html and .css files are installed.
Signed-off-by: Kefu Chai <kchai@redhat.com>
Deepika Upadhyay [Wed, 21 Jul 2021 16:11:37 +0000 (21:41 +0530)]
cmake: fix jaeger linking to ceph libraries
updates:
* custom target jaeger_base
* target jaeger-base which encapsulates all jaeger libs
* include external libraries path needed linking libraries and including
opentracing and jaegertracing headers files
Signed-off-by: Deepika Upadhyay <dupadhya@redhat.com>
Deepika Upadhyay [Wed, 21 Jul 2021 16:06:33 +0000 (21:36 +0530)]
cmake: change debian DESTDIR for installing jaeger deps
debian uses debian/tmp as destination dir for installing build files,
but since we are using common path($build_dir/external) available both
for rpm and debian based dependency installation, it becomes far more
complicated to maintain include/link path for these external projects.
elaborating on it:
path we are configuring for both rpm and debian installing including,
and linking of external librarires:
/build/
ceph-17.0.0-5779-g928f9e55 /obj-x86_64-linux-gnu/external/
debian appends DESTDIR to this path, and hence our predefined target
artificats cannot find correct path for external libs, I tried adding
ENV${DESTDIR} so that it could include correct external lib install
path, but it still cannot find them:
failed to link in case of:
- install(DIRECTORY $ENV{DESTDIR}${CMAKE_BINARY_DIR}/external/include/jaegertracing
- $ENV{DESTDIR}${CMAKE_BINARY_DIR}/external/include/opentracing
- DESTINATION ${CMAKE_INSTALL_INCLUDEDIR})
- include_directories(SYSTEM ${CMAKE_INSTALL_INCLUDEDIR}/jaegertracing)
- include_directories(SYSTEM ${CMAKE_INSTALL_INCLUDEDIR}/opentracing)
-- Installing: /build/
ceph-17.0.0-5790-g6bc03cbd /debian/tmp/build/
ceph-17.0.0-5790-g6bc03cbd /obj-x86_64-linux-gnu/external/include/jaegertracing/Tracer.h
cd /build/
ceph-17.0.0-5790-g6bc03cbd /obj-x86_64-linux-gnu/src && /usr/bin/c++ -DBOOST_ASIO_DISABLE_THREAD_KEYWORD_EXTENSION -DBOOST_ASIO_USE_TS_EXECUTOR_AS_DEFAULT -DHAVE_CONFIG_H -D_FILE_OFFSET_BITS=64 -D_FORTIFY_SOURCE=2 -D_GNU_SOURCE -D_REENTRANT -D_THREAD_SAFE -D__CEPH__ -D__STDC_FORMAT_MACROS -D__linux__ -I/build/
ceph-17.0.0-5790-g6bc03cbd /obj-x86_64-linux-gnu/src/include -I/build/
ceph-17.0.0-5790-g6bc03cbd /src -isystem /build/
ceph-17.0.0-5790-g6bc03cbd /obj-x86_64-linux-gnu/boost/include -isystem /build/
ceph-17.0.0-5790-g6bc03cbd /obj-x86_64-linux-gnu/include -isystem /build/
ceph-17.0.0-5790-g6bc03cbd /src/xxHash -isystem /build/
ceph-17.0.0-5790-g6bc03cbd /src/rapidjson/include -isystem /build/
ceph-17.0.0-5790-g6bc03cbd /src/include/jaegertracing -isystem /build/
ceph-17.0.0-5790-g6bc03cbd /src/include/opentracing -g -O2 -fdebug-prefix-map=/build/
ceph-17.0.0-5790-g6bc03cbd =. -fstack-protector-strong -Wformat -Werror=format-security -Wdate-time -D_FORTIFY_SOURCE=2 -fPIC -U_FORTIFY_SOURCE -Wall -fno-strict-aliasing -fsigned-char -Wtype-limits -Wignored-qualifiers -Wpointer-arith -Werror=format-security -Winit-self -Wno-unknown-pragmas -Wnon-virtual-dtor -Wno-ignored-qualifiers -ftemplate-depth-1024 -Wpessimizing-move -Wredundant-move -Wstrict-null-sentinel -Woverloaded-virtual -fno-new-ttp-matching -fstack-protector-strong -fdiagnostics-color=auto -fno-builtin-malloc -fno-builtin-calloc -fno-builtin-realloc -fno-builtin-free -std=c++17 -o CMakeFiles/common-objs.dir/mds/mdstypes.cc.o -c /build/
ceph-17.0.0-5790-g6bc03cbd /src/mds/mdstypes.cc
In file included from /build/
ceph-17.0.0-5790-g6bc03cbd /src/osd/OpRequest.h:21,
from /build/
ceph-17.0.0-5790-g6bc03cbd /src/osd/OpRequest.cc:3:
/build/
ceph-17.0.0-5790-g6bc03cbd /src/common/tracer.h:10:10: fatal error: jaegertracing/Tracer.h: No such file or directory
Since the install path is in our build environment for these librarires,
skipping DESTDIR looks to me hacky fix, but does the job.
with empty destdir:
-- Installing: /build/
ceph-17.0.0-5791-gb97b9640 /obj-x86_64-linux-gnu/external/include/jaegertracing/Tracer.h
cd /build/
ceph-17.0.0-5791-gb97b9640 /obj-x86_64-linux-gnu/src/mon && /usr/bin/c++ -DBOOST_ASIO_DISABLE_THREAD_KEYWORD_EXTENSION -DBOOST_ASIO_USE_TS_EXECUTOR_AS_DEFAULT -DHAVE_CONFIG_H -D_FILE_OFFSET_BITS=64 -D_FORTIFY_SOURCE=2 -D_GNU_SOURCE -D_REENTRANT -D_THREAD_SAFE -D__CEPH__ -D__STDC_FORMAT_MACROS -D__linux__ -I/build/
ceph-17.0.0-5791-gb97b9640 /obj-x86_64-linux-gnu/src/include -I/build/
ceph-17.0.0-5791-gb97b9640 /src -isystem /build/
ceph-17.0.0-5791-gb97b9640 /obj-x86_64-linux-gnu/boost/include -isystem /build/
ceph-17.0.0-5791-gb97b9640 /obj-x86_64-linux-gnu/include -isystem /build/
ceph-17.0.0-5791-gb97b9640 /src/xxHash -isystem /build/
ceph-17.0.0-5791-gb97b9640 /src/rapidjson/include -isystem /build/
ceph-17.0.0-5791-gb97b9640 /obj-x86_64-linux-gnu/external/include -isystem /build/
ceph-17.0.0-5791-gb97b9640 /src/rocksdb/include -g -O2 -fdebug-prefix-map=/build/
ceph-17.0.0-5791-gb97b9640 =. -fstack-protector-strong -Wformat -Werror=format-security -Wdate-time -D_FORTIFY_SOURCE=2 -fPIC -U_FORTIFY_SOURCE -Wall -fno-strict-aliasing -fsigned-char -Wtype-limits -Wignored-qualifiers -Wpointer-arith -Werror=format-security -Winit-self -Wno-unknown-pragmas -Wnon-virtual-dtor -Wno-ignored-qualifiers -ftemplate-depth-1024 -Wpessimizing-move -Wredundant-move -Wstrict-null-sentinel -Woverloaded-virtual -fno-new-ttp-matching -fstack-protector-strong -fdiagnostics-color=auto -fno-builtin-malloc -fno-builtin-calloc -fno-builtin-realloc -fno-builtin-free -std=c++17 -o CMakeFiles/mon.dir/MgrMonitor.cc.o -c /build/
ceph-17.0.0-5791-gb97b9640 /src/mon/MgrMonitor.cc
Signed-off-by: Deepika Upadhyay <dupadhya@redhat.com>
Deepika Upadhyay [Wed, 21 Jul 2021 16:03:42 +0000 (21:33 +0530)]
cmake: adds BUILD_BYPRODUCT for external build jaegertracing libs
* adds BUILD_BYPRODUCT which tells ninja which library will be generated
after the build(needed for dependent build libs)
Signed-off-by: Deepika Upadhyay <dupadhya@redhat.com>
Deepika Upadhyay [Wed, 21 Jul 2021 16:01:03 +0000 (21:31 +0530)]
cmake: minor reorder of boost path in jaeger build external projet
* Boost is a dependency for jaeger, to use the right version, we pass
ceph build boost path to cmake jaeger build step
Signed-off-by: Deepika Upadhyay <dupadhya@redhat.com>
Deepika Upadhyay [Wed, 21 Jul 2021 15:57:37 +0000 (21:27 +0530)]
cmake: target name Jaeger >> jaegertracing
since jaegertracing is the original target that jaeger submodule uses in
it's cmake, cmake build complained if named otherwise
Signed-off-by: Deepika Upadhyay <dupadhya@redhat.com>
Deepika Upadhyay [Wed, 21 Jul 2021 15:55:23 +0000 (21:25 +0530)]
cmake: move ExternalProjectHelper & IncludeJaeger to BuildJaeger
set_library_properties_for_external_project assists with setting right target
properties for all jaeger dependencies.
IncludeJaeger would take care of linking and creating these targets
having them spread out when they are highly coupled seems not optimal.
Signed-off-by: Deepika Upadhyay <dupadhya@redhat.com>
Deepika Upadhyay [Wed, 21 Jul 2021 15:28:52 +0000 (20:58 +0530)]
debian, install-deps.sh: use Build-Profiles to optionally build with jaeger
we will now be using BuildProfileSpec based optional pkg building,
removing comment from .install file is no longer needed If
pkg.ceph.jaeger is enabled debian/control, it shall work to install
jaeger and it's dependencies.
https://wiki.debian.org/BuildProfileSpec.
Signed-off-by: Deepika Upadhyay <dupadhya@redhat.com>
Deepika Upadhyay [Wed, 21 Jul 2021 15:24:30 +0000 (20:54 +0530)]
cmake: add find_package(thrift) support for thrift 0.13
adds Findthrift.cmake which is used to find thrift 0.13, as a dependency
for building jaegertracing
* bump up submodule version for jaeger-client-cpp for thrift compiler
removal
Signed-off-by: Deepika Upadhyay <dupadhya@redhat.com>
Deepika Upadhyay [Wed, 21 Jul 2021 15:18:02 +0000 (20:48 +0530)]
ceph.spec, cmake, debian: use thrift 0.13+ from distro pkg
the change to build and ship libthift was added when we didn't have 0.13.0
version shipped via distro pkgs, now that centos 8 and F34 supports req.
version, we do not need to build and ship it with jaeger library.
Signed-off-by: Deepika Upadhyay <dupadhya@redhat.com>