Commit Graph

75765 Commits

Author SHA1 Message Date
John Spray
3933adef6a common: reinstate config opt validators
Signed-off-by: John Spray <john.spray@redhat.com>
2017-07-21 06:27:25 -04:00
John Spray
c1a6b497fb common: sync up options.cc with latest master
Signed-off-by: John Spray <john.spray@redhat.com>
2017-07-21 06:27:25 -04:00
John Spray
08731c3567 common/config: hook in new Option config descriptions
The C++ class member fields continue to exist for
settings defined in common/legacy_config_opts.h, but
all the schema information is coming from common/options.cc
now.

The values in md_config_t::values are automatically
copied into the C++ class member fields for legacy config
options as needed.

Signed-off-by: John Spray <john.spray@redhat.com>
2017-07-21 06:27:25 -04:00
John Spray
f7b2179685 log/SubsystemMap: return a size_t from get_num
Signed-off-by: John Spray <john.spray@redhat.com>
2017-07-21 06:27:25 -04:00
John Spray
5e17c2889f mgr: tighten initialization of keyring setting
We should not proceed if setting this fails.  Also
the meta=false setting is not what you want when
calling into set_val after initialization, I'm not sure
how that ever worked!

Signed-off-by: John Spray <john.spray@redhat.com>
2017-07-21 06:27:24 -04:00
John Spray
10f33a1bdd common: separate config opts definitions from subsys definitions
Previously these were all in one header and inclusions of it
got really verbose from everyone having to define SUBSYS and OPTION
macros even though they only wanted to pick out one or the other.

Also, this separates the subsys.h stuff (staying) from the legacy
config opt definitions (transitional, will go).

Signed-off-by: John Spray <john.spray@redhat.com>
2017-07-21 06:27:24 -04:00
John Spray
73086f1e4c common: remove ::validate definitions
These will be replaced by validate methods
on Option subclasses that need them.  The code
that was in these files moved to options.[h|cc]

Signed-off-by: John Spray <john.spray@redhat.com>
2017-07-21 06:27:24 -04:00
John Spray
f1ac8dc7a4 common: hook in 'safe' flag to new config options
It's a poor substitute for real a concurrency solution
but for the moment carry it forward so that the options
structure can replace the list of config_option
in md_config_t.

Signed-off-by: John Spray <john.spray@redhat.com>
2017-07-21 06:27:24 -04:00
John Spray
a5244f7c67 common: s/config_opts/legacy_config_opts/
Name change reflects that newly added config opts
don't need to go here.

Signed-off-by: John Spray <john.spray@redhat.com>
2017-07-21 06:27:24 -04:00
John Spray
4aa5f35b8c common: use a vector instead of array in options.cc
Avoids retro 80s style blank entry at the end :-)

Signed-off-by: John Spray <john.spray@redhat.com>
2017-07-21 06:27:24 -04:00
John Spray
26551776f2 common: rip out option code generation bit
We can have a legacy (static field) config object
that includes fields from config_opts.h, and
then switch to using dynamic get() for newly
added options, so that we don't need to do
code generation for the new config infrastructure.

Signed-off-by: John Spray <john.spray@redhat.com>
2017-07-21 06:27:23 -04:00
Sage Weil
6829384546 g++ ../src/convert.cc -o cv -I../src -I.
./cv > /tmp/foo
...and copy that into options.cc
bin/generate_option_header > ../src/common/config_fields.h

Signed-off-by: Sage Weil <sage@redhat.com>
2017-07-21 06:27:23 -04:00
Kefu Chai
bc3930a139 common/options: more constness
Signed-off-by: Kefu Chai <kchai@redhat.com>
2017-07-21 06:27:23 -04:00
Kefu Chai
2c6669c5a4 common/options: specialize on non bool integeral types
Signed-off-by: Kefu Chai <kchai@redhat.com>
2017-07-21 06:27:23 -04:00
Sage Weil
fe1c592c8c common/options: new options infrastructure
Define schema for config options.  Helper to generate a header fragment
to declare the types.

Unlike the old config_opts.h approach, we will not intialize values in
the header.  This avoids a recompile if there is a change and also allows
us to specify different defaults and do parsing and validation at runtime.
Instead, we'll intialize values in the constructure of the containing
class.

Signed-off-by: Sage Weil <sage@redhat.com>
2017-07-21 06:27:23 -04:00
Sage Weil
8463894575 common: remove max_open_files config option
The only user is init-ceph, and it can get at it via ceph-conf without
the option being declared here.

Signed-off-by: Sage Weil <sage@redhat.com>
2017-07-21 06:27:22 -04:00
Sage Weil
03ef427b31 ceph-syn: parse --num-client locally; remove global option
Signed-off-by: Sage Weil <sage@redhat.com>
2017-07-21 06:27:22 -04:00
Kefu Chai
0193e38b3f Merge pull request #16028 from jcsp/wip-mgr-commands
mon: load mgr commands at runtime

