]> git.apps.os.sepia.ceph.com Git - ceph.git/log
ceph.git
8 years agoosdc/Objecter: force pg_command ops to ignore overlay
Sage Weil [Mon, 13 Feb 2017 22:38:38 +0000 (17:38 -0500)]
osdc/Objecter: force pg_command ops to ignore overlay

Signed-off-by: Sage Weil <sage@redhat.com>
8 years agoosdc/Objecter: force pg_read ops to ignore cache overlay
Sage Weil [Fri, 10 Feb 2017 04:01:14 +0000 (23:01 -0500)]
osdc/Objecter: force pg_read ops to ignore cache overlay

pg_read is only used for PG listing and hit_set_{list,get}; these
operations can't and shouldn't consider the tiering overlay.

This makes the _calc_target behavior with the explicit pgid make sense;
otherwise, what would it mean to try to read pg x.1 from pool x and get
redirected to pg y.1 in pool y?

Signed-off-by: Sage Weil <sage@redhat.com>
8 years agoosd/OSDMap: make is_acting_osd_shard an explicit spg_t check
Sage Weil [Fri, 10 Feb 2017 04:08:19 +0000 (23:08 -0500)]
osd/OSDMap: make is_acting_osd_shard an explicit spg_t check

Ensure that the ps value is < the pool pg_num.

Signed-off-by: Sage Weil <sage@redhat.com>
8 years agoosd/OSDMap: is_acting_osd_shard
Sage Weil [Thu, 9 Feb 2017 23:25:41 +0000 (18:25 -0500)]
osd/OSDMap: is_acting_osd_shard

Signed-off-by: Sage Weil <sage@redhat.com>
8 years agoosd: drop osd_debug_drop_op_probability
Sage Weil [Mon, 6 Feb 2017 21:14:19 +0000 (16:14 -0500)]
osd: drop osd_debug_drop_op_probability

This is unused and not terribly useful.

Signed-off-by: Sage Weil <sage@redhat.com>
8 years agoosd: move internal in-memory types to osd_internal_types.h
Sage Weil [Tue, 7 Feb 2017 04:19:39 +0000 (23:19 -0500)]
osd: move internal in-memory types to osd_internal_types.h

Things like ObjectContext and lock state that are internal to the OSD
do not need to be in osd_types and shared with other parts of the code
base.

Notably, this fixes the problem with OpRequest needing things from
osd_types.h (osd_reqid_t for starters).  Others to follow.

Signed-off-by: Sage Weil <sage@redhat.com>
8 years agoosd/PG: no need to split op waiting lists
Sage Weil [Wed, 8 Feb 2017 14:45:45 +0000 (09:45 -0500)]
osd/PG: no need to split op waiting lists

Clients are now expected to resend on split, and there is already an
interval change.

Signed-off-by: Sage Weil <sage@redhat.com>
8 years agoosd: explicitly enumerate ops we can dispatch
Sage Weil [Tue, 7 Feb 2017 04:25:15 +0000 (23:25 -0500)]
osd: explicitly enumerate ops we can dispatch

This prevents random messages from falling into and OpRequest and
dispatch_op().

Signed-off-by: Sage Weil <sage@redhat.com>
8 years agoosd: remove MOSDPGMissing
Sage Weil [Tue, 7 Feb 2017 04:24:33 +0000 (23:24 -0500)]
osd: remove MOSDPGMissing

Removed 7c414c5dab318a9212fd09f9637f241b1a2943f6 (pre-bobtail).

Signed-off-by: Sage Weil <sage@redhat.com>
8 years agoosd: make all fast dispatch ops MOSDFastDispatchOp children
Sage Weil [Mon, 6 Feb 2017 22:39:58 +0000 (17:39 -0500)]
osd: make all fast dispatch ops MOSDFastDispatchOp children

Define common get_spg() and get_map_epoch() methods.

Signed-off-by: Sage Weil <sage@redhat.com>
8 years agoosdc/Objecter: populate both actual pgid and full has in MOSDOp
Sage Weil [Fri, 3 Feb 2017 21:06:28 +0000 (16:06 -0500)]
osdc/Objecter: populate both actual pgid and full has in MOSDOp

New clients need the actual pgid as well as the full hash (as part of the
target hobj).  Old clients only use the full hash value.  We need to pass
both to MOSDOp so it can encode based on the target features.

Signed-off-by: Sage Weil <sage@redhat.com>
8 years agomessages/MOSDOp: take spg_t, not pg_t, and drop old ctor
Sage Weil [Mon, 6 Feb 2017 03:21:47 +0000 (22:21 -0500)]
messages/MOSDOp: take spg_t, not pg_t, and drop old ctor

