Commit Graph

39774 Commits

Author SHA1 Message Date
David Zafman
5b23f5b589 ceph-objectstore-tool: Output only unsupported features when incomatible
Fixes: #11176
Backport: firefly, giant

Signed-off-by: David Zafman <dzafman@redhat.com>
2015-03-20 16:57:40 -07:00
Sage Weil
ef4d5d8bcf Merge pull request #4107 from ceph/wip-11102
osd: only complain about stored vs actual digest if all peers support it

Reviewed-by: Samuel Just <sjust@redhat.com>
2015-03-19 17:16:45 -07:00
Sage Weil
477ac92984 osd: only complain about stored vs actual digest if all peers support it
If we have a mixed cluster of hammer and pre-hammer OSDs, we will fall back
to using 0 as the initial crc32c value.  However, if the primary has a
stored digest, it currently compares its value to the reported value (w/
the wrong initial value) and complains.

There are two possible fixes:
 - avoid storing a digest if all peers don't support it, or
 - avoid complaining on scrub if all peers don't support it.

The latter is easier, and this fix also has the benefit of fixing the bug
even for clusters where this has already happened.

Fixes: #11102
Signed-off-by: Sage Weil <sage@redhat.com>
2015-03-19 16:27:17 -07:00
Samuel Just
9a2ff34d75 PG::find_best_info: reject infos with old last_epoch_started
See doc/dev/osd_internals/last_epoch_started.rst

Reviewed-by: Sage Weil <sage@redhat.com>
Signed-off-by: Samuel Just <sjust@redhat.com>
2015-03-19 15:30:41 -07:00
Sage Weil
cfecd125fe Merge pull request #3988 from ceph/wip-refine-build-configuration-hammer
Refine build configuration for hammer

Reviewed-by: Sage Weil <sage@redhat.com>
2015-03-19 11:31:31 -07:00
Samuel Just
91a5816702 Merge pull request #4105 from athanatos/wip-11110
Wip 11110

Reviewed-by: Sage Weil <sage@redhat.com>
2015-03-19 09:41:58 -07:00
Yehuda Sadeh
f96d58bd88 init-radosgw*: don't require rgw_socket_path to be defined
Fixes: #11159
Backport: hammer, firefly

Scripts required rgw_socket_path to exist in order to start radosgw.
This is not needed.

Reported-by: Dan Mick <dmick@redhat.com>
Signed-off-by: Yehuda Sadeh <yehuda@redhat.com>
(cherry picked from commit 6823bcdcd0)
2015-03-19 09:18:25 -07:00
Samuel Just
b8fa08c692 Merge pull request #4064 from dachary/wip-10488-jerasure-idempotent
mon: informative message when erasure-code-profile set fails

Reviewed-by: Sage Weil <sage@redhat.com>
2015-03-19 08:52:53 -07:00
Samuel Just
3d22b88e49 Merge pull request #4066 from dachary/wip-11144-erasure-code-profile-rm
osd: erasure-code-profile incremental rm before set

Reviewed-by: Sage Weil <sage@redhat.com>
2015-03-19 08:52:45 -07:00
Samuel Just
0712d8d90b PG: ensure that info.last_epoch_started only increases
See doc/dev/osd_internals/last_epoch_started.rst

Fixes: #11110
Signed-off-by: Samuel Just <sjust@redhat.com>
2015-03-19 08:41:40 -07:00
Samuel Just
2956ae278d doc: add last_epoch_started.rst
Signed-off-by: Samuel Just <sjust@redhat.com>
2015-03-19 08:41:38 -07:00
Sage Weil
78790b304b Merge pull request #3898 from jdurgin/wip-rbd-merge-diff
qa: make rbd-fuse exit cleanly with lttng

Reviewed-by: Sage Weil <sage@redhat.com>
2015-03-18 13:18:18 -07:00
Sage Weil
e096593a02 Merge pull request #4071 from athanatos/wip-10718
Wip 10718

Reviewed-by: Sage Weil <sage@redhat.com>
2015-03-18 13:16:53 -07:00
Samuel Just
cce74c7858 Merge pull request #4016 from ceph/wip-11123
osd: fix whiteout handling for delete+create compound ops

Reviewed-by: Samuel Just <sjust@redhat.com>
2015-03-18 12:18:16 -07:00
Samuel Just
2da958464d PG: make sure to update history.last_epoch_started with first write
Otherwise, we might remember the write, but not that the activation
interval was history.last_epoch_started.

Signed-off-by: Samuel Just <sjust@redhat.com>
2015-03-18 11:19:49 -07:00
Loic Dachary
0d52aca0d0 osd: erasure-code-profile incremental rm before set
It is possible for an incremental change to have both a rm and a set for
a given erasure code profile. It only happens when a rm is followed by a
set. When a set is followed by a rm, the rm will remove the pending set
in the incremental change.

The logic is the same for pool create and pool delete.

We must apply the incremental erasure-code-profile removal before the
creation otherwise rm and set in the same proposal will ignore the set.

This fix is minimal. A better change would be that erasure-code-profile
set checks if there is a pending removal and wait_for_finished_proposal
before creating.

