]> git.apps.os.sepia.ceph.com Git - ceph.git/log
ceph.git
5 years agotest/common/test_interval_set: use ASSERT_EQ()
Kefu Chai [Fri, 3 Jan 2020 12:46:20 +0000 (20:46 +0800)]
test/common/test_interval_set: use ASSERT_EQ()

ASSERT_EQ() is better than ASSERT_TRUE() when checking for equality, as
it is able to print the unmatched variables.

also, in ASSERT_EQ(), the first parameter is the expected value. so
transpose the parameters for better error messages.

Signed-off-by: Kefu Chai <kchai@redhat.com>
5 years agoinclude/interval_set: use prefix operator for non-trivial iterator
Kefu Chai [Fri, 3 Jan 2020 12:45:05 +0000 (20:45 +0800)]
include/interval_set: use prefix operator for non-trivial iterator

for better performance. no need to create a temporary instance of
iterator and throw it away

Signed-off-by: Kefu Chai <kchai@redhat.com>
5 years agoinclude/cpp-btree: adapt from abseil::btree
Kefu Chai [Tue, 14 Jan 2020 11:28:35 +0000 (19:28 +0800)]
include/cpp-btree: adapt from abseil::btree

adapt based on btree implementation from Abseil Common Libraries.

with following changes:

* remove abseil dependencies. as abseil libraries do support C++11,
  they are written in C++11 compatible way. and use its homebrew
  alternatives for the facilities offered by C++14 and C++17. but
  Ceph is in C++17, so replace those facilities using the ones
  from the C++ standard library
* change `key_compare_to_adapter` to adapt to arithmetic types, and
  those who have `compare()` defined.
* move SlotPolicy into *_params types, simpler this way.
* continue using *_fields types. the layout facilities is nice. but
  we don't need this flexibility at this moment.
* continue using `empty_base_handle` for EBCO, CompressedTuple is
  nice, but it involves more dependencies which we don't want at
  this moment.
* node handle support is dropped. it's part of C++17 standard for
  node-based containers. we don't use it at this moment. but it's
  relatively simple if we want to add it back.

Signed-off-by: Kefu Chai <kchai@redhat.com>
5 years agocpp-btree: import abseil-cpp btree implementation
Kefu Chai [Sun, 29 Dec 2019 16:35:01 +0000 (00:35 +0800)]
cpp-btree: import abseil-cpp btree implementation

Signed-off-by: Kefu Chai <kchai@redhat.com>
5 years agoosd/osd_types: add pg_t::compare()
Kefu Chai [Sun, 29 Dec 2019 11:58:53 +0000 (19:58 +0800)]
osd/osd_types: add pg_t::compare()

it's equivalent to the `<=>` operator in C++20. it helps to simplify the
definition of other equality operators.

Signed-off-by: Kefu Chai <kchai@redhat.com>
5 years agoMerge PR #32315 into master
Patrick Donnelly [Wed, 15 Jan 2020 02:15:34 +0000 (18:15 -0800)]
Merge PR #32315 into master

* refs/pull/32315/head:
client: disallow changing fuse_default_permissions option at runtime

Reviewed-by: Patrick Donnelly <pdonnell@redhat.com>
Reviewed-by: Jeff Layton <jlayton@redhat.com>
5 years agoMerge PR #32322 into master
Patrick Donnelly [Wed, 15 Jan 2020 02:14:45 +0000 (18:14 -0800)]
Merge PR #32322 into master

* refs/pull/32322/head:
mds: Reorganize class members in SimpleLock header

Reviewed-by: Patrick Donnelly <pdonnell@redhat.com>
5 years agoMerge PR #32348 into master
Patrick Donnelly [Wed, 15 Jan 2020 02:14:06 +0000 (18:14 -0800)]
Merge PR #32348 into master

* refs/pull/32348/head:
mds: Move data members of struct SnapRealm to private.
mds: Reorganize structure members in SnapRealm header

Reviewed-by: Patrick Donnelly <pdonnell@redhat.com>
5 years agoMerge PR #32416 into master
Patrick Donnelly [Wed, 15 Jan 2020 02:13:25 +0000 (18:13 -0800)]
Merge PR #32416 into master

* refs/pull/32416/head:
mds: Reorganize structure members in flock header

Reviewed-by: Patrick Donnelly <pdonnell@redhat.com>
5 years agoMerge PR #32431 into master
Patrick Donnelly [Wed, 15 Jan 2020 02:12:05 +0000 (18:12 -0800)]
Merge PR #32431 into master

* refs/pull/32431/head:
mds: Reorganize structure members in inode_backtrace header

Reviewed-by: Patrick Donnelly <pdonnell@redhat.com>
5 years agoMerge PR #32585 into master
Sage Weil [Tue, 14 Jan 2020 22:37:31 +0000 (16:37 -0600)]
Merge PR #32585 into master

* refs/pull/32585/head:
MDSMonitor: handle standby already without fscid

Reviewed-by: Sage Weil <sage@redhat.com>
5 years agoMerge PR #32505 into master
Patrick Donnelly [Tue, 14 Jan 2020 22:29:24 +0000 (14:29 -0800)]
Merge PR #32505 into master

* refs/pull/32505/head:
mds: note client features when rejecting client
mds: add hex indicator to printed feature flags

Reviewed-by: Zheng Yan <zyan@redhat.com>
5 years agoMerge PR #32095 into master
Sage Weil [Tue, 14 Jan 2020 21:59:45 +0000 (15:59 -0600)]
Merge PR #32095 into master

* refs/pull/32095/head:
ceph-volume: raw: activate: drop --all, --osd-id and --osd-fsid args
raw: fix activate args
raw: --osd-fsid throughout
ceph-volume: add raw mode
ceph-volume: show devices with bluestore labels and unavailable

Reviewed-by: Sébastien Han <seb@redhat.com>
5 years agoMerge PR #32582 into master
Patrick Donnelly [Tue, 14 Jan 2020 20:43:28 +0000 (12:43 -0800)]
Merge PR #32582 into master

