]> git.apps.os.sepia.ceph.com Git - ceph.git/log
ceph.git
6 years agomon/OSDMonitor: record purged_snaps for each epoch
Sage Weil [Fri, 7 Jun 2019 20:03:28 +0000 (15:03 -0500)]
mon/OSDMonitor: record purged_snaps for each epoch

Only do this if the mons are all running octopus (and thus there is also
a record for all the pre-octopus purged snaps).

Signed-off-by: Sage Weil <sage@redhat.com>
6 years agomon/OSDMonitor: make_snap_epoch_key -> make_removed_snap_epoch_key
Sage Weil [Fri, 7 Jun 2019 19:51:01 +0000 (14:51 -0500)]
mon/OSDMonitor: make_snap_epoch_key -> make_removed_snap_epoch_key

Signed-off-by: Sage Weil <sage@redhat.com>
6 years agoosd/osd_types: add purged_snaps_last to OSDSuperblock
Sage Weil [Fri, 7 Jun 2019 18:48:49 +0000 (13:48 -0500)]
osd/osd_types: add purged_snaps_last to OSDSuperblock

Make this 0 for old encodings or new superblocks.

Signed-off-by: Sage Weil <sage@redhat.com>
6 years agoosd/osd_types: clean up initial values for OSDSuperblock
Sage Weil [Fri, 7 Jun 2019 18:48:34 +0000 (13:48 -0500)]
osd/osd_types: clean up initial values for OSDSuperblock

Signed-off-by: Sage Weil <sage@redhat.com>
6 years agomon/OSDMonitor: make {removed,purged}_snap storage more efficient
Sage Weil [Fri, 7 Jun 2019 15:57:53 +0000 (10:57 -0500)]
mon/OSDMonitor: make {removed,purged}_snap storage more efficient

Merge adjacent extents to keep the database smaller and lookups more
efficient.

Signed-off-by: Sage Weil <sage@redhat.com>
6 years agomon/OSDMonitor: move (removed, purged) snap update into a helper
Sage Weil [Fri, 7 Jun 2019 15:57:04 +0000 (10:57 -0500)]
mon/OSDMonitor: move (removed, purged) snap update into a helper

This is trivial at the moment, but we'll make it clever next.

Signed-off-by: Sage Weil <sage@redhat.com>
6 years agomon/OSDMonitor: generalize/refactor lookup_*_snap
Sage Weil [Fri, 7 Jun 2019 15:51:52 +0000 (10:51 -0500)]
mon/OSDMonitor: generalize/refactor lookup_*_snap

Signed-off-by: Sage Weil <sage@redhat.com>
6 years agomon/OSDMonitor: refactor snap key and value helpers
Sage Weil [Fri, 7 Jun 2019 15:48:24 +0000 (10:48 -0500)]
mon/OSDMonitor: refactor snap key and value helpers

Signed-off-by: Sage Weil <sage@redhat.com>
6 years agomon/OSDMonitor: make_snap_key -> make_removed_snap_key, make_purged_snap_key
Sage Weil [Fri, 7 Jun 2019 15:42:56 +0000 (10:42 -0500)]
mon/OSDMonitor: make_snap_key -> make_removed_snap_key, make_purged_snap_key

Signed-off-by: Sage Weil <sage@redhat.com>
6 years agomon/OSDMonitor: fix lookup_purged_snap implementation
Sage Weil [Fri, 7 Jun 2019 15:23:18 +0000 (10:23 -0500)]
mon/OSDMonitor: fix lookup_purged_snap implementation

- look at purged, not removed snap keys
- fix the key check to look at the *key name* prefix, not the overall
  prefix (the one implemented by the KeyValueDB interface).

Signed-off-by: Sage Weil <sage@redhat.com>
6 years agomon/OSDMonitor: lookup_pruned_snap -> lookup_purged_snap
Sage Weil [Fri, 7 Jun 2019 15:21:16 +0000 (10:21 -0500)]
mon/OSDMonitor: lookup_pruned_snap -> lookup_purged_snap

This confused me and sent me into the weeds.

Signed-off-by: Sage Weil <sage@redhat.com>
6 years agoosd: adjust snapmapper keys on first start as octopus
Sage Weil [Thu, 6 Jun 2019 19:37:07 +0000 (14:37 -0500)]
osd: adjust snapmapper keys on first start as octopus

Convert snapmapper keys to the new form the first time we start up running
octopus.

This is an incompat feature--once you start as octopus you can't go back.

Signed-off-by: Sage Weil <sage@redhat.com>
6 years agoosd/SnapMapper: include poolid in snap index
Sage Weil [Wed, 5 Jun 2019 21:53:25 +0000 (16:53 -0500)]
osd/SnapMapper: include poolid in snap index

