Commit Graph

77437 Commits

Author SHA1 Message Date
Kefu Chai
219183e2fb test/unittest_pg_log: silence gcc warning
this silences following warning:

In file included from ceph/src/test/osd/TestPGLog.cc:24:0:
ceph/src/googletest/googletest/include/gtest/gtest.h:430:16:
warning: ‘virtual void testing::Test::SetUp()’ was hidden
[-Woverloaded-virtual]
   virtual void SetUp();
                ^~~~~
ceph/src/test/osd/TestPGLog.cc:2703:8: warning:   by ‘void
PGLogTrimTest::SetUp(unsigned int, unsigned int, unsigned int)’
[-Woverloaded-virtual]
   void SetUp(unsigned min_entries, unsigned max_entries, unsigned
dup_track) {
        ^~~~~

Signed-off-by: Kefu Chai <kchai@redhat.com>
2017-08-29 10:16:58 +08:00
Pan Liu
0bef6c7753 Merge pull request #17284 from liupan1111/wip-nvme-cleanup
bluestore/NVMEDevice: code cleanup
2017-08-28 10:01:58 +08:00
Xie Xingguo
3e0506a9a5 Merge pull request #17253 from hjwsm1989/fix-qa-bug
qa: fix the potential delay of pg state change

Reviewed-by: Sage Weil <sage@redhat.com>
2017-08-28 08:35:01 +08:00
Pan Liu
54383e8bd9 bluestore/NVMEDevice: remove useless IOSegment, and set
dpdk_thread_adaptor as static.

Signed-off-by: Pan Liu <wanjun.lp@alibaba-inc.com>
Signed-off-by: Ziye Yang <optimistyzy@intel.com>
2017-08-27 23:23:00 +08:00
Pan Liu
8b80a9ba7d bluestore/NVMEDevice: remove useless aio_stop in class NVMEDevice
Signed-off-by: Pan Liu <wanjun.lp@alibaba-inc.com>
Signed-off-by: Ziye Yang <optimistyzy@gmail.com>
2017-08-27 23:06:55 +08:00
Pan Liu
455e7435f7 os/bluestore/NVMEDevice: remove not used BufferedExtents.
Signed-off-by: Pan Liu <wanjun.lp@alibaba-inc.com>
Signed-off-by: Ziye Yang <optimistyzy@gmail.com>
2017-08-27 23:03:15 +08:00
Jason Dillaman
fc0646fa6d Merge pull request #17055 from dillaman/wip-21017
mgr/dashboard: fix duplicate images listed on iSCSI status page

Reviewed-by: John Spray <john.spray@redhat.com>
2017-08-27 08:39:18 -04:00
Jason Dillaman
f2092a9d32 Merge pull request #17216 from Yan-waller/wip-walle-0824imagectx
test/librbd: fix mock method macro of set_journal_policy

Reviewed-by: Jason Dillaman <dillaman@redhat.com>
2017-08-27 08:33:35 -04:00
Sage Weil
64dcb9c3d0 Merge pull request #17275 from ceph/revert-17268-wip-21089
Revert "os/bluestore: compensate for bad freelistmanager size/blocks metadata"

Reviewed-by: Sage Weil <sage@redhat.com>
2017-08-26 21:22:04 -05:00
Kefu Chai
30b5b4627c Merge pull request #16494 from asomers/bin_bash
misc: Fix bash path in shebangs

Reviewed-by: Willem Jan Withagen <wjw@digiware.nl>
Reviewed-by: Kefu Chai <kchai@redhat.com>
2017-08-27 10:14:14 +08:00
Xie Xingguo
303d5b34a5 Revert "os/bluestore: compensate for bad freelistmanager size/blocks metadata" 2017-08-27 10:12:46 +08:00
Xie Xingguo
dbe1e6ed6c Merge pull request #17268 from liewegas/wip-21089
os/bluestore: compensate for bad freelistmanager size/blocks metadata

Reviewed-by: xie xingguo <xie.xingguo@zte.com.cn>
2017-08-27 09:38:14 +08:00
Xie Xingguo
d0402b1175 Merge pull request #17271 from xiexingguo/wip-ls-by-class
mon/MonCommands: fix copy-and-paste error

Reviewed-by: Kefu Chai <kchai@redhat.com>
2017-08-27 09:36:09 +08:00
Xie Xingguo
df81aa4643 Merge pull request #17272 from scienceluo/wip-luo-silence-buiding-warning-branch
common: silence jenkins's buiding warning in obj_bencher.cc

Reviewed-by: Kefu Chai <kchai@redhat.com>
2017-08-27 09:34:58 +08:00
Pan Liu
82e7dee3ff Merge pull request #17200 from optimistyzy/823_queue_depth
os/bluestore/NVMEDevice: fix the nvme queue depth issue
2017-08-26 22:29:54 +08:00
Luo Kexue
6ed6883b49 common: silence jenkins's buiding warning in obj_bencher.cc
Signed-off-by: Luo Kexue <luo.kexue@zte.com.cn>
2017-08-26 10:58:39 +08:00
xie xingguo
49e293d552 mon/MonCommands: fix copy-and-paste error
Class is definitely required by default for the "crush rule ls-by-class"
command.

Signed-off-by: xie xingguo <xie.xingguo@zte.com.cn>
2017-08-26 10:09:11 +08:00
Xie Xingguo
3619904fb1 Merge pull request #17270 from liewegas/wip-luminous-note
doc/release-notes: clarify purpose of require-osd-release

Reviewed-by: xie xingguo <xie.xingguo@zte.com.cn>
2017-08-26 09:11:13 +08:00
Ziye Yang
09e4513c29 NVMEDevice: fix the nvme queue depth issue
We need to track the queue depth usage for each qpair to
prevent submit too many I/Os. If there are too many requests,
we need to poll the qpair, to make sure there is enough slots
for next I/O submit.

Signed-off-by: Ziye Yang <optimistyzy@gmail.com>
Signed-off-by: Pan Liu <wanjun.lp@alibaba-inc.com>
2017-08-26 08:07:32 +08:00
Sage Weil
ba38d3c337 doc/release-notes: clarify purpose of require-osd-release
Signed-off-by: Sage Weil <sage@redhat.com>
2017-08-25 18:48:09 -04:00
Sage Weil
c029a9645b os/bluestore: compensate for bad freelistmanager size/blocks metadata
This repairs bluestores created before http://tracker.ceph.com/issues/21089
was fixed in f6f1ae3724.

In both cases, the freelistmanager's size is off by one block (4k).  In
one case, it is just a matter of fixing the size and twiddling the trailing
bit.  In the second case, the size delta causes freelistmanager to need
a new row, which means the blocks count also changes, and we have lots
of bits to zero (all but one in the new row).

Both are silently corrected by fsck in this patch.

Fixes: http://tracker.ceph.com/issues/21089
Signed-off-by: Sage Weil <sage@redhat.com>
2017-08-25 18:08:49 -04:00
Josh Durgin
3dfc8659c5 Merge pull request #17245 from jdurgin/wip-dup-perf
osd/PGLog: write only changed dup entries

Reviewed-by: Sage Weil <sage@redhat.com>
2017-08-25 14:52:43 -07:00
Kefu Chai
2fe72ad907 Merge pull request #17225 from liewegas/wip-bluestore-fsck-leaks
os/bluestore: print leaked extents to debug output

Reviewed-by: xie xingguo <xie.xingguo@zte.com.cn>
2017-08-26 00:53:39 +08:00
Kefu Chai
5127b858b4 Merge pull request #17242 from neha-ojha/wip-21023
mon: warn about using osd new instead of osd create

Reviewed-by: Sage Weil <sage@redhat.com>
2017-08-26 00:52:39 +08:00
Kefu Chai
d440f98b5f Merge pull request #17248 from tchaikov/wip-20987
mon/OSDMonitor: check last_scan_epoch instead when sending creates

Reviewed-by: Sage Weil <sage@redhat.com>
2017-08-26 00:44:05 +08:00
Kefu Chai
745343629e Merge pull request #17246 from tchaikov/wip-20913
osd/PGBackend: release a msg using msg->put() not delete

Reviewed-by: Sage Weil <sage@redhat.com>
Reviewed-by: Josh Durgin <jdurgin@redhat.com>
2017-08-26 00:37:16 +08:00
Sage Weil
d930a4e062 Merge pull request #17029 from xiexingguo/wip-crush-rule-rename
mon: "ceph osd crush rule rename" support

Reviewed-by: Sage Weil <sage@redhat.com>
2017-08-25 10:21:38 -05:00
Sage Weil
ae32d1a3ee Merge pull request #17103 from C2python/clear_attr
common: Destroy attr of RWLock after initialized

Reviewed-by: Casey Bodley <cbodley@redhat.com>
Reviewed-by: Kefu Chai <kchai@redhat.com>
2017-08-25 10:12:29 -05:00
Sage Weil
5db94f4786 Merge pull request #17126 from xiexingguo/wip-nicenum
common/types: make numbers a bit nicer when displaying space usage

Reviewed-by: Sage Weil <sage@redhat.com>
Reviewed-by: Kefu Chai <kchai@redhat.com>
2017-08-25 10:11:06 -05:00
Sage Weil
fca01a264f Merge pull request #17182 from tchaikov/wip-obj-bencher
common/obj_bencher: set {min,max}_iops if runtime < 1 sec

Reviewed-by: PCzhangPC <pengcheng.zhang@easystack.cn>
2017-08-25 10:10:31 -05:00
Sage Weil
51e327c57d Merge pull request #17221 from xiexingguo/wip-pg-sparse-read
osd/PrimaryLogPG: fix sparse read won't trigger repair correctly

Reviewed-by: Sage Weil <sage@redhat.com>
2017-08-25 10:09:42 -05:00
Sage Weil
e353d93971 Merge pull request #17222 from xiexingguo/wip-propagate-eagain
osd/PrimaryLogPG: do_osd_ops - propagate EAGAIN/EINPROGRESS on failok

Reviewed-by: Sage Weil <sage@redhat.com>
2017-08-25 10:09:11 -05:00
Sage Weil
86f227388a Merge pull request #17258 from liewegas/wip-21127
qa/standalone/scrub/osd-scrub-repair: fix grep pattern

Reviewed-by: David Zafman <dzafman@redhat.com>
2017-08-25 10:04:18 -05:00
Sage Weil
84465bf5a5 qa/standalone/scrub/osd-scrub-repair: fix grep pattern
PGMap shows

    ss << pg_sum.stats.sum.num_objects_unfound
       << "/" << pg_sum.stats.sum.num_objects << " objects unfound (" << b << "%)";

but we were grepping for "1/1 unfound" instead of "1/1 objects
unfound".

Introduced by fe81b7e3a5.

Fixes: http://tracker.ceph.com/issues/21127
Signed-off-by: Sage Weil <sage@redhat.com>
2017-08-25 11:03:44 -04:00
huangjun
3bff102d4b qa: fix the potential delay of pg state change
If start osd process first and then mark it in, the
pg state may remain all active+clean when doing
wait_for_clean() check, which may fail the next
osd_scrub_pgs() process.
So faster pg state change by marking osd in first.

Signed-off-by: huangjun <huangjun@xsky.com>
2017-08-25 17:07:37 +08:00
Kefu Chai
953a8caaa5 mon/OSDMonitor: check creating_pgs.last_scan_epoch instead when sending creates
we cannot be sure that the creating_pgs_by_osd_epoch is in sync with
creating_pgs.pgs even if mapping.get_epoch() is less or equal to
creating_pgs_epoch. because, 1) the access to mapping.epoch is not
protected by lock, 2) even worse, the mapping might be not finished yet
when we are trying to send pg-creates to subscribers.

