Commit Graph

30002 Commits

Author SHA1 Message Date
Josh Durgin
ebb261f978 buffer: abstract raw data related methods
Create a virtual function that returns the raw data instead of
accessing it directly, so raw buffers backed by pipes can be used as
buffer::ptrs. Make raw::is_page_aligned() virtual so it will not need
to look at the raw data for a pipe-based buffer.

Signed-off-by: Josh Durgin <josh.durgin@inktank.com>
2013-11-22 16:13:36 -08:00
John Wilkins
740d406e37 doc: Clarified description on scrub load threshold.
fixes: #6735

Signed-off-by: John Wilkins <john.wilkins@inktank.com>
2013-11-22 15:49:16 -08:00
John Wilkins
8a3ed9be2f doc: Fixed instruction.
Signed-off-by: John Wilkins <john.wilkins@inktank.com>
2013-11-22 15:48:25 -08:00
John Wilkins
e8ccb91fd3 Merge branch 'master' of https://github.com/ceph/ceph 2013-11-22 15:16:18 -08:00
John Wilkins
fc5789da01 doc: Added commentary to configure pg defaults. Clarified size commentary.
Signed-off-by: John Wilkins <john.wilkins@inktank.com>
2013-11-22 15:15:41 -08:00
John Wilkins
dceaef439d doc: PG splitting added to docs.
fixes: #6727

Signed-off-by: John Wilkins <john.wilkins@inktank.com>
2013-11-22 15:14:46 -08:00
John Wilkins
d39676b164 doc: Took out "future" reference to namespaces.
Signed-off-by: John Wilkins <john.wilkins@inktank.com>
2013-11-22 15:13:49 -08:00
John Wilkins
9a55d89250 doc: Clarification of terms.
fixes: #6749

Signed-off-by: John Wilkins <john.wilkins@inktank.com>
2013-11-22 12:59:40 -08:00
Yehuda Sadeh
b35fc1bc2e rgw: lower some debug message
Fixes: #6084
Backport: dumpling, emperor

Reported-by: Ron Allred <rallred@itrefined.com>
Signed-off-by: Yehuda Sadeh <yehuda@inktank.com>
2013-11-22 07:08:29 -08:00
Yehuda Sadeh
561e7b0b28 rgw: initialize RGWUserAdminOpState::system_specified
Fixes: #6829
Backport: dumpling, emperor
We didn't init this member variable, which might cause that when
modifying user info that has this flag set the 'system' flag might
inadvertently reset.

Signed-off-by: Yehuda Sadeh <yehuda@inktank.com>
2013-11-22 07:06:35 -08:00
Gregory Farnum
203065c076 Merge pull request #857 from ceph/wip-6796
mon: OSDMonitor: receive CephInt on 'osd pool set' instead on CephString

Reviewed-by: Greg Farnum <greg@inktank.com>
2013-11-21 18:56:49 -08:00
Joao Eduardo Luis
b2ee9352fc PendingReleaseNotes: mention 6796 and 'ceph osd pool set' behavior change
Signed-off-by: Joao Eduardo Luis <joao.luis@inktank.com>
2013-11-22 02:49:28 +00:00
Joao Eduardo Luis
7c6d43cf5b doc: rados: operations: pools: document 'osd pool set foo hashpspool'
Signed-off-by: Joao Eduardo Luis <joao.luis@inktank.com>
2013-11-22 02:49:27 +00:00
Joao Eduardo Luis
49d2fb7142 mon: OSDMonitor: don't crash if formatter is invalid during osd crush dump
Code would assume a formatter would always be defined. If a 'plain'
formatter or even an invalid formatter were to be supplied, the monitor
would crash and burn in poor style.

Fixes: 6820
Backport: emperor

Signed-off-by: Joao Eduardo Luis <joao.luis@inktank.com>
2013-11-22 02:49:20 +00:00
Joao Eduardo Luis
337195f046 mon: OSDMonitor: receive CephInt on 'osd pool set' instead on CephString
This partially reverts 2fe0d0d9 in order to allow Emperor monitors to
forward mon command messages to Dumpling monitors without breaking a
cluster.

The need for this patch became obvious after issue #6796 was triggered.
Basically, in a mixed cluster of Emperor/Dumpling monitors, if a client
happens to obtain the command descriptions from an Emperor monitor and
then issue an 'osd pool set' this can turn out in one of two ways:

1. client msg gets forwarded to an Emperor leader and everything's a-okay;
2. client msg gets forwarded to a Dumpling leader and the string fails to
be interpreted without the monitor noticing, thus leaving the monitor with
an uninitialized variable leading to trouble.

If 2 is triggered, a multitude of bad things can happen, such as thousands
of pg splits, due to a simple 'osd set pool foo pg_num 128' turning out
to be interpreted as 109120394 or some other random number.

This patch is such that we make sure the client sends an integer instead
of a string. We also make sure to interpret anything the client sends as
possibly being a string, or an integer.

Fixes: 6796
Backport: emperor

