]> git.apps.os.sepia.ceph.com Git - ceph.git/log
ceph.git
6 years agotest/rbd_mirror: expect service daemon update instance_id attribute 25863/head
Mykola Golub [Wed, 9 Jan 2019 11:52:00 +0000 (11:52 +0000)]
test/rbd_mirror: expect service daemon update instance_id attribute

Signed-off-by: Mykola Golub <mgolub@suse.com>
6 years agotest/rbd_mirror: fix gmock warnings when running with debug
Mykola Golub [Wed, 9 Jan 2019 11:49:41 +0000 (11:49 +0000)]
test/rbd_mirror: fix gmock warnings when running with debug

Signed-off-by: Mykola Golub <mgolub@suse.com>
6 years agoMerge PR #25621 into master
Patrick Donnelly [Tue, 8 Jan 2019 23:56:16 +0000 (15:56 -0800)]
Merge PR #25621 into master

* refs/pull/25621/head:
mds: allow boot on read-only
mds: setup readonly mode for PurgeQueue
mds: return string_view for type str
mds: add missing locks for PurgeQueue methods
mds: delete on_error context on des

Reviewed-by: Zheng Yan <zyan@redhat.com>
6 years agoMerge PR #24556 into master
Patrick Donnelly [Tue, 8 Jan 2019 23:10:28 +0000 (15:10 -0800)]
Merge PR #24556 into master

* refs/pull/24556/head:
tools/cephfs: make 'cephfs-data-scan scan_links' update snaptable
tools/cephfs: make 'cephfs-data-scan scan_links' update inotable

Reviewed-by: Patrick Donnelly <pdonnell@redhat.com>
6 years agoMerge PR #25818 into master
Sage Weil [Tue, 8 Jan 2019 20:15:28 +0000 (14:15 -0600)]
Merge PR #25818 into master

* refs/pull/25818/head:
mon: adjust mon sync, extra_probe_peers to use addrvec

Reviewed-by: Josh Durgin <jdurgin@redhat.com>
6 years agomon: adjust mon sync, extra_probe_peers to use addrvec 25818/head
Sage Weil [Mon, 7 Jan 2019 18:52:43 +0000 (12:52 -0600)]
mon: adjust mon sync, extra_probe_peers to use addrvec

The peer addr stuff via asok is a bit fragile because the user must
provide an exact addrvec matching the mon to avoid some weirdness, but
it's rarely used, and the fix would be some robustness/tolerance in the
messenger that is a bigger project than this.

Signed-off-by: Sage Weil <sage@redhat.com>
6 years agoMerge PR #25823 into master
Sage Weil [Tue, 8 Jan 2019 19:05:11 +0000 (13:05 -0600)]
Merge PR #25823 into master

* refs/pull/25823/head:
msg/async/Protocol*: fix mark_down vs accept race

Reviewed-by: Ricardo Dias <rdias@suse.com>
Reviewed-by: Gregory Farnum <gfarnum@redhat.com>
Reviewed-by: Greg Farnum <gfarnum@redhat.com>
6 years agoMerge pull request #25381 from cbodley/wip-qa-rgw-cls
Casey Bodley [Tue, 8 Jan 2019 18:05:11 +0000 (13:05 -0500)]
Merge pull request #25381 from cbodley/wip-qa-rgw-cls

qa/rgw: add cls_lock/log/refcount/version tests to verify suite

Reviewed-by: Abhishek Lekshmanan <abhishek@suse.com>
6 years agoMerge pull request #24027 from theanalyst/wip-civetweb-poll
Matt Benjamin [Tue, 8 Jan 2019 17:50:49 +0000 (12:50 -0500)]
Merge pull request #24027 from theanalyst/wip-civetweb-poll

rgw: civetweb: use poll instead of select while waiting on sockets

6 years agoMerge PR #25835 into master
Sage Weil [Tue, 8 Jan 2019 17:19:21 +0000 (11:19 -0600)]
Merge PR #25835 into master

* refs/pull/25835/head:
mgr/ServiceMap: print daemon addr in legacy format

Reviewed-by: Ricardo Dias <rdias@suse.com>
Reviewed-by: Volker Theile <vtheile@suse.com>
6 years agoMerge PR #24172 into master
Patrick Donnelly [Tue, 8 Jan 2019 16:20:59 +0000 (08:20 -0800)]
Merge PR #24172 into master

* refs/pull/24172/head:
client: fix fuse client hang because its pipe to mds is not ok

Reviewed-by: Patrick Donnelly <pdonnell@redhat.com>
6 years agomgr/ServiceMap: print daemon addr in legacy format 25835/head
Sage Weil [Tue, 8 Jan 2019 15:23:12 +0000 (09:23 -0600)]
mgr/ServiceMap: print daemon addr in legacy format

The v1/v2 prefix isn't useful anyway since the client can connect via
any protocol.

Signed-off-by: Sage Weil <sage@redhat.com>
6 years agoMerge PR #25741 into master
Patrick Donnelly [Tue, 8 Jan 2019 15:03:40 +0000 (07:03 -0800)]
Merge PR #25741 into master

* refs/pull/25741/head:
mds: remove wrong assertion in Locker::snapflush_nudge

Reviewed-by: Patrick Donnelly <pdonnell@redhat.com>
6 years agoMerge PR #25479 into master
Patrick Donnelly [Tue, 8 Jan 2019 15:00:26 +0000 (07:00 -0800)]
Merge PR #25479 into master

* refs/pull/25479/head:
client: fix fuse client can't read or write data due its caps is invalid
Revert "client: fix fuse client can't read or write data due its caps is invalid"

Reviewed-by: Patrick Donnelly <pdonnell@redhat.com>
6 years agoMerge pull request #25812 from Exotelis/toc
Lenz Grimmer [Tue, 8 Jan 2019 14:34:53 +0000 (15:34 +0100)]
Merge pull request #25812 from Exotelis/toc

mgr/dashboard: Add table of contents to HACKING.rst