* refs/pull/32582/head:
qa/cephfs: don't run kclient tests on latest RHEL
qa/cephfs: don't test kclient on RHEL 7

Reviewed-by: Patrick Donnelly <pdonnell@redhat.com>
5 years agoMerge pull request #32620 from cbodley/wip-qa-rgw-hadoop-versions
Casey Bodley [Tue, 14 Jan 2020 18:36:29 +0000 (13:36 -0500)]
Merge pull request #32620 from cbodley/wip-qa-rgw-hadoop-versions

qa/rgw: s3a-hadoop task defaults to maven-version 3.6.3

Reviewed-by: Ali Maredia <amaredia@redhat.com>
5 years agoMerge pull request #32492 from yaarith/wip-fix-device-anon
Kefu Chai [Tue, 14 Jan 2020 17:20:48 +0000 (01:20 +0800)]
Merge pull request #32492 from yaarith/wip-fix-device-anon

mgr/telemetry: fix device serial number anonymization

Reviewed-by: Sage Weil <sage@redhat.com>
Reviewed-by: Kefu Chai <kchai@redhat.com>
5 years agoMerge pull request #32608 from tchaikov/wip-rpm-byte-compile-with-python3
Kefu Chai [Tue, 14 Jan 2020 15:34:26 +0000 (23:34 +0800)]
Merge pull request #32608 from tchaikov/wip-rpm-byte-compile-with-python3

ceph.spec.in: use python3 to bytecompile .py files

Reviewed-by: Sage Weil <sage@redhat.com>
5 years agoMerge pull request #32605 from tchaikov/wip-silence-clang-warnings
Kefu Chai [Tue, 14 Jan 2020 15:13:06 +0000 (23:13 +0800)]
Merge pull request #32605 from tchaikov/wip-silence-clang-warnings

crimson: cleanups for clang build

Reviewed-by: Ronen Friedman <rfriedma@redhat.com>
Reviewed-by: Radoslaw Zarzynski <rzarzyns@redhat.com>
5 years agoMerge PR #32622 into master
Sage Weil [Tue, 14 Jan 2020 14:45:30 +0000 (08:45 -0600)]
Merge PR #32622 into master

* refs/pull/32622/head:
qa/workunits/cephadm/test_cephadm: drop stray 'exit 0'

Reviewed-by: Michael Fritch <mfritch@suse.com>
5 years agoqa/rgw: remove test against hadoop v2.8.5 32620/head
Casey Bodley [Tue, 14 Jan 2020 14:42:52 +0000 (09:42 -0500)]
qa/rgw: remove test against hadoop v2.8.5

the hadoop branch rel/release-2.8.5 fails to build with:

[INFO] ------------------------------------------------------------------------
[INFO] BUILD FAILURE
[INFO] ------------------------------------------------------------------------
[INFO] Total time:  01:37 min
[INFO] Finished at: 2020-01-14T13:09:02Z
[INFO] ------------------------------------------------------------------------
[ERROR] Failed to execute goal org.apache.maven.plugins:maven-antrun-plugin:1.7:run (create-parallel-tests-dirs) on project hadoop-aws: An Ant BuildException has occured: Unable to create javax script engine for javascript

Signed-off-by: Casey Bodley <cbodley@redhat.com>
5 years agoqa/rgw: remove test against hadoop trunk
Casey Bodley [Tue, 14 Jan 2020 14:39:32 +0000 (09:39 -0500)]
qa/rgw: remove test against hadoop trunk

hadoop's trunk fails to build with many 'package does not exist' errors:

[INFO] 100 errors
[INFO] -------------------------------------------------------------
[INFO] ------------------------------------------------------------------------
[INFO] BUILD FAILURE
[INFO] ------------------------------------------------------------------------
[INFO] Total time:  48.792 s
[INFO] Finished at: 2020-01-14T13:07:36Z
[INFO] ------------------------------------------------------------------------

Signed-off-by: Casey Bodley <cbodley@redhat.com>
5 years agoMerge pull request #32032 from votdev/issue_43088_passwd_async_validator
Laura Paduano [Tue, 14 Jan 2020 10:15:10 +0000 (11:15 +0100)]
Merge pull request #32032 from votdev/issue_43088_passwd_async_validator

mgr/dashboard: Process password complexity checks immediately

Reviewed-by: Lenz Grimmer <lgrimmer@suse.com>
Reviewed-by: Tatjana Dehler <tdehler@suse.com>
Reviewed-by: Stephan Müller <smueller@suse.com>
Reviewed-by: Tiago Melo <tmelo@suse.com>
5 years agoMerge pull request #32574 from sebastian-philipp/orchestrator-exception-add-type
Sebastian Wagner [Tue, 14 Jan 2020 09:57:32 +0000 (10:57 +0100)]
Merge pull request #32574 from sebastian-philipp/orchestrator-exception-add-type

mgr/orchestrator: raise_if_exception: Add exception type to message

Reviewed-by: Michael Fritch <mfritch@suse.com>
5 years agoMerge pull request #32491 from pcuzner/cephadm-deploy-grafana
Sebastian Wagner [Tue, 14 Jan 2020 09:50:31 +0000 (10:50 +0100)]
Merge pull request #32491 from pcuzner/cephadm-deploy-grafana

cephadm: Add ability to deploy grafana container

Reviewed-by: Patrick Seidensal <pseidensal@suse.com>
5 years agoMerge pull request #29669 from cqzcqq/fix-40117
Xie Xingguo [Tue, 14 Jan 2020 08:50:55 +0000 (16:50 +0800)]
Merge pull request #29669 from cqzcqq/fix-40117

osd/PeeringState.h: Fix pg stuck in WaitActingChange