Signed-off-by: Joao Eduardo Luis <joao.luis@inktank.com>
2013-11-22 02:49:11 +00:00
Joao Eduardo Luis
7191bb2b24 mon: OSDMonitor: drop cmdval_get() for unused variable
We don't ever use any value as a float, so just drop obtaining it.  This
makes it easier to partially revert 2fe0d0d9 in an upcoming patch.

Backport: emperor

Signed-off-by: Joao Eduardo Luis <joao.luis@inktank.com>
2013-11-22 02:48:54 +00:00
Joao Eduardo Luis
50868a528d qa: workunits: mon: ping.py: test 'ceph ping'
Basic testing by forcing each monitor out of quorum at a time and making
sure they still reply to ping requests.

Fixes: #6705

Signed-off-by: Joao Eduardo Luis <joao.luis@inktank.com>
2013-11-22 01:43:06 +00:00
John Wilkins
6b5aaf3e6d doc: Minor updates to manual deployment document.
Signed-off-by: John Wilkins <john.wilkins@inktank.com>
2013-11-21 13:52:36 -08:00
Loic Dachary
3502d4f4b9 init: fix typo s/{$update_crush/${update_crush/
Signed-off-by: Dietmar Maurer <dietmar@proxmox.com>
Reviewed-by: Loic Dachary <loic@dachary.org>
2013-11-21 18:51:06 +01:00
John Wilkins
29178d83ab doc: Cleanup of Add/Remove OSDs.
Signed-off-by: John Wilkins <john.wilkins@inktank.com>
2013-11-20 19:29:31 -08:00
John Wilkins
634295d181 doc: Cleanup on Add/Remove monitor.
Signed-off-by: John Wilkins <john.wilkins@inktank.com>
2013-11-20 19:28:27 -08:00
John Wilkins
de2bcd5da9 doc: Added a manual deployment doc.
Signed-off-by: John Wilkins <john.wilkins@inktank.com>
2013-11-20 19:27:47 -08:00
John Wilkins
10b4bf6ab4 doc: Added manual deployment section to index.
Signed-off-by: John Wilkins <john.wilkins@inktank.com>
2013-11-20 19:27:20 -08:00
Josh Durgin
b493178f6c Merge branch 'next' 2013-11-20 18:38:59 -08:00
Josh Durgin
f753d56a9e test: use older names for module setup/teardown
setUp and tearDown require nosetests 0.11, but 0.10.4 is the latest on
centos. Rename to use the older aliases, which still work with newer
versions of nosetests as well.

Fixes: #6368
Signed-off-by: Josh Durgin <josh.durgin@inktank.com>
Reviewed-by: Dan Mick <dan.mick@inktank.com>
2013-11-20 18:37:32 -08:00
John Wilkins
72bba1f31d doc: Added fixes to osd reporting section.
Signed-off-by: John Wilkins <john.wilkins@inktank.com>
2013-11-20 14:28:18 -08:00
Dan Mick
a3f4148467 Merge pull request #854 from ceph/wip-osd-bench-size
osd: fix bench block size

Reviewed-by: Dan Mick <dan.mick@inktank.com>
2013-11-19 15:41:11 -08:00
David Zafman
86e4fd4f7a osd: Backfill peers should not be included in the acting set
Create actingbackfill in choose_acting()
Use first backfill target as previously
Add asserts to catch inappropriate use of actingbackfill
Use is_acting() in proc_replica_info() because this is before actingbackfill set
Remove backfill_targets from stray_set to prevent purge_strays from removing collection
Can't check is_replica() anymore for backfill operations since a backfill isn't
a replica due to acting set change.

fixes: #5855

Signed-off-by: David Zafman <david.zafman@inktank.com>
2013-11-19 14:45:20 -08:00
David Zafman
19dbf7bc1e osd: Simple dout() fix
Signed-off-by: David Zafman <david.zafman@inktank.com>
2013-11-19 10:06:24 -08:00
Samuel Just
82e1e7e9be PG: remove unused Peering::flushed
This has been unused for quite some time!

Signed-off-by: Samuel Just <sam.just@inktank.com>
2013-11-19 10:06:24 -08:00
Samuel Just
9ff0150963 PG: don't requeue waiting_for_active unless flushed and active
Signed-off-by: Samuel Just <sam.just@inktank.com>
2013-11-19 10:06:24 -08:00
Samuel Just
41272e71cd ReplicatedPG/PGBackend: block all ops other than Pull prior to active
Previously, it was guarranteed that prior to activation, flushed would
be false on a replica.  Now, there may be a period where flushed is true
due to the flush in Stray completing prior to activation and flushed
being false again.  This is necessary since shortly it won't be possible
to determine from the osdmap whether a stray will be activated in a
particular interval.

Signed-off-by: Samuel Just <sam.just@inktank.com>
2013-11-19 10:06:24 -08:00
Samuel Just
6c1aaa4f80 PG: call start_flush in Active() instead of using do_pending_flush()
This way, we don't block an OpWQ thread while waiting on the filestore.

Signed-off-by: Samuel Just <sam.just@inktank.com>
2013-11-19 10:06:24 -08:00
Samuel Just
e657369c07 PG,ReplicatedPG: allow multiple flushes to be in progress
Shortly, we won't know precisely when to flush, so Strays
may need to flush twice.

Signed-off-by: Samuel Just <sam.just@inktank.com>
2013-11-19 10:06:24 -08:00
David Zafman
da7755324d ReplicatedPG,PG: move duplicate FlushedEvt logic info on_flushed()
Signed-off-by: Samuel Just <sam.just@inktank.com>
2013-11-19 10:06:24 -08:00
Samuel Just
68e0e06370 doc: warn about #6796 in release notes
Signed-off-by: Greg Farnum <greg@inktank.com>
Reviewed-by: Samuel Just <sam.just@inktank.com>
2013-11-18 19:35:14 -08:00
Josh Durgin
574cb61efe man: re-generate changed man pages
Signed-off-by: Josh Durgin <josh.durgin@inktank.com>
2013-11-18 18:13:40 -08:00
rallred
0de0efa936 RBD Documentation and Example fixes for --image-format
- RBD Documentation, --image-format wrongly specified as --format in examples
 - RBD Documentation, better describe image format, to differentiate from --format

Reviewed-by: Josh Durgin <josh.durgin@inktank.com>
2013-11-18 18:12:38 -08:00
Josh Durgin
40a76ef0d0 osd: fix bench block size
The command was declared to take 'size' in dumpling, but was trying to
read 'bsize' instead, so it always used the default of 4MiB. Change
the bench command to read 'size', so it matches what existing clients
are sending.

Fixes: #6795
Backport: emperor, dumpling
Signed-off-by: Josh Durgin <josh.durgin@inktank.com>
2013-11-18 14:39:23 -08:00
Samuel Just
2301c04aad Merge branch 'next' 2013-11-18 12:59:04 -08:00
Samuel Just
703f9a09e2 Revert "JounralingObjectStore: journal->committed_thru after replay"
committed_thru can race with the sync thread.

This reverts commit d8d27f13e1.
Reviewed-by: Greg Farnum <greg@inktank.com>
2013-11-18 12:58:27 -08:00
Samuel Just
f0c89311f6 release-notes: clarify that the osd data directory needs to be mounted
Signed-off-by: Samuel Just <sam.just@inktank.com>
Reviewed-by: Greg Farnum <greg@inktank.com>
2013-11-15 13:08:45 -08:00
Samuel Just
ba67b9f0f7 doc/release-notes.rst: v0.72.1 release notes
Signed-off-by: Samuel Just <sam.just@inktank.com>
Reviewed-by: Josh Durgin <josh.durgin@inktank.com>
2013-11-15 11:50:40 -08:00
Wido den Hollander
96d7a2e905 doc: Fix wrong package names on Debian Wheezy for building Ceph 2013-11-15 12:47:11 +01:00
Wido den Hollander
f6d20ceedb Merge branch 'master' of https://github.com/ceph/ceph 2013-11-15 12:46:04 +01:00
Samuel Just
7e53473a7a Merge remote-tracking branch 'upstream/next' 2013-11-14 21:40:01 -08:00
Samuel Just
878f3540d1 ceph-filestore-tool: add tool for fixing lost objects
Used to repair: #6761
Backport: emperor
Signed-off-by: Samuel Just <sam.just@inktank.com>
Reviewed-by: Greg Farnum <greg@inktank.com>
2013-11-14 21:38:38 -08:00
Samuel Just
bf7c09a893 osd_types: fix object_info_t backwards compatibility
Shipping an object_info_t to a replica with the dirty
flag set would cause the replica to interpret that
object as being lost.  Instead, we always encode
lost into the slot where dumpling expects to find
it and add another field at the end of the encoding.

Backport: emperor
Fixes: #6761
Signed-off-by: Samuel Just <sam.just@inktank.com>
Reviewed-by: Greg Farnum <greg@inktank.com>
2013-11-14 21:38:38 -08:00
Samuel Just
1212a2119f CephContext: unregister lockdep after stopping service thread
Fixes: #6769
Fixes: #6674
Signed-off-by: Samuel Just <sam.just@inktank.com>
Reviewed-by: Josh Durgin <josh.durgin@inktank.com>
2013-11-14 14:07:23 -08:00
Samuel Just
dd9d8b0202 ReplicatedPG: test for missing head before find_object_context
find_object_context doesn't return EAGAIN for a missing head.
I chose not to change that behavior since it might hide bugs
in the future.  All other callers check for missing on head
before calling into find_object_context because we potentially
need head or snapdir to map a snapid onto a clone.

Backport: emperor
Fixes: 6758
Signed-off-by: Samuel Just <sam.just@inktank.com>
Reviewed-by: Josh Durgin <josh.durgin@inktank.com>
Reviewed-by: David Zafman <david.zafman@inktank.com>
2013-11-14 12:25:36 -08:00