]> git.apps.os.sepia.ceph.com Git - ceph.git/log
ceph.git
6 years agoqa/suites: fix bluestore links 26979/head
Sage Weil [Wed, 5 Dec 2018 16:27:53 +0000 (10:27 -0600)]
qa/suites: fix bluestore links

Signed-off-by: Sage Weil <sage@redhat.com>
(cherry picked from commit 269910fc8b2bdf64b98534ce525318e108aa9409)

6 years agoqa/objectstore: bluestore -> bluestore-{bitmap,stupid}
Sage Weil [Fri, 30 Nov 2018 15:55:38 +0000 (09:55 -0600)]
qa/objectstore: bluestore -> bluestore-{bitmap,stupid}

The new default is bitmap, so we were testing bitmap twice.  Instead,
explicitly call out stupid and bitmap cases so a future default change
won't break coverage.

Signed-off-by: Sage Weil <sage@redhat.com>
(cherry picked from commit f390704b4616c837352e7d6a8df91526cb047f0d)

6 years agoos/bluestore: fix minor issues in bitmap logging output
Igor Fedotov [Mon, 25 Jun 2018 14:49:49 +0000 (17:49 +0300)]
os/bluestore: fix minor issues in bitmap logging output

Signed-off-by: Igor Fedotov <ifedotov@suse.com>
(cherry picked from commit dc4b5fc5afcea4be9e3b4c91dcc9dcce38d4e906)

6 years agoos/bluestore: fix overlappedd allocation returned by bitmap allocator
Igor Fedotov [Mon, 25 Jun 2018 14:42:41 +0000 (17:42 +0300)]
os/bluestore: fix overlappedd allocation returned by bitmap allocator

Fixes: https://tracker.ceph.com/issues/24598
Signed-off-by: Igor Fedotov <ifedotov@suse.som>
(cherry picked from commit 539af4f27e773cb21d187b75086c7c9498dd7749)

6 years agoos/bluestore: provide a rough estimate for bitmap allocator
Igor Fedotov [Fri, 15 Jun 2018 14:04:57 +0000 (17:04 +0300)]
os/bluestore: provide a rough estimate for bitmap allocator
fragmentation.
The approach is counting 'partial' and 'free' slots at L1 on the fly and
use partial / (partial+free) value as rough fragmentation estimate.

Signed-off-by: Igor Fedotov <ifedotov@suse.com>
(cherry picked from commit dbbe12fe6f543fc6942f41a108effc7eb1632f67)

6 years agoos/bluestore: rename new bitmap allocator class to BitmapAllocator.
Igor Fedotov [Tue, 12 Jun 2018 11:50:30 +0000 (14:50 +0300)]
os/bluestore: rename new bitmap allocator class to BitmapAllocator.

Signed-off-by: Igor Fedotov <ifedotov@suse.com>
(cherry picked from commit a8e8c192acb48ce93553b04d1953ce8bee1b16e4)

6 years agoos/bluestore: perform allocations aligned with min_length in new bitmap allocator
Igor Fedotov [Fri, 1 Jun 2018 18:59:15 +0000 (21:59 +0300)]
os/bluestore: perform allocations aligned with min_length  in new bitmap allocator

Signed-off-by: Igor Fedotov <ifedotov@suse.com>
(cherry picked from commit 51974c48e38e7080eb12c6028f95f4da666fbe76)

6 years agotest/objectstore/unitetest_fastbmap_allocator: replace ASSERT_TRUE with
Igor Fedotov [Fri, 1 Jun 2018 13:35:04 +0000 (16:35 +0300)]
test/objectstore/unitetest_fastbmap_allocator: replace ASSERT_TRUE with
ASSERT_EQ

Signed-off-by: Igor Fedotov <ifedotov@suse.com>
(cherry picked from commit 69ccb4367dcdcc51fbcfdaaea308c761291621e1)

6 years agoos/bluestore: respect min_length as allocation granularity for new
Igor Fedotov [Thu, 31 May 2018 13:53:31 +0000 (16:53 +0300)]
os/bluestore: respect min_length as allocation granularity for new
bitmap allocator.
It was used a real minimum threshold before this fix which allowed e.g.
allocated extent length to be equal to min_length + 1.

Signed-off-by: Igor Fedotov <ifedotov@suse.com>
(cherry picked from commit 8a188b2aa3892b7f5a6c85042ffae8c2847ca869)

6 years agoos/bluestore: cosmetic new allocator internal method rename.
Igor Fedotov [Thu, 31 May 2018 11:28:28 +0000 (14:28 +0300)]
os/bluestore: cosmetic new allocator internal method rename.

Signed-off-by: Igor Fedotov <ifedotov@suse.com>
(cherry picked from commit fa06ff234f11f266bb10d7fa9ea28847e5ce72fe)

6 years agoos/bluestore: properly respect min_length when analysing partially free
Igor Fedotov [Thu, 31 May 2018 10:53:37 +0000 (13:53 +0300)]
os/bluestore: properly respect min_length when analysing partially free
slots in bitmap allocator.

Signed-off-by: Igor Fedotov <ifedotov@suse.com>
(cherry picked from commit 288bbd42531bebd8f6c619c848e75bfd9b8f93fd)

6 years agoos/bluestore: cosmetic cleanup in new bitmap allocator.
Igor Fedotov [Thu, 31 May 2018 10:34:21 +0000 (13:34 +0300)]
os/bluestore: cosmetic cleanup in new bitmap allocator.

Signed-off-by: Igor Fedotov <ifedotov@suse.com>
(cherry picked from commit 3db9d9a66cbd62c543cdd88ff4ab636fba2c2a2b)