Reviewed-by: xie xingguo <xie.xingguo@zte.com.cn>
5 years agoMerge pull request #32595 from rs-fabrica/doc_install_upgrading-ceph_systemctl_use
Kefu Chai [Tue, 14 Jan 2020 02:29:45 +0000 (10:29 +0800)]
Merge pull request #32595 from rs-fabrica/doc_install_upgrading-ceph_systemctl_use

doc/install/upgrading-ceph: systemctl in Ubuntu instructions

Reviewed-by: Kefu Chai <kchai@redhat.com>
5 years agoMerge pull request #32607 from tchaikov/wip-odr-global-context
Kefu Chai [Tue, 14 Jan 2020 02:25:36 +0000 (10:25 +0800)]
Merge pull request #32607 from tchaikov/wip-odr-global-context

cmake: do not include global_context.cc multiple times

Reviewed-by: Radoslaw Zarzynski <rzarzyns@redhat.com>
Reviewed-by: Casey Bodley <cbodley@redhat.com>
5 years agoMerge PR #31917 into master
Patrick Donnelly [Tue, 14 Jan 2020 00:40:35 +0000 (16:40 -0800)]
Merge PR #31917 into master

* refs/pull/31917/head:
vstart: Remove duplicate option -N

Reviewed-by: Patrick Donnelly <pdonnell@redhat.com>
5 years agoceph-volume: raw: activate: drop --all, --osd-id and --osd-fsid args 32095/head
Sage Weil [Mon, 13 Jan 2020 23:51:19 +0000 (17:51 -0600)]
ceph-volume: raw: activate: drop --all, --osd-id and --osd-fsid args

We don't need these currently.

Signed-off-by: Sage Weil <sage@redhat.com>
5 years agoraw: fix activate args
Sage Weil [Wed, 18 Dec 2019 14:27:47 +0000 (08:27 -0600)]
raw: fix activate args

Signed-off-by: Sage Weil <sage@redhat.com>
5 years agoraw: --osd-fsid throughout
Sage Weil [Wed, 18 Dec 2019 14:13:55 +0000 (08:13 -0600)]
raw: --osd-fsid throughout

Signed-off-by: Sage Weil <sage@redhat.com>
5 years agoceph-volume: add raw mode
Sage Weil [Fri, 6 Dec 2019 20:08:12 +0000 (14:08 -0600)]
ceph-volume: add raw mode

list, prepare, activate, create (prepare+activate) basic bluestore OSDs
on a single device.

No support (or plans to ever support) dmcrypt.

I think support for db/wal could be added later without much trouble.

For now, we require --no-systemd and --bluestore flags because we haven't
implemented support for anything else but suspect we will in the future,
and would like to ensure users are being explicit about what they're
asking for.

Signed-off-by: Sage Weil <sage@redhat.com>
5 years agoMerge pull request #31873 from smanjara/wip-mdlog-crash
Casey Bodley [Mon, 13 Jan 2020 21:25:50 +0000 (16:25 -0500)]
Merge pull request #31873 from smanjara/wip-mdlog-crash

rgw: find oldest period and update RGWMetadataLogHistory()

Reviewed-by: Casey Bodley <cbodley@redhat.com>
5 years agoMerge PR #32425 into master
Sage Weil [Mon, 13 Jan 2020 20:42:29 +0000 (14:42 -0600)]
Merge PR #32425 into master

* refs/pull/32425/head:
cephadm: shell: do not bind ceph.conf twice

Reviewed-by: Sebastian Wagner <swagner@suse.com>
5 years agoqa/workunits/cephadm/test_cephadm: drop stray 'exit 0' 32622/head
Sage Weil [Mon, 13 Jan 2020 20:40:51 +0000 (14:40 -0600)]
qa/workunits/cephadm/test_cephadm: drop stray 'exit 0'

Introduced in 40b70c632d22dbd4cf68f8ad0df1b30ee28b9f19

Signed-off-by: Sage Weil <sage@redhat.com>
5 years agodoc/install/upgrading-ceph: using systemd commands in Ubuntu instructions 32595/head
Rodrigo Severo [Fri, 10 Jan 2020 14:38:19 +0000 (11:38 -0300)]
doc/install/upgrading-ceph: using systemd commands in Ubuntu instructions

Before this change, we were using the "restart" command which is a symlink to
initctl(8). and it's offered by upstart. since ubuntu/vivid, ubuntu moved from
upstart to systemd.

Please see https://lists.ubuntu.com/archives/ubuntu-devel/2016-July/039465.html

Signed-off-by: Rodrigo Severo <rodrigo@fabricadeideias.com>
5 years agoMerge pull request #31976 from cbodley/wip-39142-revisited
Casey Bodley [Mon, 13 Jan 2020 19:45:39 +0000 (14:45 -0500)]
Merge pull request #31976 from cbodley/wip-39142-revisited

rgw: apply_olh_log ignores RGW_ATTR_OLH_VER decode error

Reviewed-by: Daniel Gryniewicz <dang@redhat.com>
5 years agoMerge pull request #32188 from cbodley/wip-qa-rgw-obj-manifest
Casey Bodley [Mon, 13 Jan 2020 19:45:19 +0000 (14:45 -0500)]
Merge pull request #32188 from cbodley/wip-qa-rgw-obj-manifest

qa/rgw: add rgw_obj and throttle tests to rgw verify suite

Reviewed-by: Daniel Gryniewicz <dang@redhat.com>
5 years agoMerge pull request #32534 from cbodley/wip-43512
Casey Bodley [Mon, 13 Jan 2020 19:44:47 +0000 (14:44 -0500)]
Merge pull request #32534 from cbodley/wip-43512

rgw multisite: enforce spawn window for incremental data sync

Reviewed-by: Daniel Gryniewicz <dang@redhat.com>
Reviewed-by: Eric J. Ivancich <ivancich@redhat.com>
Reviewed-by: Shilpa Jagannath <smanjara@redhat.com>
5 years agoMerge pull request #32550 from cbodley/wip-qa-rgw-multisite-admin-rest
Casey Bodley [Mon, 13 Jan 2020 19:43:37 +0000 (14:43 -0500)]
Merge pull request #32550 from cbodley/wip-qa-rgw-multisite-admin-rest