Signed-off-by: Sage Weil <sage@redhat.com>
8 years agomessages/MOSDOp: new encoding w/ actual pgid separate from hobject hash
Sage Weil [Fri, 3 Feb 2017 21:05:11 +0000 (16:05 -0500)]
messages/MOSDOp: new encoding w/ actual pgid separate from hobject hash

New clients will see an actual pgid as well as a full has value in the
hobj.  Old clients will continue to see a single (full) hash value.

Signed-off-by: Sage Weil <sage@redhat.com>
8 years agomessages/MOSDOp: add get_raw_pg()
Sage Weil [Fri, 3 Feb 2017 20:52:29 +0000 (15:52 -0500)]
messages/MOSDOp: add get_raw_pg()

Many current users expect a full hash value; make that explicit.

Signed-off-by: Sage Weil <sage@redhat.com>
8 years agomessages/MOSDOp: remove unused reassert_version
Sage Weil [Fri, 3 Feb 2017 20:38:55 +0000 (15:38 -0500)]
messages/MOSDOp: remove unused reassert_version

Signed-off-by: Sage Weil <sage@redhat.com>
8 years agoosdc/Objecter: remove reassert_version
Sage Weil [Fri, 3 Feb 2017 20:38:42 +0000 (15:38 -0500)]
osdc/Objecter: remove reassert_version

We never populate this since we never get an ack.

Signed-off-by: Sage Weil <sage@redhat.com>
8 years agoosd/OSDMap: generalize map_to_pg
Sage Weil [Fri, 3 Feb 2017 19:52:46 +0000 (14:52 -0500)]
osd/OSDMap: generalize map_to_pg

So we can do this without constructing an object_locator_t.

Signed-off-by: Sage Weil <sage@redhat.com>
8 years agoosd: make use of MOSDOp::get_hobj()
Sage Weil [Fri, 3 Feb 2017 19:32:19 +0000 (14:32 -0500)]
osd: make use of MOSDOp::get_hobj()

Prefer this to get_object_locator() whereever possible.

Signed-off-by: Sage Weil <sage@redhat.com>
8 years agomessage/MOSDOp: build native hobject_t
Sage Weil [Fri, 3 Feb 2017 19:21:40 +0000 (14:21 -0500)]
message/MOSDOp: build native hobject_t

Drop unneeded snapid_t snapid and object_locator_t, which just duplicate
hobject_t fields.

Signed-off-by: Sage Weil <sage@redhat.com>
8 years agoosd/PG: fix tracking of last_epoch_split
Sage Weil [Thu, 2 Feb 2017 20:07:48 +0000 (15:07 -0500)]
osd/PG: fix tracking of last_epoch_split

Note that it is only (currently) important that this value be accurate
on the current OSD since we only use this value (currently) to discard
ops sent before the split.  If we are getting the history from a different
OSD in the cluster that doesn't have an up to date value it doesn't matter
because that implies a primary change and also a client resend.

Signed-off-by: Sage Weil <sage@redhat.com>
8 years agoosd/PG: discard ops from before the last split
Sage Weil [Thu, 2 Feb 2017 03:59:31 +0000 (22:59 -0500)]
osd/PG: discard ops from before the last split

New clients will resend.

Old clients will see a last_force_op_resend (now named
last_force_op_resend_preluminous in latest code) and resend.

We know this because we require that the monitors upgrade to luminous
before the OSDs, and the new mon code sets this field on split.

Signed-off-by: Sage Weil <sage@redhat.com>
8 years agoosdc/Objecter: resend ops on pg split if osd has CEPH_FEATURE_RESEND_ON_SPLIT
Sage Weil [Thu, 2 Feb 2017 03:58:55 +0000 (22:58 -0500)]
osdc/Objecter: resend ops on pg split if osd has CEPH_FEATURE_RESEND_ON_SPLIT

Signed-off-by: Sage Weil <sage@redhat.com>
8 years agomon/OSDMonitor: make pre-luminous clients resend ops on split
Sage Weil [Thu, 2 Feb 2017 15:21:33 +0000 (10:21 -0500)]
mon/OSDMonitor: make pre-luminous clients resend ops on split

Pre-luminous clients do not understand that a split PG forms a new
interval.  Make them resend ops to work around this.

Signed-off-by: Sage Weil <sage@redhat.com>
8 years agoosd/PG: discard ops based on either new or old lfor and features
Sage Weil [Wed, 1 Feb 2017 23:37:25 +0000 (18:37 -0500)]
osd/PG: discard ops based on either new or old lfor and features

If the client has the new feature bit, use the new field; if they have the
older feature bit, use the old field.

Note that there is no change to the Objecter: last_force_op_resend is
still the "current" field that it should pay attention to.