6 years agoos/bluestore: more verbose logging in new bitmap allocator
Igor Fedotov [Wed, 30 May 2018 12:24:05 +0000 (15:24 +0300)]
os/bluestore: more verbose logging in new bitmap allocator

Signed-off-by: Igor Fedotov <ifedotov@suse.com>
(cherry picked from commit 160c73032db2e122f5e643090c86eed85e679eb4)

6 years agoos/bluestore: remove original bitmap allocator
Igor Fedotov [Mon, 14 May 2018 13:09:22 +0000 (16:09 +0300)]
os/bluestore: remove original bitmap allocator

Signed-off-by: Igor Fedotov <ifedotov@suse.com>
(cherry picked from commit 95bd72fc22aa313112de096ac3ef98e45c71bce5)

6 years agoos/bluestore: align BitMap allocator's init_rm_free/init_add_free parameters with...
Igor Fedotov [Fri, 11 May 2018 21:26:49 +0000 (00:26 +0300)]
os/bluestore: align BitMap allocator's init_rm_free/init_add_free parameters with min_alloc_size

Signed-off-by: Igor Fedotov <ifedotov@suse.com>
(cherry picked from commit 1b6a56e80066decf8c3727090a2cd51ba9ded9bc)

6 years agoos/bluestore: fix improper access to a BitmapFastAllocator::last_pos
Igor Fedotov [Thu, 10 May 2018 15:54:36 +0000 (18:54 +0300)]
os/bluestore: fix improper access to a BitmapFastAllocator::last_pos
from multiple threads.

Signed-off-by: Igor Fedotov <ifedotov@suse.com>
(cherry picked from commit 0c69672fce55362a7e6eb8ed6955f163afe85482)

6 years agotest/allocator: move bluestore allocator's benchmarks to a standalone UT
Igor Fedotov [Fri, 4 May 2018 17:03:37 +0000 (20:03 +0300)]
test/allocator: move bluestore allocator's benchmarks to a standalone UT

Signed-off-by: Igor Fedotov <ifedotov@suse.com>
(cherry picked from commit ac2ec80cddc51f1642849c7bf226e9bed116c0d6)

6 years agoos/bluestore: add new bitmap allocator
Igor Fedotov [Thu, 3 May 2018 17:22:15 +0000 (20:22 +0300)]
os/bluestore: add new bitmap allocator

Signed-off-by: Igor Fedotov <ifedotov@suse.com>
(cherry picked from commit 631041a7b788eaaf010f1e39f58b5546ab5580fc)

6 years agotest/allocator: get rid off bitmap allocator specifics and introduce new
Igor Fedotov [Thu, 3 May 2018 16:25:01 +0000 (19:25 +0300)]
test/allocator: get rid off bitmap allocator specifics and introduce new
performance test cases

Signed-off-by: Igor Fedotov <ifedotov@suse.com>
(cherry picked from commit dcd30610fb1c87711c9f43f7d3d6636888792345)

6 years agoos/bluestore: add release(PExtentVector) helper to Allocator class to
Igor Fedotov [Mon, 7 May 2018 13:58:43 +0000 (16:58 +0300)]
os/bluestore: add release(PExtentVector) helper to Allocator class to
free PExtentVector explicitly.

Signed-off-by: Igor Fedotov <ifedotov@suse.com>
(cherry picked from commit 328ea72a84edef4a6c4e0558dff52d0e85f05122)

6 years agoos/bluestore: get rid off allocator's reserve method
Igor Fedotov [Mon, 7 May 2018 13:26:03 +0000 (16:26 +0300)]
os/bluestore: get rid off allocator's reserve method

Signed-off-by: Igor Fedotov <ifedotov@suse.com>
(cherry picked from commit 88bea46242d4eb6bdfd8309ddf8843c9a14e5f25)

6 years agoos/bluestore: add perf counter for allocator fragmentation.
Igor Fedotov [Thu, 12 Apr 2018 12:35:05 +0000 (15:35 +0300)]
os/bluestore: add perf counter for allocator fragmentation.

Signed-off-by: Igor Fedotov <ifedotov@suse.com>
(cherry picked from commit 9a2cbaed8a70936d2c2eae69083c39b78358dc90)

6 years agoos/bluestore: cleanup around ExtentList class.
Igor Fedotov [Wed, 7 Feb 2018 18:43:48 +0000 (21:43 +0300)]
os/bluestore: cleanup around ExtentList class.

Also move it out of bluestore_types.h.

Signed-off-by: Igor Fedotov <ifedotov@suse.com>
(cherry picked from commit 2d78999451c50b3ed9d77c118c1ce0ec9110772d)

6 years agoos/bluestore: kill AllocExtent[Vector] to simplify code a bit
Igor Fedotov [Wed, 7 Feb 2018 18:18:34 +0000 (21:18 +0300)]
os/bluestore: kill AllocExtent[Vector] to simplify code a bit

Signed-off-by: Igor Fedotov <ifedotov@suse.com>
(cherry picked from commit e0cd948298ce8a7416315e3aa4777935e0290b73)

6 years agoos/bluestore: release txc's extents in bulky manner.
Radoslaw Zarzynski [Fri, 22 Sep 2017 13:56:17 +0000 (15:56 +0200)]
os/bluestore: release txc's extents in bulky manner.

Signed-off-by: Radoslaw Zarzynski <rzarzyns@redhat.com>
(cherry picked from commit 5e1e6f939308f62596187696e9a499fc052e9845)

6 years agoos/bluestore: drop support for non-bulky extent release.
Radoslaw Zarzynski [Sun, 10 Sep 2017 12:05:26 +0000 (14:05 +0200)]
os/bluestore: drop support for non-bulky extent release.

Signed-off-by: Radoslaw Zarzynski <rzarzyns@redhat.com>
(cherry picked from commit 90bbcd7cbb538d5e96c0e7e12de6365a13cbf9de)

