Commit Graph

88561 Commits

Author SHA1 Message Date
Neha Ojha
1b6dafb351 osd/PGLog.cc: use lgeneric_subdout instead of generic_dout
Signed-off-by: Neha Ojha <nojha@redhat.com>
2018-07-30 16:42:55 -07:00
Kefu Chai
a8b39ccc2c
Merge pull request #23074 from tchaikov/wip-seastar-config
common/config: add ConfigProxy for crimson

Reviewed-by: Josh Durgin <jdurgin@redhat.com>
2018-07-26 01:02:11 +08:00
Sage Weil
af88fa27dd Merge PR #23232 into master
* refs/pull/23232/head:
	mon: don't require CEPHX_V2 from mons until nautilus
2018-07-25 11:38:52 -05:00
Sage Weil
7ba0c14ce7 mon: don't require CEPHX_V2 from mons until nautilus
The mimic 13.2.0 didn't have it.

Fixes: 3dc80e5f9b
Signed-off-by: Sage Weil <sage@redhat.com>
2018-07-25 11:23:12 -05:00
Kefu Chai
094b9fdbef
Merge pull request #23231 from tchaikov/wip-fio
tests/fio: fix build failures and ensure this is covered by run-make-check.sh

Reviewed-by: Igor Fedotov <ifedotov@suse.com>
2018-07-26 00:11:29 +08:00
Kefu Chai
ed00c25a6e cmake: sync up with upstream FIO
to pick up the change to FTBFS with C++ engine.

Signed-off-by: Kefu Chai <kchai@redhat.com>
2018-07-25 22:47:20 +08:00
Lenz Grimmer
f0f8a0a3db
Merge pull request #22695 from a2batic/scss
mgr/dashboard: Color variables for color codes

Reviewed-by: Ernesto Puerta <epuertat@redhat.com>
Reviewed-by: Ricardo Marques <rimarques@suse.com>
Reviewed-by: Tiago Melo <tmelo@suse.com>
Reviewed-by: Volker Theile <vtheile@suse.com>
2018-07-25 16:32:16 +02:00
Casey Bodley
6f9f1aa37f
Merge pull request #23100 from adamemerson/wip-robustly-notify
rgw: Robustly notify

Reviewed-by: Matt Benjamin <mbenjamin@redhat.com>
2018-07-25 10:30:05 -04:00
Ricardo Dias
53b92fce49
Merge pull request #23183 from ricardoasmarques/wip-fix-url-prefix
mgr/dashboard: Fix cherrypy static content URL prefix config

Reviewed-by: Lenz Grimmer <lgrimmer@suse.com>
Reviewed-by: Ricardo Dias <rdias@suse.com>
2018-07-25 15:20:18 +01:00
a2batic
7da6a2539f
mgr/dashboard: Color variables for color codes
Assign variables to colors present in css files
Changed navigation icons padding because the notification dropdown was going out of window.
Fixes: http://tracker.ceph.com/issues/24575
Signed-off-by: Kanika Murarka <kmurarka@redhat.com>
2018-07-25 18:52:19 +05:30
Lenz Grimmer
f4b5cca318
Merge pull request #22857 from tspmelo/wip-move-test-file
mgr/dashboard: Move unit-test-helper into the new testing folder

Reviewed-by: Ricardo Marques <rimarques@suse.com>
Reviewed-by: Stephan Müller <smueller@suse.com>
2018-07-25 15:13:20 +02:00
Matt Benjamin
e38f6b1159
Merge pull request #22624 from ashutosh-narkar/opa-ceph
rgw: Initial work for OPA-Ceph integration
2018-07-25 09:09:32 -04:00
Sage Weil
25ed405ee5 Merge PR #23220 into master
* refs/pull/23220/head:
	osd/OSDMap: CRUSH_TUNABLES5 added in jewel, not kraken