so instead of comparing creating_pgs_epoch with mapping's epoch, we
should compare it with creating_pgs.last_scan_epoch. the former is
updated once the creating_pgs_by_osd_epoch is updated with the latest
mapping's epoch and creating_pgs.pgs; the latter is updated with current
osdmap's epoch when creating_pgs is being updated with the inc osd map.
if we are using a creating_pgs_epoch in sync, creating_pgs_epoch should
be creating_pgs.last_scan_epoch + 1.

Fixes: http://tracker.ceph.com/issues/20785
Signed-off-by: Kefu Chai <kchai@redhat.com>
2017-08-25 14:34:35 +08:00
Josh Durgin
4c8fd99783 Revert "osd: adjust osd_min_pg_log_entries"
This reverts commit 1c4df03394.

Signed-off-by: Josh Durgin <jdurgin@redhat.com>
2017-08-25 01:02:59 -04:00
Josh Durgin
75af72f758 osd/PGLog: write only changed dup entries
Writing all of the dup entries whenever one is changed causes a large
regression in performance.

Instead, keep track of ranges that need to be cleared and written
after log merging (dirty_{to,from}_dups) and the earliest dup entry we
haven't written yet during normal operation (write_from_dups). This
parallels the way we track unpersisted log entries.

Check that the correct set of dups is persisted by adding a roundtrip
through memstore to each merge_log unit test.