Signed-off-by: Sage Weil <sage@redhat.com>
8 years agoosd/osd_types: last_force_op_resend -> last_force_op_resend_preluminous
Sage Weil [Wed, 1 Feb 2017 23:35:47 +0000 (18:35 -0500)]
osd/osd_types: last_force_op_resend -> last_force_op_resend_preluminous

Rename the current last_force_op_resend for legacy clients, and add a new
one that only applies to new clients that have the new
CEPH_FEATURE_OSD_NEW_INTERVAL_ON_SPLIT feature.

Signed-off-by: Sage Weil <sage@redhat.com>
8 years agoosd/osd_types: add set_last_force_op_resend() accessor and use it
Sage Weil [Wed, 1 Feb 2017 23:33:27 +0000 (18:33 -0500)]
osd/osd_types: add set_last_force_op_resend() accessor and use it

Signed-off-by: Sage Weil <sage@redhat.com>
8 years agoMerge pull request #13321 from liewegas/wip-kill-sortbitwise-harder
Sage Weil [Mon, 13 Feb 2017 16:43:56 +0000 (10:43 -0600)]
Merge pull request #13321 from liewegas/wip-kill-sortbitwise-harder

osd: kill sortbitwise

Reviewed-by: Brad Hubbard <bhubbard@redhat.com>
8 years agoMerge pull request #13303 from Jing-Scott/fix-swift-cannot-disable-object-versioning
Matt Benjamin [Mon, 13 Feb 2017 15:58:04 +0000 (10:58 -0500)]
Merge pull request #13303 from Jing-Scott/fix-swift-cannot-disable-object-versioning

rgw: fix swift cannot disable object versioning

@Jing-Scott  updated, addressing @rzarzynski's change request

8 years agoMerge pull request #13393 from ddiss/fix_rgw_fcgi_include
Kefu Chai [Mon, 13 Feb 2017 15:28:03 +0000 (23:28 +0800)]
Merge pull request #13393 from ddiss/fix_rgw_fcgi_include

rgw: set FCGI_INCLUDE_DIR for cephd_rgw_base

Reviewed-by: Casey Bodley <cbodley@redhat.com>
Reviewed-by: Kefu Chai <kchai@redhat.com>
8 years agoMerge pull request #13382 from xiexingguo/wip-counter-name
Sage Weil [Mon, 13 Feb 2017 14:25:51 +0000 (08:25 -0600)]
Merge pull request #13382 from xiexingguo/wip-counter-name

os/bluestore: fix wal-queue bytes-counter to keep pace with others

Reviewed-by: Sage Weil <sage@redhat.com>
8 years agorgw: set FCGI_INCLUDE_DIR for cephd_rgw_base 13393/head
David Disseldorp [Mon, 13 Feb 2017 14:03:42 +0000 (15:03 +0100)]
rgw: set FCGI_INCLUDE_DIR for cephd_rgw_base

cephd_rgw_base build currently fails with fastcgi enabled:
--
In file included from /home/david/ceph/src/rgw/rgw_request.h:13:0,
from /home/david/ceph/src/rgw/rgw_main.cc:53:
/home/david/ceph/src/rgw/rgw_fcgi.h:8:21: fatal error: fcgiapp.h:
No such file or directory
^
--

This is despite the fact that fastcgi was detected and located at
configure time:
build/CMakeCache.txt:FCGI_INCLUDE_DIR:PATH=/usr/include/fastcgi

Fix this by ensuring that the cephd_rgw_base build target correctly uses
FCGI_INCLUDE_DIR.

Fixes: http://tracker.ceph.com/issues/18918
Signed-off-by: David Disseldorp <ddiss@suse.de>
8 years agoMerge pull request #13392 from Adirl/zero_inline
Haomai Wang [Mon, 13 Feb 2017 13:57:19 +0000 (21:57 +0800)]
Merge pull request #13392 from Adirl/zero_inline

msg/async/rdma: zero wqe inline

Reviewed-by: Haomai Wang <haomai@xsky.com>
8 years agomsg/async/rdma: zero wqe inline 13392/head
Adir Lev [Mon, 13 Feb 2017 13:36:46 +0000 (13:36 +0000)]
msg/async/rdma: zero wqe inline

we dont use wqe inline

issue: none

Change-Id: Ib187eec3bc79f8caf040fbbfbf0a915186cd58ba
Signed-off-by: Adir Lev <adirl@mellanox.com>
8 years agorgw: fix swift cannot disable object versioning 13303/head
Jing Wenjun [Wed, 8 Feb 2017 07:07:43 +0000 (15:07 +0800)]
rgw: fix swift cannot disable object versioning

we should be able to disable object verioning by removing its X-Versions-Location
metadata header by sending an empty key value. this description can be found at
No.8 in http://docs.openstack.org/user-guide/cli-swift-set-object-versions.html.

