Commit Graph

93373 Commits

Author SHA1 Message Date
Kefu Chai
9a92825489
Merge pull request #25635 from rhcs-dashboard/36740-pool-stats-disabled-by-default
mgr/dashboard: pool stats not returned by default

Reviewed-by: Volker Theile <vtheile@suse.com>
2019-01-03 22:45:54 +08:00
Patrick Donnelly
38044113a1
Merge PR #25528 into master
* refs/pull/25528/head:
	mds: log evicted clients to clog/dbg

Reviewed-by: Zheng Yan <zyan@redhat.com>
2019-01-03 06:43:29 -08:00
Casey Bodley
782f25e00f
Merge pull request #24845 from pritha-srivastava/wip-rgw-assume-role-fixes
rgw: Minor fixes to AssumeRole for boto compliance.

Reviewed-by: Matt Benjamin <mbenjamin@redhat.com>
2019-01-03 09:24:58 -05:00
Casey Bodley
905f7103a3
Merge pull request #25180 from pritha-srivastava/wip-rgw-user-policy-fixes
rgw: Fixes to permission evaluation related to user policies.

Reviewed-by: Matt Benjamin <mbenjamin@redhat.com>
Reviewed-by: Adam C. Emerson <aemerson@redhat.com>
Reviewed-by: Casey Bodley <cbodley@redhat.com>
2019-01-03 09:22:36 -05:00
Kefu Chai
67e19d1215
Merge pull request #25659 from Linbing/wip-fixup-read-deadlock
os/bluestore: fixup access a destroy cond cause deadlock or undefine behavior

Reviewed-by: Sage Weil <sage@redhat.com>
2019-01-03 22:06:27 +08:00
Sage Weil
50687a2971 Merge PR #25673 into master
* refs/pull/25673/head:
	mon/Monitor: quorum_age in JSON output as int, not string

Reviewed-by: Kefu Chai <kchai@redhat.com>
2019-01-03 07:23:57 -06:00
Kefu Chai
d78850bb56
Merge pull request #25580 from cyx1231st/wip-crimson-msgr-logging
crimson/net: fix addresses during banner exchange

Reviewed-by: Kefu Chai <kchai@redhat.com>
2019-01-03 17:09:09 +08:00
Yingxin
a7796ae723 crimson/net: fix address learning during banner exchange
* Don't store my_addr in `Connection`, because my_addr can be learned
  and thus changed.
* Support nonce in SocketMessenger.
* Always set nonce when set_myaddr().
* Add learned_addr() for SocketMessenger.
* Add side_t and socket_port to show the real connecting
  ports of the SocketConnection.
* Fix bannder exchange logic for addresses, including nonce, type, ip,
  port, socket_port for my_addr and peer_addr.
* Add more detailed logging prefixes for SocketConnection.

Signed-off-by: Yingxin <yingxin.cheng@intel.com>
2019-01-03 15:50:31 +08:00
Yingxin
25ae94fda9 crimson/net: add logic_name to indicate the msgr role for debugging
Signed-off-by: Yingxin <yingxin.cheng@intel.com>
2019-01-03 15:46:32 +08:00
Yingxin
7a2f4bf925 crimson/net: add basic loggings for SocketConnection
Signed-off-by: Yingxin <yingxin.cheng@intel.com>
2019-01-03 15:41:44 +08:00
Kefu Chai
13c8041111
Merge pull request #25757 from gregsfortytwo/wip-doc-put-warning
doc: warn about how 'rados put' works in the manpage

Reviewed-by: Sage Weil <sage@redhat.com>
Reviewed-by: Kefu Chai <kchai@redhat.com>
2019-01-03 14:21:00 +08:00
Kefu Chai
3da70776d5
Merge pull request #25706 from joscollin/wip-build-doc-librados
librados: fix admin/build-doc warning

Reviewed-by: Kefu Chai <kchai@redhat.com>
2019-01-03 14:18:42 +08:00
Kefu Chai
4b392e1afe
Merge pull request #25734 from tchaikov/wip-mgr-default-options
mgr: define option defaults for MgrStandbyModule as well

Reviewed-by: Sage Weil <sage@redhat.com>
2019-01-03 14:12:54 +08:00
Kefu Chai
d1f15e5ee8
Merge pull request #25735 from wjwithagen/wjw-fix-WRITE_LIFE
os/bluestore: Only use WRITE_LIFE_ when available

Reviewed-by: Sage Weil <sage@redhat.com>
2019-01-03 14:12:02 +08:00
Kefu Chai
00865b89de
Merge pull request #25746 from tchaikov/wip-pg-autoscale-mode
osd/OSDMap: set pg_autoscale_mode with setting from conf

