]> git.apps.os.sepia.ceph.com Git - ceph.git/log
ceph.git
8 years agoMerge pull request #14486 from dachary/wip-multiweight
Sage Weil [Wed, 19 Apr 2017 22:07:19 +0000 (17:07 -0500)]
Merge pull request #14486 from dachary/wip-multiweight

crush: weight_set and id remapping

Reviewed-by: Sage Weil <sage@redhat.com>
8 years agoMerge pull request #14556 from liewegas/wip-pgupmap
Sage Weil [Wed, 19 Apr 2017 22:07:01 +0000 (17:07 -0500)]
Merge pull request #14556 from liewegas/wip-pgupmap

osd: pg-remap -> pg-upmap

Reviewed-by: David Zafman <dzafman@redhat.com>
8 years agoMerge pull request #14554 from ukernel/wip-19630
John Spray [Wed, 19 Apr 2017 18:24:01 +0000 (19:24 +0100)]
Merge pull request #14554 from ukernel/wip-19630

mds: fix stray creation/removal notification

Reviewed-by: John Spray <john.spray@redhat.com>
8 years agoMerge pull request #14433 from cbodley/wip-rgw-multi-py
Yehuda Sadeh [Wed, 19 Apr 2017 17:22:40 +0000 (10:22 -0700)]
Merge pull request #14433 from cbodley/wip-rgw-multi-py

test/rgw: refactor test_multi.py for use in qa suite

Reviewed-by: Yehuda Sadeh <yehuda@redhat.com>
8 years agoMerge pull request #14623 from liewegas/wip-bluestore-compression
Sage Weil [Wed, 19 Apr 2017 17:01:00 +0000 (12:01 -0500)]
Merge pull request #14623 from liewegas/wip-bluestore-compression

qa/objectstore: test bluestore with aggressive compression

8 years agoMerge pull request #14642 from linuxbox2/wip-rgw-poolcreate-erange
Matt Benjamin [Wed, 19 Apr 2017 15:52:52 +0000 (11:52 -0400)]
Merge pull request #14642 from linuxbox2/wip-rgw-poolcreate-erange

rgw: error more verbosely in RGWRados::create_pool

8 years agorgw: error more verbosely in RGWRados::create_pool 14642/head
Matt Benjamin [Wed, 19 Apr 2017 14:02:58 +0000 (10:02 -0400)]
rgw: error more verbosely in RGWRados::create_pool

Adds detail when pool creation fails with ERANGE, which can be
caused by pool settings.

Signed-off-by: Matt Benjamin <mbenjamin@redhat.com>
8 years agoMerge pull request #14637 from ovh/bp-test-osd-dup-warn-on-low-limit
Sage Weil [Wed, 19 Apr 2017 14:46:28 +0000 (09:46 -0500)]
Merge pull request #14637 from ovh/bp-test-osd-dup-warn-on-low-limit

test/osd/osd-dup.sh: warn on low open file limit

Reviewed-by: Sage Weil <sage@redhat.com>
8 years agoMerge pull request #14631 from idryomov/wip-krbd-data-pool-fix
Jason Dillaman [Wed, 19 Apr 2017 11:30:27 +0000 (07:30 -0400)]
Merge pull request #14631 from idryomov/wip-krbd-data-pool-fix

qa: krbd_data_pool.sh: account for rbd_info metadata object

Reviewed-by: Jason Dillaman <dillaman@redhat.com>
8 years agoMerge pull request #14385 from smithfarm/wip-release-script-strip-periods
Abhishek L [Wed, 19 Apr 2017 11:08:47 +0000 (13:08 +0200)]
Merge pull request #14385 from smithfarm/wip-release-script-strip-periods

tools: ceph-release-notes: strip trailing punctuation

Reviewed-by: Abhishek Lekshmanan <abhishek@suse.com>
8 years agotest/osd/osd-dup.sh: warn on low open file limit 14637/head
Piotr Dałek [Wed, 19 Apr 2017 10:57:38 +0000 (12:57 +0200)]
test/osd/osd-dup.sh: warn on low open file limit

This test fails badly when open file limit is low. Increasing to around
1536 seems to be doing the trick, so warn the user with appropriate
message and try to proceed anyway.

Signed-off-by: Piotr Dałek <piotr.dalek@corp.ovh.com>
8 years agoMerge pull request #14599 from smithfarm/wip-crushtool-mappings
Loic Dachary [Wed, 19 Apr 2017 09:42:37 +0000 (11:42 +0200)]
Merge pull request #14599 from smithfarm/wip-crushtool-mappings

doc: mention --show-mappings in crushtool manpage

Reviewed-by: Loic Dachary <ldachary@redhat.com>
8 years agoMerge pull request #14483 from wjwithagen/wip-wjw-freebsd-ceph-disk-list
Kefu Chai [Wed, 19 Apr 2017 01:23:32 +0000 (09:23 +0800)]
Merge pull request #14483 from wjwithagen/wip-wjw-freebsd-ceph-disk-list