Reviewed-by: Laura Paduano <lpaduano@suse.com>
6 years agoMerge pull request #25830 from rhcs-dashboard/grafana-500
Lenz Grimmer [Tue, 8 Jan 2019 14:33:41 +0000 (15:33 +0100)]
Merge pull request #25830 from rhcs-dashboard/grafana-500

mgr/dashboard: Fixes Grafana 500 error

Reviewed-by: Laura Paduano <lpaduano@suse.com>
Reviewed-by: Ricardo Marques <rimarques@suse.com>
Reviewed-by: Tatjana Dehler <tdehler@suse.com>
6 years agoMerge PR #25801 into master
Sage Weil [Tue, 8 Jan 2019 14:30:25 +0000 (08:30 -0600)]
Merge PR #25801 into master

* refs/pull/25801/head:
qa/tasks/radosbench: default to 64k writes

Reviewed-by: Kefu Chai <kchai@redhat.com>
6 years agoMerge pull request #24714 from pritha-srivastava/wip-rgw-role-doc
Matt Benjamin [Tue, 8 Jan 2019 14:11:26 +0000 (09:11 -0500)]
Merge pull request #24714 from pritha-srivastava/wip-rgw-role-doc

rgw: Adding documentation for Roles.

6 years agoMerge PR #25821 into master
Sage Weil [Tue, 8 Jan 2019 13:23:48 +0000 (07:23 -0600)]
Merge PR #25821 into master

* refs/pull/25821/head:
doc/dev/msgr2: checksum frame header (tag + length)

Reviewed-by: Ricardo Dias <rdias@suse.com>
Reviewed-by: Gregory Farnum <gfarnum@redhat.com>
Reviewed-by: Greg Farnum <gfarnum@redhat.com>
6 years agomsg/async/Protocol*: fix mark_down vs accept race 25823/head
Sage Weil [Tue, 8 Jan 2019 13:13:13 +0000 (07:13 -0600)]
msg/async/Protocol*: fix mark_down vs accept race

If we mark_down the connection while we have the lock dropped the state
maybe CLOSED when we retake it.  Bail out if that happens instead of
continuing to process the connection and eventually running into an
assertion on can_write.

Fixes: http://tracker.ceph.com/issues/36497
Signed-off-by: Sage Weil <sage@redhat.com>
6 years agoMerge pull request #25820 from alfredodeza/wip-rm37805
Alfredo Deza [Tue, 8 Jan 2019 12:49:21 +0000 (07:49 -0500)]
Merge pull request #25820 from alfredodeza/wip-rm37805

ceph-volume tests/functional declare ceph-ansible roles instead of importing them

Reviewed-by: Andrew Schoen <aschoen@redhat.com>
6 years agomgr/dashboard: Fixes Grafana 500 error 25830/head
Kanika Murarka [Tue, 8 Jan 2019 06:45:05 +0000 (12:15 +0530)]
mgr/dashboard: Fixes Grafana 500 error

Fixes: http://tracker.ceph.com/issues/37809
Signed-off-by: Kanika Murarka <kmurarka@redhat.com>
6 years agoclient: fix fuse client can't read or write data due its caps is invalid 25479/head
YunfeiGuan [Wed, 26 Sep 2018 09:01:38 +0000 (17:01 +0800)]
client: fix fuse client can't read or write data due its caps is invalid

We can't do read or write if we don't have Fr or Fw. Similarly, if the
caps is invalid, we can't read or wirte either.

What's worse, the mds don't konw our cap gen is invalid and think client
inode's caps is right. Thus will lead client application hung all the time.

Fixes: http://tracker.ceph.com/issues/36189
Signed-off-by: Guan yunfei <yunfei.guan@xtaotech.com>
Signed-off-by: "Yan, Zheng" <zyan@redhat.com>
6 years agoRevert "client: fix fuse client can't read or write data due its caps is invalid"
Yan, Zheng [Tue, 11 Dec 2018 01:46:46 +0000 (09:46 +0800)]
Revert "client: fix fuse client can't read or write data due its caps is invalid"

This reverts commit 1d742aa51be07cebf1b0d19b6640684b263e6bfc.

Signed-off-by: "Yan, Zheng" <zyan@redhat.com>
6 years agodoc/dev/msgr2: checksum frame header (tag + length) 25821/head
Sage Weil [Mon, 7 Jan 2019 21:01:21 +0000 (15:01 -0600)]
doc/dev/msgr2: checksum frame header (tag + length)

Ensure we catch transport errors early (before we, say, try to allocate
a missized payload buffer).

Signed-off-by: Sage Weil <sage@redhat.com>
6 years agoceph-volume tests/functional declare ceph-ansible roles instead of importing them 25820/head
Alfredo Deza [Mon, 7 Jan 2019 20:15:21 +0000 (15:15 -0500)]
ceph-volume tests/functional declare ceph-ansible roles instead of importing them

Signed-off-by: Alfredo Deza <adeza@redhat.com>
6 years agoMerge PR #25795 into master
Sage Weil [Mon, 7 Jan 2019 16:54:22 +0000 (10:54 -0600)]
Merge PR #25795 into master

* refs/pull/25795/head:
ceph-objectstore-tool: fix split check on import

Reviewed-by: Neha Ojha <nojha@redhat.com>
6 years agoqa/tasks/radosbench: default to 64k writes 25801/head
Sage Weil [Sat, 5 Jan 2019 02:56:56 +0000 (20:56 -0600)]
qa/tasks/radosbench: default to 64k writes

The default rados bench is 4MB writes, but this tends to fill up our
tiny test clusters.  Use 64KB instead.

Signed-off-by: Sage Weil <sage@redhat.com>
6 years agomgr/dashboard: Add table of contents 25812/head
Sebastian Krah [Mon, 7 Jan 2019 09:54:19 +0000 (10:54 +0100)]
mgr/dashboard: Add table of contents

Adds a table of contents to the HACKING.rst to make the navigation easier