qa/rgw: remove failing radosgw_admin_rest from multisite suite

Reviewed-by: Shilpa Jagannath <smanjara@redhat.com>
5 years agoMerge pull request #31580 from cbodley/wip-rgw-spawn
Matt Benjamin [Mon, 13 Jan 2020 19:41:54 +0000 (14:41 -0500)]
Merge pull request #31580 from cbodley/wip-rgw-spawn

rgw: beast frontend uses 512k mprotected coroutine stacks

5 years agoqa/rgw: s3a-hadoop task defaults to maven-version 3.6.3
Casey Bodley [Mon, 13 Jan 2020 19:15:01 +0000 (14:15 -0500)]
qa/rgw: s3a-hadoop task defaults to maven-version 3.6.3

binaries for v3.6.2 are no longer available under
http://www-us.apache.org/dist/maven/maven-3/

Signed-off-by: Casey Bodley <cbodley@redhat.com>
5 years agoMerge pull request #32578 from dillaman/wip-41556-3
Mykola Golub [Mon, 13 Jan 2020 17:30:55 +0000 (19:30 +0200)]
Merge pull request #32578 from dillaman/wip-41556-3

rbd-mirror: remove journal-specific logic from image replay and bootstrap state machines

Reviewed-by: Mykola Golub <mgolub@suse.com>
5 years agoMerge pull request #32614 from kalebskeithley/gcc10
Jason Dillaman [Mon, 13 Jan 2020 15:48:05 +0000 (10:48 -0500)]
Merge pull request #32614 from kalebskeithley/gcc10

librbd: added missing <string> include to PoolMetadata header

Reviewed-by: Jason Dillaman <dillaman@redhat.com>
5 years agolibrbd: added missing <string> include to PoolMetadata header 32614/head
kalebskeithley [Mon, 13 Jan 2020 12:51:59 +0000 (07:51 -0500)]
librbd: added missing <string> include to PoolMetadata header

Signed-off-by: Kaleb S. KEITHLEY <kkeithle@redhat.com>
5 years agoMerge pull request #32597 from sebastian-philipp/mgr-mypy-mgr_util-mgr_module
Sebastian Wagner [Mon, 13 Jan 2020 10:08:28 +0000 (11:08 +0100)]
Merge pull request #32597 from sebastian-philipp/mgr-mypy-mgr_util-mgr_module

pyind/mgr: add mgr_module.py and mgr_util.py to mypy