src/ceph-disk/ceph_disk/main.py: Make 'ceph-disk list' work on FreeBSD

Reviewed-by: Loic Dachary <ldachary@redhat.com>
Reviewed-by: Kefu Chai <kchai@redhat.com>
8 years agotest/rgw: rewrite test_multi.py in terms of rgw_multi 14433/head
Casey Bodley [Wed, 12 Apr 2017 17:43:32 +0000 (13:43 -0400)]
test/rgw: rewrite test_multi.py in terms of rgw_multi

logging changes inspired by Abhishek Lekshmanan <abhishek@suse.com>

Signed-off-by: Casey Bodley <cbodley@redhat.com>
8 years agotest/rgw: add tests in rgw_multi/tests.py based on multisite.py
Casey Bodley [Wed, 12 Apr 2017 17:41:48 +0000 (13:41 -0400)]
test/rgw: add tests in rgw_multi/tests.py based on multisite.py

Signed-off-by: Casey Bodley <cbodley@redhat.com>
8 years agotest/rgw: add rgw_multi/multisite.py
Casey Bodley [Wed, 12 Apr 2017 17:40:28 +0000 (13:40 -0400)]
test/rgw: add rgw_multi/multisite.py

Signed-off-by: Casey Bodley <cbodley@redhat.com>
8 years agoMerge pull request #14614 from wjwithagen/wip-wjw-cephtool-test-mon.sh
Sage Weil [Tue, 18 Apr 2017 21:56:37 +0000 (16:56 -0500)]
Merge pull request #14614 from wjwithagen/wip-wjw-cephtool-test-mon.sh

qa/workunits/cephtool/test.sh: Be more liberal in testing health-output.

Reviewed-by: Sage Weil <sage@redhat.com>
8 years agoMerge pull request #14106 from theanalyst/release/12.0.1
Abhishek L [Tue, 18 Apr 2017 21:14:18 +0000 (23:14 +0200)]
Merge pull request #14106 from theanalyst/release/12.0.1

doc: add 12.0.1 release notes

Reviewed-by: Sage Weil <sage@redhat.com>
Reviewed-by: Josh Durgin <jdurgin@redhat.com>
8 years agoqa/objecstore/bluestore-comp: test bluestore with compression on 14623/head
Sage Weil [Tue, 18 Apr 2017 20:53:58 +0000 (16:53 -0400)]
qa/objecstore/bluestore-comp: test bluestore with compression on

Enable aggressive compression.

Signed-off-by: Sage Weil <sage@redhat.com>
8 years agoqa/objectstore/bluestore: drop old option
Sage Weil [Tue, 18 Apr 2017 20:53:41 +0000 (16:53 -0400)]
qa/objectstore/bluestore: drop old option

This test code has been removed.

Signed-off-by: Sage Weil <sage@redhat.com>
8 years agoqa: krbd_data_pool.sh: account for rbd_info metadata object 14631/head
Ilya Dryomov [Tue, 18 Apr 2017 19:20:31 +0000 (21:20 +0200)]
qa: krbd_data_pool.sh: account for rbd_info metadata object