Signed-off-by: Sebastian Krah <skrah@suse.com>
6 years agotools/cephfs: make 'cephfs-data-scan scan_links' update snaptable 24556/head
Yan, Zheng [Fri, 12 Oct 2018 08:01:34 +0000 (16:01 +0800)]
tools/cephfs: make 'cephfs-data-scan scan_links' update snaptable

Signed-off-by: "Yan, Zheng" <zyan@redhat.com>
6 years agotools/cephfs: make 'cephfs-data-scan scan_links' update inotable
Yan, Zheng [Thu, 11 Oct 2018 10:04:57 +0000 (18:04 +0800)]
tools/cephfs: make 'cephfs-data-scan scan_links' update inotable

Signed-off-by: "Yan, Zheng" <zyan@redhat.com>
6 years agoMerge pull request #25646 from tone-zhang/nvme-hang
Kefu Chai [Mon, 7 Jan 2019 08:00:11 +0000 (16:00 +0800)]
Merge pull request #25646 from tone-zhang/nvme-hang

bluestore/NVMEDevice.cc: fix NVMEManager thread hang

Reviewed-by: Kefu Chai <kchai@redhat.com>
Reviewed-by: Haomai Wang <haomai@xsky.com>
6 years agoMerge pull request #25797 from falcon78921/wip-doc-37793
Kefu Chai [Mon, 7 Jan 2019 07:29:08 +0000 (15:29 +0800)]
Merge pull request #25797 from falcon78921/wip-doc-37793

doc: updated Ceph documentation links

Reviewed-by: Kefu Chai <kchai@redhat.com>
6 years agobluestore/NVMEDevice.cc: fix NVMEManager thread halt 25646/head
tone.zhang [Thu, 20 Dec 2018 10:12:38 +0000 (18:12 +0800)]
bluestore/NVMEDevice.cc: fix NVMEManager thread halt

When enable SPDK in Ceph and start up Ceph development cluster, met
NVMEManager thread halt.

On aarch64 platform, the log as below:

Starting SPDK v18.04.1 / DPDK 18.05.0 initialization...
[ DPDK EAL parameters: nvme-device-manager -c 0x1 -m 2048 --file-prefix=spdk_pid16987 ]
EAL: Detected 46 lcore(s)
EAL: Detected 1 NUMA nodes
EAL: Multi-process socket /var/run/dpdk/spdk_pid16987/mp_socket
EAL: Probing VFIO support...
EAL: VFIO support initialized
EAL: PCI device 0000:01:00.0 on NUMA socket 0
EAL:   probe driver: 8086:953 spdk_nvme
EAL:   using IOMMU type 1 (Type 1)
^C

The reason is that pthread_cond_destroy() cannot destroy the active
condition_variable parameter.

Also on x86 debug builds we get the following error messages due to
probe_queue_lock still being active during ~NVMEManager:

/home/ubuntu/ceph/src/common/mutex_debug.h: 114: FAILED ceph_assert(r == 0)
 ceph version 14.0.1-1862-g403622b (403622be721a460f3dff2d84f6bfc628f5026704) nautilus (dev)

The change fixes the issue.

Fixes: http://tracker.ceph.com/issues/37720
Signed-off-by: tone.zhang <tone.zhang@arm.com>
Signed-off-by: Steve Capper <steve.capper@arm.com>
6 years agoMerge PR #25799 into master
Sage Weil [Sun, 6 Jan 2019 15:12:15 +0000 (09:12 -0600)]
Merge PR #25799 into master

* refs/pull/25799/head:
msg: fix includes for ostringstream

Reviewed-by: Kefu Chai <kchai@redhat.com>
6 years agoMerge PR #25802 into master
Sage Weil [Sun, 6 Jan 2019 14:41:05 +0000 (08:41 -0600)]
Merge PR #25802 into master

* refs/pull/25802/head:
qa/suites/rados/thrash-old-clients: no async-v2only

Reviewed-by: Kefu Chai <kchai@redhat.com>
6 years agoqa/suites/rados/thrash-old-clients: no async-v2only 25802/head
Sage Weil [Sat, 5 Jan 2019 18:26:56 +0000 (12:26 -0600)]
qa/suites/rados/thrash-old-clients: no async-v2only

Old clients don't support the v2 protocol.

Signed-off-by: Sage Weil <sage@redhat.com>
6 years agoMerge PR #25780 into master
Sage Weil [Sat, 5 Jan 2019 18:01:23 +0000 (12:01 -0600)]
Merge PR #25780 into master

* refs/pull/25780/head:
mon/OSDMonitor: do not populate void pg_temp into nextmap

Reviewed-by: Sage Weil <sage@redhat.com>
6 years agomsg: fix includes for ostringstream 25799/head
Willem Jan Withagen [Fri, 4 Jan 2019 23:53:22 +0000 (00:53 +0100)]
msg: fix includes for ostringstream

Clang complains...

```
/home/jenkins/workspace/ceph-master/src/msg/msg_types.h:420:19: error: implicit instantiation of undefined template 'std::__1::basic_ostringstream<char, std::__1::char_traits<char>, std::__1::allocator<char> >'
    ostringstream ss;
                  ^
/usr/include/c++/v1/iosfwd:123:32: note: template is declared here
    class _LIBCPP_TEMPLATE_VIS basic_ostringstream;
                               ^
1 error generated.
```

Signed-off-by: Willem Jan Withagen <wjw@digiware.nl>
6 years agoMerge pull request #25716 from cyx1231st/wip-crimson-msgr-errorleak
Kefu Chai [Sat, 5 Jan 2019 10:45:50 +0000 (18:45 +0800)]
Merge pull request #25716 from cyx1231st/wip-crimson-msgr-errorleak

crimson/net: fix crimson msgr error leaks to caller

Reviewed-by: Radoslaw Zarzynski <rzarzyns@redhat.com>
Reviewed-by: Kefu Chai <kchai@redhat.com>
6 years agoMerge PR #25750 into master
Patrick Donnelly [Fri, 4 Jan 2019 22:27:34 +0000 (14:27 -0800)]
Merge PR #25750 into master