6 years agoos/bluestore: BlueFS releases disk extents in bulky manner.
Radoslaw Zarzynski [Sun, 10 Sep 2017 12:04:45 +0000 (14:04 +0200)]
os/bluestore: BlueFS releases disk extents in bulky manner.

Signed-off-by: Radoslaw Zarzynski <rzarzyns@redhat.com>
(cherry picked from commit 16906c0190fa11fb426651a57a789e454a8f737f)

6 years agoos/bluestore/BlueFS: move release unused extents to _flush_and_sync_log
Jianpeng Ma [Fri, 15 Sep 2017 10:08:06 +0000 (18:08 +0800)]
os/bluestore/BlueFS: move release unused extents to _flush_and_sync_log

ASAP to release unused extents.

Signed-off-by: Jianpeng Ma <jianpeng.ma@intel.com>
(cherry picked from commit 2fc80f919706810d9621140d6c5de9cbf853d114)

6 years agoos/bluestore: make the BitMapAllocator aware about bulk releases.
Radoslaw Zarzynski [Sun, 10 Sep 2017 11:58:02 +0000 (13:58 +0200)]
os/bluestore: make the BitMapAllocator aware about bulk releases.

Signed-off-by: Radoslaw Zarzynski <rzarzyns@redhat.com>
(cherry picked from commit d11753ef4d03fabcf326a26fd68febdafdbd58ab)

6 years agoos/bluestore: make the StupidAllocator aware about bulk releases.
Radoslaw Zarzynski [Tue, 5 Sep 2017 11:35:47 +0000 (13:35 +0200)]
os/bluestore: make the StupidAllocator aware about bulk releases.

Signed-off-by: Radoslaw Zarzynski <rzarzyns@redhat.com>
(cherry picked from commit cb0420ea0b343e7659807b33389ff2354a1319ed)

6 years agoos/bluestore: extend the Allocator interface with bulk releases.
Radoslaw Zarzynski [Tue, 5 Sep 2017 10:55:34 +0000 (12:55 +0200)]
os/bluestore: extend the Allocator interface with bulk releases.

Signed-off-by: Radoslaw Zarzynski <rzarzyns@redhat.com>
(cherry picked from commit 0b41d2372e2f27bdffc033b88fc4a4ccd550da12)

6 years agoMerge pull request #26574 from badone/wip-luminous-test-dup_index-trim
Brad Hubbard [Wed, 13 Mar 2019 04:39:45 +0000 (14:39 +1000)]
Merge pull request #26574 from badone/wip-luminous-test-dup_index-trim

luminous: test: Verify a log trim trims the dup_index

Reviewed-by: Neha Ojha <nojha@redhat.com>
6 years agoMerge pull request #26613 from badone/wip-luminous-drop-GIL-in-get_config
Brad Hubbard [Tue, 12 Mar 2019 23:19:11 +0000 (09:19 +1000)]
Merge pull request #26613 from badone/wip-luminous-drop-GIL-in-get_config

luminous: mgr: drop GIL in get_config

Reviewed-by: Neha Ojha <nojha@redhat.com>
6 years agoMerge pull request #26427 from smithfarm/wip-38318-luminous
Yuri Weinstein [Tue, 12 Mar 2019 19:53:34 +0000 (12:53 -0700)]
Merge pull request #26427 from smithfarm/wip-38318-luminous

luminous: mgr: deadlock: _check_auth_rotating possible clock skew, rotating keys expired way too early

Reviewed-by: xie xingguo <xie.xingguo@zte.com.cn>
Reviewed-by: Tim Serong <tserong@suse.com>
6 years agoMerge pull request #26706 from pdvian/wip-38506-luminous
Yuri Weinstein [Tue, 12 Mar 2019 19:52:22 +0000 (12:52 -0700)]
Merge pull request #26706 from pdvian/wip-38506-luminous

luminous: osd/PrimaryLogPG: handle object !exists in handle_watch_timeout

Reviewed-by: xie xingguo <xie.xingguo@zte.com.cn>
6 years agoMerge pull request #26871 from neha-ojha/wip-38316-luminous
Yuri Weinstein [Tue, 12 Mar 2019 19:51:41 +0000 (12:51 -0700)]
Merge pull request #26871 from neha-ojha/wip-38316-luminous

luminous: core: os/filestore: ceph_abort() on fsync(2) or fdatasync(2) failure

Reviewed-by: Sage Weil <sage@redhat.com>
6 years agoMerge pull request #26677 from smithfarm/wip-38501-luminous
Yuri Weinstein [Tue, 12 Mar 2019 16:22:02 +0000 (09:22 -0700)]
Merge pull request #26677 from smithfarm/wip-38501-luminous

luminous: rgw: rgw_file: only first subuser can be exported to nfs

Reviewed-by: Casey Bodley <cbodley@redhat.com>
6 years agoMerge pull request #26791 from cbodley/wip-38608
Yuri Weinstein [Tue, 12 Mar 2019 16:19:48 +0000 (09:19 -0700)]
Merge pull request #26791 from cbodley/wip-38608

luminous: qa/rgw: reduce number of multisite log shards

Reviewed-by: Casey Bodley <cbodley@redhat.com>
6 years agoMerge pull request #25810 from pdvian/wip-37741-luminous
Yuri Weinstein [Mon, 11 Mar 2019 19:45:27 +0000 (12:45 -0700)]
Merge pull request #25810 from pdvian/wip-37741-luminous

luminous: build/ops: rpm: require ceph-base instead of ceph-common