Fixes: http://tracker.ceph.com/issues/18852
Signed-off-by: Jing Wenjun <jingwenjun@cmss.chinamobile.com>
8 years agoMerge pull request #13380 from tchaikov/wip-sepia-bt
Kefu Chai [Mon, 13 Feb 2017 12:48:17 +0000 (20:48 +0800)]
Merge pull request #13380 from tchaikov/wip-sepia-bt

script/sepia_bt.sh: no need to pass version and sha1 anymore

Reviewed-by: Brad Hubbard <bhubbard@redhat.com>
8 years agoMerge pull request #13368 from smithfarm/wip-doc-dev
Nathan Cutler [Mon, 13 Feb 2017 11:39:59 +0000 (12:39 +0100)]
Merge pull request #13368 from smithfarm/wip-doc-dev

doc: instructions for provisioning OpenStack VMs ad hoc

Reviewed-by: Loic Dachary <ldachary@redhat.com>
8 years agoMerge pull request #13367 from tchaikov/wip-qa-jewel-x-singleton
Kefu Chai [Mon, 13 Feb 2017 06:54:27 +0000 (14:54 +0800)]
Merge pull request #13367 from tchaikov/wip-qa-jewel-x-singleton

test: Thrasher: update pgp_num of all expanded pools if not yet

Reviewed-by: Sage Weil <sage@redhat.com>
8 years agoscript/sepia_bt.sh: no need to pass version and sha1 anymore 13380/head
Kefu Chai [Mon, 13 Feb 2017 03:51:11 +0000 (11:51 +0800)]
script/sepia_bt.sh: no need to pass version and sha1 anymore

* try to figure out the working directory from the core dump's path
* add -C directory option, so user is able to specify the directory
  for the downloaded packages, and extracted files.

Signed-off-by: Kefu Chai <kchai@redhat.com>
8 years agoos/bluestore: fix wal-queue bytes-counter to keep pace with others 13382/head
xie xingguo [Mon, 13 Feb 2017 06:09:45 +0000 (14:09 +0800)]
os/bluestore: fix wal-queue bytes-counter to keep pace with others

Signed-off-by: xie xingguo <xie.xingguo@zte.com.cn>
8 years agotest: Thrasher: restore changed options after done with thrash 13367/head
Kefu Chai [Sun, 12 Feb 2017 06:13:14 +0000 (14:13 +0800)]
test: Thrasher: restore changed options after done with thrash

Signed-off-by: Kefu Chai <kchai@redhat.com>
8 years agotests: Thrasher: extract _set_config() method
Kefu Chai [Sun, 12 Feb 2017 06:20:53 +0000 (14:20 +0800)]
tests: Thrasher: extract _set_config() method

Signed-off-by: Kefu Chai <kchai@redhat.com>
8 years agotests: CephManager: add get_config() method
Kefu Chai [Sun, 12 Feb 2017 06:12:25 +0000 (14:12 +0800)]
tests: CephManager: add get_config() method

Signed-off-by: Kefu Chai <kchai@redhat.com>
8 years agotest: Thrasher: update pgp_num of all expanded pools if not yet
Kefu Chai [Sun, 12 Feb 2017 05:16:57 +0000 (13:16 +0800)]
test: Thrasher: update pgp_num of all expanded pools if not yet

otherwise wait_until_healthy will fail after timeout as seeing warning
like:

HEALTH_WARN pool cephfs_data pg_num 182 > pgp_num 172

Signed-off-by: Kefu Chai <kchai@redhat.com>
8 years agoMerge pull request #13378 from liewegas/wip-luminous
Yuri Weinstein [Sun, 12 Feb 2017 16:13:26 +0000 (08:13 -0800)]
Merge pull request #13378 from liewegas/wip-luminous

qa/rados/upgrade/jewel-x-singleton: run luminous.yaml at the end

Reviewed-by: Yuri Weinstein <yweins@redhat.com>
8 years agoMerge pull request #13365 from xiexingguo/wip-backoff-refleak
Sage Weil [Sun, 12 Feb 2017 14:50:38 +0000 (08:50 -0600)]
Merge pull request #13365 from xiexingguo/wip-backoff-refleak

osdc/Objecter: fix possible OSDSession leak on wrong connection

Reviewed-by: Sage Weil <sage@redhat.com>
8 years agoMerge pull request #13363 from jdurgin/wip-req-luminous-error
Sage Weil [Sun, 12 Feb 2017 14:49:57 +0000 (08:49 -0600)]
Merge pull request #13363 from jdurgin/wip-req-luminous-error

osd: clarify REQUIRE_LUMINOUS error message