http://tracker.ceph.com/issues/11144 Fixes: #11144

Signed-off-by: Loic Dachary <ldachary@redhat.com>
2015-03-18 14:17:00 +01:00
Loic Dachary
b92f9cf73e mon: informative message when erasure-code-profile set fails
When erasure-code-profile set refuses to override an existing profile,
it may be non trivial to figure out why. For instance:

   ceph osd set default ruleset-failure-domain=host

fails with:

   Error EPERM: will not override erasure code profile default

although ruleset-failure-domain=host is documented to be the
default. The error message now includes the two profiles that have been
compared to not be equal so that the user can verify the difference.

   Error EPERM: will not override erasure code profile default
   because the existing profile
   {directory=.libs,k=2,m=1,plugin=jerasure,technique=reed_sol_van}
   is different from the proposed profile
   {directory=.libs,k=2,m=1,plugin=jerasure,ruleset-failure-domain=host,technique=reed_sol_van}

http://tracker.ceph.com/issues/10488 Fixes: #10488

Signed-off-by: Loic Dachary <ldachary@redhat.com>
2015-03-18 11:53:20 +01:00
Sage Weil
c93ab8668f Merge pull request #4057 from ceph/wip-rgw-bootstrap
mon: add bootstrap-rgw profile

Reviewed-by: Yehuda Sadeh <yehuda@redhat.com>
2015-03-17 16:34:25 -07:00
Sage Weil
f5fa25d50f ceph-create-keys: create bootstrap-rgw key
Signed-off-by: Sage Weil <sage@redhat.com>
2015-03-17 16:16:01 -07:00
Sage Weil
679e266f73 mon: add 'bootstrap-rgw' profile
This profile is allowed to create client.rgw.* librados users.  They have
access to any pool, which is pretty coarse.

Signed-off-by: Sage Weil <sage@redhat.com>
2015-03-17 16:16:01 -07:00
Boris Ranto
01379bd359 Compile test_build_librgw only if WITH_BUILD_TESTS 2015-03-17 12:48:22 -07:00
Samuel Just
ec3a6d74a5 Merge pull request #3910 from athanatos/wip-11027
Wip 11027

Reviewed-by: Kefu Chai <tchaikov@gmail.com>
Reviewed-by: Sage Weil <sage@redhat.com>
2015-03-17 10:28:56 -07:00
Samuel Just
773039d313 Merge pull request #3918 from tchaikov/hammer-fix-leaks-in-C_TwoContexts
osdc: fix a memory leak in C_TwoContexts

Reviewed-by: Samuel Just <sjust@redhat.com>
2015-03-17 10:28:19 -07:00
Samuel Just
ad167fef54 Merge pull request #3972 from tchaikov/hammer-fix-msg-leak
osd: fix a msg leak

Reviewed-by: Sage Weil <sage@redhat.com>
2015-03-17 10:27:06 -07:00
Sage Weil
1c2041752b osd: use (robust) helper for setting exists or clearing whiteout
The current blanket check in prepare_transaction() will trigger only when
there is a net obs.exists change from the commited obs to new_obs.
However, this misses the case where the first osd_op is a delete and then a
subsequent osd_op recreates the object.  Changing the whiteout check to
look only at new_obs does not work because it fails to understand when
_delete_oid sets the whiteout and will simply clear it again.

In order to support sequences of delete + create in general, we need to do
the whiteout flag clearing when the actual create happens (to match the
fact that we set it when we process the delete osd_op).  Use a helper to
do this and consolidate most other obs.exists = true code to use it.

Backport: giant, firefly
Signed-off-by: Sage Weil <sage@redhat.com>
2015-03-17 10:26:13 -07:00
Samuel Just
a6c685c805 Merge pull request #3994 from athanatos/wip-11069
PGLog: split divergent priors as well

Reviewed-by: Kefu Chai <tchaikov@gmail.com>
2015-03-17 10:15:46 -07:00
Samuel Just
f5a2aef3db PGLog::merge_log: in tail extend case, log.log might be empty
Even if the tail != last_update, the log might be empty due to split
moving all entries into other logs.

Fixes: 10718
Signed-off-by: Samuel Just <sjust@redhat.com>
2015-03-17 10:07:03 -07:00
Samuel Just
bbe231a61f PGLog: split divergent priors as well
Signed-off-by: Samuel Just <sjust@redhat.com>
2015-03-16 14:34:03 -07:00
Josh Durgin
90a03937e9 PendingReleaseNotes: warn about lttng LD_PRELOAD for daemons
Signed-off-by: Josh Durgin <jdurgin@redhat.com>
2015-03-16 13:42:52 -07:00
Sage Weil
e219918a4f Merge pull request #3945 from tchaikov/hammer-fix-xio-requeue
XIO: Handle requeue case of XIO messages
2015-03-16 12:50:49 -07:00
Sage Weil
ec2d8c9163 Merge pull request #3977 from tchaikov/fix-xio-loop-conn-cleanup
Fix XioLoopbackConnection Lifecycle.