Reviewed-by: Nathan Cutler <ncutler@suse.com>
6 years agoMerge pull request #26127 from xiexingguo/wip-luminous-upmap-fixes
Yuri Weinstein [Mon, 11 Mar 2019 19:44:26 +0000 (12:44 -0700)]
Merge pull request #26127 from xiexingguo/wip-luminous-upmap-fixes

luminous: osd: backport recent upmap fixes

Reviewed-by: Neha Ojha <nojha@redhat.com>
Reviewed-by: Yuri Weinstein <yweinste@redhat.com>
6 years agoMerge pull request #26199 from b-ranto/wip-restful-luminous
Yuri Weinstein [Mon, 11 Mar 2019 19:42:52 +0000 (12:42 -0700)]
Merge pull request #26199 from b-ranto/wip-restful-luminous

luminous: mgr/restful: fix py got exception when get osd info

Reviewed-by: Kefu Chai <kchai@redhat.com>
6 years agoMerge pull request #26355 from pdvian/wip-38240-luminous
Yuri Weinstein [Mon, 11 Mar 2019 19:42:21 +0000 (12:42 -0700)]
Merge pull request #26355 from pdvian/wip-38240-luminous

luminous: qa/tasks/radosbench: default to 64k writes

Reviewed-by: Kefu Chai <kchai@redhat.com>
Reviewed-by: Josh Durgin <jdurgin@redhat.com>
6 years agoMerge pull request #26540 from ifed01/wip-ifed-38395
Yuri Weinstein [Mon, 11 Mar 2019 19:41:34 +0000 (12:41 -0700)]
Merge pull request #26540 from ifed01/wip-ifed-38395

luminous: os/bluestore: fix lack of onode ref during removal

Reviewed-by: Sage Weil <sage@redhat.com>
6 years agoMerge pull request #26579 from pdvian/wip-38400-luminous
Yuri Weinstein [Mon, 11 Mar 2019 19:40:53 +0000 (12:40 -0700)]
Merge pull request #26579 from pdvian/wip-38400-luminous

luminous: common: ceph_timer: stop timer's thread when it is suspended

Reviewed-by: Neha Ojha <nojha@redhat.com>
6 years agoMerge pull request #26866 from neha-ojha/wip-38574-luminous
Neha Ojha [Mon, 11 Mar 2019 16:55:29 +0000 (09:55 -0700)]
Merge pull request #26866 from neha-ojha/wip-38574-luminous

luminous: os/bluestore: Fix problem with bluefs's freespace not being balanced when kv_sync_thread is sleeping

Reviewed-by: Sage Weil <sage@redhat.com>
Reviewed-by: Adam Kupczyk <akupczyk@redhat.com>
6 years agoos/filestore: ceph_abort() on fsync(2) or fdatasync(2) failure 26871/head
Sage Weil [Mon, 11 Feb 2019 17:11:22 +0000 (11:11 -0600)]
os/filestore: ceph_abort() on fsync(2) or fdatasync(2) failure

If we get an error from f[data]sync that is always a fatal error.

Fixes: http://tracker.ceph.com/issues/38258
Signed-off-by: Sage Weil <sage@redhat.com>
(cherry picked from commit 3892b81303bcc35056ca06371651e13b7a4c4f2a)

 Conflicts:
src/os/filestore/FileStore.cc - encode trivial resolution
src/os/filestore/WBThrottle.cc - trivial resolution

6 years agoos/bluestore: Fix problem with bluefs's freespace not being balanced when kv_sync_thr... 26866/head
Adam Kupczyk [Thu, 28 Feb 2019 08:24:45 +0000 (09:24 +0100)]
os/bluestore: Fix problem with bluefs's freespace not being balanced when kv_sync_thread is sleeping.

Fixes: https://tracker.ceph.com/issues/38574
Signed-off-by: Adam Kupczyk <akupczyk@redhat.com>
(cherry picked from commit cbaa17c1fca858ce25c1e3de193151a8b7b10ef7)

Conflicts:
src/os/bluestore/BlueStore.cc: trivial resolution

6 years agoMerge pull request #26857 from ceph/backport-luminous-26826
Alfredo Deza [Fri, 8 Mar 2019 18:49:02 +0000 (13:49 -0500)]
Merge pull request #26857 from ceph/backport-luminous-26826

luminous: ceph-volume: `simple scan` will now scan all running ceph-disk OSDs

Reviewed-by: Alfredo Deza <adeza@redhat.com>
6 years agoceph-volume: make systemctl.get_running_osds resilient to garbage output 26857/head
Andrew Schoen [Fri, 8 Mar 2019 15:53:08 +0000 (09:53 -0600)]
ceph-volume: make systemctl.get_running_osds resilient to garbage output

Makes systemd.systemctl.get_running_osds more resilient to output
that doesn't match what we're expecting to parse. This also handles
the case of a nonzero exit status by retuning an empty list.

Signed-off-by: Andrew Schoen <aschoen@redhat.com>
(cherry picked from commit f3707f1ad43513c2a6df17e9dce756533c3b4a1d)

6 years agoceph-volume: remove obsoleted simple unit test
Andrew Schoen [Thu, 7 Mar 2019 18:38:02 +0000 (12:38 -0600)]
ceph-volume: remove obsoleted simple unit test

This test is no longer valid because `simple scan`
without any arguments will now attempt to scan all
running OSDs.

Signed-off-by: Andrew Schoen <aschoen@redhat.com>
(cherry picked from commit b59dcd01c2dd386ca1b63eb66ed243afffb80211)

6 years agoceph-volume: tox tests should ignore the tests/functional directory
Andrew Schoen [Thu, 7 Mar 2019 18:37:00 +0000 (12:37 -0600)]
ceph-volume: tox tests should ignore the tests/functional directory

Without this the functional testinfra tests try to run when we
are intending to only run the unit tests.

