]> git.apps.os.sepia.ceph.com Git - ceph.git/log
ceph.git
8 years agoReplicatedPG::_scrub_finish: check stats for ec overwrites pools
Samuel Just [Tue, 29 Nov 2016 21:59:10 +0000 (13:59 -0800)]
ReplicatedPG::_scrub_finish: check stats for ec overwrites pools

This should work fine now that we are doing an update-in-place
with rollback information off to the side.

Signed-off-by: Samuel Just <sjust@redhat.com>
8 years agoReplicatedPG: merge apply_ctx_scrub_stats into apply_stats
Samuel Just [Tue, 29 Nov 2016 21:56:06 +0000 (13:56 -0800)]
ReplicatedPG: merge apply_ctx_scrub_stats into apply_stats

The only way the two aren't called essentially atomically is when the
ECBackend needs to delay a write for rmw.  In such a case, we actually
want to delay the scrub_cstat application as well since otherwise, we'd
have to flush the backend before settling up at the end of scrub.

Perhaps this should be a separate function to distinguish between the
replica+primary info update and the primary scrub_cstat update, but that
seems more complicated than it's really worth.

Fixes: http://tracker.ceph.com/issues/17999
Signed-off-by: Samuel Just <sjust@redhat.com>
8 years agoMerge pull request #12141 from athanatos/wip-17983
Sage Weil [Tue, 22 Nov 2016 21:30:14 +0000 (16:30 -0500)]
Merge pull request #12141 from athanatos/wip-17983

osd/ECTransaction: only write out the hinfo if not delete

Reviewed-by: Sage Weil <sage@redhat.com>
8 years agoMerge pull request #12143 from rook/wip-boost-ext
Matt Benjamin [Tue, 22 Nov 2016 21:29:26 +0000 (16:29 -0500)]
Merge pull request #12143 from rook/wip-boost-ext

cmake: fix boost build on ubuntu 16.10 yakkety

8 years agoMerge pull request #12078 from yangdongsheng/rbd_cleanup
Jason Dillaman [Tue, 22 Nov 2016 21:03:30 +0000 (16:03 -0500)]
Merge pull request #12078 from yangdongsheng/rbd_cleanup

librbd: minor cleanup

Reviewed-by: Jason Dillaman <dillaman@redhat.com>
8 years agocmake: fix boost build on ubuntu yakkety 12143/head
Bassam Tabbara [Tue, 22 Nov 2016 19:53:34 +0000 (11:53 -0800)]
cmake: fix boost build on ubuntu yakkety

If the host system has boost version 1.61 or higher (as in the case
for ubuntu 16.10 yakkety) the ceph build is currently broken. it
will pickup the system boost libraries but use the headers from the
submodule.

This commit ensure that when WITH_SYSTEM_BOOST is OFF we always
use the boost libraries and headers built from the submodule.

Signed-off-by: Bassam Tabbara <bassam.tabbara@quantum.com>
8 years agoMerge pull request #12110 from batrick/client-failure-msg
Gregory Farnum [Tue, 22 Nov 2016 19:32:53 +0000 (14:32 -0500)]
Merge pull request #12110 from batrick/client-failure-msg

client: improve failure messages/debugging

Reviewed-by: Greg Farnum <gfarnum@redhat.com>
8 years agoMerge pull request #12124 from branch-predictor/bp-fast-markdown-doc
Kefu Chai [Tue, 22 Nov 2016 11:20:01 +0000 (19:20 +0800)]
Merge pull request #12124 from branch-predictor/bp-fast-markdown-doc

doc/rados/configuration/osd-config-ref.rst: document the fast mark down

Reviewed-by: Kefu Chai <kchai@redhat.com>
8 years agoMerge pull request #12123 from branch-predictor/bp-fast-markdown-is-default
Kefu Chai [Tue, 22 Nov 2016 11:04:39 +0000 (19:04 +0800)]
Merge pull request #12123 from branch-predictor/bp-fast-markdown-is-default

test/osd-fast-mark-down.sh: wrong assumption on first subtest

Reviewed-by: Kefu Chai <kchai@redhat.com>
8 years agodoc/rados/configuration/osd-config-ref.rst: document the fast mark down 12124/head
Piotr Dałek [Tue, 22 Nov 2016 09:42:28 +0000 (10:42 +0100)]
doc/rados/configuration/osd-config-ref.rst: document the fast mark down

Document the "osd fast fail on connection refused" option.

Signed-off-by: Piotr Dałek <git@predictor.org.pl>
8 years agotest/osd-fast-mark-down.sh: wrong assumption on first subtest 12123/head
Piotr Dałek [Tue, 22 Nov 2016 09:14:14 +0000 (10:14 +0100)]
test/osd-fast-mark-down.sh: wrong assumption on first subtest

First subtest checks for proper behavior when "osd fast fail on
connection refused" is disabled, yet it doesn't disable it and
fails, as is it enabled by default.

Signed-off-by: Piotr Dałek <git@predictor.org.pl>
8 years agoMerge pull request #8948 from cooboos/perf-reset
Haomai Wang [Tue, 22 Nov 2016 06:31:08 +0000 (14:31 +0800)]
Merge pull request #8948 from cooboos/perf-reset

