Commit Graph

38640 Commits

Author SHA1 Message Date
Sage Weil
751e504275 Merge pull request #3397 from liewegas/wip-prealloc
mon: fix globalid when prealloc value is larger than max
2015-01-18 20:46:31 -08:00
Sage Weil
bbaf582e5b mon: handle case where mon_globalid_prealloc > max_global_id
This triggers with the new larger mon_globalid_prealloc value.  It didn't
trigger on the existing cluster I tested on because it already had a very
large max.

Signed-off-by: Sage Weil <sage@redhat.com>
2015-01-18 16:49:20 -08:00
Sébastien Han
d29aef5eb9 doc: Fix OpenStack Glance configuration
Glance has not completely moved to 'store' yet so we need to configure
the store in the DEFAULT section as well.

Fixes: #10478

Signed-off-by: Sébastien Han <sebastien.han@enovance.com>
2015-01-18 22:55:57 +01:00
Sage Weil
8379b454b9 Merge pull request #3361 from wonzhq/watch-notify
osd/ReplicatedPG: force promotion for watch/notify ops

Reviewed-by: Sage Weil <sage@redhat.com>
2015-01-18 10:44:35 -08:00
Sage Weil
f078a429fd Merge pull request #3395 from liewegas/wip-cache-none
osd: skip all of maybe_handle_cache if cachemode is none
2015-01-18 10:43:58 -08:00
Sage Weil
e7f9bffa50 Merge pull request #3315 from majianpeng/fix6
bug fix 

Reviewed-by: Sage Weil <sage@redhat.com>
2015-01-18 10:42:31 -08:00
Sage Weil
ba73ef9378 Merge pull request #3385 from majianpeng/misc
Misc

Reviewed-by: Josh Durgin <jdurgin@redhat.com>
2015-01-18 10:41:55 -08:00
Sage Weil
31eb4c615a Merge pull request #3194 from dachary/wip-10350-erasure-code-choose-tries
resolve and document most common erasure coded pool pain points

Documentation-Reviewed-by: Italo Santos <okdokk@gmail.com>
2015-01-18 10:41:31 -08:00
Sage Weil
1d1215fe5f mon: change mon_globalid_prealloc to 10000 (from 100)
100 ids (session 100 authentications) can be consumed quite quickly if
the monitor is being queried by the CLI via scripts or on a large cluster,
especially if the propose interval is long (many seconds).  These live in
a 64-bit value and are only "lost" if we have a mon election before they
are consumed, so there's no real risk here.

Backport: giant, firefly
Reviewed-by: Joao Eduardo Luis <joao@redhat.com>
Signed-off-by: Sage Weil <sage@redhat.com>
2015-01-18 10:39:25 -08:00
Sage Weil
be1416a044 mon: silently ignore mark_down, mark_disposable on AnonConnection
This mirrors 0a49db8e6fa141a36ca964e68017d02b81ae7a3c but was not captured
by 9fff0c53bdc7bb332df1a710da3de71e3c41bec7.

Signed-off-by: Sage Weil <sage@redhat.com>
2015-01-18 10:37:51 -08:00
Sage Weil
87b3e9600a Merge remote-tracking branch 'gh/wip-xio'
Reviewed-by: Sage Weil <sage@redhat.com>
2015-01-18 10:37:19 -08:00
Sage Weil
78fd69f1aa Merge pull request #3391 from liewegas/wip-pool-delete
mon: global option to prevent pool deletion

Reviewed-by: John Spray <john.spray@redhat.com>
2015-01-18 10:34:59 -08:00
Sage Weil
b5e1bd1fab mon/OSDMonitor: pull totals into the table format
Signed-off-by: Sage Weil <sage@redhat.com>
2015-01-17 17:14:48 -08:00
Sage Weil
169d6805ff mon/OSDMonitor: don't -nan for variance when no osds
Signed-off-by: Sage Weil <sage@redhat.com>
2015-01-17 17:14:48 -08:00
Sage Weil
9aa0006343 common/TextTable: do padding during final step
We don't know the full width until we get all table entries.  Do not do
any padding before that.  In particular, setw may left-pad on a column
that is left-justified.

Signed-off-by: Sage Weil <sage@redhat.com>
2015-01-17 17:14:48 -08:00
Sage Weil
ea5166ef2a mon/OSDMonitor: drop unnecessary stringify
Signed-off-by: Sage Weil <sage@redhat.com>
2015-01-17 17:14:48 -08:00
Sage Weil
8a0d124124 crushtool: fix cli tests for new tree output
Signed-off-by: Sage Weil <sage@redhat.com>
2015-01-17 17:14:48 -08:00
Sage Weil
4698882382 osd/ReplicatedPG: skip all of maybe_handle_cache if caching is off
Return quickly and avoid all of the checks.