Signed-off-by: Andrew Schoen <aschoen@redhat.com>
(cherry picked from commit 1881f386d8207ee8c10f0863c4a1abf18cf3c5d9)

6 years agoceph-volume: use `simple scan` and `simple activate --all` in tests
Andrew Schoen [Thu, 7 Mar 2019 17:57:03 +0000 (11:57 -0600)]
ceph-volume: use `simple scan` and `simple activate --all` in tests

In a couple of the functional tests for simple we should run `simple
scan` without any arguments and `simple activate --all` to increase
the test coverage. We want to test pointing at a diretory and scanning
all running OSDs.

Signed-off-by: Andrew Schoen <aschoen@redhat.com>
(cherry picked from commit 87c33f149a83bb1175bfb473b226e8c46e4e2a6e)

6 years agoceph-volume: update docs and help menu for `simple scan`
Andrew Schoen [Thu, 7 Mar 2019 17:10:19 +0000 (11:10 -0600)]
ceph-volume: update docs and help menu for `simple scan`

Signed-off-by: Andrew Schoen <aschoen@redhat.com>
(cherry picked from commit f7943ef6007fb05d83602bc22cbacf3bb67d8625)

6 years agoceph-volume: adds unit tests for systemd.systemctl.get_running_osd_ids
Andrew Schoen [Thu, 7 Mar 2019 16:01:40 +0000 (10:01 -0600)]
ceph-volume: adds unit tests for systemd.systemctl.get_running_osd_ids

Signed-off-by: Andrew Schoen <aschoen@redhat.com>
(cherry picked from commit 7cb098b6899542c875d911d28771a4c450d0bb3a)

6 years agoceph-volume: update `simple scan` to scan all running OSDs
Andrew Schoen [Wed, 6 Mar 2019 22:52:33 +0000 (16:52 -0600)]
ceph-volume: update `simple scan` to scan all running OSDs

If no argument is passed to `ceph-volume simple scan` it will
inspect any running osds and scan them if they were created by
ceph-disk.

Signed-off-by: Andrew Schoen <aschoen@redhat.com>
(cherry picked from commit 28e454ec30f867ae1229c66d263bcd608654553f)

6 years agoceph-volume: add systemd.systemctl.get_running_osd_ids
Andrew Schoen [Wed, 6 Mar 2019 22:51:06 +0000 (16:51 -0600)]
ceph-volume: add systemd.systemctl.get_running_osd_ids

This is used to retrieve a list of osd ids from the currently
running ceph-osd systemd units.

Signed-off-by: Andrew Schoen <aschoen@redhat.com>
(cherry picked from commit 15d20e29a2f2d74caf05dfec559e30941c7a46ab)

6 years agoMerge pull request #26824 from ceph/backport-luminous-26739
Alfredo Deza [Thu, 7 Mar 2019 20:22:59 +0000 (15:22 -0500)]
Merge pull request #26824 from ceph/backport-luminous-26739

luminous: ceph-volume: replace testinfra command with py.test

Reviewed-by Alfredo Deza <adeza@redhat.com>

6 years agoceph-volume tests.simple replace testinfra command for py.test 26824/head
Alfredo Deza [Mon, 4 Mar 2019 14:05:07 +0000 (09:05 -0500)]
ceph-volume tests.simple replace testinfra command for py.test

Signed-off-by: Alfredo Deza <adeza@redhat.com>
(cherry picked from commit e90ebc3264004cab3286895c843db43f20a4840b)

6 years agoceph-volume tests.lvm replace testinfra command for py.test
Alfredo Deza [Mon, 4 Mar 2019 14:04:51 +0000 (09:04 -0500)]
ceph-volume tests.lvm replace testinfra command for py.test

Signed-off-by: Alfredo Deza <adeza@redhat.com>
(cherry picked from commit c4597fc63195c654b960f747f9d50a558fa719c0)

6 years agoceph-volume tests.batch replace testinfra command for py.test
Alfredo Deza [Mon, 4 Mar 2019 14:04:36 +0000 (09:04 -0500)]
ceph-volume tests.batch replace testinfra command for py.test

Signed-off-by: Alfredo Deza <adeza@redhat.com>
(cherry picked from commit dc7501af69ccbdabb5e6a77a91696454855201e9)

6 years agoqa/rgw: reduce number of multisite log shards 26791/head
Casey Bodley [Wed, 5 Sep 2018 18:45:04 +0000 (14:45 -0400)]
qa/rgw: reduce number of multisite log shards

Signed-off-by: Casey Bodley <cbodley@redhat.com>
(cherry picked from commit 2629231ca1782b6a02e8279182c707d56d95290a)

Conflicts:
qa/suites/rgw/multisite/overrides.yaml curl timeout

6 years agoMerge pull request #26232 from batrick/i38132-i38130
Yuri Weinstein [Wed, 6 Mar 2019 15:52:39 +0000 (07:52 -0800)]
Merge pull request #26232 from batrick/i38132-i38130

luminous: mds: stopping MDS with a large cache (40+GB) causes it to miss heartbeats

Reviewed-by: Patrick Donnelly <pdonnell@redhat.com>
6 years agoMerge pull request #26661 from batrick/i38488
Yuri Weinstein [Wed, 6 Mar 2019 15:51:38 +0000 (07:51 -0800)]
Merge pull request #26661 from batrick/i38488

luminous: mds: message invalid access

Reviewed-by: Yuri Weinstein <yweinste@redhat.com>
6 years agoMerge pull request #26703 from ceph/backport-luminous-26685
Alfredo Deza [Tue, 5 Mar 2019 15:29:46 +0000 (10:29 -0500)]
Merge pull request #26703 from ceph/backport-luminous-26685

luminous: ceph-volume: use our own testinfra suite for functional testing