test: add perf-reset test in test/perf_counters.cc

Reviewed-by: Haomai Wang <haomai@xsky.com>
8 years agoMerge pull request #12072 from dzafman/wip-test-17830
Kefu Chai [Tue, 22 Nov 2016 03:17:24 +0000 (11:17 +0800)]
Merge pull request #12072 from dzafman/wip-test-17830

tests: fix osd-scrub-repair.sh

Reviewed-by: Kefu Chai <kchai@redhat.com>
8 years agolibrbd: cleanup: use a more proper variable name 12078/head
Dongsheng Yang [Sat, 19 Nov 2016 13:05:46 +0000 (08:05 -0500)]
librbd: cleanup: use a more proper variable name

Signed-off-by: Dongsheng Yang <dongsheng.yang@easystack.cn>
8 years agoECTransaction: only write out the hinfo if not delete 12141/head
Samuel Just [Mon, 21 Nov 2016 23:37:25 +0000 (15:37 -0800)]
ECTransaction: only write out the hinfo if not delete

Fixes: http://tracker.ceph.com/issues/17983
Signed-off-by: Samuel Just <sjust@redhat.com>
8 years agoMerge pull request #11993 from ceph/wip-17809
Yuri Weinstein [Mon, 21 Nov 2016 21:37:17 +0000 (13:37 -0800)]
Merge pull request #11993 from ceph/wip-17809

buffer: add advance(unsigned) back

Reviewed-by: Sage Weil <sage@redhat.com>
8 years agoMerge pull request #12049 from liewegas/wip-kv-iterators
Yuri Weinstein [Mon, 21 Nov 2016 21:36:36 +0000 (13:36 -0800)]
Merge pull request #12049 from liewegas/wip-kv-iterators

kv: remove snapshot iterator

Reviewed-by: Kari, Varada <varada.kari@sandisk.com>
Reviewed-by: Samuel Just <sjust@redhat.com>
8 years agoMerge pull request #11719 from zhangsw/fix-rgw-requestpay-bug
Casey Bodley [Mon, 21 Nov 2016 20:35:34 +0000 (15:35 -0500)]
Merge pull request #11719 from zhangsw/fix-rgw-requestpay-bug

rgw: Anonymous users shouldn't be able to access requester pays buckets.

Reviewed-by: Matt Benjamin <mbenjamin@redhat.com>
Reviewed-by: Casey Bodley <cbodley@redhat.com>
8 years agoMerge pull request #11989 from idealguo/httpargs-parse-cleanup
Matt Benjamin [Mon, 21 Nov 2016 20:14:01 +0000 (15:14 -0500)]
Merge pull request #11989 from idealguo/httpargs-parse-cleanup

rgw: skip empty http args in method parse() to avoid extra effort

8 years agoMerge pull request #12021 from rzarzynski/wip-rgw-comp-noimplacefact
Casey Bodley [Mon, 21 Nov 2016 19:11:15 +0000 (14:11 -0500)]
Merge pull request #12021 from rzarzynski/wip-rgw-comp-noimplacefact

rgw: compression uses optional::emplace instead of in-place factories

Reviewed-by: Casey Bodley <cbodley@redhat.com>
8 years agoMerge pull request #12108 from adamemerson/wip-compile-compress
Casey Bodley [Mon, 21 Nov 2016 18:20:23 +0000 (13:20 -0500)]
Merge pull request #12108 from adamemerson/wip-compile-compress

compress: Fix compilation failure from missing header

Reviewed-by: Casey Bodley <cbodley@redhat.com>
8 years agoMerge pull request #11827 from oritwas/wip-rgw-upgrade-doc
Casey Bodley [Mon, 21 Nov 2016 18:12:29 +0000 (13:12 -0500)]
Merge pull request #11827 from oritwas/wip-rgw-upgrade-doc

rgw: add recovery procedure for upgrade to older version of jewel

Reviewed-by: Casey Bodley <cbodley@redhat.com>
8 years agoMerge pull request #11940 from trociny/wip-17880
Jason Dillaman [Mon, 21 Nov 2016 17:38:27 +0000 (12:38 -0500)]
Merge pull request #11940 from trociny/wip-17880

librbd: release lock after demote

Reviewed-by: Jason Dillaman <dillaman@redhat.com>
8 years agoMerge pull request #11960 from vshankar/wip-librbd-ec-support
Jason Dillaman [Mon, 21 Nov 2016 17:36:54 +0000 (12:36 -0500)]
Merge pull request #11960 from vshankar/wip-librbd-ec-support

librbd: bug fixes for optional data pool support

Reviewed-by: Jason Dillaman <dillaman@redhat.com>
8 years agocompress: Fix compilation failure from missing header 12108/head
Adam C. Emerson [Mon, 21 Nov 2016 17:33:45 +0000 (12:33 -0500)]
compress: Fix compilation failure from missing header

Compress was failing due to the random header not being included.

Signed-off-by: Adam C. Emerson <aemerson@redhat.com>
8 years agorgw: compression uses boost::optional::emplace instead of in-place factories. 12021/head
Radoslaw Zarzynski [Wed, 16 Nov 2016 13:53:36 +0000 (14:53 +0100)]
rgw: compression uses boost::optional::emplace instead of in-place factories.