Reviewed-by: Josh Durgin <jdurgin@redhat.com>
2018-07-25 07:00:23 -05:00
Ashutosh Narkar
631a036a6b Initial work for OPA-Ceph integration
Signed-off-by: Ashutosh Narkar <anarkar4387@gmail.com>
2018-07-25 01:20:34 -07:00
Kefu Chai
4f34c56e7c common/config_proxy: document Config{Values,Proxy}
Signed-off-by: Kefu Chai <kchai@redhat.com>
2018-07-25 13:13:45 +08:00
Kefu Chai
b6bcfadfe7 test/crimson: update test_alien_echo.cc with f80b848d
Signed-off-by: Kefu Chai <kchai@redhat.com>
2018-07-25 13:13:45 +08:00
Kefu Chai
4e61f2286d cmake: build c-ares if it's not found or not new enough
Signed-off-by: Kefu Chai <kchai@redhat.com>
2018-07-25 13:13:45 +08:00
Kefu Chai
e6f053d6b6 c-ares: add c-ares submodule
c-ares is a C library for asynchronous DNS requests, seastar requires
c-ares 1.13.0 or up. but xenial and EPEL offer 1.10.0, so we need to
build and ship it as part of Ceph.

Signed-off-by: Kefu Chai <kchai@redhat.com>
2018-07-25 13:13:45 +08:00
Kefu Chai
5e0f3b2ae1 crimson/common: add ceph::common::ConfigProxy
Signed-off-by: Kefu Chai <kchai@redhat.com>
2018-07-25 13:13:45 +08:00
Kefu Chai
8435aa9bda common/config: change md_config_obs_impl's template param to ConfigProxy
we were using LockPolicy as this tempalte class's template parameter,
but turns out ConfigProxy is a better parameter for it. as ConfigProxy is
"closer" to md_config_obs_impl than LockPolicy is.

Signed-off-by: Kefu Chai <kchai@redhat.com>
2018-07-25 13:13:45 +08:00
Kefu Chai
7909c08fe0 common/config: change md_config_impl<> back to plain class
now that all of the variables that change depending on seastar/alien
have been extracted out of md_config_impl<>, there is no need to make it
a template anymore.

Signed-off-by: Kefu Chai <kchai@redhat.com>
2018-07-25 13:13:45 +08:00
Kefu Chai
96196e9d77 rpm,install-deps,cmake: install {c-ares,fmt}-devel
* ceph.spec.in: c-ares-devel and fmt-devel are installed as
  dependencies fo seastar.
* install-deps.sh: libfmt-dev is missing in xenial, so we only
  install libc-ares-dev for ubuntu in install-deps.sh .
* cmake: build libfmt if it's not found.

Signed-off-by: Kefu Chai <kchai@redhat.com>
2018-07-25 13:13:45 +08:00
Kefu Chai
a7f30e860e fmt: add libfmt submodule
libfmt is a library for fast printf() support in C++, it is used by
seastar. but it's missing in xenial. so we need to ship it in our dist
tarball and build if if it's not found in system.

Signed-off-by: Kefu Chai <kchai@redhat.com>
2018-07-25 13:13:45 +08:00
Kefu Chai
8edf4ea504 seastar: use the modernized cmake
Signed-off-by: Kefu Chai <kchai@redhat.com>
2018-07-25 13:13:45 +08:00
Kefu Chai
12fed52478 seastar: sync with upstream
to pick up the commit of 67bb775e, which marks
foreign_ptr::get_owner_shard() const.

Signed-off-by: Kefu Chai <kchai@redhat.com>
2018-07-25 12:59:30 +08:00
Kefu Chai
3b20a16ed1 common/config: mark do_argv_commands() const
Signed-off-by: Kefu Chai <kchai@redhat.com>
2018-07-25 12:59:30 +08:00
Kefu Chai
773ef1170b common/config: extract ObserverMgr from md_config_impl<>
crimson will have sharded<PGShard> (name may vary in future), and
underlying ObjectStore instances. they will be consumers of crimson
ConfigProxy, and will register them as an observer of config changes.
but as always, in crimson osd, world is sharded, each ConfigProxy will
only take care of the sharded services living on the shard which it is
in charge of. in other words, unlike alien's ConfigProxy, the
"observers" data structure is not shared, they are sharded as well. so
we need to extract the observers out of md_config_impl<>, and move it
into ConfigProxy.