Reviewed-by: Sage Weil <sage@redhat.com>
2019-01-03 14:10:15 +08:00
Kefu Chai
705d29b422
Merge pull request #25588 from tchaikov/wip-auth-silence-gcc-warning
cls/rbd: init local var with known value

Reviewed-by: Jason Dillaman <dillaman@redhat.com>
Reviewed-By: Casey Bodley <cbodley@redhat.com>
2019-01-03 14:09:20 +08:00
Kefu Chai
75c2d63c31 cls/rbd: init local var with known value
DirectoryState does not have an "invalid" enum so far, since it's
defined using `enum class`, init a value of this type with a known value
could be a better choice even it is always initialized before being read.

this silences the GCC warning of:

src/cls/rbd/cls_rbd.cc:3147:3: warning: ‘on_disk_directory_state’ may be
used uninitialized in this function [-Wmaybe-uninitialized]
   if (directory_state != on_disk_directory_state) {
   ^~

Signed-off-by: Kefu Chai <kchai@redhat.com>
2019-01-03 10:19:02 +08:00
Kefu Chai
0e1cdcd949
Merge pull request #25687 from tchaikov/wip-pg-stats
osd/PrimaryLogPG: do not count failed read in delta_stats

Reviewed-by: Josh Durgin <jdurgin@redhat.com>
Reviewed-by: Neha Ojha <nojha@redhat.com>
2019-01-03 09:41:46 +08:00
Greg Farnum
71a8605762 doc: warn about how 'rados put' works in the manpage
Signed-off-by: Greg Farnum <gfarnum@redhat.com>
2019-01-02 15:00:25 -08:00
Gregory Farnum
8e3da9b2d8
Merge pull request #25705 from joscollin/wip-doc-common
doc: Fix Create a Cluster url in Running Multiple Clusters

Reviewed-by: Greg Farnum <gfarnum@redhat.com>
2019-01-02 14:21:28 -08:00
J. Eric Ivancich
090b52ec25
Merge pull request #25450 from ivancich/wip-rgw-category-cleanup
rgw: clean-up -- use enum class for stats category

Reviewed-by: Matt Benjamin <mbenjami@redhat.com>
2019-01-02 17:00:28 -05:00
J. Eric Ivancich
f600e08605 rgw: clean-up -- remove unnessary "struct"s
In C++ "struct" is unnecessary when referencing a defined
struct. Clean up all uses in src/cls/rgw source files.

Signed-off-by: J. Eric Ivancich <ivancich@redhat.com>
2019-01-02 15:45:19 -05:00
J. Eric Ivancich
c52636c84f rgw: clean-up use enum class for stats category
The stats entries for rgw buckets has a category, which used a
combination of uint8_t and enum RGWObjClass. Clean this up by
converting RGWObjClass to an enum class and using that
throughout. This provides type safety and better code clarity. Also,
add some source code documentation.

Signed-off-by: J. Eric Ivancich <ivancich@redhat.com>
2019-01-02 15:45:19 -05:00
Alfredo Deza
6c211d691e
Merge pull request #24676 from TheJJ/cryptsetup-allow-discards
ceph-volume: enable device discards

Reviewed-by: Alfredo Deza <adeza@redhat.com>
Reviewed-by: Sage Weil <sage@redhat.com>
2019-01-02 13:23:21 -05:00
Kefu Chai
7fc7a7d167 osd/OSDMap: set pg_autoscale_mode with setting from conf
* update build_simple_optioned() to set pg_autoscale_mode with the setting
  read from conf, otherwise it will be a random value in heap.
* update cli test accordingly, otherwise we will have

/home/jenkins-build/build/workspace/ceph-pull-requests/src/test/cli/osdmaptool/create-racks.t:
failed
---
/home/jenkins-build/build/workspace/ceph-pull-requests/src/test/cli/osdmaptool/create-racks.t
+++
/home/jenkins-build/build/workspace/ceph-pull-requests/src/test/cli/osdmaptool/create-racks.t.err
@@ -796,7 +796,7 @@
   nearfull_ratio 0
   min_compat_client jewel

-  pool 1 'rbd' replicated size 3 min_size 2 crush_rule 0 object_hash
rjenkins pg_num 15296 pgp_num 15296 last_change 0 flags hashpspool
stripe_width 0 application rbd
+  pool 1 'rbd' replicated size 3 min_size 2 crush_rule 0 object_hash
rjenkins pg_num 15296 pgp_num 15296 autoscale_mode ??? last_change 0
flags hashpspool stripe_width 0 application rbd

Signed-off-by: Kefu Chai <kchai@redhat.com>
2019-01-03 01:40:28 +08:00
Kefu Chai
2538c2e18c
Merge pull request #25441 from theanalyst/decode-refcount-types
cls: refcount: add obj_refcount to ceph-dencoder

Reviewed-By: Casey Bodley <cbodley@redhat.com>
2019-01-03 00:45:50 +08:00
Jonas Jelten
3333304147 ceph-volume: enable device discards
When using SSDs as encrypted OSD device, discards do not pass the
encryption layer. This option activates discard requests.

Signed-off-by: Jonas Jelten <jj@stusta.net>
2019-01-02 16:52:34 +01:00
Kefu Chai
253c1db393 mgr: define option defaults for MgrStandbyModule as well
in 0f814f38, we are using self.MODULE_OPTION_DEFAULTS as a fallback, but
the MgrStandbyModule does not have it defined. in this change,

* apply 0f814f38 to MgrStandbyModule
* apply 0228bd79 to MgrStandbyModule

Signed-off-by: Kefu Chai <kchai@redhat.com>
2019-01-02 22:19:50 +08:00
Abhishek L
5c71f5421c
Merge pull request #25541 from theanalyst/wip-es-log-fixes
rgw: sync module: avoid printing attrs of objects in log

Reviewed-By: Casey Bodley <cbodley@redhat.com>
2019-01-02 13:56:37 +01:00
Kefu Chai
5757477dbc
Merge pull request #25731 from liewegas/wip-37775
osd: reliably send pg_created messages to the mon

Reviewed-by: Kefu Chai <kchai@redhat.com>
2019-01-02 18:41:01 +08:00
Jos Collin
47b3a47205
librados: fix admin/build-doc warning
Fixed warning: librados.h:321: warning: Member compressed_bytes_alloc
(variable) of class rados_pool_stat_t is not documented.

Signed-off-by: Jos Collin <jcollin@redhat.com>
2019-01-02 14:48:06 +05:30
Willem Jan Withagen
b15d2cc963 bluestore: Only use WRITE_LIFE_ when available
Signed-off-by: Willem Jan Withagen <wjw@digiware.nl>
2019-01-01 18:04:36 +01:00
Sage Weil
a27e596493 mon/Monitor: quorum_age in JSON output as int, not string
Signed-off-by: Sage Weil <sage@redhat.com>
2019-01-01 10:53:09 -06:00
Kefu Chai
b02f198fd8
Merge pull request #25732 from liewegas/wip-37776
qa/workunits/rados/test_health_warnings: prevent out osds

Reviewed-by: Kefu Chai <kchai@redhat.com>
2019-01-02 00:04:39 +08:00
Kefu Chai
953abf78e7
Merge pull request #25726 from tchaikov/wip-37751
osd: unlock osd_lock when tweaking osd settings

Reviewed-by: Sage Weil <sage@redhat.com>
2019-01-01 23:49:27 +08:00
Kefu Chai
edfc199473
Merge pull request #25733 from tchaikov/wip-37719-workaround
librbd: workaround an ICE of GCC

Reviewed-by: Sage Weil <sage@redhat.com>
2019-01-01 23:44:23 +08:00
Kefu Chai
98a7674369 crimson: workaround an ICE of GCC
this change works around the FTBFS on arm64:

/home/jenkins-build/build/workspace/ceph-pull-requests-arm64/src/crimson/common/config_proxy.h:74:13:
internal compiler error: in tsubst_decomp_names, at cp/pt.c:16537
             for (auto& [obs, keys] : rev_obs) {
             ^~~
Please submit a full bug report,
with preprocessed source if appropriate.

it seems that this issue is a dup of
https://bugzilla.redhat.com/show_bug.cgi?id=1639019 .

Signed-off-by: Kefu Chai <kchai@redhat.com>
2019-01-01 16:38:16 +08:00
Kefu Chai
17849cac84 librbd: workaround an ICE of GCC
GCC is somehow annoyed at seeing the combination of decltype and
initializer_list in this place. i tried to remove the `if` clause, and
only left the `else` block, GCC was happy with that change. i also tried
to pass an empty `{}` to `decltype(reply.lockers)`, and GCC was also
happy with that. so i guess there are multiple factors taking effect in
this problem. probably any of them could be the last straw that breaks
GCC.

but we cannot have a minimal reproducer for this issue here without more
efforts. and `reply.lockers` is empty after `reply` is constructed, so
it would be simpler if we just add the locker info to it instead of
assigning a newly constructed `map` to it.

Fixes: http://tracker.ceph.com/issues/37719
Signed-off-by: Kefu Chai <kchai@redhat.com>
2019-01-01 16:26:08 +08:00
Kefu Chai
dab8ff4480
Merge pull request #25640 from joscollin/wip-mon-parse
mon,osd: avoid str copy in parse

Reviewed-by: Kefu Chai <kchai@redhat.com>
2019-01-01 14:39:59 +08:00
Kefu Chai
bf3b53d887
Merge pull request #25534 from trociny/wip-36244
mgr: fix crash due to multiple sessions from daemons with same name

Reviewed-by: Tim Serong <tserong@suse.com>
Reviewed-by: Boris Ranto <branto@redhat.com>
Reviewed-by: Ricardo Dias <rdias@suse.com>
Reviewed-by: Kefu Chai <kchai@redhat.com>
2019-01-01 14:12:23 +08:00
Sage Weil
db5a69abd2 Merge PR #25597 into master
* refs/pull/25597/head:
	mgr/hello: define some module options
	pybind/mgr/mgr_module: normalize defaults to str when type is missing
	mgr/telegraf: specify option types
	mgr/telemetry: specify option types
	mgr/zabbix: specify option types
	mgr/localpool: document options and specify in native types
	mgr/devicehealth: document options and specify in native types
	mgr/balancer: document and specify options
	common/options: make runtime vs not runtime explicit, not type-dependent
	mon/MgrMonitor: mark module options with FLAG_MGR
	mon/MgrMonitor: make find_module_option handle localized option names
	pybind/mgr/mgr_module: set values as string
	mgr: return options as appropriate python type
	mgr/PythonCompat: python 3 cludges
	pybind/mgr/mgr_module: make use of defined default value
	mgr/PyModule: populate ModuleOptions and expose to mon
	mon/ConfigMonitor: unify module options with built-in options
	mon/MgrMonitor: populate options
	mon/MgrMap: define ModuleOptions and include in map
	common/options: expand type helpers and make them static
	common/options: pin enums to values

Reviewed-by: Tim Serong <tserong@suse.com>
Reviewed-by: Ernesto Puerta <epuertat@redhat.com>
2018-12-31 22:31:18 -06:00
Sage Weil
49eab70fbc Merge PR #25652 into master
* refs/pull/25652/head:
	osd/OSDMap: disallow new upmaps on pgs that are pending merge
	osd/PG: align past_intervals and last_epoch_clean for fabricated merge target

Reviewed-by: Neha Ojha <nojha@redhat.com>
2018-12-31 22:30:40 -06:00
Sage Weil
58a6bcb748 Merge PR #25730 into master
* refs/pull/25730/head:
	Revert "os/objectstore: add new op OP_CREATE for create a new object."

Reviewed-by: Sage Weil <sage@redhat.com>
2018-12-31 22:30:03 -06:00
Sage Weil
f3ce547eb3 Merge PR #25670 into master
* refs/pull/25670/head:
	os/bluestore: KernelDevice::read() does the EIO mapping now.

Reviewed-by: Sage Weil <sage@redhat.com>
2018-12-31 22:28:47 -06:00
Sage Weil
3c9a562755 Merge PR #25408 into master
* refs/pull/25408/head:
	mgr/hello: Make use of `HandleCommandResult`.

Reviewed-by: Sage Weil <sage@redhat.com>
2018-12-31 15:24:26 -06:00
Sage Weil
d8d16ba6aa qa/workunits/rados/test_health_warnings: prevent out osds
Fixes: http://tracker.ceph.com/issues/37776
Signed-off-by: Sage Weil <sage@redhat.com>
2018-12-31 11:18:05 -06:00
Sage Weil
e516855487 osd: reliably send pg_created messages to the mon
The OSD has to reliably deliver a pg_created message to the mon in order
for the mon to clear the pool's CREATING flag.  Previously, a mon
connection reset would drop the message.

Restructure this to:

- queue a message any time a PG peers and the pool as the CREATING flag
- track pending messages in OSDService
- resend on mon connect
- prune messages for pools that no longer have the CREATING flag

This new strategy can result in resends of these messages to the mon in
cases where the mon already knows the PG was created.  However, pool
creation is rare, and these extra messages are cheap.  And we can avoid
this overhead if we like by limiting the number of PGs that the mon can
create explicitly if we choose (by lowering mon_osd_max_initial_pgs).

Fixes: http://tracker.ceph.com/issues/37775
Signed-off-by: Sage Weil <sage@redhat.com>
2018-12-31 11:05:03 -06:00
Kefu Chai
46073b4de0
Merge pull request #25437 from Aran85/fix-objecter-reset
objecter: avoid race when reset down osd's session

Reviewed-by: Josh Durgin <jdurgin@redhat.com>
2019-01-01 00:56:52 +08:00
Kefu Chai
1771e2b0ad
Merge pull request #21138 from zouaiguo/fix_mgr_restful_osd_error
mgr/restful: fix py got exception when get osd info

Reviewed-by: Kefu Chai <kchai@redhat.com>
2019-01-01 00:52:38 +08:00
Kefu Chai
491c2545f3 Revert "os/objectstore: add new op OP_CREATE for create a new object."
This reverts commit 22f73ba62e.

Fixes: http://tracker.ceph.com/issues/37774
Signed-off-by: Kefu Chai <kchai@redhat.com>
2018-12-31 23:04:25 +08:00