... added in commit a16beba78435 ("librbd: image create validates that
pool supports overwrites").

Signed-off-by: Ilya Dryomov <idryomov@gmail.com>
8 years agotest/rgw: add skeleton rgw_multi module
Casey Bodley [Wed, 12 Apr 2017 17:38:34 +0000 (13:38 -0400)]
test/rgw: add skeleton rgw_multi module

Signed-off-by: Casey Bodley <cbodley@redhat.com>
8 years agotest/rgw: update and fixes for test-rgw-multisite.sh
Casey Bodley [Thu, 6 Apr 2017 23:10:33 +0000 (19:10 -0400)]
test/rgw: update and fixes for test-rgw-multisite.sh

the script was incomplete and unused, but it seems useful in itself
to bring up a simple multisite cluster without having to go through
test_multi.py. it's also a good test for functions in the other
test-rgw-*.sh scripts

Signed-off-by: Casey Bodley <cbodley@redhat.com>
8 years agotest/rgw: test_multi.py uses cluster_id for calls
Casey Bodley [Thu, 6 Apr 2017 23:05:28 +0000 (19:05 -0400)]
test/rgw: test_multi.py uses cluster_id for calls

this makes the underlying scripts more flexible, because they don't
depend on having a cluster name in the zgX-cY format

Signed-off-by: Casey Bodley <cbodley@redhat.com>
8 years agoMerge pull request #14619 from cbodley/wip-rgw-encryption-build-fix
Sage Weil [Tue, 18 Apr 2017 18:17:52 +0000 (13:17 -0500)]
Merge pull request #14619 from cbodley/wip-rgw-encryption-build-fix

rgw: remove extra RGWMPObj in rgw_multi.h

Reviewed-by: Yehuda Sadeh <yehuda@redhat.com>
Reviewed-by: Sage Weil <sage@redhat.com>
8 years agorgw: remove extra RGWMPObj in rgw_multi.h 14619/head
Casey Bodley [Tue, 18 Apr 2017 18:08:53 +0000 (14:08 -0400)]
rgw: remove extra RGWMPObj in rgw_multi.h

two separate PRs had done refactoring around RGWMPObj, and it ended up
in two different places. remove the one in rgw_multi.h, because
rgw_rados.h now depends on its definition

Signed-off-by: Casey Bodley <cbodley@redhat.com>
8 years agoMerge pull request #14418 from songbaisen/m20
Sage Weil [Tue, 18 Apr 2017 17:43:28 +0000 (12:43 -0500)]
Merge pull request #14418 from songbaisen/m20

mon: fix synchronise pgmap with others

Reviewed-by: Kefu Chai <kchai@redhat.com>
8 years agoMerge pull request #14436 from dachary/wip-19513-ceph-disk-device-class
Sage Weil [Tue, 18 Apr 2017 17:43:04 +0000 (12:43 -0500)]
Merge pull request #14436 from dachary/wip-19513-ceph-disk-device-class

ceph-disk,osd: add support for crush device classes

Reviewed-by: Sage Weil <sage@redhat.com>
8 years agoMerge pull request #14464 from ceph/wip-systemd
Zack Cerza [Tue, 18 Apr 2017 17:34:27 +0000 (11:34 -0600)]
Merge pull request #14464 from ceph/wip-systemd

qa/tasks: use sudo to check ceph health for systemd test

8 years agoMerge pull request #14615 from dillaman/wip-19636
Mykola Golub [Tue, 18 Apr 2017 17:28:01 +0000 (20:28 +0300)]
Merge pull request #14615 from dillaman/wip-19636

librbd: corrected resize RPC message backwards compatibility

Reviewed-by: Ricardo Dias <rdias@suse.com>
Reviewed-by: Mykola Golub <mgolub@mirantis.com>
8 years agoMerge pull request #14381 from joscollin/wip-cleanup-osdmap-rangefor
Yuri Weinstein [Tue, 18 Apr 2017 17:08:41 +0000 (10:08 -0700)]
Merge pull request #14381 from joscollin/wip-cleanup-osdmap-rangefor

osd: Cleanup-Updated OSDMap.cc with C++11 style range-for loops

Reviewed-by: Kefu Chai <kchai@redhat.com>
Reviewed-by: Sage Weil <sage@redhat.com>
8 years agoMerge pull request #14431 from liewegas/wip-mgrclient-leak
Yuri Weinstein [Tue, 18 Apr 2017 17:04:50 +0000 (10:04 -0700)]
Merge pull request #14431 from liewegas/wip-mgrclient-leak

mgr/MgrClient: fix reconnect event leak

Reviewed-by: John Spray <john.spray@redhat.com>
Reviewed-by: Kefu Chai <kchai@redhat.com>
8 years agoMerge pull request #14507 from tchaikov/wip-19590
Yuri Weinstein [Tue, 18 Apr 2017 17:01:47 +0000 (10:01 -0700)]
Merge pull request #14507 from tchaikov/wip-19590

mgr: always free allocated MgrPyModule

Reviewed-by: Sage Weil <sage@redhat.com>
Reviewed-by: John Spray <john.spray@redhat.com>
8 years agoosd: pg-remap -> pg-upmap 14556/head
Sage Weil [Tue, 18 Apr 2017 16:59:40 +0000 (12:59 -0400)]
osd: pg-remap -> pg-upmap

'remap' is to non-specific a name.  In particular, it
sounds like it is related to the 'remapped' PG state
but in reality it is not related.

'upmap' or 'pg-upmap' is more specific: it maps a pgid
to the 'up' set value (or item)

Signed-off-by: Sage Weil <sage@redhat.com>
8 years agoMerge pull request #13597 from cbodley/wip-s3tests-crypto
Casey Bodley [Tue, 18 Apr 2017 16:28:37 +0000 (12:28 -0400)]
Merge pull request #13597 from cbodley/wip-s3tests-crypto

qa/rgw: add configuration for server-side encryption tests

Reviewed-by: Orit Wasserman <owasserm@redhat.com>
8 years agoMerge pull request #13483 from ceph/wip-rgw-encryption-doc
Casey Bodley [Tue, 18 Apr 2017 16:27:27 +0000 (12:27 -0400)]
Merge pull request #13483 from ceph/wip-rgw-encryption-doc

doc: rgw server-side encryption and barbican

Reviewed-by: Adam C. Emerson <aemerson@redhat.com>
8 years agoMerge pull request #11049 from aclamk/wip-rgw-s3-crypto-sse-kms-plugin
Casey Bodley [Tue, 18 Apr 2017 16:25:09 +0000 (12:25 -0400)]
Merge pull request #11049 from aclamk/wip-rgw-s3-crypto-sse-kms-plugin

rgw: s3 server-side encryption (SSE-C, SSE-KMS)

Reviewed-by: Casey Bodley <cbodley@redhat.com>
Reviewed-by: Yehuda Sadeh <yehuda@redhat.com>
8 years agoMerge pull request #14415 from smithfarm/wip-19556
Kefu Chai [Tue, 18 Apr 2017 15:18:35 +0000 (23:18 +0800)]
Merge pull request #14415 from smithfarm/wip-19556

tests: Thrasher: handle "OSD has the store locked" gracefully

Reviewed-by: Kefu Chai <kchai@redhat.com>
8 years agoMerge pull request #14456 from tchaikov/wip-rocksdb-freebsd-build
Kefu Chai [Tue, 18 Apr 2017 15:17:03 +0000 (23:17 +0800)]
Merge pull request #14456 from tchaikov/wip-rocksdb-freebsd-build

rocksdb: sync with upstream

Reviewed-by: Nathan Cutler <ncutler@suse.com>
8 years agoMerge pull request #14609 from linuxbox2/wip-rgw-file-wattrs
Matt Benjamin [Tue, 18 Apr 2017 15:04:45 +0000 (11:04 -0400)]
Merge pull request #14609 from linuxbox2/wip-rgw-file-wattrs

rgw_file:  pre-compute unix attrs in write_finish()

8 years agoMerge pull request #14488 from dzafman/wip-15789
David Zafman [Tue, 18 Apr 2017 14:54:46 +0000 (07:54 -0700)]
Merge pull request #14488 from dzafman/wip-15789

Give requested scrub work a higher priority

Reviewed-by: Josh Durgin <jdurgin@redhat.com>
Reviewed-by: Kefu Chai <kchai@redhat.com>
8 years agolibrbd: corrected resize RPC message backwards compatibility 14615/head
Jason Dillaman [Tue, 18 Apr 2017 14:05:53 +0000 (10:05 -0400)]
librbd: corrected resize RPC message backwards compatibility

Commit d1f2c557 incorrectly changed the order of variables within
the payload. This resulted in breaking the resize RPC message
with older versions of Ceph.

Fixes: http://tracker.ceph.com/issues/19636
Signed-off-by: Jason Dillaman <dillaman@redhat.com>
8 years agoMerge pull request #14600 from tchaikov/wip-19390
Sage Weil [Tue, 18 Apr 2017 13:37:07 +0000 (08:37 -0500)]
Merge pull request #14600 from tchaikov/wip-19390

debian: package ceph.logroate properly

Reviewed-by: Ken Dreyer <kdreyer@redhat.com>
8 years agorgw_file: pre-compute unix attrs in write_finish() 14609/head
Matt Benjamin [Tue, 18 Apr 2017 13:19:13 +0000 (09:19 -0400)]
rgw_file:  pre-compute unix attrs in write_finish()

New serialized Unix attrs need to reflect the change being made,
and should be reverted if the change fails.

Fixes: http://tracker.ceph.com/issues/19653
Signed-off-by: Matt Benjamin <mbenjamin@redhat.com>
8 years agoMerge pull request #14396 from jcsp/wip-19550
John Spray [Tue, 18 Apr 2017 11:59:14 +0000 (12:59 +0100)]
Merge pull request #14396 from jcsp/wip-19550

qa: re-enable ENOSPC tests for kclient

8 years agoMerge pull request #14589 from jcsp/wip-19640
John Spray [Tue, 18 Apr 2017 11:58:37 +0000 (12:58 +0100)]
Merge pull request #14589 from jcsp/wip-19640

client: refine fsync/close writeback error handling

Reviewed-by: Jeff Layton <jlayton@redhat.com>
8 years agoMerge pull request #14272 from jcsp/wip-vstart-fixup
John Spray [Tue, 18 Apr 2017 11:50:20 +0000 (12:50 +0100)]
Merge pull request #14272 from jcsp/wip-vstart-fixup

qa: fix test_standby_for_invalid_fscid with vstart_runner

Reviewed-by: Patrick Donnelly <pdonnell@redhat.com>
8 years agoMerge pull request #14196 from jcsp/wip-cephfs-relnotes
John Spray [Tue, 18 Apr 2017 11:50:04 +0000 (12:50 +0100)]
Merge pull request #14196 from jcsp/wip-cephfs-relnotes

PendingReleaseNotes: recent cephfs changes

8 years agoMerge pull request #14105 from jcsp/wip-pretty-tell
John Spray [Tue, 18 Apr 2017 11:49:39 +0000 (12:49 +0100)]
Merge pull request #14105 from jcsp/wip-pretty-tell

mds: pretty json from `tell` commands

Reviewed-by: Patrick Donnelly <pdonnell@redhat.com>
8 years agoMerge pull request #14104 from jcsp/wip-18509
John Spray [Tue, 18 Apr 2017 11:48:52 +0000 (12:48 +0100)]
Merge pull request #14104 from jcsp/wip-18509

mds: include advisory `path` field in damage

Reviewed-by: Yan, Zheng <zyan@redhat.com>
8 years agoMerge pull request #14164 from jcsp/wip-16842-mitigation
John Spray [Tue, 18 Apr 2017 11:48:20 +0000 (12:48 +0100)]
Merge pull request #14164 from jcsp/wip-16842-mitigation

Mitigation for #16842, validate sessions after load

Reviewed-by: Yan, Zheng <zyan@redhat.com>
8 years agoclient: refine fsync/close writeback error handling 14589/head
John Spray [Mon, 17 Apr 2017 12:52:12 +0000 (08:52 -0400)]
client: refine fsync/close writeback error handling

Previously, errors stuck indelibly to the inode, which
meant that a close call would see an error even if the
user already dutifully fsync()'d and handled it.

We should emit each error only once per file handle.

Signed-off-by: John Spray <john.spray@redhat.com>
8 years ago/workunits/cephtool/test.sh: Be more liberal in testing health-output. 14614/head
Willem Jan Withagen [Tue, 18 Apr 2017 11:43:54 +0000 (13:43 +0200)]
/workunits/cephtool/test.sh: Be more liberal in testing health-output.

Sometimes I get output like:
   HEALTH_ERR 2 pgs stuck unclean; Full ratio(s) out of order

Which goes away over time. So it is a transit issue

Signed-off-by: Willem Jan Withagen <wjw@digiware.nl>
8 years agoMerge pull request #14585 from optimistyzy/414
Haomai Wang [Tue, 18 Apr 2017 11:23:30 +0000 (19:23 +0800)]
Merge pull request #14585 from optimistyzy/414

bluestore/NVMEDEVICE: update SPDK to version 17.03

Reviewed-by: Haomai Wang <haomai@xsky.com>
8 years agodoc: mention --show-mappings in crushtool manpage 14599/head
Nathan Cutler [Tue, 18 Apr 2017 06:06:01 +0000 (08:06 +0200)]
doc: mention --show-mappings in crushtool manpage

Fixes: http://tracker.ceph.com/issues/19649
Signed-off-by: Loic Dachary <ldachary@redhat.com>
Signed-off-by: Nathan Cutler <ncutler@suse.com>
8 years agoMerge pull request #12535 from ceph/wip-rgw-multisite-teuthology
Orit Wasserman [Tue, 18 Apr 2017 08:47:48 +0000 (11:47 +0300)]
Merge pull request #12535 from ceph/wip-rgw-multisite-teuthology

rgw: multisite enabled over multiple clusters
Reviewed-by: Orit Wasserman <owasserm@redhat.com>
Reviewed-by: Casey Bodley <cbodley@redhat.com>
8 years agoMerge pull request #14555 from yaozongyou/fix-readme-notconsistent
Kefu Chai [Tue, 18 Apr 2017 07:59:23 +0000 (15:59 +0800)]
Merge pull request #14555 from yaozongyou/fix-readme-notconsistent

README.md: fix build instructions inconsistent.

Reviewed-by: Kefu Chai <kchai@redhat.com>
8 years agocrush: implement CrushWrapper::dump(choose_args) 14486/head
Loic Dachary [Sun, 16 Apr 2017 15:21:41 +0000 (17:21 +0200)]
crush: implement CrushWrapper::dump(choose_args)

Signed-off-by: Loic Dachary <loic@dachary.org>
8 years agocrush: disable modification API when choose_args is not empty
Loic Dachary [Sun, 16 Apr 2017 13:00:03 +0000 (15:00 +0200)]
crush: disable modification API when choose_args is not empty

Adding, removing or move items / buckets via the CrushWrapper API when
choose_args is not empty is unlikely to produce the desired outcome. The
caller should instead add, remove or move items / buckets in a
decompiled crushmap, update the associated choose_arg and upload the new
crushmap.

Signed-off-by: Loic Dachary <loic@dachary.org>
8 years agocrush: compile/decompile crush_choose_arg_map
Loic Dachary [Sat, 15 Apr 2017 16:32:58 +0000 (18:32 +0200)]
crush: compile/decompile crush_choose_arg_map

A map of crush_choose_arg_map is added to the crushmap text syntax. The
key is an integer matching a pool number.

Signed-off-by: Loic Dachary <loic@dachary.org>
8 years agodebian: package ceph.logroate properly 14600/head
Kefu Chai [Tue, 18 Apr 2017 06:07:04 +0000 (14:07 +0800)]
debian: package ceph.logroate properly

see also "man dh_installlogrotate"

Fixes: http://tracker.ceph.com/issues/19390
Signed-off-by: Kefu Chai <kchai@redhat.com>
8 years agocrush: add per pool choose_args when calling do_rule
Loic Dachary [Sat, 15 Apr 2017 16:31:42 +0000 (18:31 +0200)]
crush: add per pool choose_args when calling do_rule

If there is no crush_choose_arg_map for a given pool (the default) a
NULL pointer is given instead and crush_do_rule behavior remains
unchanged.

Signed-off-by: Loic Dachary <loic@dachary.org>
8 years agocrush: implement weight and id overrides for straw2
Loic Dachary [Thu, 13 Apr 2017 16:14:44 +0000 (18:14 +0200)]
crush: implement weight and id overrides for straw2

bucket_straw2_choose needs to use weights that may be different from
weight_items. For instance to compensate for an uneven distribution
caused by a low number of values. Or to fix the probability biais
introduced by conditional probabilities (see
http://tracker.ceph.com/issues/15653 for more information).

We introduce a weight_set for each straw2 bucket to set the desired
weight for a given item at a given position. The weight of a given item
when picking the first replica (first position) may be different from
the weight the second replica (second position). For instance the weight
matrix for a given bucket containing items 3, 7 and 13 could be as
follows:

          position 0   position 1

item 3     0x10000      0x100000
item 7     0x40000       0x10000
item 13    0x40000       0x10000

When crush_do_rule picks the first of two replicas (position 0), item 7,
3 are four times more likely to be choosen by bucket_straw2_choose than
item 13. When choosing the second replica (position 1), item 3 is ten
times more likely to be choosen than item 7, 13.

By default the weight_set of each bucket exactly matches the content of
item_weights for each position to ensure backward compatibility.

bucket_straw2_choose compares items by using their id. The same ids are
also used to index buckets and they must be unique. For each item in a
bucket an array of ids can be provided for placement purposes and they
are used instead of the ids. If no replacement ids are provided, the
legacy behavior is preserved.

Signed-off-by: Loic Dachary <loic@dachary.org>
8 years agocrush: cleanup test memory leaks
Loic Dachary [Tue, 18 Apr 2017 07:33:41 +0000 (09:33 +0200)]
crush: cleanup test memory leaks

Signed-off-by: Loic Dachary <loic@dachary.org>
8 years agocrush: do not use TREE in tests
Loic Dachary [Tue, 18 Apr 2017 07:33:06 +0000 (09:33 +0200)]
crush: do not use TREE in tests

It is bugous and unsupported.

Signed-off-by: Loic Dachary <loic@dachary.org>
8 years agobluestore/NVMEDEVICE: update SPDK to version 17.03 14585/head
optimistyzy [Fri, 14 Apr 2017 05:38:40 +0000 (13:38 +0800)]
bluestore/NVMEDEVICE: update SPDK to version 17.03

Do some minor changes:

1 Restrict the total DPDK memory used by an osd instance.
change the name from bluestore_spdk_socket_mem to
bluestore_spdk_mem.

2 use spdk_env_init instead of rte_eal_init. The reason is that
SPDK lib invokes rte_eal_init which reduces the initilization
paramter conversion and check, also spdk 17.03 invokes
spdk_vtophys_register_dpdk_mem() (which is an internal function)
in spdk_env_init, and this func must be called.

Signed-off-by: optimistyzy <optimistyzy@gmail.com>
8 years agoosd: Give requested scrub work a higher priority 14488/head
David Zafman [Mon, 17 Apr 2017 21:58:02 +0000 (14:58 -0700)]
osd: Give requested scrub work a higher priority

Once started we now queue scrub work at higher priority than
scheduled scrubs.

Fixes: http://tracker.ceph.com/issues/15789
Signed-off-by: David Zafman <dzafman@redhat.com>
8 years agoMerge pull request #14591 from tchaikov/wip-readme-headings
Sage Weil [Mon, 17 Apr 2017 21:43:43 +0000 (16:43 -0500)]
Merge pull request #14591 from tchaikov/wip-readme-headings

README.md: use github heading syntax to mark the headings

Reviewed-by: Willem Jan Withagen <wjw@digiware.nl>
8 years agoMerge pull request #13968 from dzafman/wip-15912-followon
Sage Weil [Mon, 17 Apr 2017 21:42:13 +0000 (16:42 -0500)]
Merge pull request #13968 from dzafman/wip-15912-followon

osd,mon: misc full fixes and cleanups

Reviewed-by: Sage Weil <sage@redhat.com>
Reviewed-by: John Spray <john.spray@redhat.com>
Reviewed-by: Kefu Chai <kchai@redhat.com>
8 years agoMerge pull request #14440 from liewegas/wip-status-flags
Yuri Weinstein [Mon, 17 Apr 2017 20:34:37 +0000 (13:34 -0700)]
Merge pull request #14440 from liewegas/wip-status-flags

osd/OSDMap: hide require_*_osd and sortbitwise flags

Reviewed-by: Josh Durgin <jdurgin@redhat.com>
8 years agotest: Test health check output for full ratios 13968/head
David Zafman [Sat, 15 Apr 2017 00:36:17 +0000 (17:36 -0700)]
test: Test health check output for full ratios

Test out of order ratios summary and details
Test various full osd conditions summary and details

Signed-off-by: David Zafman <dzafman@redhat.com>
8 years agoMerge pull request #14561 from linuxbox2/wip-rgw-reread-dir
Matt Benjamin [Mon, 17 Apr 2017 18:58:35 +0000 (14:58 -0400)]
Merge pull request #14561 from linuxbox2/wip-rgw-reread-dir

rgw_file: fix readdir after dirent-change

8 years agoREADME.md: use github heading syntax to mark the headings 14591/head
Kefu Chai [Mon, 17 Apr 2017 15:49:32 +0000 (23:49 +0800)]
README.md: use github heading syntax to mark the headings

Signed-off-by: Kefu Chai <kchai@redhat.com>
8 years agoMerge pull request #14466 from fangyuxiangGL/bi
Casey Bodley [Mon, 17 Apr 2017 15:04:02 +0000 (11:04 -0400)]
Merge pull request #14466 from fangyuxiangGL/bi

rgw: bucket stats display bucket index type

Reviewed-by: liuchang0812 <liuchang0812@gmail.com>
Reviewed-by: Casey Bodley <cbodley@redhat.com>
8 years agomon, osd: Add detailed full information for now in the mon
David Zafman [Fri, 14 Apr 2017 03:42:55 +0000 (20:42 -0700)]
mon, osd: Add detailed full information for now in the mon

Show ceph health doc output in the correct order

Signed-off-by: David Zafman <dzafman@redhat.com>
8 years agomon: Issue warning or error if a full ratio out of order
David Zafman [Thu, 13 Apr 2017 23:20:27 +0000 (16:20 -0700)]
mon: Issue warning or error if a full ratio out of order

The full ratios should be in this order: nearfull, backfillfull, full, failsafe full

Signed-off-by: David Zafman <dzafman@redhat.com>
8 years agomon: Always fix-up full ratios when specified incorrectly in config
David Zafman [Thu, 13 Apr 2017 18:43:18 +0000 (11:43 -0700)]
mon: Always fix-up full ratios when specified incorrectly in config

Signed-off-by: David Zafman <dzafman@redhat.com>
8 years agomon: Use currently configure full ratio to determine available space
David Zafman [Thu, 13 Apr 2017 18:41:18 +0000 (11:41 -0700)]
mon: Use currently configure full ratio to determine available space

This is a bug that would not adjust available space based on the
currently configured full ratio, but rather the mon_osd_full_ratio
default initial value.

Signed-off-by: David Zafman <dzafman@redhat.com>
8 years agoosd: check_full_status() remove bogus comment and use equivalent computation
David Zafman [Wed, 12 Apr 2017 05:04:07 +0000 (22:04 -0700)]
osd: check_full_status() remove bogus comment and use equivalent computation

We actually compute kb_used as the kb - kb_avail.  We don't have the
statfs() system call issue of non-privileged f_bavail vs f_bfree.  It
was assumed that used was really like (blocks - f_bfree).  It is not.

Signed-off-by: David Zafman <dzafman@redhat.com>
8 years agoosd: Check whether any OSD is full before starting recovery
David Zafman [Wed, 5 Apr 2017 21:12:43 +0000 (14:12 -0700)]
osd: Check whether any OSD is full before starting recovery

Add event RecoveryTooFull to move to NotRecovering state

Signed-off-by: David Zafman <dzafman@redhat.com>
8 years agoosd: Add PG state and flag for too full for recovery
David Zafman [Wed, 5 Apr 2017 21:09:18 +0000 (14:09 -0700)]
osd: Add PG state and flag for too full for recovery

New state machine state NotRecovering
New PG state PG_STATE_RECOVERY_TOOFULL

Signed-off-by: David Zafman <dzafman@redhat.com>
8 years agoosd: Add check_osdmap_full() to check for shard OSD fullness
David Zafman [Thu, 16 Mar 2017 15:05:58 +0000 (08:05 -0700)]
osd: Add check_osdmap_full() to check for shard OSD fullness

Signed-off-by: David Zafman <dzafman@redhat.com>
8 years agoosd: Rename backfill_request_* to recovery_request_*
David Zafman [Thu, 16 Mar 2017 17:30:57 +0000 (10:30 -0700)]
osd: Rename backfill_request_* to recovery_request_*

To be used by both recovery and backfill

Signed-off-by: David Zafman <dzafman@redhat.com>
8 years agoosd: Check failsafe full and crash on push/pull
David Zafman [Mon, 3 Apr 2017 23:20:35 +0000 (16:20 -0700)]
osd: Check failsafe full and crash on push/pull

Signed-off-by: David Zafman <dzafman@redhat.com>
8 years agoosd: Revamp injectfull op to support all full states
David Zafman [Fri, 31 Mar 2017 21:13:14 +0000 (14:13 -0700)]
osd: Revamp injectfull op to support all full states

Use check_* for injectable full checks
Use is_* to just test simple cur_state

Signed-off-by: David Zafman <dzafman@redhat.com>
8 years agoosd: Handle backfillfull_ratio just like nearfull and full
David Zafman [Thu, 30 Mar 2017 19:42:54 +0000 (12:42 -0700)]
osd: Handle backfillfull_ratio just like nearfull and full

Add BACKFILLFULL as a local OSD cur_state
Notify monitor of this new fullness state

Signed-off-by: David Zafman <dzafman@redhat.com>
8 years agoosd: For testing full disks add injectfull socket command
David Zafman [Thu, 30 Mar 2017 18:18:38 +0000 (11:18 -0700)]
osd: For testing full disks add injectfull socket command

Signed-off-by: David Zafman <dzafman@redhat.com>
8 years agocommon: Bump ratio for backfillfull from 85% to 90%
David Zafman [Mon, 3 Apr 2017 22:46:37 +0000 (15:46 -0700)]
common: Bump ratio for backfillfull from 85% to 90%

Signed-off-by: David Zafman <dzafman@redhat.com>
8 years agocommon: Remove unused config option osd_recovery_threads
David Zafman [Thu, 30 Mar 2017 00:35:51 +0000 (17:35 -0700)]
common: Remove unused config option osd_recovery_threads

Signed-off-by: David Zafman <dzafman@redhat.com>
8 years agoosd: too_full_for_backfill() returns ostream for reason
David Zafman [Thu, 30 Mar 2017 18:17:13 +0000 (11:17 -0700)]
osd: too_full_for_backfill() returns ostream for reason

Signed-off-by: David Zafman <dzafman@redhat.com>
8 years agoosd: Fail-safe full is a hard stop even for mds
David Zafman [Thu, 30 Mar 2017 17:30:29 +0000 (10:30 -0700)]
osd: Fail-safe full is a hard stop even for mds

We can't allow OSD to become non-startable even if mds
could be writing as part of file removals.

Signed-off-by: David Zafman <dzafman@redhat.com>
8 years agotest: Fix intended test flow and restore nearfull-ratio
David Zafman [Fri, 7 Apr 2017 18:52:57 +0000 (11:52 -0700)]
test: Fix intended test flow and restore nearfull-ratio

This is inconsequential but seems to have always been wrong since original
commit 6cafb0e3e0bc5f992c2483a46cb00e83dca035cc

Signed-off-by: David Zafman <dzafman@redhat.com>
8 years agotest: Switch from pg to osd for set-*-ratio commands
David Zafman [Fri, 7 Apr 2017 16:36:26 +0000 (09:36 -0700)]
test: Switch from pg to osd for set-*-ratio commands

Testing of 6422e0a220fb3f32ccae50e0c7e52dc9984685c6

Signed-off-by: David Zafman <dzafman@redhat.com>
8 years agoosd: Remove unused argument to clear_queued_recovery
David Zafman [Thu, 16 Mar 2017 17:27:31 +0000 (10:27 -0700)]
osd: Remove unused argument to clear_queued_recovery

Signed-off-by: David Zafman <dzafman@redhat.com>
8 years agoosd: Increase osd_backfill_retry_interval to 30 seconds
David Zafman [Thu, 16 Mar 2017 17:40:08 +0000 (10:40 -0700)]
osd: Increase osd_backfill_retry_interval to 30 seconds

Signed-off-by: David Zafman <dzafman@redhat.com>
8 years agoceph-objectstore-tool: cleanup comment
David Zafman [Mon, 3 Apr 2017 18:28:42 +0000 (11:28 -0700)]
ceph-objectstore-tool: cleanup comment

Signed-off-by: David Zafman <dzafman@redhat.com>
8 years agoosd: Fix log message
David Zafman [Tue, 28 Feb 2017 20:28:38 +0000 (12:28 -0800)]
osd: Fix log message

Signed-off-by: David Zafman <dzafman@redhat.com>
8 years agoMerge pull request #12536 from ilc/cls_rgw_minor_refactor
Casey Bodley [Mon, 17 Apr 2017 13:40:47 +0000 (09:40 -0400)]
Merge pull request #12536 from ilc/cls_rgw_minor_refactor

cls/rgw: Clean up the "magic string" usage in the cls layer for RGW.

Reviewed-by: Casey Bodley <cbodley@redhat.com>
Reviewed-by: Adam C. Emerson <aemerson@redhat.com>
8 years agomds: fix stray creation/removal notification 14554/head
Yan, Zheng [Fri, 14 Apr 2017 12:22:39 +0000 (20:22 +0800)]
mds: fix stray creation/removal notification

In MDCache::scan_stray_dir(), notify_stray_created() is called for
both null and non-null dentries. This is wrong, it should be called
only for non-null dentries.

Calling notify_stray_created() in MDCache::get_or_create_stray_dentry()
is racy too. MDS can create wrong stray dentry because target dentry
linkage can change before rmdir/rename lock the dentry lock.

Fixes: http://tracker.ceph.com/issues/19630
Signed-off-by: "Yan, Zheng" <zyan@redhat.com>
8 years agoMerge pull request #14046 from songbaisen/m7
John Spray [Mon, 17 Apr 2017 10:23:22 +0000 (11:23 +0100)]
Merge pull request #14046 from songbaisen/m7

mgr: optimization some judgment and adjust the debug remove value in register_new_pgs

Reviewed-by: John Spray <john.spray@redhat.com>