Reviewed-by: xie xingguo <xie.xingguo@zte.com.cn>
Reviewed-by: Kefu Chai <kchai@redhat.com>
8 years agoqa/rados/upgrade/jewel-x-singleton: run luminous.yaml at the end 13378/head
Sage Weil [Fri, 10 Feb 2017 20:08:54 +0000 (15:08 -0500)]
qa/rados/upgrade/jewel-x-singleton: run luminous.yaml at the end

renumber too

Signed-off-by: Sage Weil <sage@redhat.com>
8 years agodoc: instructions for provisioning OpenStack VMs ad hoc 13368/head
Nathan Cutler [Sat, 11 Feb 2017 11:41:22 +0000 (12:41 +0100)]
doc: instructions for provisioning OpenStack VMs ad hoc

Signed-off-by: Nathan Cutler <ncutler@suse.com>
8 years agoosd/PrimaryLogPG: unconditionally set PGNLS next to hobject 13321/head
Sage Weil [Wed, 8 Feb 2017 22:03:26 +0000 (17:03 -0500)]
osd/PrimaryLogPG: unconditionally set PGNLS next to hobject

Drop nibblewise workaround.

Signed-off-by: Sage Weil <sage@redhat.com>
8 years agoosd/PG: drop get_sort_bitwise() accessors, flag
Sage Weil [Wed, 8 Feb 2017 22:01:47 +0000 (17:01 -0500)]
osd/PG: drop get_sort_bitwise() accessors, flag

Signed-off-by: Sage Weil <sage@redhat.com>
8 years agoosd/PG: always bitwise
Sage Weil [Wed, 8 Feb 2017 22:00:57 +0000 (17:00 -0500)]
osd/PG: always bitwise

Signed-off-by: Sage Weil <sage@redhat.com>
8 years agoosd/PG: drop bitwise arg to MissingLoc::rebuild()
Sage Weil [Wed, 8 Feb 2017 22:00:07 +0000 (17:00 -0500)]
osd/PG: drop bitwise arg to MissingLoc::rebuild()

Signed-off-by: Sage Weil <sage@redhat.com>
8 years agoosd/osd_types: make set_last_backfill() assume bitwise
Sage Weil [Wed, 8 Feb 2017 21:58:54 +0000 (16:58 -0500)]
osd/osd_types: make set_last_backfill() assume bitwise

Signed-off-by: Sage Weil <sage@redhat.com>
8 years agoosd: BackfillInterval is always bitwise
Sage Weil [Wed, 8 Feb 2017 21:52:27 +0000 (16:52 -0500)]
osd: BackfillInterval is always bitwise

Signed-off-by: Sage Weil <sage@redhat.com>
8 years agoosd: fix add_source_info
Sage Weil [Wed, 8 Feb 2017 21:46:26 +0000 (16:46 -0500)]
osd: fix add_source_info

Signed-off-by: Sage Weil <sage@redhat.com>
8 years agoosd: fix write_blocked_by_scrub
Sage Weil [Wed, 8 Feb 2017 21:46:10 +0000 (16:46 -0500)]
osd: fix write_blocked_by_scrub

Signed-off-by: Sage Weil <sage@redhat.com>
8 years agoosd/osd_types: drop bitwise from ScrubMap
Sage Weil [Wed, 8 Feb 2017 21:42:59 +0000 (16:42 -0500)]
osd/osd_types: drop bitwise from ScrubMap

Signed-off-by: Sage Weil <sage@redhat.com>
8 years agocommon/hobject: eliminate wonky compartors
Sage Weil [Fri, 10 Feb 2017 23:47:07 +0000 (18:47 -0500)]
common/hobject: eliminate wonky compartors

Signed-off-by: Sage Weil <sage@redhat.com>
8 years agocommon/hobject: remove cmp_* comparators; add normal operators
Sage Weil [Fri, 10 Feb 2017 23:39:53 +0000 (18:39 -0500)]
common/hobject: remove cmp_* comparators; add normal operators

Fix up callers.

Signed-off-by: Sage Weil <sage@redhat.com>
8 years agoos: remove nibblewise sort order support
Sage Weil [Wed, 8 Feb 2017 20:10:18 +0000 (15:10 -0500)]
os: remove nibblewise sort order support

Signed-off-by: Sage Weil <sage@redhat.com>
8 years agoosd: shutdown if sortbitwise flag is ever cleared
Sage Weil [Wed, 8 Feb 2017 19:45:40 +0000 (14:45 -0500)]
osd: shutdown if sortbitwise flag is ever cleared

Note we do this only in activate_map so that we can (while booting)
skip past maps that don't have it set.

Signed-off-by: Sage Weil <sage@redhat.com>
8 years agoMerge pull request #13369 from idryomov/wip-doc-kernel-vers
Ilya Dryomov [Sat, 11 Feb 2017 15:01:02 +0000 (16:01 +0100)]
Merge pull request #13369 from idryomov/wip-doc-kernel-vers