Signed-off-by: Radoslaw Zarzynski <rzarzynski@mirantis.com>
8 years agoMerge pull request #11901 from ceph/wip-rgw-compression-type-random
Matt Benjamin [Mon, 21 Nov 2016 16:35:25 +0000 (11:35 -0500)]
Merge pull request #11901 from ceph/wip-rgw-compression-type-random

rgw: add rgw_compression_type=random for teuthology testing

8 years agoMerge pull request #12073 from rzarzynski/wip-rgw-compile-asio-by-default
Matt Benjamin [Mon, 21 Nov 2016 16:24:32 +0000 (11:24 -0500)]
Merge pull request #12073 from rzarzynski/wip-rgw-compile-asio-by-default

rgw: compilation of the ASIO front-end is enabled by default.

8 years agoMerge pull request #12103 from rzarzynski/wip-rgw-auth-static_vector
Matt Benjamin [Mon, 21 Nov 2016 15:53:56 +0000 (10:53 -0500)]
Merge pull request #12103 from rzarzynski/wip-rgw-auth-static_vector

rgw: avoid dynamic memory allocations in rgw_swift_auth.cc by using static_vector

verified: f23

8 years agotest: Re-enable osd-scrub-repair.sh again 12072/head
David Zafman [Fri, 18 Nov 2016 16:52:15 +0000 (08:52 -0800)]
test: Re-enable osd-scrub-repair.sh again

Signed-off-by: David Zafman <dzafman@redhat.com>
8 years agoosd: Fix broken ec_size_mismatch setting
David Zafman [Fri, 18 Nov 2016 23:12:39 +0000 (15:12 -0800)]
osd: Fix broken ec_size_mismatch setting

Caused by: 1e95f2ce642485e25b74f7d873fda7e4b75a425f

Signed-off-by: David Zafman <dzafman@redhat.com>
8 years agoMerge pull request #12101 from tchaikov/wip-mark-down-test-cleanup
Kefu Chai [Mon, 21 Nov 2016 15:23:47 +0000 (23:23 +0800)]
Merge pull request #12101 from tchaikov/wip-mark-down-test-cleanup

test/osd/osd-fast-mark-down.sh: remove unnecessary teardown() calls

Reviewed-by: Loic Dachary <ldachary@redhat.com>
Reviewed-by: Piotr Dałek <piotr.dalek@ts.fujitsu.com>
8 years agoMerge pull request #12100 from tchaikov/wip-rocksdb
Sage Weil [Mon, 21 Nov 2016 15:14:27 +0000 (09:14 -0600)]
Merge pull request #12100 from tchaikov/wip-rocksdb

rocksdb: update to latest

Reviewed-by: Sage Weil <sage@redhat.com>
8 years agoMerge pull request #12093 from tchaikov/wip-yasm-wrapper
Sage Weil [Mon, 21 Nov 2016 15:11:59 +0000 (09:11 -0600)]
Merge pull request #12093 from tchaikov/wip-yasm-wrapper

yasm-wrapper: translate "-isystem $1" to "-i $1"

Reviewed-by: Sage Weil <sage@redhat.com>
8 years agoMerge pull request #12005 from wjwithagen/wip-wjw-freebsd-ceph-helpers
Kefu Chai [Mon, 21 Nov 2016 14:53:23 +0000 (22:53 +0800)]
Merge pull request #12005 from wjwithagen/wip-wjw-freebsd-ceph-helpers

workunits/ceph-helpers.sh: FreeBSD returns a different errorstring.

Reviewed-by: Kefu Chai <kchai@redhat.com>
8 years agoRevert "rgw: temporarily use std::vector in place of static_vector of Boost." 12103/head
Radoslaw Zarzynski [Mon, 21 Nov 2016 14:24:46 +0000 (15:24 +0100)]
Revert "rgw: temporarily use std::vector in place of static_vector of Boost."

This reverts commit bc23e0f7fa8491c44fa938eeb954197f6aad2367.
We're doing that because the reverted commit was a makeshift
solution to not fail Ceph compilation on platforms lacking
Boost modern enough to ship the container/static_vector.hpp.
As we got the in-tree Boost the commit isn't necessary anymore.

Signed-off-by: Radoslaw Zarzynski <rzarzynski@mirantis.com>
8 years agotest/osd/osd-fast-mark-down.sh: remove unnecessary teardown() calls 12101/head
Kefu Chai [Mon, 21 Nov 2016 13:51:56 +0000 (21:51 +0800)]
test/osd/osd-fast-mark-down.sh: remove unnecessary teardown() calls

main() does this for us.

Signed-off-by: Kefu Chai <kchai@redhat.com>
8 years agoMerge pull request #12035 from VictorDenisov/fix_snap_remove
Jason Dillaman [Mon, 21 Nov 2016 14:12:51 +0000 (09:12 -0500)]
Merge pull request #12035 from VictorDenisov/fix_snap_remove

rbd: use snap_remove implementation from internal