Signed-off-by: Kefu Chai <kchai@redhat.com>
2018-07-25 12:59:30 +08:00
Sage Weil
7e9d24d060 osd/OSDMap: CRUSH_TUNABLES5 added in jewel, not kraken
In 0ceb5c0f36 I screwed up the version that
CRUSH_TUANBLES5 (chooseleaf_stable) was added: it comes from
043a7378ec, v10.0.3, which leads up to
jewel.

This, in turn, means that when jewel tunables are set we do not actually
encode the jewel tunables.  At least, luminous doesn't; jewel uses a
different code path to decode how to encode the OSDMap.

This, in turn, leads to crc errors:

- luminous mons running
- require_osd_release is jewel
- jewel tunables are set.  mon in-memory crushmap gets chooseleaf_stable=1
- osds are luminous, but don't see the new field in the crushmap
- upgrade finishes, and require_osd_Release becomes luminous
- the full osdmap encodes the chooseleaf_stable field, finally, and it
  is 1
- the osds try to encode the same thing, but their crushmap has 0.
-> crc mismatch

This is a regression from 0ceb5c0f36,
backported to luminous in 686b054f48 in
12.2.6.

Fixes: 686b054f48
Fixes: http://tracker.ceph.com/issues/25057
Signed-off-by: Sage Weil <sage@redhat.com>
2018-07-24 20:30:54 -05:00
Tiago Melo
ec51e87348 mgr/dashboard: prettify code
Signed-off-by: Tiago Melo <tmelo@suse.com>
2018-07-24 22:34:27 +01:00
Tiago Melo
8b567eb9a7 mgr/dashboard: Move unit-test-helper into the new testing folder
Signed-off-by: Tiago Melo <tmelo@suse.com>
2018-07-24 22:34:27 +01:00
Gregory Farnum
b8f079a653
Merge pull request #22996 from batrick/mds-state-dot
doc: add mds state transition diagram

Reviewed-by: Greg Farnum <gfarnum@redhat.com> 
Reviewed-by:  Alfredo Deza <adeza@redhat.com>
2018-07-24 14:22:08 -07:00
Matt Benjamin
b0f18b99b3
Merge pull request #22581 from fullerdj/wip-djf-24544
rgw: change default rgw_thread_pool_size to 512
2018-07-24 16:39:17 -04:00
Patrick Donnelly
41f7062e25
mds: remove ascii art version of mds state diagram
Now refer to the user documentation. Any updates should go there!

Signed-off-by: Patrick Donnelly <pdonnell@redhat.com>
2018-07-24 13:17:25 -07:00
Patrick Donnelly
6962b4eb9b
doc: create mds state documentation
Fixes: http://tracker.ceph.com/issues/22989

Signed-off-by: Patrick Donnelly <pdonnell@redhat.com>
2018-07-24 13:17:21 -07:00
Yuri Weinstein
44b9132481
Merge pull request #20330 from joke-lee/wip-rgw-postobjloc
rgw: return valid Location element, PostObj

Reviewed-by: Matt Benjamin <mbenjami@redhat.com>
Reviewed-by: Orit Wasserman <owasserm@redhat.com>
2018-07-24 09:19:47 -07:00
Yuri Weinstein
c439e31913
Merge pull request #22937 from tianshan/fix_index_suggest_ut_fail
rgw: continue enoent index in dir_suggest

Reviewed-by: Casey Bodley <cbodley@redhat.com>
Reviewed-by: J. Eric Ivancich <ivancich@redhat.com>
2018-07-24 09:18:01 -07:00
Yuri Weinstein
d5e6d91131
Merge pull request #23095 from trociny/wip-24898
librbd: ensure exclusive lock acquired when removing sync point snapshots

Reviewed-by: Jason Dillaman <dillaman@redhat.com>
2018-07-24 09:17:11 -07:00
Yuri Weinstein
af1372dff7
Merge pull request #23167 from tchaikov/wip-tools-rbd-cleanup
tools/rbd: assert(g_ceph_context) not g_conf