Reviewed-by: Alfredo Deza <adeza@redhat.com>
6 years agoMerge pull request #26686 from dzafman/wip-test-fix
Neha Ojha [Mon, 4 Mar 2019 22:28:22 +0000 (14:28 -0800)]
Merge pull request #26686 from dzafman/wip-test-fix

luminous: qa/workunits/cephtool/test.sh: Use :- to handle TMPDIR=""

Reviewed-by: Kefu Chai <kchai@redhat.com>
Reviewed-by: Yuri Weinstein <yweinstei@redhat.com>
6 years agoceph-volume: set number of osd ports in the tests 26703/head
Andrew Schoen [Mon, 4 Mar 2019 20:43:37 +0000 (14:43 -0600)]
ceph-volume: set number of osd ports in the tests

The number of ports the OSDs listen on depend on the version of ceph
being used, so we need to test for that number accordingly.

Signed-off-by: Andrew Schoen <aschoen@redhat.com>
(cherry picked from commit 1132cb3c25fef9f853488cc8aab1327aff6bcf96)

6 years agomds: handle negative decay counter 26232/head
Patrick Donnelly [Sat, 2 Feb 2019 00:00:13 +0000 (16:00 -0800)]
mds: handle negative decay counter

Problem only exists in Luminous/Mimic.

Signed-off-by: Patrick Donnelly <pdonnell@redhat.com>
6 years agotest/mds: fix Session cons call
Patrick Donnelly [Fri, 1 Feb 2019 18:07:58 +0000 (10:07 -0800)]
test/mds: fix Session cons call

Problem did not exist in master.

Signed-off-by: Patrick Donnelly <pdonnell@redhat.com>
6 years agomds: simplify recall warnings
Patrick Donnelly [Mon, 28 Jan 2019 23:48:38 +0000 (15:48 -0800)]
mds: simplify recall warnings

Instead of a timeout and complicated decisions about whether the client is
releasing caps in an expeditious fashion, just use a DecayCounter that tracks
the number of caps we've recalled. This counter is decremented whenever the
client releases caps. If the counter passes a threshold, then we raise the
warning.

Similar reworking is done for the steady-state recall of client caps. Another
release DecayCounter is added so we can tell when the client is not releasing
any more caps.

Signed-off-by: Patrick Donnelly <pdonnell@redhat.com>
(cherry picked from commit c0b3a1148475ea7e563b1b8c13217b6e7c85b150)

Conflicts:
PendingReleaseNotes
src/common/options.cc
src/mds/Beacon.cc
src/mds/Server.cc
src/mds/SessionMap.cc
src/mds/SessionMap.h

6 years agomds: add extra details for cache drop output
Patrick Donnelly [Fri, 25 Jan 2019 23:59:13 +0000 (15:59 -0800)]
mds: add extra details for cache drop output

Signed-off-by: Patrick Donnelly <pdonnell@redhat.com>
(cherry picked from commit 3bc093fd9e9daf99f09abe68ce0c0077ef0f58da)

6 years agoqa: test mds_max_caps_per_client conf
Patrick Donnelly [Fri, 25 Jan 2019 20:13:50 +0000 (12:13 -0800)]
qa: test mds_max_caps_per_client conf

That the MDS will not let a client sit above mds_max_caps_per_client caps.

Signed-off-by: Patrick Donnelly <pdonnell@redhat.com>
(cherry picked from commit 30aaa884bf3cf4ba8e344390c974906624c2258a)

6 years agomds: limit maximum number of caps held by session
Patrick Donnelly [Thu, 24 Jan 2019 22:23:08 +0000 (14:23 -0800)]
mds: limit maximum number of caps held by session

This is to prevent unsustainable situations where a client has so many
outstanding caps that a linear traversal/operation on the session's caps takes
unacceptable amounts of time.

Fixes: http://tracker.ceph.com/issues/38022
Signed-off-by: Patrick Donnelly <pdonnell@redhat.com>
(cherry picked from commit 48ca097a9f537545b4b0c864ebb8c5e81d821098)

Conflicts:
PendingReleaseNotes
src/mds/Server.cc

6 years agomds: adapt drop cache for incremental recall
Patrick Donnelly [Thu, 24 Jan 2019 22:22:42 +0000 (14:22 -0800)]
mds: adapt drop cache for incremental recall

Signed-off-by: Patrick Donnelly <pdonnell@redhat.com>
(cherry picked from commit 7244cae4b8b4455e6b66fcaa5299905c839bee24)

6 years agomds: recall caps incrementally
Patrick Donnelly [Wed, 23 Jan 2019 14:41:55 +0000 (06:41 -0800)]
mds: recall caps incrementally

As with trimming, use DecayCounters to throttle the number of caps we recall,
both globally and per-session.

Signed-off-by: Patrick Donnelly <pdonnell@redhat.com>
(cherry picked from commit ef46216d8d0b659549925481b4eff6bd7d2c43c9)

Conflicts:
PendingReleaseNotes
src/common/options.cc
src/mds/Beacon.cc
src/mds/Server.cc
src/mds/Server.h
src/mds/SessionMap.cc
src/mds/SessionMap.h

6 years agomds: adapt drop cache for incremental trim
Patrick Donnelly [Sun, 20 Jan 2019 04:40:11 +0000 (20:40 -0800)]
mds: adapt drop cache for incremental trim

Signed-off-by: Patrick Donnelly <pdonnell@redhat.com>
(cherry picked from commit b750b3bb25d3c0cbad7a24ad6c7fd215d1b16395)

6 years agomds: add throttle for trimming MDCache
Patrick Donnelly [Sat, 19 Jan 2019 00:18:59 +0000 (16:18 -0800)]
mds: add throttle for trimming MDCache