Signed-off-by: Sage Weil <sage@redhat.com>
2015-01-17 10:31:10 -08:00
Sage Weil
04c09ed276 crushtool: add --tree option
Signed-off-by: Sage Weil <sage@redhat.com>
2015-01-17 08:58:40 -08:00
Sage Weil
871c3ec597 crush/CrushWrapper: drop weights from crush dump_tree
Signed-off-by: Sage Weil <sage@redhat.com>
2015-01-17 08:58:40 -08:00
Sage Weil
86729e7970 osd, crush: caps for headers
Signed-off-by: Sage Weil <sage@redhat.com>
2015-01-17 08:57:26 -08:00
Sage Weil
022950ecbf crush/CrushTreeDumper: add missing close_section
Signed-off-by: Sage Weil <sage@redhat.com>
2015-01-17 08:57:26 -08:00
Sage Weil
7a04518498 crush, osdmap: use weightf_t helper for all weights
Signed-off-by: Sage Weil <sage@redhat.com>
2015-01-17 08:57:26 -08:00
Mykola Golub
9e22f6179b osd: use TextTable for osd tree command output
Signed-off-by: Mykola Golub <mgolub@mirantis.com>
2015-01-17 08:57:26 -08:00
Mykola Golub
1d984a5239 osd: use weightf_t type when outputing weights by osd tree command
Signed-off-by: Mykola Golub <mgolub@mirantis.com>
2015-01-17 08:57:26 -08:00
Mykola Golub
4bae3a8db3 mon: ceph osd df -- a new command to show OSD utilization
Fixes: #10452
Signed-off-by: Mykola Golub <mgolub@mirantis.com>
2015-01-17 08:57:26 -08:00
Mykola Golub
b42c7e28f0 Add a type (weightf_t) to output float weights.
Signed-off-by: Mykola Golub <mgolub@mirantis.com>
2015-01-17 08:57:26 -08:00
Mykola Golub
3e2eaa4ba0 osd: use CrushTreeDumper for printing osd tree.
Signed-off-by: Mykola Golub <mgolub@mirantis.com>
2015-01-17 08:57:26 -08:00
Mykola Golub
3f9b4d1f33 crush: use CrushTreeDumper for dumping crush tree.
Signed-off-by: Mykola Golub <mgolub@mirantis.com>
2015-01-17 08:57:26 -08:00
Mykola Golub
26921f43cb crush: introduce a helper class for dumping crush tree.
Signed-off-by: Mykola Golub <mgolub@mirantis.com>
2015-01-17 08:57:26 -08:00
Haomai Wang
4d0e0ae3b5 AsyncConnection: Fix memory leak for AsyncConnection
*_handler will store a reference to AsyncConnection, it need to explicit reset
it.

Signed-off-by: Haomai Wang <haomaiwang@gmail.com>
2015-01-17 19:52:19 +08:00
Josh Durgin
a76e537630 Merge remote-tracking branch 'origin/next' 2015-01-16 14:40:27 -08:00
Josh Durgin
896c8899ac Merge remote-tracking branch 'origin/wip-10271' into next
Reviewed-by: Josh Durgin <jdurgin@redhat.com>
2015-01-16 14:33:59 -08:00
Josh Durgin
a845139d1f Merge pull request #3292 from kylinstorage/rbd-merge-diff-v2
rbd: merge diff files

Reviewed-by: Josh Durgin <jdurgin@redhat.com>
Reviewed-by: Sage Weil <sage@redhat.com>
2015-01-16 12:08:02 -08:00
David Zafman
9231931607 Merge pull request #3318 from XinzeChi/wip-scrub
osd: support schedule scrub between some time defined by users

Reviewed-by David Zafman <dzafman@redhat.com>
2015-01-16 10:36:41 -08:00
João Eduardo Luís
a1f3fdc8f3 Merge pull request #3090 from ceph/wip-mon-fixes
mon: fix issues with mixed-version monitors features

Reviewed-by: Sage Weil <sage@redhat.com>
Signed-off-by: Joao Eduardo Luis <joao@redhat.com>
2015-01-16 18:32:54 +00:00
Joao Eduardo Luis
50547dc3c0 mon: PGMonitor: fix division by zero on stats dump
Signed-off-by: Joao Eduardo Luis <joao@redhat.com>
2015-01-16 18:12:42 +00:00
Yehuda Sadeh
dbaa1420c4 rgw: bilog marker related fixes
Fix the way we parse the marker. Instead of specifying whether it's a
sharded or not sharded bucket, we pass a shard_id. If string itself
points to a singe shard, we'll use the passed shard_id, otherwise we'll
parse the string and determine the shard id by that. In this way when
referencing a single shard we can get the marker with either shard id
specified or not. This works with the non-shard case too.
Adjust the bilog listing function, set it to work with the new
interface. It was broken before, and there are multiple fixes to it.

