]> git.apps.os.sepia.ceph.com Git - ceph.git/log
ceph.git
3 years agotest: add a test for zero-length OP_ZERO request 42308/head
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>
3 years agoosd: don't assert on zero-length OP_ZERO request
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>
3 years agoMerge pull request #42457 from cyx1231st/wip-seastore-segment-metrics
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>
3 years agocrimson/os/seastore/segment_manager: implement metrics in BlockSegmentManager 42457/head
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>
3 years agoMerge pull request #42475 from tchaikov/wip-crimson-cleanup
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>
3 years agoMerge pull request #42483 from Astroakanksha24/master
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>
3 years agoMerge pull request #42485 from tchaikov/wip-strtoll
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>
3 years agoMerge PR #42292 into master
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>
3 years agoMerge PR #42489 into master
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>
3 years agoMerge pull request #42181 from lyind/51526-fix-ceph-volume-zero-division-error
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

3 years agoMerge pull request #42443 from dsavineau/ceph_volume_tests_functional_ssh_args
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

3 years ago*: drop strict_iecstrtoll(const char *str,..) 42485/head
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>
3 years agocommon,mon: drop strict_sistrtoll()
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>
3 years agocommon/strtol: drop strict_strto*(const char*,..)
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>
3 years agocommon, mon: use strict_si_cast<>(std::string_view,..)
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>
3 years agocommon/strtol: expose strict_si_cast(std::string_view, ..)
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>
3 years agorgw,mon,common/strtol: use strict_iec_cast(std::string_view, ..)
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>
3 years agoMerge pull request #42403 from BlaineEXE/ceph-volume-use-safer-check-for-has-bluestor...
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>
3 years agoMerge pull request #42474 from tchaikov/wip-kv-cleanup
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>
3 years agoMerge pull request #42456 from ifed01/wip-ifed-alloc-histogram2
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>
3 years agomgr/volumes/fs/operations/group.py: add extra blank line 42483/head
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>
3 years agoMerge pull request #42466 from adk3798/mgr-stop
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>
3 years agocrimson/osd: print logging using logger() in main() 42475/head
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>
3 years agokv/RocksDBStore: always initialize local variable 42474/head
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>
3 years agocrimson/osd: cancel timer when stopping
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>
3 years agocrimson/osd: disable var-tracking-assignments
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>
3 years agocrimson: use seastar::try_with_gate to guard background task
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>
3 years agoMerge pull request #42467 from dsavineau/issue_51796
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>
3 years agoMerge pull request #42468 from dsavineau/refact_mgr_cephadm_iscsi_dashboard_check
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>
3 years agoMerge pull request #41168 from aclamk/wip-bluefs-more-sync-metadata
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>
3 years agoMerge pull request #42460 from MrFreezeex/fix-snaptrim-log
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>
3 years agoMerge pull request #42448 from tchaikov/wip-rgw-lua-fs
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>
3 years agoMerge pull request #42286 from dvanders/dvanders_selinux
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>
3 years agoMerge pull request #42451 from ideepika/wip-jaeger-buildthrift
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>
3 years agoMerge pull request #42452 from smithfarm/wip-first-arg-immutable
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>
3 years agoMerge pull request #42464 from tchaikov/wip-header-only-fmt
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>
3 years agoMerge pull request #42438 from tchaikov/wip-qa-test_module_selftest
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>
3 years agomgr/cephadm: Don't allow stopping full mgr, mon or osd services 42466/head
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>
3 years agoceph.spec.in: build with header only fmt on RHEL 42464/head
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>
3 years agocmake: add an option "WITH_FMT_HEADER_ONLY"
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>
3 years agoMerge PR #42256 into master
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>
3 years agoMerge PR #42173 into master
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>
3 years agoMerge PR #42106 into master
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>
3 years agoosdc/Objecter: move LingerOp's ctor to .cc
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>
3 years agoMerge pull request #42131 from tchaikov/wip-doc-dev-ci
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>
3 years agomgr/cephadm/iscsi: simplify the dashboard check 42468/head
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>
3 years agomgr/cephadm/grafana: check if dashboard is enabled 42467/head
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>
3 years agoMerge pull request #42157 from markhpc/wip-osd_client_message_cap
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>
3 years agoosd: log snaptrim message to dout 42460/head
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>
3 years agoMerge pull request #42449 from kevinzs2048/wip-test-sanitize
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>
4 years agoMerge pull request #41794 from ceph/dependabot/pip/src/ceph-volume/plugin/zfs/pip...
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>
4 years agoceph-volume: bump pip in /src/ceph-volume/plugin/zfs 41794/head
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>
4 years agoMerge pull request #42255 from tchaikov/wip-cmake-mgr-cleanup
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>
4 years agoMerge pull request #42437 from rzarzynski/wip-crimson-generic-alienstore
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>
4 years agorpm: drop use of $FIRST_ARG in ceph-immutable-object-cache 42452/head
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>
4 years agoMerge pull request #42455 from dang/wip-dang-zipper-get_obj_state
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>
4 years agoos/bluestore: implement allocation perf histogram. 42456/head
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>
4 years agocmake: install libopentracing.so.1(dependency of libjaeger) 42451/head
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>
4 years agocmake: always require thrift v0.13.0 if WITH_JAEGER
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>
4 years agocmake: reorder find_package_handle_standard_arg for thrift
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>
4 years agoMerge pull request #42247 from pritha-srivastava/wip-rgw-sts-session-policy-fixes
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>
4 years agocmake: remove buildthrift methods
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>
4 years agoMerge pull request #42249 from kalebskeithley/rgw-51599
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>
4 years agoRGW - Zipper - Make default args match in get_obj_state 42455/head
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>
4 years agoMerge pull request #42365 from PracticalMetal/typo
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>
4 years agoMerge PR #42431 into master
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>
4 years agoMerge PR #42444 into master
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>
4 years agoMerge pull request #42380 from adamemerson/wip-51712
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>
4 years agoceph-volume/tests: use ansible_facts 42443/head
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>
4 years agoceph-volume/tests: use pytest rerunfailures
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>
4 years agoceph-volume/tests: set ANSIBLE_CONFIG env var
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>
4 years agoceph-volume/tests: update ansible ssh_args env var
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>
4 years agoMerge pull request #42329 from vshankar/wip-cephfs-mirror-dir-remove-registery
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>
4 years agoMerge pull request #42450 from tchaikov/wip-debian-jaeger
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>
4 years agoqa/run-tox-mgr-dashboard: Do not write to /tmp/test_sanitize_password.txt file 42449/head
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>
4 years agoMerge pull request #42433 from sebastian-philipp/fix-gen-keepalive-config
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>
4 years agodebian/control: depend on libjaeger only if <pkg.ceph.jaeger> 42450/head
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>
4 years agoceph-volume: lvm batch: fast_allocations(): avoid ZeroDivisionError 42181/head
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>
4 years agomgr/cephadm: Fix haproxy not being recognized as a proper daemon 42433/head
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>
4 years agorgw/rgw_lua: s/boost::filesystem/std::filesystem/ 42448/head
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>
4 years agocmake: s/NPM/NPM_EXECUTABLE/ 42255/head
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>
4 years agocmake: use ${NPM} instead of npm
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>
4 years agocmake: simplify the regex for matching npm command
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>
4 years agocmake: push dashboard build logic down
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>
4 years agocmake: push frontend build logic down
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>
4 years agopybind/mgr/dashboard: build frontend/dist in build
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>
4 years agodoc: fix typo and grammar 42365/head
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>
4 years agoMerge pull request #38783 from ideepika/wip-osd-tracing
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>
4 years agocrimson/os/seastore/segment_manager: respect len parameter of BlockSegmentManager...
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>
4 years agocmake: use PATTERN instead of REGEX to exclude installed files
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>
4 years agocmake: install mgr module separately
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>
4 years agocmake: fix jaeger linking to ceph libraries 38783/head
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>
4 years agocmake: change debian DESTDIR for installing jaeger deps
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>
4 years agocmake: adds BUILD_BYPRODUCT for external build jaegertracing libs
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>
4 years agocmake: minor reorder of boost path in jaeger build external projet
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>
4 years agocmake: target name Jaeger >> jaegertracing
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>
4 years agocmake: move ExternalProjectHelper & IncludeJaeger to BuildJaeger
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>
4 years agodebian, install-deps.sh: use Build-Profiles to optionally build with jaeger
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>
4 years agocmake: add find_package(thrift) support for thrift 0.13
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>
4 years agoceph.spec, cmake, debian: use thrift 0.13+ from distro pkg
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>