This is necessary when the MDS cache size decreases by a significant amount.
For example, when stopping a large MDS or when the operator makes a large cache
size reduction.

Fixes: http://tracker.ceph.com/issues/37723
Signed-off-by: Patrick Donnelly <pdonnell@redhat.com>
(cherry picked from commit 7bf2f31abf069b9bafc52bc1478292bb8a6c71b8)

Conflicts:
PendingReleaseNotes
src/common/options.cc
src/mds/MDCache.cc
src/mds/MDCache.h

6 years agomds: cleanup SessionMap init
Patrick Donnelly [Fri, 18 Jan 2019 23:43:48 +0000 (15:43 -0800)]
mds: cleanup SessionMap init

Signed-off-by: Patrick Donnelly <pdonnell@redhat.com>
(cherry picked from commit 69efdaf6465c368795c0e564898a39baf34d09c2)

6 years agomds: cleanup Session init
Patrick Donnelly [Mon, 21 Jan 2019 18:57:45 +0000 (10:57 -0800)]
mds: cleanup Session init

Signed-off-by: Patrick Donnelly <pdonnell@redhat.com>
(cherry picked from commit ce153b811263932b42b04a7b8abe63e8241d0ddc)

Conflicts:
src/mds/SessionMap.cc
src/mds/SessionMap.h

6 years agomds: get ref to message for lambda 26661/head
Patrick Donnelly [Tue, 26 Feb 2019 20:27:40 +0000 (12:27 -0800)]
mds: get ref to message for lambda

Otherwise we have invalid reads. Caught by valgrind.

This cannot be cherry-picked as it was a bug introduced by a backport.

Introduced-by: 2f6289ff7f7385e462d59e096634a1dee0b60837
Fixes: http://tracker.ceph.com/issues/38488
Signed-off-by: Patrick Donnelly <pdonnell@redhat.com>
6 years agoMerge pull request #26546 from cbodley/wip-38410-luminous
Yuri Weinstein [Mon, 4 Mar 2019 17:06:17 +0000 (09:06 -0800)]
Merge pull request #26546 from cbodley/wip-38410-luminous

luminous: rgw: fix cls_bucket_head result order consistency

Reviewed-by: Nathan Cutler <ncutler@suse.com>
6 years agoMerge pull request #26548 from cbodley/wip-38414-luminous
Yuri Weinstein [Mon, 4 Mar 2019 17:05:50 +0000 (09:05 -0800)]
Merge pull request #26548 from cbodley/wip-38414-luminous

luminous: rgw: bug in versioning concurrent, list and get have consistency issue

Reviewed-by: Nathan Cutler <ncutler@suse.com>
6 years agoosd/PrimaryLogPG: handle object !exists in handle_watch_timeout 26706/head
Sage Weil [Fri, 22 Feb 2019 14:56:16 +0000 (08:56 -0600)]
osd/PrimaryLogPG: handle object !exists in handle_watch_timeout

- watch on object
- watch timeout queued
- rados op deletes object
- handle_watch_timeout tries to delete it again

Fixes: http://tracker.ceph.com/issues/38432
Signed-off-by: Sage Weil <sage@redhat.com>
(cherry picked from commit bdf2d1b97308835bec038b10663bc438da013e9d)

6 years agomgr: drop GIL in get_config 26613/head
John Spray [Wed, 14 Nov 2018 11:19:14 +0000 (06:19 -0500)]
mgr: drop GIL in get_config

Fixes: https://tracker.ceph.com/issues/35985
Signed-off-by: John Spray <john.spray@redhat.com>
(cherry picked from commit d590a53)

Conflicts:
        src/mgr/ActivePyModules.cc

6 years agoMerge pull request #25825 from pdvian/wip-36434-luminous
Yuri Weinstein [Thu, 28 Feb 2019 19:35:25 +0000 (11:35 -0800)]
Merge pull request #25825 from pdvian/wip-36434-luminous

luminous: mon: monstore tool rebuild does not generate creating_pgs

Reviewed-by: Sage Weil <sage@redhat.com>
6 years agoMerge pull request #25855 from ashishkumsingh/wip-37825-luminous
Yuri Weinstein [Thu, 28 Feb 2019 19:30:16 +0000 (11:30 -0800)]
Merge pull request #25855 from ashishkumsingh/wip-37825-luminous

luminous: os/bluestore: KernelDevice::read() does the EIO mapping now.

Reviewed-by: Igor Fedotov <ifedotov@suse.com>
6 years agoMerge pull request #25956 from xiexingguo/wip-liminous-async-fixes
Yuri Weinstein [Thu, 28 Feb 2019 19:29:28 +0000 (11:29 -0800)]
Merge pull request #25956 from xiexingguo/wip-liminous-async-fixes

luminous: msg/async: backport recent messenger fixes

Reviewed-by: Ricardo Dias <rdias@suse.com>
Reviewed-by: Sage Weil <sage@redhat.com>
6 years agoMerge pull request #26042 from trociny/wip-37972-luminous
Yuri Weinstein [Thu, 28 Feb 2019 19:24:46 +0000 (11:24 -0800)]
Merge pull request #26042 from trociny/wip-37972-luminous

luminous: msg/msg_types: fix the dencoder of entity_addr_t

Reviewed-by: Kefu Chai <kchai@redhat.com>
6 years agoMerge pull request #26284 from smithfarm/wip-38140-luminous
Yuri Weinstein [Thu, 28 Feb 2019 19:24:17 +0000 (11:24 -0800)]
Merge pull request #26284 from smithfarm/wip-38140-luminous

luminous: tests: Add hashinfo testing for dump command of ceph-objectstore-tool