Reviewed-by: Jason Dillaman <dillaman@redhat.com>
8 years agoMerge pull request #12019 from branch-predictor/bp-fix-fastkill
Kefu Chai [Mon, 21 Nov 2016 13:47:20 +0000 (21:47 +0800)]
Merge pull request #12019 from branch-predictor/bp-fix-fastkill

test/osd/osd-fast-mark-down.sh: introduce large timeout

Reviewed-by: Kefu Chai <kchai@redhat.com>
8 years agorocksdb: update to latest 12100/head
Kefu Chai [Mon, 21 Nov 2016 13:43:27 +0000 (21:43 +0800)]
rocksdb: update to latest

Latest master includes

- CMakeLists.txt: FreeBSD has jemalloc as default malloc
- cmake: drop "-march=native" from CXX_FLAGS (#1429)

Signed-off-by: Kefu Chai <kchai@redhat.com>
8 years agoMerge pull request #12095 from dachary/wip-17830-eio
Kefu Chai [Mon, 21 Nov 2016 13:27:21 +0000 (21:27 +0800)]
Merge pull request #12095 from dachary/wip-17830-eio

tests: fix ceph-helpers.sh wait_for_clean delays

Reviewed-by: Kefu Chai <kchai@redhat.com>
8 years agoMerge pull request #11813 from ukernel/wip-17801
John Spray [Mon, 21 Nov 2016 12:53:46 +0000 (12:53 +0000)]
Merge pull request #11813 from ukernel/wip-17801

mds: ignore 'session evict' when mds is replaying log

Reviewed-by: John Spray <john.spray@redhat.com>
8 years agoMerge pull request #12065 from xiexingguo/xxg-wip-kill-gc-counters
Igor Fedotov [Mon, 21 Nov 2016 12:22:28 +0000 (15:22 +0300)]
Merge pull request #12065 from xiexingguo/xxg-wip-kill-gc-counters

os/bluestore: kill dead gc-related counters
Reviewed-by: Sage Weil <sage@redhat.com>
Reviewed-by: Igor Fedotov <ifedotov@mirantis.com>
8 years agotests: fix ceph-helpers.sh wait_for_clean delays 12095/head
Loic Dachary [Mon, 21 Nov 2016 09:32:17 +0000 (10:32 +0100)]
tests: fix ceph-helpers.sh wait_for_clean delays

The TENTH_TIMEOUT was not delcared as an int and failed to be set with
the correct number. The test of the function did not catch this.

Implement computing of the increasingly large sleep delays in a separate
function so that it can be tested more easily. Give up on sub-second
sleep because a the function will not sleep at all if the cluster is
already clean. And if it is not already clean, it is very unlikely to
become clean within less than a second. The downside of having very
short sleep time is that it needlessly stress the machine and also
possibly spam the logs.

Refs: http://tracker.ceph.com/issues/17830

Signed-off-by: Loic Dachary <loic@dachary.org>
8 years agoyasm-wrapper: translate "-isystem $1" to "-i $1" 12093/head
Kefu Chai [Mon, 21 Nov 2016 03:45:06 +0000 (11:45 +0800)]
yasm-wrapper: translate "-isystem $1" to "-i $1"

this silences the warning of:

yasm: warning: can open only one input file, only the last file will be
processed

as yasm does not understand -isystem, but gcc does.

Signed-off-by: Kefu Chai <kchai@redhat.com>
8 years agoqa / workunits: make rbd import/export work with image data pool 11960/head
Venky Shankar [Fri, 18 Nov 2016 06:16:15 +0000 (11:46 +0530)]
qa / workunits: make rbd import/export work with image data pool

Signed-off-by: Venky Shankar <vshankar@redhat.com>
8 years agotests / rbd: fix rbd python binding test
Venky Shankar [Fri, 18 Nov 2016 06:15:30 +0000 (11:45 +0530)]
tests / rbd: fix rbd python binding test

Signed-off-by: Venky Shankar <vshankar@redhat.com>
8 years agotest / rbd-mirror: image data pool test support
Venky Shankar [Thu, 10 Nov 2016 12:32:45 +0000 (18:02 +0530)]
test / rbd-mirror: image data pool test support

Signed-off-by: Venky Shankar <vshankar@redhat.com>
8 years agotest / librbd: image data pool test support
Venky Shankar [Tue, 8 Nov 2016 11:29:14 +0000 (16:59 +0530)]
test / librbd: image data pool test support

Signed-off-by: Venky Shankar <vshankar@redhat.com>
8 years agotest / librbd: use data pool IoCtx while listing objects
Venky Shankar [Thu, 17 Nov 2016 15:41:40 +0000 (21:11 +0530)]
test / librbd: use data pool IoCtx while listing objects

Signed-off-by: Venky Shankar <vshankar@redhat.com>
8 years agolibrbd / ObjectMap: use data_ctx/md_ctx pool context as required
Venky Shankar [Fri, 11 Nov 2016 06:01:44 +0000 (11:31 +0530)]
librbd / ObjectMap: use data_ctx/md_ctx pool context as required

Signed-off-by: Venky Shankar <vshankar@redhat.com>
8 years agolibrbd / CopyupRequest: use data pool ctx during copyup
Venky Shankar [Thu, 10 Nov 2016 09:17:57 +0000 (14:47 +0530)]
librbd / CopyupRequest: use data pool ctx during copyup

Signed-off-by: Venky Shankar <vshankar@redhat.com>
8 years agolibrados: drop io_ctx_impl on ioctx_create/create2
Venky Shankar [Wed, 9 Nov 2016 11:28:06 +0000 (16:58 +0530)]
librados: drop io_ctx_impl on ioctx_create/create2

close() was never called for the passed in IoCtx which
could probably result in an IoCtx leak if the original
IoCtx was a valid pool context allocated earlier.

Its kind of better to do it here rather than to leave
the destruction on the caller for better (or cleaner)
common case handling.

Signed-off-by: Venky Shankar <vshankar@redhat.com>
8 years agoMerge pull request #12080 from wjwithagen/wip-wjw-freebsd-install-deps
Kefu Chai [Sun, 20 Nov 2016 14:17:58 +0000 (22:17 +0800)]
Merge pull request #12080 from wjwithagen/wip-wjw-freebsd-install-deps

install-deps.sh: JQ is needed in one script

Reviewed-by: Kefu Chai <kchai@redhat.com>
8 years agoMerge pull request #12076 from cbodley/wip-rgw-region-root
Orit Wasserman [Sat, 19 Nov 2016 21:36:43 +0000 (22:36 +0100)]
Merge pull request #12076 from cbodley/wip-rgw-region-root

rgw: region conversion respects pre-existing rgw_region_root_pool
Reviewed-by: Orit Wasserman <owasserm@redhat.com>
8 years agoinstall-deps.sh: JQ is needed in one script 12080/head
Willem Jan Withagen [Sat, 19 Nov 2016 19:10:51 +0000 (20:10 +0100)]
install-deps.sh: JQ is needed in one script

Signed-off-by: Willem Jan Withagen <wjw@digiware.nl>
8 years agolibrbd: cleanup: fix a typo in CreateRequest.
Dongsheng Yang [Sat, 19 Nov 2016 13:04:53 +0000 (08:04 -0500)]
librbd: cleanup: fix a typo in CreateRequest.

Signed-off-by: Dongsheng Yang <dongsheng.yang@easystack.cn>
8 years agoos/bluestore: refactor ctor of SharedBlob 12065/head
xie xingguo [Sat, 19 Nov 2016 05:46:33 +0000 (13:46 +0800)]
os/bluestore: refactor ctor of SharedBlob

Signed-off-by: xie xingguo <xie.xingguo@zte.com.cn>
8 years agorgw: look for region_map in rgw_region_root_pool 12076/head
Casey Bodley [Fri, 18 Nov 2016 22:04:57 +0000 (17:04 -0500)]
rgw: look for region_map in rgw_region_root_pool

Signed-off-by: Casey Bodley <cbodley@redhat.com>
8 years agorgw: region conversion respects pre-existing rgw_region_root_pool
Casey Bodley [Fri, 18 Nov 2016 20:49:15 +0000 (15:49 -0500)]
rgw: region conversion respects pre-existing rgw_region_root_pool

Fixes: http://tracker.ceph.com/issues/17963
Signed-off-by: Casey Bodley <cbodley@redhat.com>
8 years agorgw: compilation of the ASIO front-end is enabled by default. 12073/head
Radoslaw Zarzynski [Fri, 18 Nov 2016 18:18:40 +0000 (19:18 +0100)]
rgw: compilation of the ASIO front-end is enabled by default.

We're changing the default value because the previous one was
a makeshift solution to not fail Ceph compilation due to
the Beast's dependency on Boost >= 1.54 that wasn't available
on CentoOS 7. As we got the in-tree Boost we can compile
the ASIO front-end by default.

Signed-off-by: Radoslaw Zarzynski <rzarzynski@mirantis.com>
8 years agoMerge pull request #12057 from liewegas/wip-debug-hitset
Sage Weil [Fri, 18 Nov 2016 18:06:44 +0000 (12:06 -0600)]
Merge pull request #12057 from liewegas/wip-debug-hitset

ceph_test_rados_api_tier: dump hitset that we fail to decode

Reviewed-by: Yehuda Sadeh <yehuda@redhat.com.>
8 years agoMerge pull request #12040 from liupan1111/wip-bluestore-lat-report
Sage Weil [Fri, 18 Nov 2016 14:18:18 +0000 (08:18 -0600)]
Merge pull request #12040 from liupan1111/wip-bluestore-lat-report

os/bluestore: fix latency calculation

Reviewed-by: Sage Weil <sage@redhat.com>
8 years agoMerge pull request #11978 from tchaikov/wip-cmake-jemalloc
Kefu Chai [Fri, 18 Nov 2016 09:53:56 +0000 (17:53 +0800)]
Merge pull request #11978 from tchaikov/wip-cmake-jemalloc

cmake: should link against ${ALLOC_LIBS}

Reviewed-by: Varada Raja Kumar Kari <kariraja@yahoo.com>
8 years agoMerge pull request #12048 from dzafman/wip-dz-memstore
Kefu Chai [Fri, 18 Nov 2016 09:47:14 +0000 (17:47 +0800)]
Merge pull request #12048 from dzafman/wip-dz-memstore

tests: Minor clean-ups

Reviewed-by: Sage Weil <sage@redhat.com>
Reviewed-by: Loic Dachary <ldachary@redhat.com>
Reviewed-by: Kefu Chai <kchai@redhat.com>
8 years agoMerge pull request #12066 from dachary/wip-16014-cot
Loic Dachary [Fri, 18 Nov 2016 09:37:02 +0000 (10:37 +0100)]
Merge pull request #12066 from dachary/wip-16014-cot

tests: save 9 characters for asok paths

Reviewed-by: Kefu Chai <kchai@redhat.com>
8 years agoos/bluestore: fix a bug: when using bluestore, the output of 12040/head
Pan Liu [Fri, 18 Nov 2016 08:26:19 +0000 (16:26 +0800)]
os/bluestore: fix a bug: when using bluestore, the output of
"ceph osd perf" is always 0ms.

Signed-off-by: Pan Liu <pan.liu@istuary.com>
8 years agoOSD: change the prefix from fs_* to os_*, because commit_latency and
Pan Liu [Fri, 18 Nov 2016 08:25:31 +0000 (16:25 +0800)]
OSD: change the prefix from fs_* to os_*, because commit_latency and
apply_latency will be used not only for filestore.

Signed-off-by: Pan Liu <pan.liu@istuary.com>
8 years agotests: save 9 characters for asok paths 12066/head
Loic Dachary [Fri, 18 Nov 2016 07:06:02 +0000 (08:06 +0100)]
tests: save 9 characters for asok paths

For vstart.sh powered tests, save 9 characters in the path name
by replacing testdir/test- with td/t-

60 characters imposed by jenkins
9 characters for src/test
5 characters for td/t-

33 left (instead of 24) for the test to create asok such as out/client.admin.25327.asok

Moving these files outside of the build directory is a bad idea because
tests should only create/use files within the builddir and not write
outside of this directory. Doing so would make things more complicated
for cleanup in case the test fail and create other problems as a
consequence (filling out disk space, conflicting directories between
runs etc.).

For ceph-helpers.sh tests replace testdir with td, saving 5 characters.
This is not strictly necessary but keeps the directory names consistent:
if the developer wants to get rid of all the test leftovers, it is
enough to remove the a single directory: td.

Fixes: http://tracker.ceph.com/issues/16014
Signed-off-by: Loic Dachary <loic@dachary.org>
8 years agoos/bluestore: add counter to trace extents have been removed due to compression
xie xingguo [Fri, 18 Nov 2016 06:22:04 +0000 (14:22 +0800)]
os/bluestore: add counter to trace extents have been removed due to compression

Signed-off-by: xie xingguo <xie.xingguo@zte.com.cn>
8 years agoos/bluestore: rename Extent::end() to Extent::logical_end()
xie xingguo [Fri, 18 Nov 2016 03:01:17 +0000 (11:01 +0800)]
os/bluestore: rename Extent::end() to Extent::logical_end()

and use the new method to simplify code.

Signed-off-by: xie xingguo <xie.xingguo@zte.com.cn>
8 years agoMerge pull request #12058 from dachary/wip-17830-eio
David Zafman [Fri, 18 Nov 2016 04:44:22 +0000 (20:44 -0800)]
Merge pull request #12058 from dachary/wip-17830-eio

test: disable osd-scrub-repair and test-erasure-eio

8 years agoos/bluestore: kill dead gc-related counters
xie xingguo [Fri, 18 Nov 2016 03:30:42 +0000 (11:30 +0800)]
os/bluestore: kill dead gc-related counters

As the gc logic is deprecated by https://github.com/ceph/ceph/pull/12042

Signed-off-by: xie xingguo <xie.xingguo@zte.com.cn>
8 years agoclient: improve failure messages/debugging 12110/head
Patrick Donnelly [Fri, 18 Nov 2016 02:02:36 +0000 (21:02 -0500)]
client: improve failure messages/debugging

Signed-off-by: Patrick Donnelly <pdonnell@redhat.com>
8 years agoMerge pull request #11709 from iain-buclaw-sociomantic/librados_aioexec
Sage Weil [Fri, 18 Nov 2016 00:50:04 +0000 (18:50 -0600)]
Merge pull request #11709 from iain-buclaw-sociomantic/librados_aioexec

librados: Add rados_aio_exec to the C API

Reviewed-by: Kefu Chai <kchai@redhat.com>
Reviewed-by: Sage Weil <sage@redhat.com>
8 years agoMerge pull request #11921 from adamemerson/wip-clangtastic
Sage Weil [Fri, 18 Nov 2016 00:49:02 +0000 (18:49 -0600)]
Merge pull request #11921 from adamemerson/wip-clangtastic

build: The Light Clangtastic

Reviewed-by: Matt Benjamin <mbenjami@redhat.com>
Reviewed-by: Kefu Chai <kchai@redhat.com>
8 years agotest: disable osd-scrub-repair and test-erasure-eio 12058/head
Dan Mick [Tue, 15 Nov 2016 02:29:11 +0000 (18:29 -0800)]
test: disable osd-scrub-repair and test-erasure-eio

While it is being worked on, because it frequently fails.

Refs: http://tracker.ceph.com/issues/17830

Signed-off-by: Dan Mick <dan.mick@redhat.com>
Signed-off-by: Loic Dachary <loic@dachary.org>
8 years agoMerge pull request #10585 from zhjwpku/patch-2
Loic Dachary [Thu, 17 Nov 2016 22:41:11 +0000 (23:41 +0100)]
Merge pull request #10585 from zhjwpku/patch-2

doc/start/hardware-recommentdations: cosmetic

Reviewed-by: Loic Dachary <ldachary@redhat.com>
8 years agoceph_test_rados_api_tier: dump hitset that we fail to decode 12057/head
Sage Weil [Thu, 17 Nov 2016 22:18:47 +0000 (16:18 -0600)]
ceph_test_rados_api_tier: dump hitset that we fail to decode

See http://tracker.ceph.com/issues/17945

Signed-off-by: Sage Weil <sage@redhat.com>
8 years agoMerge pull request #12008 from linuxbox2/civet-copy-target
Matt Benjamin [Thu, 17 Nov 2016 21:16:44 +0000 (16:16 -0500)]
Merge pull request #12008 from linuxbox2/civet-copy-target

cmake: produce civetweb.h, again

ok, w/upstream acks, merging--jenkins build did succeed (this is a build-only change)

8 years agoMerge pull request #12054 from ddiss/doc_osd_pool_restriction
Sage Weil [Thu, 17 Nov 2016 20:57:24 +0000 (14:57 -0600)]
Merge pull request #12054 from ddiss/doc_osd_pool_restriction

doc: clarify file deletion from OSD restricted pool behaviour

Reviewed-by: Sage Weil <sage@redhat.com>
8 years agodoc/cephfs/standby: fix minor typos 12054/head
David Disseldorp [Thu, 17 Nov 2016 19:33:35 +0000 (20:33 +0100)]
doc/cephfs/standby: fix minor typos

Signed-off-by: David Disseldorp <ddiss@suse.de>
8 years agodoc/cephfs: add note about deletion from OSD restricted pool
David Disseldorp [Thu, 17 Nov 2016 16:55:26 +0000 (17:55 +0100)]
doc/cephfs: add note about deletion from OSD restricted pool

As described in http://tracker.ceph.com/issues/17937, a client with
restricted pool access can still delete files unless a corresponding
MDS path restriction is also in place.

Signed-off-by: David Disseldorp <ddiss@suse.de>
8 years agoMerge pull request #11701 from athanatos/wip-ec-partial-overwrites
Samuel Just [Thu, 17 Nov 2016 18:54:19 +0000 (10:54 -0800)]
Merge pull request #11701 from athanatos/wip-ec-partial-overwrites

osd: EC Overwrites

Reviewed-by: Sage Weil <sage@redhat.com>
8 years agocmake: produce civetweb.h, again 12008/head
Matt Benjamin [Tue, 15 Nov 2016 22:43:16 +0000 (17:43 -0500)]
cmake: produce civetweb.h, again

The recent change to do this logic with file copy (and in src/rgw)
resolved the build problem, but now updates to the civetweb
submodule were not reflected in the build.

Move the copy into a custom target which will always source the
current submodule version at build time.

Avoid using the BYPRODUCTS option, as it is not supported in many
older cmake versions (e.g., Centos 7).

Signed-off-by: Matt Benjamin <mbenjamin@redhat.com>
8 years agoReplicatedPG: clamp SPARSE_READ to object size for ec pool 11701/head
Samuel Just [Wed, 16 Nov 2016 18:19:27 +0000 (10:19 -0800)]
ReplicatedPG: clamp SPARSE_READ to object size for ec pool

Signed-off-by: Samuel Just <sjust@redhat.com>
8 years agoosd/: add some debugging to copyfrom
Samuel Just [Mon, 31 Oct 2016 17:52:12 +0000 (10:52 -0700)]
osd/: add some debugging to copyfrom

Signed-off-by: Samuel Just <sjust@redhat.com>
8 years agoReplicatedPG: we might actually recover an object past crt on repair
Samuel Just [Sat, 29 Oct 2016 22:00:57 +0000 (15:00 -0700)]
ReplicatedPG: we might actually recover an object past crt on repair

Signed-off-by: Samuel Just <sjust@redhat.com>
8 years agoosd/: add projected_log to do client dup detection on not yet committed log entries
Samuel Just [Fri, 28 Oct 2016 01:38:02 +0000 (18:38 -0700)]
osd/: add projected_log to do client dup detection on not yet committed log entries

Log entries don't get added to the log for ECBackend until reads are
done, yet we still want any other requests with the same id to wait.

ReplicatedPG::update_range should consider the projected log as well.

Signed-off-by: Samuel Just <sjust@redhat.com>
8 years agoReplicatedPG::calc_trim_to: don't trim past can_rollback_to
Samuel Just [Fri, 28 Oct 2016 01:36:55 +0000 (18:36 -0700)]
ReplicatedPG::calc_trim_to: don't trim past can_rollback_to

Signed-off-by: Samuel Just <sjust@redhat.com>
8 years agodoc/dev/osd_internals: add some docs for ECBackend
Samuel Just [Fri, 28 Oct 2016 01:32:22 +0000 (18:32 -0700)]
doc/dev/osd_internals: add some docs for ECBackend

Also, clean up some old ones.

Signed-off-by: Samuel Just <sjust@redhat.com>
8 years agoReplicatedPG: don't leave last_backill pointing at head if snapdir exists
Samuel Just [Mon, 24 Oct 2016 18:53:16 +0000 (11:53 -0700)]
ReplicatedPG: don't leave last_backill pointing at head if snapdir exists

Fixes: http://tracker.ceph.com/issues/17668
Signed-off-by: Samuel Just <sjust@redhat.com>
8 years agoosd/: cleanup the snap trimmer and deal with delayed repops
Samuel Just [Fri, 21 Oct 2016 21:29:09 +0000 (14:29 -0700)]
osd/: cleanup the snap trimmer and deal with delayed repops

With the PGBackend changes, it's not necessarily the case that
calling simple_opc_submit syncronously updates the SnapMapper.
Thus, we can't rely on being able to just ask the snap mapper
for the next object immediately (we could well loop on the same
one if ECBackend is flushing the pipeline).  Instead, update
SnapMapper and the SnapTrimmer to grab N at a time.

Additionally, we need to make sure we don't try this again until
all of the previously submitted repops are flushed (a good idea
anyway).  To that end, this patch also refactors the SnapTrimmer
machine to be fully explicit about why it's blocked so we can be
sure that we don't queue an async work item unless we really
want to.

Signed-off-by: Samuel Just <sjust@redhat.com>
8 years agoosd/ECBackend: use an explicit backfill field on ECSubWrite
Samuel Just [Wed, 19 Oct 2016 16:56:46 +0000 (09:56 -0700)]
osd/ECBackend: use an explicit backfill field on ECSubWrite

Previously, we used an empty transaction to indicate when we
were sending the op to a backfill peer which needs the logs,
but can't run the transaction.  I'd like to be able to send
and empty transaction for the rollforward side effect without
it causing the peer to think it missed a backfill op, so
instead, use an explicit flag.  Compatability is handled by
interpretting an old version encoding with an empty transaction
as having the backfill field filled.

Signed-off-by: Samuel Just <sjust@redhat.com>
8 years agoReplicatedPG: update zero and truncate to only disallow aligned append pools
Samuel Just [Tue, 18 Oct 2016 21:47:21 +0000 (14:47 -0700)]
ReplicatedPG: update zero and truncate to only disallow aligned append pools

Signed-off-by: Samuel Just <sjust@redhat.com>
8 years agoReplicatedPG::OpContext::start_async_reads: tolerate case sync callback call
Samuel Just [Tue, 18 Oct 2016 21:46:53 +0000 (14:46 -0700)]
ReplicatedPG::OpContext::start_async_reads: tolerate case sync callback call

If the read can be completed immediately, objects_read_async will call
the callback syncronously, which will result in ctx being cleaned up.
Clear pending_async_reads before the call.

Signed-off-by: Samuel Just <sjust@redhat.com>
8 years agoosd/: use PGBackend::call_write_ordered to submit log entries in commit order
Samuel Just [Thu, 3 Nov 2016 00:38:13 +0000 (17:38 -0700)]
osd/: use PGBackend::call_write_ordered to submit log entries in commit order

Without this change, we might submit new log entries for marking objects
unfound in a way that causes replicas to process them out-of-order with
pending writes with lower version numbers.  That would be bad.  Instead,
add an interface to allow an arbitrary callback to be called after any
previously submitted transaction commit, but before any subsequently
submitted operations commit.

Signed-off-by: Samuel Just <sjust@redhat.com>
8 years agoosd/: Update PGBackend users to project last_update and submit stat deltas
Samuel Just [Fri, 21 Oct 2016 21:33:08 +0000 (14:33 -0700)]
osd/: Update PGBackend users to project last_update and submit stat deltas

The RMW pipeline means that we don't start committing an update
immediately, so we can't update the log syncronously with
submit_transaction.  Thus, in order to pipeline writes, PG/ReplicatedPG
will need to project last_update and abstain from updating info
directly (updating info.stats was the only offender).

Signed-off-by: Samuel Just <sjust@redhat.com>
8 years agoECBackend: integrate cache and rmw pipeline
Samuel Just [Tue, 15 Nov 2016 23:48:21 +0000 (15:48 -0800)]
ECBackend: integrate cache and rmw pipeline

Implements the rmw pipeline and integrates the cache.

HashInfo now maintains a projected size for use during the planning
phase of the pipeline.

(Doesn't build without subsequent patches, not worth stubbing out
the interfaces)

Signed-off-by: Samuel Just <sjust@redhat.com>
8 years agoosd/: refactor PGLog a bit and add support for rolling back extents
Samuel Just [Tue, 15 Nov 2016 23:47:37 +0000 (15:47 -0800)]
osd/: refactor PGLog a bit and add support for rolling back extents

It was hard to reason about the validity of the IndexedLog internal
pointers and iterators during updates, so this patch cleans that up
a bunch.  It also moves responsibility for doing rollbacks into
PGBackend.  Finally, it adds support for the new log entry format.

Signed-off-by: Samuel Just <sjust@redhat.com>