doc: kernel client os-recommendations update

Reviewed-by: Jason Dillaman <dillaman@redhat.com>
8 years agoMerge pull request #13229 from trociny/wip-18335
Jason Dillaman [Sat, 11 Feb 2017 14:29:23 +0000 (09:29 -0500)]
Merge pull request #13229 from trociny/wip-18335

rbd-nbd: check /sys/block/nbdX/size to ensure kernel mapped correctly

Reviewed-by: Jason Dillaman <dillaman@redhat.com>
8 years agoMerge pull request #13292 from tchaikov/wip-script-sepia-bt-support-xenial
Kefu Chai [Sat, 11 Feb 2017 04:22:34 +0000 (12:22 +0800)]
Merge pull request #13292 from tchaikov/wip-script-sepia-bt-support-xenial

script/sepia_bt.sh: support xenial

Reviewed-by: Brad Hubbard <bhubbard@redhat.com>
8 years agoosdc/Objecter: fix possible OSDSession leak on wrong connection 13365/head
xie xingguo [Sat, 11 Feb 2017 02:57:58 +0000 (10:57 +0800)]
osdc/Objecter: fix possible OSDSession leak on wrong connection

This is introduced by the newly added backoff logic.
Not sure if it will really happen, but just in case.

Signed-off-by: xie xingguo <xie.xingguo@zte.com.cn>
8 years agoMerge pull request #12342 from liewegas/wip-backoff 13366/head
Sage Weil [Sat, 11 Feb 2017 01:47:49 +0000 (19:47 -0600)]
Merge pull request #12342 from liewegas/wip-backoff

osd,osdc: pg and osd-based backoff

Reviewed-by: Josh Durgin <jdurgin@redhat.com>
8 years agodoc/dev/rados-client-protocol: describe some of rados protocol, including backoffs 12342/head
Sage Weil [Thu, 2 Feb 2017 19:42:36 +0000 (14:42 -0500)]
doc/dev/rados-client-protocol: describe some of rados protocol, including backoffs

Signed-off-by: Sage Weil <sage@redhat.com>
8 years agoqa/suites/rados/thrash: vary backoff settings
Sage Weil [Thu, 2 Feb 2017 03:38:30 +0000 (22:38 -0500)]
qa/suites/rados/thrash: vary backoff settings

Signed-off-by: Sage Weil <sage@redhat.com>
8 years agoosd/PrimaryLogPG: backoffs on individual objects
Sage Weil [Wed, 1 Feb 2017 22:37:39 +0000 (17:37 -0500)]
osd/PrimaryLogPG: backoffs on individual objects

Do these midway down do_op.  Reorder the scrub waitlist after the
degraded and unreadable waitlists.

Signed-off-by: Sage Weil <sage@redhat.com>
8 years agoosdc/Objecter: respect backoffs
Sage Weil [Wed, 1 Feb 2017 22:35:36 +0000 (17:35 -0500)]
osdc/Objecter: respect backoffs

Signed-off-by: Sage Weil <sage@redhat.com>
8 years agoosd/PrimaryLogPG: PG-wide backoffs
Sage Weil [Wed, 1 Feb 2017 22:30:32 +0000 (17:30 -0500)]
osd/PrimaryLogPG: PG-wide backoffs

Issue at top of do_request.  Release on activation or peering
interval change.

Signed-off-by: Sage Weil <sage@redhat.com>
8 years agoosd: dispatch OSDBackoff messages into PG workqueue
Sage Weil [Fri, 10 Feb 2017 23:55:55 +0000 (18:55 -0500)]
osd: dispatch OSDBackoff messages into PG workqueue

Signed-off-by: Sage Weil <sage@redhat.com>
8 years agoosd: split backoffs on PG split
Sage Weil [Wed, 1 Feb 2017 22:27:32 +0000 (17:27 -0500)]
osd: split backoffs on PG split

Signed-off-by: Sage Weil <sage@redhat.com>
8 years agoosd: add pg helpers for managing backoffs
Sage Weil [Wed, 1 Feb 2017 22:27:20 +0000 (17:27 -0500)]
osd: add pg helpers for managing backoffs

Link Backoff into Session, PG.  Tear them down on session
reset.

Signed-off-by: Sage Weil <sage@redhat.com>
8 years agoinclude/ceph_features: RADOS_BACKOFF feature bit
Sage Weil [Fri, 4 Nov 2016 22:11:40 +0000 (18:11 -0400)]
include/ceph_features: RADOS_BACKOFF feature bit

Signed-off-by: Sage Weil <sage@redhat.com>
8 years agoosdc/Objecter: fix typo
Sage Weil [Tue, 1 Nov 2016 19:02:17 +0000 (15:02 -0400)]
osdc/Objecter: fix typo