We want to sort starting with (pool, snapid, ...) so that we align with
the structure of the purged_snaps.  Simply flattening all snaps across
pools is less than ideal because the purge records are intervals (with the
snap in the key the last snap for the interval); flattening means we'd have
to look at many records (across pools) to conclude anything.  Putting
these in the form we really want them simplifies things going forward.

Signed-off-by: Sage Weil <sage@redhat.com>
6 years agomon/OSDMonitor: document osd snap metadata format
Sage Weil [Wed, 5 Jun 2019 21:50:53 +0000 (16:50 -0500)]
mon/OSDMonitor: document osd snap metadata format

Signed-off-by: Sage Weil <sage@redhat.com>
6 years agoosd/SnapMapper: document stored keys and values
Sage Weil [Tue, 4 Jun 2019 19:23:16 +0000 (14:23 -0500)]
osd/SnapMapper: document stored keys and values

Signed-off-by: Sage Weil <sage@redhat.com>
6 years agomon/OSDMonitor: use structured binding for prepare_remove_snaps
Sage Weil [Fri, 31 May 2019 21:34:02 +0000 (16:34 -0500)]
mon/OSDMonitor: use structured binding for prepare_remove_snaps

No functional change

Signed-off-by: Sage Weil <sage@redhat.com>
6 years agomon/OSDMonitor: send MRemoveSnaps back to octopus MDS
Sage Weil [Fri, 31 May 2019 21:33:22 +0000 (16:33 -0500)]
mon/OSDMonitor: send MRemoveSnaps back to octopus MDS

The octopus MDS wants an explicit ack when snaps are removed.

Signed-off-by: Sage Weil <sage@redhat.com>
6 years agomds/SnapServer: handle MRemoveSnaps acks from mon
Sage Weil [Fri, 31 May 2019 21:32:44 +0000 (16:32 -0500)]
mds/SnapServer: handle MRemoveSnaps acks from mon

Signed-off-by: Sage Weil <sage@redhat.com>
6 years agoCMakeLists: include 'cephfs' (which includes libcephfs) in 'vstart' target
Sage Weil [Fri, 31 May 2019 18:04:56 +0000 (13:04 -0500)]
CMakeLists: include 'cephfs' (which includes libcephfs) in 'vstart' target

This ensures 'make vstart' will build libcephfs, which lets the mgr volumes
module start, such that we can successfully vstart.

Signed-off-by: Sage Weil <sage@redhat.com>
6 years agomon/PaxosService: add C_ReplyOp
Sage Weil [Fri, 31 May 2019 14:37:35 +0000 (09:37 -0500)]
mon/PaxosService: add C_ReplyOp

Generic helper context to reply to an op on (successful) finish.

Signed-off-by: Sage Weil <sage@redhat.com>
6 years agovnewosd.sh: add script to add a new osd to an existing vstart
Sage Weil [Mon, 10 Jun 2019 15:09:58 +0000 (10:09 -0500)]
vnewosd.sh: add script to add a new osd to an existing vstart

Signed-off-by: Sage Weil <sage@redhat.com>
6 years agovstart.sh: remove useless auth add for osds
Sage Weil [Mon, 10 Jun 2019 15:09:46 +0000 (10:09 -0500)]
vstart.sh: remove useless auth add for osds

'osd new' installs the key.

Signed-off-by: Sage Weil <sage@redhat.com>
6 years agovstart.sh: wait for mgr volume module to start up
Sage Weil [Fri, 31 May 2019 18:04:32 +0000 (13:04 -0500)]
vstart.sh: wait for mgr volume module to start up

Signed-off-by: Sage Weil <sage@redhat.com>
6 years agomon/OSDMonitor: make snap removal handle dups safely
Sage Weil [Mon, 17 Jun 2019 23:11:50 +0000 (18:11 -0500)]
mon/OSDMonitor: make snap removal handle dups safely

Signed-off-by: Sage Weil <sage@redhat.com>
6 years agomon/OSDMonitor: only update removed_snaps when pre-octopus
Sage Weil [Mon, 17 Jun 2019 14:53:02 +0000 (09:53 -0500)]
mon/OSDMonitor: only update removed_snaps when pre-octopus

Signed-off-by: Sage Weil <sage@redhat.com>
6 years agoceph_test_rados: stop doing long object names
Sage Weil [Fri, 14 Jun 2019 16:22:54 +0000 (11:22 -0500)]
ceph_test_rados: stop doing long object names

This was there to test filestore's long file name handling, which (1)
works, and (2) we don't care that much about anymore.  Meanwhile, the
long names make the OSD log files *really* painful to read.

Signed-off-by: Sage Weil <sage@redhat.com>
6 years agoceph_test_rados_api_tier_pp: fix osd version checks
Sage Weil [Wed, 12 Jun 2019 16:07:48 +0000 (11:07 -0500)]
ceph_test_rados_api_tier_pp: fix osd version checks