Reviewed-by: Jason Dillaman <dillaman@redhat.com>
2018-07-24 09:16:50 -07:00
Lenz Grimmer
a4ec7f5f22
Merge pull request #22419 from votdev/hide_progress_bar
mgr/dashboard: Hide progress bar in case of an error
2018-07-24 17:40:43 +02:00
Andrew Schoen
2a19da9ede
Merge pull request #23182 from alfredodeza/wip-ansible-26
ceph-volume tests/functional use Ansible 2.6

Reviewed-by: Andrew Schoen <aschoen@redhat.com>
2018-07-24 14:22:35 +00:00
Mykola Golub
95ce595757
Merge pull request #23132 from dillaman/wip-25000
librbd: deep-copy should not write to objects that cannot exist

Reviewed-by: Mykola Golub <mgolub@suse.com>
2018-07-24 16:43:13 +03:00
John Spray
061ffa508e
Merge pull request #22792 from jcsp/wip-mgrmodule-none-docs
mgr: improve docs for MgrModule methods
2018-07-24 10:36:44 +01:00
John Spray
b4eb58dfb2
Merge pull request #22794 from wido/mgr-metadata-none
mgr: Ignore daemon if no metadata was returned

Reviewed-by: John Spray <john.spray@redhat.com>
2018-07-24 10:35:44 +01:00
John Spray
0a6cc2faa6
Merge pull request #22827 from theanalyst/wip-device-py3
mgr: devicehealth: dont error on dict iteritems

Reviewed-by: Kefu Chai <kchai@redhat.com>
Reviewed-by: John Spray <john.spray@redhat.com>
2018-07-24 10:28:37 +01:00
John Spray
1d4e71ff1b
Merge pull request #22951 from jcsp/wip-mgr-intermodule
mgr: enable inter-module calls

Reviewed-by: Tim Serong <tserong@suse.com>
2018-07-24 10:25:59 +01:00
Lenz Grimmer
cdfd7b42ee
Merge pull request #23181 from tspmelo/wip-remove-karma
mgr/dashboard: Remove karma packages

Reviewed-by: Stephan Müller <smueller@suse.com>
Reviewed-by: Volker Theile <vtheile@suse.com>
2018-07-24 11:09:48 +02:00
Lenz Grimmer
66580fce05
Merge pull request #23115 from tspmelo/wip-angular-cmake
mgr/dashboard: Remove angular build progress logs during cmake

Reviewed-by: Laura Paduano <lpaduano@suse.com>
Reviewed-by: Ricardo Marques <rimarques@suse.com>
Reviewed-by: Stephan Müller <smueller@suse.com>
2018-07-24 11:03:34 +02:00
Nathan Cutler
688aac3f40
Merge pull request #23159 from smithfarm/wip-example-no-boost
example/librados: remove dependency on Boost system library

Reviewed-by: Josh Durgin <jdurgin@redhat.com>
2018-07-24 09:58:23 +02:00
Kefu Chai
ca3a52938d common/config: extract "changed" from md_config_impl<> to ConfigValues
for the same reason why we moved ObserverMgr out of md_config_impl<>,
"changed" cannot be shared among shards, we should move "changed" out of
md_config_impl. we can put "changed" into ConfigValues or
ConfigProxy, IMHO, it would be simpler if "changed" resides in
ConfigValues: less fragmented this way.

Signed-off-by: Kefu Chai <kchai@redhat.com>
2018-07-24 10:17:48 +08:00
Kefu Chai
9bfc036720 common/config: move _apply_changes() calls up into ConfigProxy
see also the previous the commit, to reuse injectargs() and
set_mon_vals() in seastar's ConfigProxy, we need to move apply_changes()
call out of them, as this call is implemented differently in seastar's
ConfigProxy.

finalize_reexpand_meta() is not used by OSD at this moment, so we leave
it as it is for now.

* move _apply_changes() calls up into ConfigProxy
* move update_legacy_vals() out of _apply_changes() into the
callers of the latter. as it changes "values", in seastar's ConfigProxy,
it belongs to the first step of changing a config value

Signed-off-by: Kefu Chai <kchai@redhat.com>
2018-07-24 10:17:46 +08:00