Signed-off-by: Sage Weil <sage@redhat.com>
8 years agocommon/hobject: use hash field for hash<>
Sage Weil [Tue, 1 Nov 2016 18:05:51 +0000 (14:05 -0400)]
common/hobject: use hash field for hash<>

No reason to waste CPU recalculating a hash value!

Signed-off-by: Sage Weil <sage@redhat.com>
8 years agoosd: add MOSDBackoff message type
Sage Weil [Mon, 17 Oct 2016 21:10:38 +0000 (17:10 -0400)]
osd: add MOSDBackoff message type

Signed-off-by: Sage Weil <sage@redhat.com>
8 years agoosd: move Session class out of OSD
Sage Weil [Tue, 18 Oct 2016 22:43:09 +0000 (17:43 -0500)]
osd: move Session class out of OSD

Signed-off-by: Sage Weil <sage@redhat.com>
8 years agoosdc/Objecter: attach OSDSession to Connection
Sage Weil [Thu, 22 Dec 2016 03:45:50 +0000 (22:45 -0500)]
osdc/Objecter: attach OSDSession to Connection

This lets us avoid an rbtree lookup.

Signed-off-by: Sage Weil <sage@redhat.com>
8 years agoosd: clarify REQUIRE_LUMINOUS error message 13363/head
Josh Durgin [Fri, 10 Feb 2017 22:27:14 +0000 (14:27 -0800)]
osd: clarify REQUIRE_LUMINOUS error message

This should be visible at the default log level, so users have some
hope of figuring out the problem.

Signed-off-by: Josh Durgin <jdurgin@redhat.com>
8 years agodoc: ref cephfs docs from os-recommendations 13369/head
John Spray [Wed, 19 Oct 2016 17:12:49 +0000 (18:12 +0100)]
doc: ref cephfs docs from os-recommendations

...instead of having potentially conflicting kernel
version information.

Signed-off-by: John Spray <john.spray@redhat.com>
8 years agodoc: update krbd kernel recommendations
Ilya Dryomov [Fri, 10 Feb 2017 20:20:16 +0000 (21:20 +0100)]
doc: update krbd kernel recommendations

Signed-off-by: Ilya Dryomov <idryomov@gmail.com>
8 years agoMerge pull request #13249 from liewegas/wip-mon-smooth
Kefu Chai [Fri, 10 Feb 2017 20:02:48 +0000 (04:02 +0800)]
Merge pull request #13249 from liewegas/wip-mon-smooth

mon: smooth io/recovery stats over longer period

Reviewed-by: Kefu Chai <kchai@redhat.com>
8 years agoMerge pull request #13264 from tchaikov/wip-print-failed-test-name
Kefu Chai [Fri, 10 Feb 2017 19:57:45 +0000 (03:57 +0800)]
Merge pull request #13264 from tchaikov/wip-print-failed-test-name

qa/workunits/rados/test.sh: print test name when it fails

Reviewed-by: Josh Durgin <jdurgin@redhat.com>
8 years agoMerge pull request #13362 from adamemerson/wip-oh-yeah
Kefu Chai [Fri, 10 Feb 2017 19:56:31 +0000 (03:56 +0800)]
Merge pull request #13362 from adamemerson/wip-oh-yeah

test: Fix mismatched sign comparison in histogram test

Reviewed-by: Yehuda Sadeh <yehuda@redhat.com>
Reviewed-by: Kefu Chai <kchai@redhat.com>
8 years agoMerge pull request #13344 from gregsfortytwo/wip-osd-discussion-docs
Samuel Just [Fri, 10 Feb 2017 19:20:02 +0000 (11:20 -0800)]
Merge pull request #13344 from gregsfortytwo/wip-osd-discussion-docs

Wip osd discussion docs

Reviewed-by: Samuel Just <sjust@redhat.com>
8 years agoMerge pull request #13342 from athanatos/wip-17831-18583-18809
Samuel Just [Fri, 10 Feb 2017 19:18:02 +0000 (11:18 -0800)]
Merge pull request #13342 from athanatos/wip-17831-18583-18809

osd/: don't leak context for Blessed*Context or RecoveryQueueAsync

Reviewed-by: Kefu Chai <kchai@redhat.com>
Reviewed-by: Josh Durgin <jdurgin@redhat.com>
8 years agotest: Fix mismatched sign comparison in histogram test 13362/head
Adam C. Emerson [Fri, 10 Feb 2017 18:50:58 +0000 (13:50 -0500)]
test: Fix mismatched sign comparison in histogram test