These need to exclude old releases but run the test for newer, unnamed
releases.

Signed-off-by: Sage Weil <sage@redhat.com>
6 years agoosd/PrimaryLogPG: use get_ssc_as_of for snapc for flushing clones
Sage Weil [Wed, 12 Jun 2019 15:37:51 +0000 (10:37 -0500)]
osd/PrimaryLogPG: use get_ssc_as_of for snapc for flushing clones

We will stop maintaining SnapSet::snaps shortly.  Instead, generate this
snapc using the existing SnapSet::get_ssc_as_of() method, which will now
derive the snap list from the clone_snaps member.

Signed-off-by: Sage Weil <sage@redhat.com>
6 years agoosd/PrimaryLogPG: only maintain SnapSet::snaps for pre-octopus compat
Sage Weil [Tue, 11 Jun 2019 21:38:12 +0000 (16:38 -0500)]
osd/PrimaryLogPG: only maintain SnapSet::snaps for pre-octopus compat

Once we have all octopus or newer OSDs, we can stop maintaining
SnapSet::snaps.

Signed-off-by: Sage Weil <sage@redhat.com>
6 years agomon/OSDMonitor: only maintain pg_pool_t::removed_snaps for pre-octopus
Sage Weil [Tue, 11 Jun 2019 22:45:17 +0000 (17:45 -0500)]
mon/OSDMonitor: only maintain pg_pool_t::removed_snaps for pre-octopus

- do not examine removed_snaps
- do not add new items to removed_snaps unless we need pre-octopus compat
- clear removed_snaps in first octopus epoch

Signed-off-by: Sage Weil <sage@redhat.com>
6 years agoosd/osd_types: mark SnapSet::snaps as legacy
Sage Weil [Tue, 11 Jun 2019 21:41:45 +0000 (16:41 -0500)]
osd/osd_types: mark SnapSet::snaps as legacy

Signed-off-by: Sage Weil <sage@redhat.com>
6 years agoosd/osd_types: SnapSet::get_ssc_as_of: use clone_snaps
Sage Weil [Tue, 11 Jun 2019 21:39:51 +0000 (16:39 -0500)]
osd/osd_types: SnapSet::get_ssc_as_of: use clone_snaps

Fabricate a SnapContext from the clone_snaps instead of snaps (which we
are trying to kill).

Signed-off-by: Sage Weil <sage@redhat.com>
6 years agoosd/PrimaryLogPG: change fabrication of promoted clone snaps
Sage Weil [Tue, 11 Jun 2019 21:33:19 +0000 (16:33 -0500)]
osd/PrimaryLogPG: change fabrication of promoted clone snaps

Instead of using SnapSet::snaps (which we are trying to kill), use the
clone_snaps[] snaps.

Signed-off-by: Sage Weil <sage@redhat.com>
6 years agoosd/PrimaryLogPG: only filter SnapSet::snaps for flush for pre-octopus compat
Sage Weil [Tue, 11 Jun 2019 18:54:45 +0000 (13:54 -0500)]
osd/PrimaryLogPG: only filter SnapSet::snaps for flush for pre-octopus compat

Signed-off-by: Sage Weil <sage@redhat.com>
6 years agoosd/PrimaryLogPG: trim_objects: only filter SnapSet::snaps for pre-octopus
Sage Weil [Tue, 11 Jun 2019 18:52:32 +0000 (13:52 -0500)]
osd/PrimaryLogPG: trim_objects: only filter SnapSet::snaps for pre-octopus

For octopus and later, we don't need SnapSet::snaps.

Signed-off-by: Sage Weil <sage@redhat.com>
6 years agoosd/PrimaryLogPG: make best effort to sanitize clones on copy-from
Sage Weil [Tue, 11 Jun 2019 14:33:51 +0000 (09:33 -0500)]
osd/PrimaryLogPG: make best effort to sanitize clones on copy-from

Signed-off-by: Sage Weil <sage@redhat.com>
6 years agomds/SnapServer: int -> int32_t for encoded type
Sage Weil [Fri, 31 May 2019 14:09:09 +0000 (09:09 -0500)]
mds/SnapServer: int -> int32_t for encoded type

Signed-off-by: Sage Weil <sage@redhat.com>
6 years agomessages/MRemoveSnaps: int -> int32_t on encoded type
Sage Weil [Fri, 31 May 2019 13:56:37 +0000 (08:56 -0500)]
messages/MRemoveSnaps: int -> int32_t on encoded type

Signed-off-by: Sage Weil <sage@redhat.com>
6 years agoosd/PrimaryLogPG: find_object_context: trust SnapSet's clone_snaps
Sage Weil [Thu, 30 May 2019 17:17:50 +0000 (12:17 -0500)]
osd/PrimaryLogPG: find_object_context: trust SnapSet's clone_snaps