Fixes: http://tracker.ceph.com/issues/21026
Signed-off-by: Josh Durgin <jdurgin@redhat.com>
2017-08-25 01:02:58 -04:00
Kefu Chai
80a5556fac Merge pull request #16960 from jcsp/wip-20692
mgr/dashboard: fix FS status on old MDS daemons

Reviewed-by: Kefu Chai <kchai@redhat.com>
2017-08-25 13:02:46 +08:00
Kefu Chai
d2d941dd19 osd/PGBackend: release a msg using msg->put() not delete
fix the regression introduced by 1c18b5cb

Fixes: http://tracker.ceph.com/issues/20913
Signed-off-by: Kefu Chai <kchai@redhat.com>
2017-08-25 10:41:58 +08:00
Sage Weil
13577a4f35 os/bluestore: print leaked extents to debug output
Signed-off-by: Sage Weil <sage@redhat.com>
2017-08-24 22:31:39 -04:00
Yuri Weinstein
1f8cfd6dc5 Merge pull request #17142 from Songweibin/wip-unused-variable
osd/PG: drop unused variable "oldest_update" in PG.h

Reviewed-by: Kefu Chai <kchai@redhat.com>
2017-08-24 13:13:42 -07:00
Yuri Weinstein
4d058844a4 Merge pull request #17171 from xiexingguo/wip-dedup-ec-want-acting
osd/PG: two cleanups