Reviewed-by: Kefu Chai <kchai@redhat.com>
5 years agomgr/dashboard: fix badges of SSD devices in inventory page (#32454)
Lenz Grimmer [Mon, 13 Jan 2020 08:56:54 +0000 (08:56 +0000)]
mgr/dashboard: fix badges of SSD devices in inventory page (#32454)

mgr/dashboard: fix badges of SSD devices in inventory page

Reviewed-by: Laura Paduano <lpaduano@suse.com>
Reviewed-by: Volker Theile <vtheile@suse.com>
5 years agomgr/dashboard: "Promote" CRUSH options in pool form (#32210)
Lenz Grimmer [Mon, 13 Jan 2020 08:52:29 +0000 (08:52 +0000)]
mgr/dashboard: "Promote" CRUSH options in pool form (#32210)

mgr/dashboard: "Promote" CRUSH options in pool form

Reviewed-by: Stephan Müller <smueller@suse.com>
Reviewed-by: Tiago Melo <tmelo@suse.com>
Reviewed-by: Volker Theile <vtheile@suse.com>
5 years agoqa/cephfs: don't run kclient tests on latest RHEL 32582/head
Rishabh Dave [Thu, 9 Jan 2020 17:56:02 +0000 (23:26 +0530)]
qa/cephfs: don't run kclient tests on latest RHEL

Fixes: https://tracker.ceph.com/issues/43541
Signed-off-by: Rishabh Dave <ridave@redhat.com>
5 years agoqa/cephfs: don't test kclient on RHEL 7
Rishabh Dave [Thu, 9 Jan 2020 17:43:09 +0000 (23:13 +0530)]
qa/cephfs: don't test kclient on RHEL 7

https://tracker.ceph.com/issues/43539
Signed-off-by: Rishabh Dave <ridave@redhat.com>
5 years agoceph.spec.in: package .pyc files on el7 32608/head
Kefu Chai [Sun, 12 Jan 2020 09:59:11 +0000 (17:59 +0800)]
ceph.spec.in: package .pyc files on el7

* package .pyc files on el7
  per
  https://docs.fedoraproject.org/en-US/packaging-guidelines/Python/#_byte_compiling

  it's required to package .pyc files

* use python3 to bytecompile .py files on el7

  per
  https://fedoraproject.org/wiki/Changes/No_more_automagic_Python_bytecompilation#Status_quo,
  `brp-python-bytecompile` script bytecompile .py files automatically, the
  .py files under interpreter-specific directories, such as `/usr/lib/python3.6/`,
  are compiled using the appropriate compiler. but the mgr modules are
  located under `/usr/share/ceph/mgr/`. they are compiled using
  `${__python}`, which is still python2 in RHEL/CentOS 7. since we've
  dropped the support of python2 in octopus. we should either stop
  bytecompiling the .py source files or start using python3 to compile
  them. otherwise python2 will fail to compile source files using python3
  specific syntax like:

```
Compiling /home/jenkins-build/build/workspace/ceph-dev-new-build/ARCH/x86_64/AVAILABLE_ARCH/x86_64/AVAILABLE_DIST/centos7/DIST/centos7/MACHINE_SIZE/huge/release/15.0.0-9242-g400d98b/rpm/el7/BUILDROOT/ceph-15.0.0-9242.g400d98b.el7.x86_64/usr/share/ceph/mgr/telemetry/module.py
...
  File "/usr/share/ceph/mgr/telemetry/module.py", line 387
    anon_devid = f"{devid.rsplit('_', 1)[0]}_{uuid.uuid1()}"
                                                           ^
SyntaxError: invalid syntax

error: Bad exit status from /var/tmp/rpm-tmp.4oRsox (%install)
```

Signed-off-by: Kefu Chai <kchai@redhat.com>
5 years agorbd-mirror: skip closing local image if it was already closed 32578/head
Jason Dillaman [Sun, 12 Jan 2020 15:05:04 +0000 (10:05 -0500)]
rbd-mirror: skip closing local image if it was already closed

If the journal replayer finishes relaying (error or promotion), it will
close the local image. However, the image replayer state machine will also
shut down the journal replayer (again) which might result in attempting
to close the local image again.

Signed-off-by: Jason Dillaman <dillaman@redhat.com>
5 years agoMerge pull request #32604 from ronen-fr/clang_3
Ronen Friedman [Sun, 12 Jan 2020 07:37:55 +0000 (09:37 +0200)]
Merge pull request #32604 from ronen-fr/clang_3

crimson: remove some attributes from lambda

5 years agocommon/strtol.cc: refactor strict_si_cast() to silence warnings 32605/head
Kefu Chai [Sat, 11 Jan 2020 14:41:59 +0000 (22:41 +0800)]
common/strtol.cc: refactor strict_si_cast() to silence warnings

to silence warnings like

../src/common/strtol.cc:286:7: warning: implicit conversion from 'promoted_t' (aka 'long long') to 'double' changes value from 9223372036854775807 to 9223372036854775808
[-Wimplicit-int-float-conversion]
      static_cast<promoted_t>(std::numeric_limits<T>::max()) / pow (10, m)) {
      ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ~
../src/common/strtol.cc:294:15: note: in instantiation of function template specialization 'strict_si_cast<long>' requested here
template long strict_si_cast<long>(std::string_view str, std::string *err);
              ^

Signed-off-by: Kefu Chai <kchai@redhat.com>
5 years agosrc/: mark final class as final
Kefu Chai [Sat, 11 Jan 2020 14:30:49 +0000 (22:30 +0800)]
src/: mark final class as final

to silence warnings from clang-10 like:

```
../src/os/bluestore/ceph_aio.h:120:18: warning: class with destructor marked 'final' cannot be inherited from [-Wfinal-dtor-non-final-class]
  ~aio_queue_t() final {
                 ^
../src/os/bluestore/ceph_aio.h:108:8: note: mark 'aio_queue_t' as 'final' to silence this warning
struct aio_queue_t : public io_queue_t {
       ^
1 warning generated.
```

Signed-off-by: Kefu Chai <kchai@redhat.com>
5 years agocommon/bit_vector.hpp: do not move a temporary object
Kefu Chai [Sat, 11 Jan 2020 14:10:47 +0000 (22:10 +0800)]
common/bit_vector.hpp: do not move a temporary object

this change also silences a waring from clang:

src/common/bit_vector.hpp:278:21: warning: moving a temporary object prevents copy elision [-Wpessimizing-move]
      m_data.append(std::move(buffer::ptr(buffer_size - m_data.length())));
                    ^
../src/common/bit_vector.hpp:278:21: note: remove std::move call here
      m_data.append(std::move(buffer::ptr(buffer_size - m_data.length())));
                    ^~~~~~~~~~                                          ~

Signed-off-by: Kefu Chai <kchai@redhat.com>
5 years agocrimson: avoid creating temporary with protected dtor
Kefu Chai [Sat, 11 Jan 2020 08:37:17 +0000 (16:37 +0800)]
crimson: avoid creating temporary with protected dtor

to address the compiler error from clang 9.0.1:

../src/crimson/os/cyanstore/cyan_collection.cc:16:34: error: temporary of type 'boost::intrusive_ref_counter<Object, boost::thread_unsafe_counter>' has protected destructor
  return new crimson::os::Object{};
                                 ^
/opt/ceph/include/boost/smart_ptr/intrusive_ref_counter.hpp:157:30: note: declared protected here
    BOOST_DEFAULTED_FUNCTION(~intrusive_ref_counter(), {})
                             ^

Signed-off-by: Kefu Chai <kchai@redhat.com>
5 years agocrimson: move() explicitly to avoid copy
Kefu Chai [Sat, 11 Jan 2020 08:26:54 +0000 (16:26 +0800)]
crimson: move() explicitly to avoid copy

to silence following warnings from clang 9.0.1:

src/crimson/osd/heartbeat.cc:143:14: warning: local variable 'extras' will be copied despite being returned by name [-Wreturn-std-move]
      return extras;
             ^~~~~~
../src/crimson/osd/heartbeat.cc:143:14: note: call 'std::move' explicitly to avoid copying
      return extras;
             ^~~~~~
             std::move(extras)

Signed-off-by: Kefu Chai <kchai@redhat.com>
5 years agocrimson: do not use auto in param list of function prototype
Kefu Chai [Sat, 11 Jan 2020 08:22:47 +0000 (16:22 +0800)]
crimson: do not use auto in param list of function prototype

to silence following warnings from clang 9.0.1:

src/crimson/osd/pg_backend.cc:465:3: error: 'auto' not allowed in function prototype
  auto& store,
  ^~~~

Signed-off-by: Kefu Chai <kchai@redhat.com>
5 years agocrimson: do not capture unused variables
Kefu Chai [Sat, 11 Jan 2020 08:07:42 +0000 (16:07 +0800)]
crimson: do not capture unused variables

this silences warnings from clang:

src/crimson/osd/heartbeat.cc:109:14: warning: lambda capture 'this' is
not used [-Wunused-lambda-capture]
      .then([this, &info=peer_info->second] (auto xcon_front, auto
xcon_back) {
             ^~~~~

Signed-off-by: Kefu Chai <kchai@redhat.com>
5 years agoMerge pull request #32577 from xenolinux/new
Kefu Chai [Sat, 11 Jan 2020 11:43:59 +0000 (19:43 +0800)]
Merge pull request #32577 from xenolinux/new

doc/releases/nautilus.rst: remove a redundant '*'

Reviewed-by: Kefu Chai <kchai@redhat.com>
5 years agocmake: do not include global_context.cc multiple times 32607/head
Kefu Chai [Sat, 11 Jan 2020 10:29:29 +0000 (18:29 +0800)]
cmake: do not include global_context.cc multiple times

otherwise ODR is violated:

==449025==ERROR: AddressSanitizer: odr-violation (0x000000f03700):
  [1] size=8 'g_ceph_context' ../src/global/global_context.cc:24:14
  [2] size=8 'g_ceph_context' ../src/global/global_context.cc:24:14
These globals were registered at these points:
  [1]:
    #0 0x4779bd in __asan_register_globals (/var/ssd/ceph/clang-build/bin/ceph-conf+0x4779bd)
    #1 0x56e9cb in asan.module_ctor (/var/ssd/ceph/clang-build/bin/ceph-conf+0x56e9cb)

  [2]:
    #0 0x4779bd in __asan_register_globals (/var/ssd/ceph/clang-build/bin/ceph-conf+0x4779bd)
    #1 0x7fe5fed12aeb in asan.module_ctor (/var/ssd/ceph/clang-build/lib/libceph-common.so.2+0x2f34aeb)

==449025==HINT: if you don't care about these errors you may set ASAN_OPTIONS=detect_odr_violation=0

Signed-off-by: Kefu Chai <kchai@redhat.com>
5 years agoglobal/global_context: s/ceph::common/crimson::common/
Kefu Chai [Sat, 11 Jan 2020 11:24:33 +0000 (19:24 +0800)]
global/global_context: s/ceph::common/crimson::common/

it's an oversight in 4589fff6

Signed-off-by: Kefu Chai <kchai@redhat.com>
5 years agocrimson: fix aarch64 ctest failure by removing some lambda attributes 32604/head
Ronen Friedman [Sat, 11 Jan 2020 07:42:49 +0000 (09:42 +0200)]
crimson: fix aarch64 ctest failure by removing some lambda attributes

There seems to be no "universally accepted" way to declare a lambda as
[[always_inline]]. "Universally accepted" here meaning: accepted with
no error or warning by gcc8, gcc9 and clang.

See for example: https://gcc.gnu.org/bugzilla/show_bug.cgi?id=60503

Signed-off-by: Ronen Friedman <rfriedma@redhat.com>
5 years agodoc/releases/nautilus.rst: remove a redundant '*' 32577/head
Servesha Dudhgaonkar [Thu, 9 Jan 2020 14:50:54 +0000 (20:20 +0530)]
doc/releases/nautilus.rst: remove a redundant '*'

remove an extra asterisk '*'

Signed-off-by: Servesha Dudhgaonkar <sdudhgao@redhat.com>
5 years agoMerge PR #32521 into master
Patrick Donnelly [Sat, 11 Jan 2020 00:17:42 +0000 (16:17 -0800)]
Merge PR #32521 into master

* refs/pull/32521/head:
mds: clarify message about blocked scrub
mds: throttle scrub start for multiple active MDS

Reviewed-by: Patrick Donnelly <pdonnell@redhat.com>
5 years agoMerge PR #32213 into master
Patrick Donnelly [Sat, 11 Jan 2020 00:16:00 +0000 (16:16 -0800)]
Merge PR #32213 into master

* refs/pull/32213/head:
cephfs-shell: don't catch libcephfs.Error unnecessarily
cephfs-shell: make every command set a return value on failure
pybind/cephfs: move LibCephFSStateError closer to base class
pybind/cephfs: add method to get error code in Error and OSError

Reviewed-by: Patrick Donnelly <pdonnell@redhat.com>
5 years agomds: clarify message about blocked scrub 32521/head
Patrick Donnelly [Fri, 10 Jan 2020 22:27:07 +0000 (14:27 -0800)]
mds: clarify message about blocked scrub

Also, non-recursive scrub still needs rejected: a given directory's
fragments may be on other ranks.

Signed-off-by: Patrick Donnelly <pdonnell@redhat.com>
5 years agoMerge PR #32201 into master
Patrick Donnelly [Fri, 10 Jan 2020 22:23:03 +0000 (14:23 -0800)]
Merge PR #32201 into master

* refs/pull/32201/head:
mds: maintain client provided metric flags in client metadata
mds: add feature_bitset_t::dump()

Reviewed-by: Patrick Donnelly <pdonnell@redhat.com>
5 years agoMerge PR #32320 into master
Patrick Donnelly [Fri, 10 Jan 2020 22:22:28 +0000 (14:22 -0800)]
Merge PR #32320 into master

* refs/pull/32320/head:
mds: Reorganize class members in SessionMap header

Reviewed-by: Patrick Donnelly <pdonnell@redhat.com>
5 years agoMerge PR #32548 into master
Patrick Donnelly [Fri, 10 Jan 2020 22:21:11 +0000 (14:21 -0800)]
Merge PR #32548 into master

* refs/pull/32548/head:
libcephfs: fix documentation for ceph_seekdir offset
client: propagate -ENOTCONN errors for ll_releasedir

Reviewed-by: Jeff Layton <jlayton@redhat.com>
5 years agoMerge pull request #32506 from dzafman/wip-deprecated-full
David Zafman [Fri, 10 Jan 2020 21:56:25 +0000 (13:56 -0800)]
Merge pull request #32506 from dzafman/wip-deprecated-full

osd: Again remove deprecated full/nearfull from osdmap

Reviewed-by: Neha Ojha <nojha@redhat.com>
5 years agoMerge pull request #32591 from CypressXt/patch-1
Alfredo Deza [Fri, 10 Jan 2020 18:44:12 +0000 (13:44 -0500)]
Merge pull request #32591 from CypressXt/patch-1

Documentation: Centos ceph-deploy's python dependencies

Reviewed-by: Alfredo Deza <adeza@redhat.com>
5 years agopyind/mgr: add mgr_module.py and mgr_util.py to mypy 32597/head
Sebastian Wagner [Fri, 10 Jan 2020 15:16:26 +0000 (16:16 +0100)]
pyind/mgr: add mgr_module.py and mgr_util.py to mypy

Signed-off-by: Sebastian Wagner <sebastian.wagner@suse.com>
5 years agoMerge pull request #32514 from majianpeng/osd-remove-osmap_lock_name
Kefu Chai [Fri, 10 Jan 2020 15:09:33 +0000 (23:09 +0800)]
Merge pull request #32514 from majianpeng/osd-remove-osmap_lock_name

osd/OSD: remove unused parameter osdmap_lock_name.

Reviewed-by: Kefu Chai <kchai@redhat.com>
5 years agoMerge pull request #32588 from tchaikov/wip-qa-mgr-setup-with-force
Kefu Chai [Fri, 10 Jan 2020 14:58:42 +0000 (22:58 +0800)]
Merge pull request #32588 from tchaikov/wip-qa-mgr-setup-with-force

qa/tasks/mgr: set mgr module option with --force

Reviewed-by: Laura Paduano <lpaduano@suse.com>
5 years agodoc/install/upgrading-ceph: removing trailing spaces
Rodrigo Severo [Fri, 10 Jan 2020 14:33:45 +0000 (11:33 -0300)]
doc/install/upgrading-ceph: removing trailing spaces

Signed-off-by: Rodrigo Severo <rodrigo@fabricadeideias.com>
5 years agoMerge pull request #32590 from tchaikov/wip-doc-ceph-bluestore-tools
Kefu Chai [Fri, 10 Jan 2020 13:40:19 +0000 (21:40 +0800)]
Merge pull request #32590 from tchaikov/wip-doc-ceph-bluestore-tools

doc/man: improve bluefs-bdev-expand option

Reviewed-by: Zac Dover <zac.dover@gmail.com>
5 years agoMerge pull request #32538 from liuchang0812/kstore-bug-39665
Kefu Chai [Fri, 10 Jan 2020 13:38:33 +0000 (21:38 +0800)]
Merge pull request #32538 from liuchang0812/kstore-bug-39665

os/kstore: do not cache in-fight stripes on read ops to avoid leaks

Reviewed-by: Kefu Chai <kchai@redhat.com>
5 years agoMerge pull request #32563 from majianpeng/bluefs-remove-flush-log
Kefu Chai [Fri, 10 Jan 2020 13:36:58 +0000 (21:36 +0800)]
Merge pull request #32563 from majianpeng/bluefs-remove-flush-log

os/bluestore/BlueFS: replace flush_log with sync_metadata.

Reviewed-by: Igor Fedotov <ifedotov@suse.com>
5 years agoMerge pull request #32547 from aclamk/admin-socket-doxygen
Kefu Chai [Fri, 10 Jan 2020 13:36:12 +0000 (21:36 +0800)]
Merge pull request #32547 from aclamk/admin-socket-doxygen

common/admin_socket: Add doxygen for call and call_async

Reviewed-by: Kefu Chai <kchai@redhat.com>
5 years agoMerge pull request #32519 from tchaikov/wip-qa-skip-if-no-pool
Kefu Chai [Fri, 10 Jan 2020 13:33:32 +0000 (21:33 +0800)]
Merge pull request #32519 from tchaikov/wip-qa-skip-if-no-pool

qa/tasks/ceph_manager: do not pick a pool is there is no pools

Reviewed-By: Neha Ojha <nojha@redhat.com>
5 years agoMerge pull request #32549 from tchaikov/wip-qa-rados-whitelist-health-warning
Kefu Chai [Fri, 10 Jan 2020 13:28:33 +0000 (21:28 +0800)]
Merge pull request #32549 from tchaikov/wip-qa-rados-whitelist-health-warning

qa: whitelist FS_DEGRADED

Reviewed-by: Patrick Donnelly <pdonnell@redhat.com>
Reviewed-by: Neha Ojha <nojha@redhat.com>
5 years agoMerge pull request #32512 from tchaikov/wip-cbt-py3
Kefu Chai [Fri, 10 Jan 2020 13:26:49 +0000 (21:26 +0800)]
Merge pull request #32512 from tchaikov/wip-cbt-py3

Revert "qa/tasks/cbt: include py2 deps on ubuntu for now"

Reviewed-By: Neha Ojha <nojha@redhat.com>
5 years agoAdded fresh Centos install's python dependencies 32591/head
Clément Hampaï [Fri, 10 Jan 2020 09:21:22 +0000 (10:21 +0100)]
Added fresh Centos install's python dependencies

Fixes: https://tracker.ceph.com/issues/43545
Signed-off-by: Clément Hampaï <clement.hampai@cypressxt.net>
5 years agoMerge pull request #32500 from sebastian-philipp/test_orchestrator-mypy
Kefu Chai [Fri, 10 Jan 2020 13:25:38 +0000 (21:25 +0800)]
Merge pull request #32500 from sebastian-philipp/test_orchestrator-mypy

pybind/mgr: Add test_orchestrator to mypy

Reviewed-by: Thomas Bechtold <tbechtold@suse.com>
5 years agodoc/man: improve bluefs-bdev-expand option 32590/head
Kefu Chai [Fri, 10 Jan 2020 09:29:35 +0000 (17:29 +0800)]
doc/man: improve bluefs-bdev-expand option

Signed-off-by: Kefu Chai <kchai@redhat.com>
5 years agoMerge pull request #32525 from BenoitKnecht/dereference-lvm-path-symlink
Jan Fajerski [Fri, 10 Jan 2020 10:46:04 +0000 (11:46 +0100)]
Merge pull request #32525 from BenoitKnecht/dereference-lvm-path-symlink

ceph-volume: Dereference symlink in lvm list

5 years agocommon/admin_socket: Add doxygen for call and call_async 32547/head
Adam Kupczyk [Wed, 8 Jan 2020 13:37:43 +0000 (14:37 +0100)]
common/admin_socket: Add doxygen for call and call_async

This is only doxygen, an attempt to solidify interface contract.

Signed-off-by: Adam Kupczyk <akupczyk@redhat.com>
5 years agomgr/dashboard: "Promote" CRUSH options in pool form 32210/head
Ricardo Marques [Thu, 12 Dec 2019 11:48:43 +0000 (11:48 +0000)]
mgr/dashboard: "Promote" CRUSH options in pool form

Fixes: https://tracker.ceph.com/issues/43261
Signed-off-by: Ricardo Marques <rimarques@suse.com>
5 years agomgr/orchestrator: raise_if_exception: Add exception type to message 32574/head
Sebastian Wagner [Thu, 9 Jan 2020 12:52:41 +0000 (13:52 +0100)]
mgr/orchestrator: raise_if_exception: Add exception type to message

This created "better" messages, by adding `HostNotFound` as in

> Exception: HostNotFound: -F /tmp/cephadm-conf-_l7f1aq8 root@blub

Signed-off-by: Sebastian Wagner <sebastian.wagner@suse.com>
5 years agoosd/OSD: remove unused parameter osdmap_lock_name. 32514/head
Jianpeng Ma [Fri, 10 Jan 2020 06:59:08 +0000 (14:59 +0800)]
osd/OSD: remove unused parameter osdmap_lock_name.

Signed-off-by: Jianpeng Ma <jianpeng.ma@intel.com>
5 years agomds: throttle scrub start for multiple active MDS
Milind Changire [Fri, 10 Jan 2020 06:31:34 +0000 (12:01 +0530)]
mds: throttle scrub start for multiple active MDS

* add check to "scrub start" command handler to dishonor request if
  multiple MDS are "active" for a recursive scrub request
* add check to MDSRank::handle_mds_map() to see if scrubbing is in
  progress and max_mds is greater than 1, if so then scrubbing is
  aborted. This is supposed to take care of the condition when scrubbing
  has been started with max_mds == 1 and then bumped to a higher value

Fixes: https://tracker.ceph.com/issues/43483
Signed-off-by: Milind Changire <mchangir@redhat.com>
5 years agoqa/tasks/mgr: set mgr module option with --force 32588/head
Kefu Chai [Fri, 10 Jan 2020 05:28:10 +0000 (13:28 +0800)]
qa/tasks/mgr: set mgr module option with --force

if mgr is not active, monitor will refuse to set any option consumed by
mgr modules.

the reason the tests pass somtimes is that, we have a racing here:

1. stop all mgr daemons
2. MgrMonitor gets updated and updates its mgr_module_options
accordingly.
3. in TestDashboard.setUp(), we reset the port number for dashboard
using "ceph config set mgr mgr/dashboard/y/ssl_server_port 7789"
4. restart all mgr daemons

but the 2nd step and 3rd step could race with each other, if the 2nd
step happens after 3rd step, the test passes. otherwise it fails.

in this change, "--force" is passed to the "ceph config set" command,
so ConfigMonitor can bypass the sanity test for the option, and just
set this option.

Signed-off-by: Kefu Chai <kchai@redhat.com>
5 years agoMerge pull request #32571 from tchaikov/wip-qa-test-runner-run-testcase
Kefu Chai [Fri, 10 Jan 2020 03:28:52 +0000 (11:28 +0800)]
Merge pull request #32571 from tchaikov/wip-qa-test-runner-run-testcase

qa/tasks/cephfs_test_runner: setattr to class not instance

Reviewed-by: Laura Paduano <lpaduano@suse.com>
5 years agoclient: disallow changing fuse_default_permissions option at runtime 32315/head
Zhi Zhang [Fri, 10 Jan 2020 02:48:03 +0000 (10:48 +0800)]
client: disallow changing fuse_default_permissions option at runtime

If fuse_default_permissions is false when initializing fuse, then
ceph-fuse will use its own permission check. If changig this option
to true at runtime, there will be no permission check at both fuse
side and ceph-fuse side.

Fixes: https://tracker.ceph.com/issues/43362
Signed-off-by: Zhi Zhang <zhangz.david@outlook.com>
5 years agorbd-mirror: bootstrap and related state machines now uses StateBuilder
Jason Dillaman [Wed, 8 Jan 2020 14:21:30 +0000 (09:21 -0500)]
rbd-mirror: bootstrap and related state machines now uses StateBuilder

This removes all the journal-specific variables from the image replayer
and bootstrap state machines. Instead, these details are hidden behind
the abstract StateBuilder class and its derived journal class.

Signed-off-by: Jason Dillaman <dillaman@redhat.com>
5 years agoqa/rgw: add rgw_obj and throttle tests to rgw verify suite 32188/head
Casey Bodley [Wed, 11 Dec 2019 17:28:53 +0000 (12:28 -0500)]
qa/rgw: add rgw_obj and throttle tests to rgw verify suite

Signed-off-by: Casey Bodley <cbodley@redhat.com>
5 years agoMerge PR #32532 into master
Patrick Donnelly [Thu, 9 Jan 2020 20:24:28 +0000 (12:24 -0800)]
Merge PR #32532 into master

* refs/pull/32532/head:
qa: only restart MDS between tests

Reviewed-by: Jos Collin <jcollin@redhat.com>
5 years agoMerge pull request #31834 from yuvalif/wip-yuval-add-kafka-security2
Casey Bodley [Thu, 9 Jan 2020 20:06:13 +0000 (15:06 -0500)]
Merge pull request #31834 from yuvalif/wip-yuval-add-kafka-security2

rgw/kafka: add ssl+sasl security to kafka

Reviewed-by: Matt Benjamin <mbenjamin@redhat.com>