Reviewed-by: David Zafman <dzafman@redhat.com>
6 years agoMerge pull request #26501 from k0ste/luminous_backports2
Yuri Weinstein [Thu, 28 Feb 2019 19:23:50 +0000 (11:23 -0800)]
Merge pull request #26501 from k0ste/luminous_backports2

luminous: mgr/balancer: restrict automatic balancing to specific weekdays

Reviewed-by: xie xingguo <xie.xingguo@zte.com.cn>
6 years agoceph-volume: use our own testinfra suite for functional testing
Andrew Schoen [Wed, 27 Feb 2019 21:14:03 +0000 (15:14 -0600)]
ceph-volume: use our own testinfra suite for functional testing

This allows us to run a smaller subset of tests from the ones provided
by ceph-ansible and test only the things that pertain to ceph-volume.

Signed-off-by: Andrew Schoen <aschoen@redhat.com>
(cherry picked from commit ccfc8e6dc42b55f14fa3b4ef210cb639b9a7e20b)

6 years agoMerge pull request #26656 from jan--f/c-v-simple-activate-all-luminous
Andrew Schoen [Wed, 27 Feb 2019 21:58:51 +0000 (15:58 -0600)]
Merge pull request #26656 from jan--f/c-v-simple-activate-all-luminous

luminous: ceph-volume: add --all flag to simple activate

Reviewed-by: Andrew Schoen <aschoen@redhat.com>
6 years agorgw_file: use correct secret key to check auth 26677/head
MinSheng Lin [Fri, 25 Jan 2019 03:20:17 +0000 (03:20 +0000)]
rgw_file: use correct secret key to check auth

Currently, the authorize function in rgw_file only use the secret key of
first key pair to compare, add a function which get secret key by user's
access key and check the result is match with user's secret key.

Fixes: https://tracker.ceph.com/issues/37855
Signed-off-by: MinSheng Lin <minsheng.l@inwinstack.com>
(cherry picked from commit e92755c60325475342afcafcd5293a20e3e5216a)

6 years agoMerge pull request #26065 from pdvian/wip-37989-luminous
Yuri Weinstein [Tue, 26 Feb 2019 22:18:17 +0000 (14:18 -0800)]
Merge pull request #26065 from pdvian/wip-37989-luminous

luminous: MDSMonitor: missing osdmon writeable check

Reviewed-by: Patrick Donnelly <pdonnell@redhat.com>
6 years agoMerge pull request #25858 from ashishkumsingh/wip-37823-luminous
Yuri Weinstein [Tue, 26 Feb 2019 22:14:18 +0000 (14:14 -0800)]
Merge pull request #25858 from ashishkumsingh/wip-37823-luminous

luminous: mds: log evicted clients to clog/dbg

Reviewed-by: Patrick Donnelly <pdonnell@redhat.com>
6 years agoMerge pull request #25979 from pdvian/wip-37908-luminous
Yuri Weinstein [Tue, 26 Feb 2019 22:13:47 +0000 (14:13 -0800)]
Merge pull request #25979 from pdvian/wip-37908-luminous

luminous: mds: wait shorter intervals if beacon not sent

Reviewed-by: Patrick Donnelly <pdonnell@redhat.com>
6 years agoMerge pull request #26215 from pdvian/wip-38102-luminous
Yuri Weinstein [Tue, 26 Feb 2019 22:11:50 +0000 (14:11 -0800)]
Merge pull request #26215 from pdvian/wip-38102-luminous

luminous: mds: trim cache after journal flush

Reviewed-by: Patrick Donnelly <pdonnell@redhat.com>
6 years agoMerge pull request #26293 from pdvian/wip-38190-luminous
Yuri Weinstein [Tue, 26 Feb 2019 22:11:21 +0000 (14:11 -0800)]
Merge pull request #26293 from pdvian/wip-38190-luminous

luminous: mds: broadcast quota message to client when disable quota

Reviewed-by: Patrick Donnelly <pdonnell@redhat.com>
6 years agoMerge pull request #26473 from pdvian/wip-38336-luminous
Yuri Weinstein [Tue, 26 Feb 2019 22:10:51 +0000 (14:10 -0800)]
Merge pull request #26473 from pdvian/wip-38336-luminous

luminous: mds: fix potential re-evaluate stray dentry in _unlink_local_finish

Reviewed-by: Patrick Donnelly <pdonnell@redhat.com>
Reviewed-by: Venky Shankar <vshankar@redhat.com>
6 years agoceph-volume: add --all flag to simple activate 26656/head
Jan Fajerski [Thu, 31 Jan 2019 12:45:46 +0000 (13:45 +0100)]
ceph-volume: add --all flag to simple activate

This is intended to behave similarly to the lvm activate --all argument.
When passed, c-v will scan /etc/ceph/osd/ (or the location specified by
CEPH_VOLUME_SIMPLE_JSON_DIR) for json files (glob *.json) and call activate
for each file.  This should greatly ease the take-over of ceph-disk OSDs
with manual commands and deployment tools like DeepSea and ceph-ansible.
Also adds a simple unit test and modifies the
simple/centos7/filestore/activate functional test to use --all.

Signed-off-by: Jan Fajerski <jfajerski@suse.com>
(cherry picked from commit 05af94c6fca66083107e96e9aa1db87619e77e66)

 Conflicts:
src/ceph-volume/ceph_volume/tests/functional/simple/centos7/filestore/activate/test.yml
        resolved by deleting everything after conflict marker

6 years agoMerge pull request #25611 from pdvian/wip-37561-luminous
Yuri Weinstein [Mon, 25 Feb 2019 20:47:05 +0000 (12:47 -0800)]
Merge pull request #25611 from pdvian/wip-37561-luminous

luminous: rgw: rgwgc: process coredump in some special case

Reviewed-by: Casey Bodley <cbodley@redhat.com>