Instead of checking the OSDMap pg_pool_t whether a snap exists, instead

1- Look at the clone_snaps more carefully.  If the snap didn't exist when
the clone was last touched (created or partially-trimmed) then it still
doesn't exist now (snaps aren't resurrected).

2- Check in the OSDMap's removed snaps queue.  This will catch anything
that is still being removed but hasn't been reflected by the clone_snaps
yet.

Signed-off-by: Sage Weil <sage@redhat.com>
6 years agoosd/PrimaryLogPG: use osdmap removed_snaps_queue for snap trimming
Sage Weil [Thu, 30 May 2019 15:06:06 +0000 (10:06 -0500)]
osd/PrimaryLogPG: use osdmap removed_snaps_queue for snap trimming

No need to use the pg_pool_t member now--the osdmap has a queue
specifically for the snaps we are in the process of trimming.

Signed-off-by: Sage Weil <sage@redhat.com>
6 years agomon/OSDMonitor: avoid is_removed_snap()
Sage Weil [Thu, 30 May 2019 14:49:06 +0000 (09:49 -0500)]
mon/OSDMonitor: avoid is_removed_snap()

Instead, consult the OSDMap's removed_snap_queue and the mon's record of
purged snaps.

Signed-off-by: Sage Weil <sage@redhat.com>
6 years agoosd/PeeringState: drop some mimic conditionals
Sage Weil [Tue, 4 Jun 2019 19:27:27 +0000 (14:27 -0500)]
osd/PeeringState: drop some mimic conditionals

Signed-off-by: Sage Weil <sage@redhat.com>
6 years agoosd/PG: drop pre-mimic snap_trimq code
Sage Weil [Tue, 4 Jun 2019 19:26:45 +0000 (14:26 -0500)]
osd/PG: drop pre-mimic snap_trimq code

This is no longer needed for octopus.

Signed-off-by: Sage Weil <sage@redhat.com>
6 years agoosd/PeeringState: removed pre-mimic removed snap tracking
Sage Weil [Thu, 30 May 2019 15:02:19 +0000 (10:02 -0500)]
osd/PeeringState: removed pre-mimic removed snap tracking

Signed-off-by: Sage Weil <sage@redhat.com>
6 years agoosd: move snap_interval_set_t to osd_types
Sage Weil [Tue, 11 Jun 2019 18:14:07 +0000 (13:14 -0500)]
osd: move snap_interval_set_t to osd_types

Signed-off-by: Sage Weil <sage@redhat.com>
6 years agomon: drop mon_debug_no_require_mimic
Sage Weil [Thu, 30 May 2019 14:16:06 +0000 (09:16 -0500)]
mon: drop mon_debug_no_require_mimic

Signed-off-by: Sage Weil <sage@redhat.com>
6 years agomon/OSDMonitor: remove pre-mimic snap behavior support
Sage Weil [Thu, 30 May 2019 14:15:14 +0000 (09:15 -0500)]
mon/OSDMonitor: remove pre-mimic snap behavior support

Signed-off-by: Sage Weil <sage@redhat.com>
6 years agomon/OSDMonitor: remove support for pre-mimic conversion
Sage Weil [Thu, 30 May 2019 14:14:28 +0000 (09:14 -0500)]
mon/OSDMonitor: remove support for pre-mimic conversion

Cluster must already be mimic to run octopus.

Signed-off-by: Sage Weil <sage@redhat.com>
6 years agoosd/osd_types: remove build_removed_snaps(), maybe_update_removed_snaps()
Sage Weil [Tue, 28 May 2019 20:03:27 +0000 (15:03 -0500)]
osd/osd_types: remove build_removed_snaps(), maybe_update_removed_snaps()

Signed-off-by: Sage Weil <sage@redhat.com>
6 years agoosd: remove luminous compat code for removed_snaps
Sage Weil [Tue, 28 May 2019 20:02:41 +0000 (15:02 -0500)]
osd: remove luminous compat code for removed_snaps

This is no longer necessary with peers >= mimic.

Signed-off-by: Sage Weil <sage@redhat.com>
6 years agoMerge pull request #28752 from xiexingguo/wip-reset-hb-session
Kefu Chai [Tue, 2 Jul 2019 09:54:42 +0000 (17:54 +0800)]
Merge pull request #28752 from xiexingguo/wip-reset-hb-session

osd/OSD: auto mark heartbeat sessions as stale and tear them down

Reviewed-by: yanjun <yan.jun8@zte.com.cn>
Reviewed-by: Sage Weil <sage@redhat.com>
Reviewed-by: Kefu Chai <kchai@redhat.com>
6 years agoMerge pull request #28731 from tchaikov/wip-40533
Kefu Chai [Tue, 2 Jul 2019 09:45:06 +0000 (17:45 +0800)]
Merge pull request #28731 from tchaikov/wip-40533