Reviewed-by: Kefu Chai <kchai@redhat.com>
2017-08-24 13:13:15 -07:00
Sage Weil
8d265ca2f6 Merge pull request #17243 from liewegas/wip-min-size-stuck
qa/overrides/2-size-2-min-size: whitelist REQUEST_STUCK
2017-08-24 14:51:21 -05:00
Sage Weil
805455274e qa/overrides/2-size-2-min-size: whitelist REQUEST_STUCK
With min_size == size things can get stuck a very long time.

Signed-off-by: Sage Weil <sage@redhat.com>
2017-08-24 15:50:45 -04:00
Neha Ojha
834ab275b7 mon: warn about using osd new instead of osd create
Signed-off-by: Neha Ojha <nojha@redhat.com>
2017-08-24 12:46:41 -07:00
Sage Weil
3e7ac52a58 Merge pull request #17224 from liewegas/wip-ceph-deploy-mgr
qa/tasks/ceph_deploy: gatherkeys before mgr deploy

Reviewed-by: Vasu Kulkarni <vasu@redhat.com>
2017-08-24 12:41:31 -05:00
Kefu Chai
457c145aef Merge pull request #17083 from xiexingguo/wip-swap-bucket
crush: force rebuilding shadow hierarchy after swapping buckets

Reviewed-by: Sage Weil <sage@redhat.com>
2017-08-24 23:15:38 +08:00
Kefu Chai
8ed5fe0f32 Merge pull request #17033 from mychoxin/yuanxin_put_assert_to_base
os/bluestore: move assert of read/write to base class

Reviewed-by: Jianpeng Ma <jianpeng.ma@intel.com>
Reviewed-by: Kefu Chai <kchai@redhat.com>
2017-08-24 23:09:03 +08:00
Kefu Chai
46de2caa18 Merge pull request #17058 from xiexingguo/wip-crush-compiler
crush: fix CrushCompiler won't compile maps with empty shadow tree

Reviewed-by: Sage Weil <sage@redhat.com>
2017-08-24 23:05:58 +08:00