* refs/pull/25750/head:
common: expose internal StackStringStream via deref

Reviewed-by: Sage Weil <sage@redhat.com>
6 years agoMerge PR #25793 into master
Sage Weil [Fri, 4 Jan 2019 21:43:23 +0000 (15:43 -0600)]
Merge PR #25793 into master

* refs/pull/25793/head:
Merge remote-tracking branch 'private/wip-mon-kv-fix' into wip-mimic-4
Merge remote-tracking branch 'private/wip-rgw-max-keys' into wip-mimic-4
doc/releases/mimic: v13.2.4
rgw: fix issues with 'enforce bounds' patch
rgw: enforce bounds on max-keys/max-uploads/max-parts
mon/config-key: limit caps allowed to access the store

Reviewed-by: Gregory Farnum <gfarnum@redhat.com>
Reviewed-by: David Galloway <dgallowa@redhat.com>
Reviewed-by: Greg Farnum <gfarnum@redhat.com>
6 years agodoc: updated Ceph documentation links 25797/head
James McClune [Fri, 4 Jan 2019 21:32:21 +0000 (16:32 -0500)]
doc: updated Ceph documentation links

Fixes include:

- Updating Doxygen link for reference (http://docs.ceph.com/docs/master/dev/documenting/)
- Adding :ref: label for User Management page (http://docs.ceph.com/docs/master/rados/operations/user-management/)
- Update User Management link for reference (http://docs.ceph.com/docs/master/rbd/rbd-snapshot/)

Fixes: https://tracker.ceph.com/issues/37793
Signed-off-by: James McClune <jmcclune@mcclunetechnologies.net>
6 years agoceph-objectstore-tool: fix split check on import 25795/head
Sage Weil [Fri, 4 Jan 2019 21:25:01 +0000 (15:25 -0600)]
ceph-objectstore-tool: fix split check on import

Consider pg 1.3:
- in epoch A it splits to 1.b
- in epoch B 1.b splits to 1.1b

We export 1.3 before A, and import into another OSD that already has 1.b.
The existing check looks for whether 1.3 splits into 1.1b from B-1 to B,
but it should really look look at whether 1.3 splits into 1.1b over the
*entire* range (the export epoch, which is something < A).

Fixes: http://tracker.ceph.com/issues/37671
Signed-off-by: Sage Weil <sage@redhat.com>
6 years agoMerge remote-tracking branch 'private/wip-mon-kv-fix' into wip-mimic-4 25793/head
Sage Weil [Fri, 4 Jan 2019 20:03:56 +0000 (14:03 -0600)]
Merge remote-tracking branch 'private/wip-mon-kv-fix' into wip-mimic-4

6 years agoMerge remote-tracking branch 'private/wip-rgw-max-keys' into wip-mimic-4
Sage Weil [Fri, 4 Jan 2019 20:03:38 +0000 (14:03 -0600)]
Merge remote-tracking branch 'private/wip-rgw-max-keys' into wip-mimic-4

6 years agodoc/releases/mimic: v13.2.4
Sage Weil [Fri, 4 Jan 2019 19:50:48 +0000 (13:50 -0600)]
doc/releases/mimic: v13.2.4

Signed-off-by: Sage Weil <sage@redhat.com>
6 years agoMerge PR #25009 into master
Sage Weil [Fri, 4 Jan 2019 19:42:09 +0000 (13:42 -0600)]
Merge PR #25009 into master

* refs/pull/25009/head:
librbd: stringify locker name with get_legacy_str()
osdc/Objecter: fix list_watchers addr rendering to match legacy
test/crimson: disable unittest_seastar_messenger test
msg/msg_types: encode entity_addr_t TYPE_ANY as TYPE_LEGACY for pre-nautilus
client: make blacklist detection handle TYPE_ANY entries
mon/OSDMonitor: maintain compat output for 'blacklist ls'
client: maintain compat for {inst,addr}_str in status dump
qa/tasks/ceph_manager: compare osd flush seq #'s as ints
qa/suites/fs: make use of simple.yaml where appropriate
qa/msgr: move msgr factet into generic re-usable dir
crimson: fix monmap build for seastar
doc/start/ceph.conf: trim the sample ceph.conf file
doc/rados/operations: only describe --public-{addr,network} method for adding mons
PendingReleaseNotes: deprecate 'mon addr'
doc: fix some 'mon addr' references
doc/rados/configuration: fix some 'mon addr' references
doc/rados/configuration/network-config-ref: revise network docs somewhat
doc/rados/configuration/network-config-ref: remove totally obsolete section
qa/suites/rados: replace mon_seesaw.py task with a small bash script
qa/suites/fs/upgrade: don't bind to v2 addrs
qa/tasks/mon_thrash: avoid 'mon addr' in mon section
mon/MonClient: disable ms_bind_msgr2 if NAUTILUS feature not set
osd/OSDMap: maintain compat addr fields
msg/msg_types: add get_legacy_str()
mds/MDSMap.h: maintain compat addr field
mon/MgrMap: maintain compat active_addr field
mon/MonClient: reconnect to mon if it's addrvec appears to have changed
qa/tasks/ceph.conf.template: increase mon_mgr_mkfs_grace
msg/async/ProtocolV2: fill in IP for all peer_addrs
msg/async: print all addrs on debug lines
mon/MonMap: no noname- mon name prefix when for_mkfs
ceph-monstore-tool: print initial monmap
msg/async/ProtocolV2: advertise ourselves as a v2 addr when using v2 protocol
msg/async: assert existing protocol matches current protocol
msg/async: add missing modelines
mon/MonMap: add missing modeline
vstart.sh: put mon addrs in mon_host, not 'mon addr'
msg/async: better debug around conn map lookups and updates
mon/MonClient: dump initial monmap at debug level 10
qa/standalone/osd/osd-fast-mark-down: use v1 addr w/ simplemessenger
qa/tasks/ceph: set initial monmap features with using addrvec addrs
monmaptool: add --enable-all-features option
qa/tasks/ceph: only use monmaptool --addv if addr has [,:v]
qa/tasks/ceph_manager: make get_mon_status use mon addr
qa/tasks/ceph: keep mon addrs in ctx namespace
mon/OSDMonitor: log all osd addrs on boot
msg/simple: behave when v2 and v1 addrs are present at target
mon/MonClient: warn if global_id changes
msg/Connection: add warning/note on get_peer_global_id
mds/MDSDaemon: clean up handle_mds_map debug output a bit
qa/suites/rados/upgrade: debug mds
mds/MDSRank: improve is_stale_message to handle addrvecs
msg/async: make loopback detect when sending to one of our many addrs
qa/suites/rados/upgrade: no aggressive pg num changes
mon/OSDMonitor: require nautilus mons for require_osd_release=nautilus
mon/OSDMonitor: require mimic mons for require_osd_release=mimic
qa/suites/rados/thrash-old-clients: use legacy addr syntax in ceph.conf
msg/async: preserve peer features when replacing a connection
qa/tasks/ceph.py: move methods from teuthology.git into ceph.py directly; support mon bind * options
mon/MonMap: adjust build_initial behavior for mkfs vs probe
mon/MonMap: improve ambiguous addr behavior
qa/suites/rados/upgrade: spread mons a bit
qa/rados/thrash-old-clients: keep mons on separate hosts
qa/standalone/mon/misc.sh: tweak test to be more robust
qa/tasks/mon_seesaw: expect v1/v2 prefix in addr
osd/OSDMap: fix is_blacklisted() check to assume type ANY
mon/OSDMonitor: use ANY addr type for blacklisting
mon/msg_types: TYPE_V1ORV2 -> TYPE_ANY
qa/workunits/cephtool: fix blacklist test
qa/suites/upgrade: install old version with only v1 addrs
common/options: by default, bind to both msgr v1 and v2 addresses
vstart.sh: add --msgr1, --msgr2, --msgr21 options
msg/async/ProtocolV2: be flexible with server identity check
msg/msg_types: fix entity_addrvec_t::parse() with null end arg
qa/suites/rados/basic/msgr: no msgr2 addrs in initial monmaps
qa/tasks/ceph: add 'mon_bind_addrvec' and 'mon_bind_msgr2' options
monmaptool: add --addv argument to pass in addrvec directly
qa/suites/rados/basic/msgr: do not use msgr2 with simplemessenger
qa/suites/rados/basic/msgr: async is not experimental
messages/MOSDBoot: fix compat with pre-nautilus
mon/MonMap: allow v1 or v2 to be explicitly specified along with part
msg/msg_types: allow parsing of IPs without assuming v1 vs v2
msg/msg_types: default parse to v2 addrs
msg: standarize on v1: and v2: prefixes for *all* entity_addr_t's
vstart.sh: use msgr2 by default
mon/MonMap: remove get_addr() methods
ceph-mon: adjust startup/bind/join sequence to use addrs
mon: use MonMap::get_addrs() (instead of get_addr())
mon/MonClient: change pending_cons to addrvec-based map
mon/MonMap: fix set_addr() caller, kill wrapper
mon/MonMap: remove addr-based add()
monmaptool: fix --add to do either legacy or msgr2+legacy
monmaptool: clean up iterator use a bit
mon/MonMap: handle ambiguous mon addrs by trying both legacy and msgr
mon/MonMap: take addrvec for set_initial_members
mon/MonMap: use addrvecs for test instances
mon: pass addrvec via MMonJoin
mon/MonmapMonitor: fix 'mon add' to populate addrvec
mon/MonMap: addr -> addrvec
msg/async/ProtocolV2: only update socket_addr if we learned our addr
osd: go active even if mon only accepted our v1 addr
test/msgr: add test for msgr2 protocol
msg/async/ProtocolV2: share socket_addr and all addrs during handshake
msg/async: print socket_addr for the connection
msg/async: msgr2 protocol placeholder
msg/async: move ProtocolV1 class to its own source file
msg/async: keep listen addr in ServerSocket, pass to new connections
msg/async/AsyncMessenger: fix set_addr_unknowns

Reviewed-by: Josh Durgin <jdurgin@redhat.com>
6 years agoMerge PR #25790 into master
Sage Weil [Fri, 4 Jan 2019 19:40:58 +0000 (13:40 -0600)]
Merge PR #25790 into master

* refs/pull/25790/head:
common/blkdev: Fix missing stub block_device_get_metrics() on other platforms

Reviewed-by: Sage Weil <sage@redhat.com>
6 years agolibrbd: stringify locker name with get_legacy_str() 25009/head
Sage Weil [Fri, 4 Jan 2019 19:00:11 +0000 (13:00 -0600)]
librbd: stringify locker name with get_legacy_str()

This avoids the new v1: v2: prefixes.

Signed-off-by: Sage Weil <sage@redhat.com>
6 years agoosdc/Objecter: fix list_watchers addr rendering to match legacy
Sage Weil [Fri, 4 Jan 2019 18:46:27 +0000 (12:46 -0600)]
osdc/Objecter: fix list_watchers addr rendering to match legacy

Signed-off-by: Sage Weil <sage@redhat.com>
6 years agoMerge pull request #25781 from neha-ojha/wip-fix-upgrade-rhel
Neha Ojha [Fri, 4 Jan 2019 16:01:17 +0000 (08:01 -0800)]
Merge pull request #25781 from neha-ojha/wip-fix-upgrade-rhel

qa/suites/upgrade/mimic-x: fix rhel runs

Reviewed-by: Yuri Weinstein <yweins@redhat.com>
6 years agoMerge pull request #25154 from rhcs-dashboard/dashboard-url
Ricardo Marques [Fri, 4 Jan 2019 15:00:32 +0000 (15:00 +0000)]
Merge pull request #25154 from rhcs-dashboard/dashboard-url

mgr/dashboard: check for existence of Grafana dashboard

Reviewed-by: Alfonso Martínez <almartin@redhat.com>
Reviewed-by: Patrick Nawracay <pnawracay@suse.com>
6 years agotest/crimson: disable unittest_seastar_messenger test
Sage Weil [Fri, 4 Jan 2019 14:54:25 +0000 (08:54 -0600)]
test/crimson: disable unittest_seastar_messenger test

This is currently failing, allegedly for reasons unrelated to this PR, so
I'm disabling for now!

Signed-off-by: Sage Weil <sage@redhat.com>
6 years agocommon/blkdev: Fix missing stub block_device_get_metrics() on other platforms 25790/head
Willem Jan Withagen [Fri, 4 Jan 2019 14:44:28 +0000 (15:44 +0100)]
common/blkdev: Fix missing stub block_device_get_metrics() on other platforms

Signed-off-by: Willem Jan Withagen <wjw@digiware.nl>
6 years agoMerge PR #25637 into master
Sage Weil [Fri, 4 Jan 2019 14:25:25 +0000 (08:25 -0600)]
Merge PR #25637 into master

* refs/pull/25637/head:
doc: release notes for 13.2.3 mimic

Reviewed-by: Abhishek Lekshmanan <abhishek.lekshmanan@gmail.com>
6 years agoMerge PR #25455 into master
Sage Weil [Fri, 4 Jan 2019 14:17:38 +0000 (08:17 -0600)]
Merge PR #25455 into master

* refs/pull/25455/head:
mgr/diskprediction Document guide add predictor accuracy

Reviewed-by: Sage Weil <sage@redhat.com>
6 years agomgr/dashboard: check for existence of Grafana dashboard 25154/head
Kanika Murarka [Wed, 5 Dec 2018 10:33:53 +0000 (16:03 +0530)]
mgr/dashboard: check for existence of Grafana dashboard

Fixes: http://tracker.ceph.com/issues/36356
Signed-off-by: Kanika Murarka <kmurarka@redhat.com>
6 years agoMerge pull request #25210 from dillaman/wip-dashboard-rbd-mirroring
Ricardo Marques [Fri, 4 Jan 2019 10:39:09 +0000 (10:39 +0000)]
Merge pull request #25210 from dillaman/wip-dashboard-rbd-mirroring

dashboard: support configuring block mirroring pools and peers

6 years agocrimson/net: simplify logics and centralize fault handling in execute_open() 25716/head
Yingxin [Fri, 28 Dec 2018 02:59:45 +0000 (10:59 +0800)]
crimson/net: simplify logics and centralize fault handling in execute_open()

Signed-off-by: Yingxin <yingxin.cheng@intel.com>
6 years agocrimson/net: don't schedule/execute send/keepalive when closing
Yingxin [Fri, 28 Dec 2018 02:55:00 +0000 (10:55 +0800)]
crimson/net: don't schedule/execute send/keepalive when closing

Signed-off-by: Yingxin <yingxin.cheng@intel.com>
6 years agocrimson/net: add proper gating and fault handling for send/keepalive
Yingxin [Fri, 28 Dec 2018 02:51:25 +0000 (10:51 +0800)]
crimson/net: add proper gating and fault handling for send/keepalive

Signed-off-by: Yingxin <yingxin.cheng@intel.com>
6 years agocrimson/net: remove unnecessary empty buffer check
Yingxin [Fri, 28 Dec 2018 02:40:58 +0000 (10:40 +0800)]
crimson/net: remove unnecessary empty buffer check

Signed-off-by: Yingxin <yingxin.cheng@intel.com>
6 years agocrimson/net: no exception forwarded from accetp/connect to send_ready
Yingxin [Fri, 28 Dec 2018 02:37:30 +0000 (10:37 +0800)]
crimson/net: no exception forwarded from accetp/connect to send_ready

Signed-off-by: Yingxin <yingxin.cheng@intel.com>
6 years agocrimson/net: remove the unecessary then
Yingxin [Fri, 28 Dec 2018 02:31:32 +0000 (10:31 +0800)]
crimson/net: remove the unecessary then

Signed-off-by: Yingxin <yingxin.cheng@intel.com>
6 years agoMerge pull request #25770 from votdev/fix_telemetry_issues
Kefu Chai [Fri, 4 Jan 2019 05:23:47 +0000 (13:23 +0800)]
Merge pull request #25770 from votdev/fix_telemetry_issues

mgr/telemetry: Fix various issues

Reviewed-by: Kefu Chai <kchai@redhat.com>
6 years agoMerge pull request #25783 from neha-ojha/wip-25672
Kefu Chai [Fri, 4 Jan 2019 05:18:35 +0000 (13:18 +0800)]
Merge pull request #25783 from neha-ojha/wip-25672

common/blkdev.h: use std::string

Reviewed-by: Kefu Chai <kchai@redhat.com>
Reviewed-by: Rick Chen <rick.chen@prophetstor.com>
6 years agoclient: fix fuse client hang because its pipe to mds is not ok 24172/head
IvanGuan [Fri, 4 Jan 2019 04:22:27 +0000 (12:22 +0800)]
client: fix fuse client hang because its pipe to mds is not ok

If fuse client session had been killed by mds and the mds daemon restart
or hot-standby switch happens right away but the client did not receive
any message from monitor due to network or other whatever reason untill
the mds become active again.Thus cause client didn't do closed_mds_session
lead the seession still is STATE_OPEN but client can't send any message to
mds because its pipe is not ok.So we should close the stale session so that
it can be reopened again.

Fixes: http://tracker.ceph.com/issues/36079
Signed-off-by: Guan yunfei <yunfei.guan@xtaotech.com>
6 years agoMerge pull request #25758 from xiexingguo/wip-async-prefetch
Kefu Chai [Fri, 4 Jan 2019 03:16:22 +0000 (11:16 +0800)]
Merge pull request #25758 from xiexingguo/wip-async-prefetch

msg/async: improve read-prefetch logic

Reviewed-by: Kefu Chai <kchai@redhat.com>
6 years agoMerge pull request #25760 from cxytt/bug-fix
Kefu Chai [Fri, 4 Jan 2019 03:13:28 +0000 (11:13 +0800)]
Merge pull request #25760 from cxytt/bug-fix

mon: shutdown messenger early to avoid accessing deleted logger

Reviewed-by: Sage Weil <sage@redhat.com>
Reviewed-by: Kefu Chai <kchai@redhat.com>
6 years agocommon/blkdev.h: use std::string 25783/head
Neha Ojha [Fri, 4 Jan 2019 02:57:28 +0000 (18:57 -0800)]
common/blkdev.h: use std::string

Signed-off-by: Neha Ojha <nojha@redhat.com>
6 years agoMerge PR #24159 into master
Sage Weil [Fri, 4 Jan 2019 02:38:30 +0000 (20:38 -0600)]
Merge PR #24159 into master

* refs/pull/24159/head:
mon/PGMap: show pg state age instead of stamp

Reviewed-by: John Spray <john.spray@redhat.com>
Reviewed-by: Josh Durgin <jdurgin@redhat.com>
6 years agoMerge PR #25623 into master
Sage Weil [Fri, 4 Jan 2019 02:38:14 +0000 (20:38 -0600)]
Merge PR #25623 into master

* refs/pull/25623/head:
common/ceph_time: 'mo' for month
common/options: use new parse_timespan
common/ceph_time: add parse_timespan
common/config_proxy: pass err_ss through on set_val
common/ceph_time: add exact_timespan_str

Reviewed-by: Kefu Chai <kchai@redhat.com>
6 years agoMerge PR #25756 into master
Sage Weil [Fri, 4 Jan 2019 02:37:54 +0000 (20:37 -0600)]
Merge PR #25756 into master

* refs/pull/25756/head:
vstart.sh: force setting dashboard options before first mgr starts
mon/ConfigMonitor: add --force flag to 'config set'

Reviewed-by: Kefu Chai <kchai@redhat.com>
6 years agoMerge PR #25763 into master
Sage Weil [Fri, 4 Jan 2019 02:37:38 +0000 (20:37 -0600)]
Merge PR #25763 into master

* refs/pull/25763/head:
ceph_argparse: make command ceph acceph SIGINT.

Reviewed-by: Sage Weil <sage@redhat.com>
6 years agoMerge PR #25672 into master
Sage Weil [Fri, 4 Jan 2019 02:11:11 +0000 (20:11 -0600)]
Merge PR #25672 into master

* refs/pull/25672/head:
osd: OSD device smart data include additional nvme data
common/blkdev: add missing get_device_id impl
os/bluestore,filestore: use get_raw_devices
osd: update metadata and smart code to report get_device_id errors
mon: update metadata and smart commands to use get_raw_devices
common/blkdev: add get_raw_devices helper
common/blkdev: fix BlkDev::get_devid when we got a devname, not fd
common/blkdev: return optional error string from get_device_id
common/blkdev: refactor to add block_device_get_metrics returning json

Reviewed-by: Neha Ojha <nojha@redhat.com>
6 years agoMerge PR #25593 into master
Patrick Donnelly [Fri, 4 Jan 2019 01:40:53 +0000 (17:40 -0800)]
Merge PR #25593 into master

* refs/pull/25593/head:
mds: create heartbeat grace config option

Reviewed-by: Zheng Yan <zyan@redhat.com>
6 years agomon/OSDMonitor: do not populate void pg_temp into nextmap 25780/head
xie xingguo [Fri, 4 Jan 2019 00:39:01 +0000 (08:39 +0800)]
mon/OSDMonitor: do not populate void pg_temp into nextmap

Due to commit ea723fb, pg_temp with clean acting set are added to inc map.
The original intent was to clear out pg_temps during priming, but as
written it would set a new_pg_temp item clearing the pg_temp even if one
didn't already exist.  Adding the up != acting condition in there makes us
only take that path if there is an existing pg_temp entry to remove.

Fixes: https://tracker.ceph.com/issues/37784
Signed-off-by: Aleksei Zakharov <zakharov.a.g@yandex.ru>
6 years agoosd: OSD device smart data include additional nvme data 25672/head
hsiang41 [Fri, 28 Dec 2018 09:07:32 +0000 (17:07 +0800)]
osd: OSD device smart data include additional nvme data

Add nvme addition data into the deveh health data. That use nvme tool
and command syntax "nvme <vendor> smart-log-add <dev> -json". The nvme
json output append in the dev smart "nvme_smart_health_information_add_log".

- made run_smartctl static/private
- changed get_metrics to take a const string, not c str

Signed-off-by: Rick Chen <rick.chen@prophetstor.com>
Signed-off-by: Sage Weil <sage@redhat.com>
6 years agocommon/blkdev: add missing get_device_id impl
Sage Weil [Tue, 1 Jan 2019 16:58:56 +0000 (10:58 -0600)]
common/blkdev: add missing get_device_id impl

Signed-off-by: Sage Weil <sage@redhat.com>
6 years agoos/bluestore,filestore: use get_raw_devices
Sage Weil [Fri, 21 Dec 2018 17:21:32 +0000 (11:21 -0600)]
os/bluestore,filestore: use get_raw_devices

There is a minor change here: before the devices list would include
e.g. 'sda2' and 'sda', and now it will only include 'sda'.

Fixes: http://tracker.ceph.com/issues/37542
Signed-off-by: Sage Weil <sage@redhat.com>
6 years agoosd: update metadata and smart code to report get_device_id errors
Sage Weil [Fri, 21 Dec 2018 17:22:17 +0000 (11:22 -0600)]
osd: update metadata and smart code to report get_device_id errors

Signed-off-by: Sage Weil <sage@redhat.com>
6 years agomon: update metadata and smart commands to use get_raw_devices
Sage Weil [Fri, 21 Dec 2018 17:21:57 +0000 (11:21 -0600)]
mon: update metadata and smart commands to use get_raw_devices

Signed-off-by: Sage Weil <sage@redhat.com>
6 years agocommon/blkdev: add get_raw_devices helper
Sage Weil [Fri, 21 Dec 2018 17:20:34 +0000 (11:20 -0600)]
common/blkdev: add get_raw_devices helper

Signed-off-by: Sage Weil <sage@redhat.com>
6 years agoqa/suites/upgrade/mimic-x: fix rhel runs 25781/head
Neha Ojha [Thu, 3 Jan 2019 21:39:30 +0000 (13:39 -0800)]
qa/suites/upgrade/mimic-x: fix rhel runs

The following fragment was required for rhel on ovh
overrides:
    ansible.cephlab:
      skip_tags: entitlements,packages,repos

Since, this suite runs on smithi in our nightlies, we should not need
this.

Signed-off-by: Neha Ojha <nojha@redhat.com>
6 years agoMerge pull request #25674 from alfredodeza/wip-rm37442
Alfredo Deza [Thu, 3 Jan 2019 18:44:06 +0000 (13:44 -0500)]
Merge pull request #25674 from alfredodeza/wip-rm37442

ceph-volume normalize comma to dot for string to int conversions

Reviewed-by: Andrew Schoen <aschoen@redhat.com>
6 years agoMerge PR #24635 into master
Patrick Donnelly [Thu, 3 Jan 2019 18:15:31 +0000 (10:15 -0800)]
Merge PR #24635 into master

* refs/pull/24635/head:
test: add scrub control command tests
mds: scrub abort/pause/resume/status control commands
test: switch using "scrub start" tell interface to initiate scrub
mds: introduce "scrub start" tell interface to initiate scrub
mds: dump scrub formatted output when context completion
mds: generate random scrub tag when empty
mds: introduce C_ExecAndReply context completion class
mds: use CInode::scrub_is_in_progress() wherever required

Reviewed-by: Patrick Donnelly <pdonnell@redhat.com>
Reviewed-by: Zheng Yan <zyan@redhat.com>
6 years agomsg/msg_types: encode entity_addr_t TYPE_ANY as TYPE_LEGACY for pre-nautilus
Sage Weil [Wed, 2 Jan 2019 23:07:45 +0000 (17:07 -0600)]
msg/msg_types: encode entity_addr_t TYPE_ANY as TYPE_LEGACY for pre-nautilus

This is primarily for OSDMap's blacklist, which, starting with nautilus,
is populated by ANY addrs instead of LEGACY addrs.

Signed-off-by: Sage Weil <sage@redhat.com>
6 years agoclient: make blacklist detection handle TYPE_ANY entries
Sage Weil [Wed, 2 Jan 2019 17:55:19 +0000 (11:55 -0600)]
client: make blacklist detection handle TYPE_ANY entries

Signed-off-by: Sage Weil <sage@redhat.com>
6 years agomon/OSDMonitor: maintain compat output for 'blacklist ls'
Sage Weil [Tue, 1 Jan 2019 20:10:35 +0000 (14:10 -0600)]
mon/OSDMonitor: maintain compat output for 'blacklist ls'

Signed-off-by: Sage Weil <sage@redhat.com>
6 years agoclient: maintain compat for {inst,addr}_str in status dump
Sage Weil [Tue, 1 Jan 2019 20:08:59 +0000 (14:08 -0600)]
client: maintain compat for {inst,addr}_str in status dump

Add 'addr' field too.

Signed-off-by: Sage Weil <sage@redhat.com>
6 years agoqa/tasks/ceph_manager: compare osd flush seq #'s as ints
Sage Weil [Tue, 1 Jan 2019 15:03:24 +0000 (09:03 -0600)]
qa/tasks/ceph_manager: compare osd flush seq #'s as ints

Signed-off-by: Sage Weil <sage@redhat.com>
6 years agoqa/suites/fs: make use of simple.yaml where appropriate
Sage Weil [Mon, 31 Dec 2018 21:45:01 +0000 (15:45 -0600)]
qa/suites/fs: make use of simple.yaml where appropriate

There's more needed than just ms_type=simple now.

Signed-off-by: Sage Weil <sage@redhat.com>
6 years agoqa/msgr: move msgr factet into generic re-usable dir
Sage Weil [Mon, 31 Dec 2018 21:39:15 +0000 (15:39 -0600)]
qa/msgr: move msgr factet into generic re-usable dir

Signed-off-by: Sage Weil <sage@redhat.com>
6 years agocrimson: fix monmap build for seastar
Sage Weil [Fri, 21 Dec 2018 21:55:56 +0000 (15:55 -0600)]
crimson: fix monmap build for seastar

Signed-off-by: Sage Weil <sage@redhat.com>
6 years agodoc/start/ceph.conf: trim the sample ceph.conf file
Sage Weil [Sat, 22 Dec 2018 00:29:40 +0000 (18:29 -0600)]
doc/start/ceph.conf: trim the sample ceph.conf file

Signed-off-by: Sage Weil <sage@redhat.com>
6 years agodoc/rados/operations: only describe --public-{addr,network} method for adding mons
Sage Weil [Sat, 22 Dec 2018 00:28:15 +0000 (18:28 -0600)]
doc/rados/operations: only describe --public-{addr,network} method for adding mons

Signed-off-by: Sage Weil <sage@redhat.com>
6 years agoPendingReleaseNotes: deprecate 'mon addr'
Sage Weil [Sat, 22 Dec 2018 00:27:37 +0000 (18:27 -0600)]
PendingReleaseNotes: deprecate 'mon addr'

Signed-off-by: Sage Weil <sage@redhat.com>
6 years agodoc: fix some 'mon addr' references
Sage Weil [Sat, 22 Dec 2018 00:25:55 +0000 (18:25 -0600)]
doc: fix some 'mon addr' references

Signed-off-by: Sage Weil <sage@redhat.com>
6 years agodoc/rados/configuration: fix some 'mon addr' references
Sage Weil [Sat, 22 Dec 2018 00:25:12 +0000 (18:25 -0600)]
doc/rados/configuration: fix some 'mon addr' references

Signed-off-by: Sage Weil <sage@redhat.com>