Reviewed-by: Sage Weil <sage@redhat.com>
Reviewed-by: Kefu Chai <kchai@redhat.com>
2017-07-21 18:16:13 +08:00
Kefu Chai
d76b376e78 Merge pull request #16415 from xiexingguo/wip-health-mon
mon: a few health fixes

Reviewed-by: Sage Weil <sage@redhat.com>
Reviewed-by: Kefu Chai <kchai@redhat.com>
2017-07-21 18:12:31 +08:00
Nathan Cutler
c21a9f24f4 Revert "Test-enable XIO messenger and IB/RDMA support"
This reverts commit 71cbc832de.

Signed-off-by: Nathan Cutler <ncutler@suse.com>

Conflicts:
	ceph.spec.in (trivial resolution)
2017-07-21 11:20:27 +02:00
Kefu Chai
73186686e9 Merge pull request #16409 from liupan1111/wip-restructure-bs
os/bluestore: move aio.h/cc from fs dir to bluestore dir

Reviewed-by: Sage Weil <sage@redhat.com>
2017-07-21 16:55:38 +08:00
Kefu Chai
41c59530c1 Merge pull request #16328 from neha-ojha/recovery_sleep_default
osd: Add recovery sleep configuration option for HDDs and SSDs

Reviewed-by: Sage Weil <sage@redhat.com>
2017-07-21 16:55:02 +08:00
xie xingguo
a4951848bf mon/PGMap: drop client-side pg states validations
let mon do this instead...

Signed-off-by: xie xingguo <xie.xingguo@zte.com.cn>
2017-07-21 16:36:50 +08:00
Willem Jan Withagen
ecd31091f2 common: prevent unset_dumpable from generating warnings
- Let the struct at least have a CTR

Signed-off-by: Willem Jan Withagen <wjw@digiware.nl>
2017-07-21 09:22:24 +02:00
Kefu Chai
2c9b2b1fe6 Merge pull request #16470 from tchaikov/wip-watch-audit-channel
qa/workunits/cephtool/test.sh: fix test to watch audit channel