Signed-off-by: Adam C. Emerson <aemerson@redhat.com>
8 years agoMerge pull request #13137 from jcsp/wip-18661
John Spray [Fri, 10 Feb 2017 17:48:05 +0000 (17:48 +0000)]
Merge pull request #13137 from jcsp/wip-18661

qa: fix race in Mount.open_background

Reviewed-by: Yan, Zheng <zyan@redhat.com>
8 years agoMerge pull request #13099 from jcsp/wip-18663
John Spray [Fri, 10 Feb 2017 17:42:37 +0000 (17:42 +0000)]
Merge pull request #13099 from jcsp/wip-18663

qa/tasks: force umount during kclient teardown

8 years agoMerge pull request #13281 from theanalyst/release/v12.0.0
Sage Weil [Fri, 10 Feb 2017 16:57:27 +0000 (10:57 -0600)]
Merge pull request #13281 from theanalyst/release/v12.0.0

doc: v12.0.0 release notes

Reviewed-by: Sage Weil <sage@redhat.com>
8 years agoMerge pull request #13302 from YankunLi/lyk_clean_code
Sage Weil [Fri, 10 Feb 2017 16:53:14 +0000 (10:53 -0600)]
Merge pull request #13302 from YankunLi/lyk_clean_code

rgw: clean redundant code

Reviewed-by: Sage Weil <sage@redhat.com>
8 years agoMerge pull request #13304 from majianpeng/async-tracing
Sage Weil [Fri, 10 Feb 2017 16:52:45 +0000 (10:52 -0600)]
Merge pull request #13304 from majianpeng/async-tracing

msg/async: cleanup code.

Reviewed-by: Haomai Wang <haomai@xsky.com>
8 years agoMerge pull request #13329 from Adirl/fix_febe
Sage Weil [Fri, 10 Feb 2017 16:48:58 +0000 (10:48 -0600)]
Merge pull request #13329 from Adirl/fix_febe

msg: Fix calls to Messenger::create with new parameter

Reviewed-by: Haomai Wang <haomai@xsky.com>
8 years agoMerge pull request #13351 from tchaikov/wip-init-ceph-newline
Sage Weil [Fri, 10 Feb 2017 16:40:36 +0000 (10:40 -0600)]
Merge pull request #13351 from tchaikov/wip-init-ceph-newline

init-ceph: print trailing n in "status" output

Reviewed-by: Nathan Cutler <nculter@suse.com>
Reviewed-by: Sage Weil <sage@redhat.com>
8 years agoMerge pull request #13356 from rubenk/rgw-docs-fix-typo
Sage Weil [Fri, 10 Feb 2017 16:38:09 +0000 (10:38 -0600)]
Merge pull request #13356 from rubenk/rgw-docs-fix-typo

doc: Fix typo and grammar in RGW config reference

Reviewed-by: Sage Weil <sage@redhat.com>
8 years agoqa/workunits/rados/test.sh: print test name when it fails 13264/head
Kefu Chai [Sun, 5 Feb 2017 15:11:13 +0000 (23:11 +0800)]
qa/workunits/rados/test.sh: print test name when it fails

we have

2017-02-04T16:15:46.090 INFO:tasks.workunit.client.0.mira032.stdout:error in 22088
2017-02-04T16:15:46.092 INFO:tasks.workunit.client.0.mira032.stderr:bash: line 1: 22092 Alarm clock             ceph_test_rados_api_aio 2>&1
2017-02-04T16:15:46.096 INFO:tasks.workunit.client.0.mira032.stderr:     22093 Done                    | tee ceph_test_rados_api_aio.log
2017-02-04T16:15:46.099 INFO:tasks.workunit.client.0.mira032.stderr:     22094 Done                    | sed "s/^/                  api_aio: /"
2017-02-04T16:15:46.102 INFO:tasks.workunit.client.0.mira032.stderr:+

if a unittest in rados/test.sh fails in teuthology.log, but it would
be desirable to have the failed test name in the line of "error in
22088".

Signed-off-by: Kefu Chai <kchai@redhat.com>
8 years agoMerge pull request #13258 from trociny/wip-18819
Jason Dillaman [Fri, 10 Feb 2017 15:17:23 +0000 (10:17 -0500)]
Merge pull request #13258 from trociny/wip-18819

common: possible lockdep false alarm for ThreadPool lock

Reviewed-by: Kefu Chai <kchai@redhat.com>
Reviewed-by: Jason Dillaman <dillaman@redhat.com>
8 years agoMerge pull request #13287 from guihecheng/rbd-fix
Jason Dillaman [Fri, 10 Feb 2017 14:21:47 +0000 (09:21 -0500)]
Merge pull request #13287 from guihecheng/rbd-fix

librbd: fix segfault on EOPNOTSUPP returned while fetching snapshot timestamp

Reviewed-by: Jason Dillaman <dillaman@redhat.com>