qa/tasks/ceph_manager.py: ignore errors in test_pool_min_size

Reviewed-by: Greg Farnum <gfarnum@redhat.com>
Reviewed-by: Neha Ojha <nojha@redhat.com>
6 years agoMerge pull request #28744 from tchaikov/wip-monitor-cleanup
Kefu Chai [Tue, 2 Jul 2019 09:38:35 +0000 (17:38 +0800)]
Merge pull request #28744 from tchaikov/wip-monitor-cleanup

mon/Monitor: no need to create a local variable for capturing it

Reviewed-by: xie xingguo <xie.xingguo@zte.com.cn>
Reviewed-by: Patrick Donnelly <pdonnell@redhat.com>
6 years agoMerge pull request #28581 from Aran85/fix-mtime
Kefu Chai [Tue, 2 Jul 2019 09:37:27 +0000 (17:37 +0800)]
Merge pull request #28581 from Aran85/fix-mtime

osd: copyfrom omitted to set mtime

Reviewed-by: Greg Farnum <gfarnum@redhat.com>
6 years agomgr/dashboard: Separate file for icons for refering and reusing (#27376)
Volker Theile [Tue, 2 Jul 2019 08:50:09 +0000 (10:50 +0200)]
mgr/dashboard: Separate file for icons for refering and reusing (#27376)

mgr/dashboard: Separate file for icons for refering and reusing

Reviewed-by: Tiago Melo <tmelo@suse.com>
Reviewed-by: Volker Theile <vtheile@suse.com>
Reviewed-by: Alfonso Martínez <almartin@redhat.com>
6 years agoMerge pull request #28827 from Rjerk/fix-mgr-ansible-doc
Kefu Chai [Tue, 2 Jul 2019 08:31:38 +0000 (16:31 +0800)]
Merge pull request #28827 from Rjerk/fix-mgr-ansible-doc

doc/mgr/ansible.rst: fix typo

Reviewed-by: Juan Miguel Olmo Martínez <jolmomar@redhat.com>
Reviewed-by: Kefu Chai <kchai@redhat.com>
6 years agoMerge pull request #28798 from tchaikov/wip-crimson-net
Kefu Chai [Tue, 2 Jul 2019 07:41:09 +0000 (15:41 +0800)]
Merge pull request #28798 from tchaikov/wip-crimson-net

crimson/net: print tx/rx messages using logger().info()

Reviewed-by: Samuel Just <sjust@redhat.com>
Reviewed-by: Yingxin Cheng <yingxincheng@gmail.com>
6 years agodoc/mgr/ansible.rst: fix typo 28827/head
Lan Liu [Tue, 2 Jul 2019 02:45:43 +0000 (10:45 +0800)]
doc/mgr/ansible.rst: fix typo

Signed-off-by: Lan Liu <liulan@umcloud.com>
6 years agoMerge pull request #28828 from iotcg/crimson
Kefu Chai [Tue, 2 Jul 2019 04:49:13 +0000 (12:49 +0800)]
Merge pull request #28828 from iotcg/crimson

crimson/common: remove unused file .#log.cc

Reviewed-by: Kefu Chai <kchai@redhat.com>
6 years agoMerge pull request #28818 from tchaikov/wip-ceph-conf-cli-test
Kefu Chai [Tue, 2 Jul 2019 04:46:41 +0000 (12:46 +0800)]
Merge pull request #28818 from tchaikov/wip-ceph-conf-cli-test

test/cli/ceph-conf: fix test

Reviewed-by: Brad Hubbard <bhubbard@redhat.com>
Reviewed-by: Neha Ojha <nojha@redhat.com>
6 years agoMerge pull request #28805 from Rjerk/fix-doc
Xie Xingguo [Tue, 2 Jul 2019 03:55:55 +0000 (11:55 +0800)]
Merge pull request #28805 from Rjerk/fix-doc

doc/rados/configuration: fix typos in osd-config-ref.rst

Reviewed-by: Kefu Chai <kchai@redhat.com>
6 years agocrimson/common: remove unused file .#log.cc 28828/head
Changcheng Liu [Tue, 2 Jul 2019 03:31:45 +0000 (11:31 +0800)]
crimson/common: remove unused file .#log.cc

Signed-off-by: Changcheng Liu <changcheng.liu@aliyun.com>
6 years agocrimson/net: print tx/rx messages using logger().debug() 28798/head
Kefu Chai [Sun, 30 Jun 2019 08:50:18 +0000 (16:50 +0800)]
crimson/net: print tx/rx messages using logger().debug()

so we can find them with less efforts.

Signed-off-by: Kefu Chai <kchai@redhat.com>
6 years agocrimson/net: print trivial logging using "trace"
Kefu Chai [Tue, 2 Jul 2019 03:04:48 +0000 (11:04 +0800)]
crimson/net: print trivial logging using "trace"

Signed-off-by: Kefu Chai <kchai@redhat.com>
6 years agocrimson/net: note down server's peer_id as client
Kefu Chai [Sun, 30 Jun 2019 10:58:55 +0000 (18:58 +0800)]
crimson/net: note down server's peer_id as client

the peer_id is not used at this moment. this change is made just for
the sake of completeness.

Signed-off-by: Kefu Chai <kchai@redhat.com>
6 years agocrimson/net: use Connection::peer_is_mon()
Kefu Chai [Sun, 30 Jun 2019 10:04:28 +0000 (18:04 +0800)]
crimson/net: use Connection::peer_is_mon()

always prefer using interface over its implementation

Signed-off-by: Kefu Chai <kchai@redhat.com>
6 years agocrimson: store ticket.peer_global_id in connection
Kefu Chai [Sun, 30 Jun 2019 10:01:13 +0000 (18:01 +0800)]
crimson: store ticket.peer_global_id in connection

peer_global_id is used by `ProtocolV2::_handle_auth_request()` when
encoding an `AuthDoneFrame`.

Signed-off-by: Kefu Chai <kchai@redhat.com>
6 years agodoc/rados/configuration: fix typos in osd-config-ref.rst 28805/head
Lan Liu [Mon, 1 Jul 2019 03:30:38 +0000 (11:30 +0800)]
doc/rados/configuration: fix typos in osd-config-ref.rst

Signed-off-by: Lan Liu <liulan@umcloud.com>
6 years agoMerge pull request #28795 from tchaikov/wip-cmake-rbd
Kefu Chai [Tue, 2 Jul 2019 02:04:07 +0000 (10:04 +0800)]
Merge pull request #28795 from tchaikov/wip-cmake-rbd

CMakeLists.txt: fix typo in error message

Reviewed-by: Jason Dillaman <dillaman@redhat.com>
Reviewed-by: Milind Changire <mchangir@redhat.com>
Reviewed-by: Patrick Donnelly <pdonnell@redhat.com>
6 years agoMerge pull request #28750 from neha-ojha/wip-40488
Kefu Chai [Tue, 2 Jul 2019 02:00:03 +0000 (10:00 +0800)]
Merge pull request #28750 from neha-ojha/wip-40488

doc/rados/operations/erasure-code.rst: allow recovery below min_size

Reviewed-by: xie xingguo <xie.xingguo@zte.com.cn>
Reviewed-by: Kefu Chai <kchai@redhat.com>
6 years agoMerge PR #27073 into master
Patrick Donnelly [Mon, 1 Jul 2019 22:31:55 +0000 (15:31 -0700)]
Merge PR #27073 into master

* refs/pull/27073/head:
qa/tasks: Check MDS failover during mon_thrash
qa/tasks: Compare two FSStatuses
qa/suites/fs: renamed default.yaml to mds.yaml
qa/suites/fs: mon_thrash test for fs
qa/tasks: Fix typo in the comment

Reviewed-by: Patrick Donnelly <pdonnell@redhat.com>
6 years agoMerge PR #28459 into master
Patrick Donnelly [Mon, 1 Jul 2019 22:28:30 +0000 (15:28 -0700)]
Merge PR #28459 into master

* refs/pull/28459/head:
mds: wake up lock waiters after forcibly changing lock state

Reviewed-by: Patrick Donnelly <pdonnell@redhat.com>
6 years agoMerge PR #28642 into master
Patrick Donnelly [Mon, 1 Jul 2019 21:56:54 +0000 (14:56 -0700)]
Merge PR #28642 into master

* refs/pull/28642/head:
mds: check last laggy before marking unresponsive client stale
mds: remove the code that skip evicting the only client

Reviewed-by: Patrick Donnelly <pdonnell@redhat.com>
6 years agoMerge pull request #28632 from linuxbox2/wip-rgwfile-advexp
Matt Benjamin [Mon, 1 Jul 2019 18:15:28 +0000 (14:15 -0400)]
Merge pull request #28632 from linuxbox2/wip-rgwfile-advexp

rgw_file: advance_mtime() should consider namespace expiration

6 years agoMerge pull request #27794 from cbodley/wip-39487
Casey Bodley [Mon, 1 Jul 2019 13:59:02 +0000 (09:59 -0400)]
Merge pull request #27794 from cbodley/wip-39487

rgw: data/bilogs are trimmed when no peers are reading them

Reviewed-by: J. Eric Ivancich <ivancich@redhat.com>
6 years agoMerge pull request #28743 from dillaman/wip-40417
Mykola Golub [Mon, 1 Jul 2019 13:47:57 +0000 (16:47 +0300)]
Merge pull request #28743 from dillaman/wip-40417

librbd: prevent concurrent AIO callbacks to external clients

Reviewed-by: Mykola Golub <mgolub@suse.com>
6 years agotest/cli/ceph-conf: fix test 28818/head
Kefu Chai [Mon, 1 Jul 2019 12:39:03 +0000 (20:39 +0800)]
test/cli/ceph-conf: fix test

turns out the libstdc++ on fc30 does not include error_code.message() in
filesystem_error.what(). let's make it optional

Signed-off-by: Kefu Chai <kchai@redhat.com>
6 years agoMerge pull request #28800 from tchaikov/wip-crimson-mkfs
Kefu Chai [Mon, 1 Jul 2019 02:04:12 +0000 (10:04 +0800)]
Merge pull request #28800 from tchaikov/wip-crimson-mkfs

crimson: use given osd_fsid when mkfs

Reviewed-by: Radoslaw Zarzynski <rzarzyns@redhat.com>
6 years agoMerge pull request #28774 from falcon78921/wip-doc-40575
Kefu Chai [Mon, 1 Jul 2019 01:41:52 +0000 (09:41 +0800)]
Merge pull request #28774 from falcon78921/wip-doc-40575

doc: fixed broken link in Swift Settings section

Reviewed-by: Kefu Chai <kchai@redhat.com>
6 years agodoc: fixed broken link in Swift Settings section 28774/head
James McClune [Thu, 27 Jun 2019 21:16:46 +0000 (17:16 -0400)]
doc: fixed broken link in Swift Settings section

Fixes: https://tracker.ceph.com/issues/40575
Signed-off-by: James McClune <jmcclune@mcclunetechnologies.net>
6 years agoMerge pull request #28786 from tchaikov/wip-const-head
Kefu Chai [Sun, 30 Jun 2019 15:44:51 +0000 (23:44 +0800)]
Merge pull request #28786 from tchaikov/wip-const-head

osd/PrimaryLogPG: more constness

Reviewed-by: xie xingguo <xie.xingguo@zte.com.cn>
6 years agocrimson: use given osd_fsid when mkfs 28800/head
Kefu Chai [Sun, 30 Jun 2019 15:34:53 +0000 (23:34 +0800)]
crimson: use given osd_fsid when mkfs

MemStore does not have this feature, but CyanStore needs it. because
`qa/tasks/ceph.py` uses following steps when creating/starting an OSD

1. ceph-osd --mkfs --mkkey -i <osd_id> --monmap <monmap>
2. read the osd_fsid of osd.<osd_id>
3. ceph osd new <osd_fsid> <osd_id>

when we mkfs for the OSD, the osd_fsid is still unknown. so we cannot
use the configured one, as it is always empty. in that case, we need to
use a random uuid, and persist it to both ${osd_data}/fsid and
superblock.osd_fsid

Signed-off-by: Kefu Chai <kchai@redhat.com>
6 years agoMerge pull request #28719 from majianpeng/remove-unused-code-XioMessenger
Kefu Chai [Sun, 30 Jun 2019 07:55:08 +0000 (15:55 +0800)]
Merge pull request #28719 from majianpeng/remove-unused-code-XioMessenger

msg/Message: Remove used code about XioMessenger.

Reviewed-by: Kefu Chai <kchai@redhat.com>
6 years agoMerge pull request #28794 from tchaikov/wip-crimson-option-help-seastar
Kefu Chai [Sun, 30 Jun 2019 07:52:32 +0000 (15:52 +0800)]
Merge pull request #28794 from tchaikov/wip-crimson-option-help-seastar

crimson/osd: add "--help-seastar" command line option

Reviewed-by: Radoslaw Zarzynski <rzarzyns@redhat.com>
6 years agoCMakeLists.txt: s/Remote block storage/RADOS Block Device/ 28795/head
Kefu Chai [Sat, 29 Jun 2019 15:47:42 +0000 (23:47 +0800)]
CMakeLists.txt: s/Remote block storage/RADOS Block Device/

RBD is short for RADOS Block Device, not Remote Block Storage.

Signed-off-by: Kefu Chai <kchai@redhat.com>
6 years agoCMakeLists.txt: fix typo in error message
Kefu Chai [Sat, 29 Jun 2019 15:35:46 +0000 (23:35 +0800)]
CMakeLists.txt: fix typo in error message

krbd depends on rbd, so we cannot build krbd without rbd.

Signed-off-by: Kefu Chai <kchai@redhat.com>
6 years agodoc/dev/crimson.rst: update with stuff related to seastar options 28794/head
Kefu Chai [Sat, 29 Jun 2019 15:15:34 +0000 (23:15 +0800)]
doc/dev/crimson.rst: update with stuff related to seastar options

Signed-off-by: Kefu Chai <kchai@redhat.com>
6 years agoMerge pull request #28792 from tchaikov/wip-crimson-logging
Kefu Chai [Sat, 29 Jun 2019 15:02:39 +0000 (23:02 +0800)]
Merge pull request #28792 from tchaikov/wip-crimson-logging

common/config_values: set seastar logging level per that of ceph

Reviewed-by: Radoslaw Zarzynski <rzarzyns@redhat.com>
6 years agoMerge pull request #28790 from tchaikov/wip-crimson-unknown-objectstore
Kefu Chai [Sat, 29 Jun 2019 14:54:15 +0000 (22:54 +0800)]
Merge pull request #28790 from tchaikov/wip-crimson-unknown-objectstore

crimson/osd: abort on unsupported objectstore type

Reviewed-by: Radoslaw Zarzynski <rzarzyns@redhat.com>
6 years agocrimson/osd: add "--help-seastar" command line option
Kefu Chai [Sat, 29 Jun 2019 14:37:02 +0000 (22:37 +0800)]
crimson/osd: add "--help-seastar" command line option

so we can

* have access to the available command line options offered by Seastar.
* tell if the executable we are playing around is ceph-osd or crimson-osd.

Signed-off-by: Kefu Chai <kchai@redhat.com>
6 years agodoc/dev/crimson.rst: update logging related doc 28792/head
Kefu Chai [Sat, 29 Jun 2019 13:40:58 +0000 (21:40 +0800)]
doc/dev/crimson.rst: update logging related doc

as crimson's logging levels are now connected those of ceph, there is no
need to note down the difference between them anymore.

Signed-off-by: Kefu Chai <kchai@redhat.com>
6 years agocommon/config_values: set seastar logging level as well
Kefu Chai [Sat, 29 Jun 2019 13:35:31 +0000 (21:35 +0800)]
common/config_values: set seastar logging level as well

when the logging level of a subsys changes, update seastar accordingly

before this change, seastar logging levels of different logger are not
connected to ceph's logging levels of different subsystem.

after this change, they are connected. whenever a subsys's logging level
changes, the corresponding seastar logger is updated as well.

Signed-off-by: Kefu Chai <kchai@redhat.com>
6 years agocommon/dout.h: extract log level mapping out
Kefu Chai [Sat, 29 Jun 2019 13:34:39 +0000 (21:34 +0800)]
common/dout.h: extract log level mapping out

so we can reuse it.

Signed-off-by: Kefu Chai <kchai@redhat.com>
6 years agocrimson/osd: revert 9813f7d6
Kefu Chai [Sat, 29 Jun 2019 12:25:16 +0000 (20:25 +0800)]
crimson/osd: revert 9813f7d6

since we have a proper PeeringState implementation, there is no need to
fake an active+clean PG anymore.

Signed-off-by: Kefu Chai <kchai@redhat.com>
6 years agocrimson/osd: abort on unsupported objectstore type 28790/head
Kefu Chai [Sat, 29 Jun 2019 11:52:45 +0000 (19:52 +0800)]
crimson/osd: abort on unsupported objectstore type

Signed-off-by: Kefu Chai <kchai@redhat.com>
6 years agocrimson/osd: add editor variables/options
Kefu Chai [Sat, 29 Jun 2019 11:52:16 +0000 (19:52 +0800)]
crimson/osd: add editor variables/options

Signed-off-by: Kefu Chai <kchai@redhat.com>
6 years agocrimson/common: implement "__ceph_abortf()"
Kefu Chai [Sat, 29 Jun 2019 11:50:18 +0000 (19:50 +0800)]
crimson/common: implement "__ceph_abortf()"

the macro of `ceph_abort_msgf()` is implemented using it.

Signed-off-by: Kefu Chai <kchai@redhat.com>
6 years agocrimson/osd: add a space before function name
Kefu Chai [Sat, 29 Jun 2019 07:08:26 +0000 (15:08 +0800)]
crimson/osd: add a space before function name

for better readability

Signed-off-by: Kefu Chai <kchai@redhat.com>
6 years agocrimson/osd: use get_osdmap_epoch()
Kefu Chai [Sat, 29 Jun 2019 07:06:25 +0000 (15:06 +0800)]
crimson/osd: use get_osdmap_epoch()

always prefer using the interface.

Signed-off-by: Kefu Chai <kchai@redhat.com>
6 years agoosd/PrimaryLogPG: more constness 28786/head
Kefu Chai [Sat, 29 Jun 2019 06:30:16 +0000 (14:30 +0800)]
osd/PrimaryLogPG: more constness

use `hobject_t::get_head()` instead of relying on the fact that head
object's snap is `CEPH_NOSNAP`.

Signed-off-by: Kefu Chai <kchai@redhat.com>