Reviewed-by: Kefu Chai <kchai@redhat.com>
Reviewed-by: xie xingguo <xie.xingguo@zte.com.cn>
2017-07-21 13:41:43 +08:00
Sage Weil
6c4992aeca qa/workunits/cephtool/test.sh: fix test to watch audit channel
Signed-off-by: Sage Weil <sage@redhat.com>
2017-07-21 11:40:48 +08:00
Dan Mick
47726f8b66 doc/mgr: add Prometheus plugin docs
Signed-off-by: Dan Mick <dan.mick@redhat.com>
2017-07-20 20:25:08 -07:00
Dan Mick
3b1a8a78ac mgr/index.rst: clarify which toplevel items are plugins
Signed-off-by: Dan Mick <dan.mick@redhat.com>
2017-07-20 20:09:39 -07:00
Dan Mick
c40c254cc6 doc/mgr/zabbix.rst: fix subheadings, add subsubheadings
(otherwise subheadings appear as top-level items in the TOC, because
they're marked just like the title)

Signed-off-by: Dan Mick <dan.mick@redhat.com>
2017-07-20 20:09:05 -07:00
xie xingguo
396e2277d3 mgr: drop unnecessary write permission for test-reweight-by-* commands
dry run does not ask for it

Signed-off-by: xie xingguo <xie.xingguo@zte.com.cn>
2017-07-21 10:50:14 +08:00
xie xingguo
3941bda996 mon/PGMap: fix unable to shut up pg-not-scrubbed[deep-scrubbed] warn
Signed-off-by: xie xingguo <xie.xingguo@zte.com.cn>
2017-07-21 08:00:31 +08:00
Sage Weil
2e8413dede qa: remove workloadgen test
The CRUSH rule creation is busted (rules and buckets out of order), but
after I fix that it doesn't seem to run right anyway.  Remove it.
We get the mon thrasher coverage from rados/monthrash already; I don't
think this is adding meaningful coverage for the amount of effort it takes
to maintain.

Signed-off-by: Sage Weil <sage@redhat.com>
2017-07-20 18:06:50 -04:00
Sage Weil
c39ebd62ab crush/CrushCompiler: enforce buckets before rules rule
Signed-off-by: Sage Weil <sage@redhat.com>
2017-07-20 18:04:44 -04:00
Sage Weil
91548a33ce osd: bail out if no map yet
If we get pings before finishing our startup we may not yet have an
osdmap.

Signed-off-by: Sage Weil <sage@redhat.com>
2017-07-20 17:44:58 -04:00
Sage Weil
59e3827be7 qa/tasks/reg11184: import run
Signed-off-by: Sage Weil <sage@redhat.com>
2017-07-20 17:42:59 -04:00
Josh Durgin
2effa0fbe3 osd/PGLog: force write of may_include_deletes after split
When a collection is split this needs to be persisted again. Normally
this is only persisted when the missing set is rebuilt during a new
interval when it previous did not include deletes, but during split we
keep the in-memory missing set may_include_deletes flag, but do not
rebuild the missing set.

Fixes: http://tracker.ceph.com/issues/20704
Signed-off-by: Josh Durgin <jdurgin@redhat.com>
2017-07-20 16:27:27 -04:00
Josh Durgin
e36f4677f2 ceph_objectstore_tool: always write may_include_deletes if it's set
This prevents us from importing a missing set without also setting the
may_include_deletes_in_missing omap value if appropriate.

Signed-off-by: Josh Durgin <jdurgin@redhat.com>
2017-07-20 15:44:39 -04:00
Sage Weil
8e6a15d01a msg: restore peer addr checks
This was dropped in bf49385679 but should
not have been.  Since we are advertising the addr and not the bind
addr there is no reason to disable this check.

Signed-off-by: Sage Weil <sage@redhat.com>
2017-07-20 13:59:45 -04:00
Sage Weil
f159a093ec osd,mds,mgr: do not dereference null rotating_keys
Immediately after we bind to a port, but before we have set up our
auth infrastructure, we may get incoming connections.  Deny them.  Since
we are not yet advertising ourselves these are peers trying to connect
to old instances of daemons, not us.

This triggers now because of bf49385679.
Previously, the peer would see we were a different addr and drop the
connection.  Now, it continues.

Fixes: http://tracker.ceph.com/issues/20667
Signed-off-by: Sage Weil <sage@redhat.com>
2017-07-20 13:07:32 -04:00
Sage Weil
27e8d75f61 Merge pull request #16429 from liewegas/wip-jewel-x
qa/suites/upgrade/jewel-x: misc fixes for new health checks
2017-07-20 10:47:05 -05:00
Sage Weil
ed48ed1b74 Merge pull request #16374 from majianpeng/bluestore-double-count-kv-queue-lat
os/bluestore/BlueStore: Avoid double counting state_kv_queued_lat.

Reviewed-by: xie xingguo <xie.xingguo@zte.com.cn>
2017-07-20 10:44:40 -05:00
Sage Weil
3de9f22ce0 Merge pull request #16423 from liewegas/wip-ls
mon: '* list' -> '* ls'

Reviewed-by: Kefu Chai <kchai@redhat.com>
2017-07-20 10:43:34 -05:00
Sage Weil
de856e7371 Merge pull request #16434 from badone/wip-fix-deep-age-reporting
mon: Fix deep_age copy paste error

Reviewed-by: xie xingguo <xie.xingguo@zte.com.cn>
Reviewed-by: Kefu Chai <kchai@redhat.com>
2017-07-20 10:43:15 -05:00
Kefu Chai
acc24bf0dc Merge pull request #16444 from tchaikov/wip-test-osd-stat
qa/workunits/cephtool/test.sh: "ceph osd stat" output changed, update accordingly

Reviewed-by: Willem Jan Withagen <wjw@digiware.nl>
2017-07-20 23:41:53 +08:00
Sage Weil
583a38bca2 qa/tasks/ceph_manager: wait for osd to start after objectstore-tool sequence
Fixes: http://tracker.ceph.com/issues/20705
Signed-off-by: Sage Weil <sage@redhat.com>
2017-07-20 11:41:36 -04:00
Yuri Weinstein
94b02a69d4 Merge pull request #14287 from oritwas/wip-rgw-usage
rgw: usage

Reviewed-by: Casey Bodley <cbodley@redhat.com>
Reviewed-by: Kefu Chai <kchai@redhat.com>
Reviewed-by: Abhishek Lekshmanan <abhishek.lekshmanan@gmail.com>
2017-07-20 08:39:21 -07:00
Yuri Weinstein
c31f25bedf Merge pull request #15673 from yehudasa/wip-20107
cls/refcount: store and use list of retired tags

Reviewed-by: Orit Wasserman <owasserm@redhat.com>
Reviewed-by: Yehuda Sadeh <yehuda@redhat.com>
2017-07-20 08:35:07 -07:00
Kefu Chai
153d030e1d Merge pull request #16421 from tchaikov/wip-19939
messages/: always set header.version in encode_payload()

Reviewed-by: Haomai Wang <haomai@xsky.com>
Reviewed-by: Sage Weil <sage@redhat.com>
Reviewed-by: Josh Durgin <jdurgin@redhat.com>
2017-07-20 22:52:17 +08:00
Jos Collin
c6e90d93a3 Merge pull request #16418 from theanalyst/doc-rgw-tenant-names
doc: rgw clarify limitations when creating tenant names

Reviewed-by: Casey Bodley <cbodley@redhat.com>
Reviewed-by: Pritha Srivastava <prsrivas@redhat.com>
Reviewed-by: Jos Collin <jcollin@redhat.com>
2017-07-20 14:38:45 +00:00
Kefu Chai
3dfa9daeca Merge pull request #16443 from wjwithagen/bug-wjw-qa-test-reorder
cephtool/test.sh: Only delete a test pool when no longer needed.

Reviewed-by: Willem Jan Withagen <wjw@digiware.nl>
Reviewed-by: xie xingguo <xie.xingguo@zte.com.cn>
2017-07-20 22:13:37 +08:00