Reviewed-by: Sage Weil <sage@redhat.com>
2015-03-16 12:48:35 -07:00
Sage Weil
53cc492bee ceph_test_rados_tier: add test case for delete+create compound ops
This triggers #11123, originally observed when rgw does a delete + create
sequence in a single op and the whiteout gets left behind.

Signed-off-by: Sage Weil <sage@redhat.com>
2015-03-16 11:35:43 -07:00
Samuel Just
93ef911bbf PG: add config to ignore history les in find_best_info
Signed-off-by: Samuel Just <sjust@redhat.com>
2015-03-16 07:44:43 -07:00
branto1
049cb29b59 Merge pull request #4004 from rohanmars/wip-refine-build-configuration-hammer
fixes to compile librados on rhel 5.9
2015-03-16 13:24:11 +01:00
Rohan Mars
d06c1d7097 rhel 5.9 port fixes to compile librados only
Signed-off-by: Rohan Mars <code@rohanmars.com>
2015-03-15 12:28:06 -07:00
David Zafman
a69055f7d5 Merge pull request #3982 from dzafman/wip-10678-2
Update ceph.8 man page to match ceph -h output

Reviewed-by: Nilamdyuti Goswami <ngoswami@redhat.com>
2015-03-13 17:58:56 -07:00
David Zafman
f4bc48d954 doc: Fix ceph command manpage to match ceph -h (hammer)
Include rebuilt man/ceph.8

Fixes: #10678

Signed-off-by: David Zafman <dzafman@redhat.com>
2015-03-13 17:00:10 -07:00
David Zafman
9495de4726 doc: Fix ceph command manpage to match ceph -h (firefly)
Improve synopsis section
Fixes: #10676

Signed-off-by: David Zafman <dzafman@redhat.com>
(cherry picked from commit 9ac488c1eb)

Conflicts:

	doc/man/8/ceph.rst
	man/ceph.8
2015-03-13 16:59:39 -07:00
Samuel Just
5680456e35 PGBackend: do not rewrite ec object oi checksums
Deep scrub does not actually give us the whole-object checksum for an ec
object, only the checksum for the first shard.  We ignore it in scrub
for ec pools anyway in be_select_auth_object.

Signed-off-by: Samuel Just <sjust@redhat.com>
2015-03-13 15:29:53 -07:00
Samuel Just
e0bf13264f PGBackend: add debug option to rewrite digest even if present
Related: #11027
Signed-off-by: Samuel Just <sjust@redhat.com>
2015-03-13 15:29:53 -07:00
Samuel Just
3858d0bf76 ReplicatedPG: finish_ctx: do not assume that the oi is for the head object
If we are setting the oi on the clone object, we want to update the
mod_desc.

Fixes: 11027
Signed-off-by: Samuel Just <sjust@redhat.com>
2015-03-13 15:29:50 -07:00
Boris Ranto
aceb860979 Build ceph-dencoder if server and mds for now 2015-03-13 14:42:53 +01:00
Ilya Dryomov
c365cac767 rbd: regenerate rbd(8) man page
merge-diff and status commands, --image-features and --image-shared
options, other stuff.

Signed-off-by: Ilya Dryomov <idryomov@gmail.com>
(cherry picked from commit 356a749f63)
2015-03-12 14:37:00 -07:00
David Zafman
416cbff0b4 doc: Fix typo in ceph pg dump_stuck usage in man page
Cause by 9db596974c

Signed-off-by: David Zafman <dzafman@redhat.com>
2015-03-12 14:33:52 -07:00
Josh Durgin
4304951b58 Merge pull request #3981 from ceph/wip-librbd-invalidate-object-map
librbd: invalid snapshot object maps should only affect the snapshot

Reviewed-by: Josh Durgin <jdurgin@redhat.com>
2015-03-12 14:27:37 -07:00
Loic Dachary
1cba9b821f Merge pull request #3978 from tchaikov/hammer-sca-fixes
sca fixes ported from master

Reviewed-by: Loic Dachary <ldachary@redhat.com>
2015-03-12 22:06:15 +01:00
Jason Dillaman
ba77bda554 librbd: invalidating snapshot object maps should set snapshot flag
Instead of setting the HEAD image flag to indicate an invalid
object map, set the flag for the specific snapshot that is
invalid.

Signed-off-by: Jason Dillaman <dillaman@redhat.com>
2015-03-12 13:20:59 -04:00
Jason Dillaman
ba4bb22bc1 test_cls_rbd: verify set_flags updates snapshots
Signed-off-by: Jason Dillaman <dillaman@redhat.com>
2015-03-12 13:02:54 -04:00
Jason Dillaman
fa25b84ede cls_rbd_client: add snap_id param to set_flags
Signed-off-by: Jason Dillaman <dillaman@redhat.com>
2015-03-12 12:59:17 -04:00
Jason Dillaman
2d86898de1 cls_rbd: set_flags can now update snapshots
It's possible for an object map to be invalid only for
a snapshot, so allow snapshot flags to be updated. This
will also be required when rebuilding the object map and
clearing the invalid flag.

Signed-off-by: Jason Dillaman <dillaman@redhat.com>
2015-03-12 12:56:14 -04:00