Signed-off-by: Yehuda Sadeh <yehuda@redhat.com>
2015-01-16 09:12:54 -08:00
Josh Durgin
eee9da430b Merge pull request #3390 from ceph/wip-librbd-coverity
librbd: fix coverity false-positives for tests

Reviewed-by: Josh Durgin <jdurgin@redhat.com>
2015-01-16 08:51:51 -08:00
Joao Eduardo Luis
c4548f68ca pybind: ceph_argparse: validate incorrectly formed targets
Prior to this patch find_cmd_target() would perform the following
parsing for any given command:

- check if it's a "tell" to a parseable CephName
  (i.e., ceph tell <type.id> ...)
  - if so, return <type>, <id>

- check if it's a "tell" to a parseable PG id
  (e.g., ceph tell 0.4a)
  - if so, return 'pg', <pgid>

- check if it's a "pg" command to a parseable PG id
  (e.g., ceph pg 0.4a)
  - if so, return 'pg', <pgid>

- otherwise return 'mon', ''

However, parsing of CephName and CephPgid is performed in a relaxed
fashion, and tightening those checks requirements end up having
nefarious effects on properly formed commands, whereas keeping them
relaxed ends up having us returning 'mon','' in the end for a clearly
malformed target (e.g., 'ceph tell foo ...').

This patch fixes this behavior by adding a new check:

- if command is a "tell" and we were not able to parse either a CephName
  nor a PG id, then explicitely validate the target as a CephName (given
  we would be sending to a monitor anyway, we can just as well validate
  a 'tell' as a CephName).
  - if validation fails, we will propagate exceptions referring to the
    cause of the validation failure.

Fixes: #10439

Signed-off-by: Joao Eduardo Luis <joao@redhat.com>
2015-01-16 16:41:40 +00:00
Joao Eduardo Luis
80a9d99860 mon: Monitor: return 'required_features' on get_required_features()
We were returning 'quorum_features' instead.  This would lead to funny
and weird behavior.  I hate funny.

Backport: emperor,firefly,giant

Signed-off-by: Joao Eduardo Luis <joao@redhat.com>
2015-01-16 16:34:30 +00:00
Joao Eduardo Luis
ab996c141b mon: Elector: output features in handle_propose()
Signed-off-by: Joao Eduardo Luis <joao@redhat.com>
2015-01-16 16:34:30 +00:00
Joao Eduardo Luis
bb48ebe1f0 mon: Elector: put dangling message reference
Backport: emperor,firefly,giant

Signed-off-by: Joao Eduardo Luis <joao@redhat.com>
2015-01-16 16:34:21 +00:00
Joao Eduardo Luis
0a369b9bb2 mon: mkfs compatset may be different from runtime compatset
When we create a monitor we set a given number of compat features on
disk to clearly state the features a given monitor supports -- mostly to
break backward compatibility when such compatibility cannot be
guaranteed.

However, we may wish to toggle some features during runtime; e.g., wait
for all the monitors in the quorum to support a given feature before
flipping a switch and state that all monitors now require feature X.

We are already flipping those switches during runtime, but we weren't
allowing the monitor to set a subset of those features during mkfs.
While the initial approach worked fine with clusters being upgraded and
fresh clusters, it could become weird in a mixed-version environment.

Backport: emperor,firefly,giant

Signed-off-by: Joao Eduardo Luis <joao@redhat.com>
2015-01-16 16:33:51 +00:00
Sage Weil
6b982e4cc0 mon/OSDMonitor: require mon_allow_pool_delete = true to remove pools
This is a simple safety check.  Since we default to true it is currently
opt-in.

Backport: giant, firefly
Signed-off-by: Sage Weil <sage@redhat.com>
2015-01-16 07:54:22 -08:00
Loic Dachary
28f8b1328c Merge pull request #3384 from liewegas/wip-crush-tests
crush: minor reorg of crush unit tests

Reviewed-by: Loic Dachary <ldachary@redhat.com>
2015-01-16 11:49:02 +01:00
Xinze Chi
3ee69e3bc0 osd: fix journal header.committed_up_to
Signed-off-by: Xinze Chi <xmdxcxz@gmail.com>
2015-01-16 08:49:09 +00:00
Xinze Chi
e85197c630 test: add test for osd scrub
Signed-off-by: Xinze Chi <xmdxcxz@gmail.com>
2015-01-16 08:31:16 +00:00
Xinze Chi
f4b94e05cb osd: support schedule scrub between some time defined by users
Signed-off-by: Xinze Chi <xmdxcxz@gmail.com>
2015-01-16 08:30:55 +00:00
Jianpeng Ma
881fe330c4 test: Using different filename for different test case.
Some test case use tmp file to test.But they used same file and create
in the same directory. If we do in parallel, it will cause error.
So different test case use own their tmp file.

Signed-off-by: Jianpeng Ma <jianpeng.ma@intel.com>
2015-01-16 16:14:17 +08:00