]> git.apps.os.sepia.ceph.com Git - ceph.git/log
ceph.git
10 years agoqa: support running under non privileged user
Loic Dachary [Tue, 1 Jul 2014 06:42:58 +0000 (08:42 +0200)]
qa: support running under non privileged user

If the test is run against a cluster started with vstart.sh (which is
the case for make check), the --asok-does-not-need-root disables the use
of sudo and allows the test to run without requiring privileged user
permissions.

Signed-off-by: Loic Dachary <loic@dachary.org>
(cherry picked from commit 522174b066044e51a7019bd6cad81117e83c394e)

10 years agoqa/workunits/cephtool/test.sh: sudo ceph daemon
Sage Weil [Mon, 30 Jun 2014 23:38:10 +0000 (16:38 -0700)]
qa/workunits/cephtool/test.sh: sudo ceph daemon

Signed-off-by: Sage Weil <sage@inktank.com>
(cherry picked from commit bcc09f93761d46202742ca85cce498a352edd494)

10 years agoqa/workunits: cephtool: fix 'osd bench' test
Joao Eduardo Luis [Wed, 25 Jun 2014 20:25:29 +0000 (21:25 +0100)]
qa/workunits: cephtool: fix 'osd bench' test

Commit 7dc93a9651f602d9c46311524fc6b54c2f1ac595 fixed an incorrect
behavior with the OSD's 'osd bench' value hard-caps.  The test wasn't
appropriately modified unfortunately.

Signed-off-by: Joao Eduardo Luis <joao.luis@inktank.com>
(cherry picked from commit 48e38ac6323f4a0e06b0dedd37ecd10dc339b1e3)

10 years agoqa/workunits: cephtool: only run heap profiler test if tcmalloc enabled
Joao Eduardo Luis [Wed, 25 Jun 2014 00:48:24 +0000 (01:48 +0100)]
qa/workunits: cephtool: only run heap profiler test if tcmalloc enabled

Signed-off-by: Joao Eduardo Luis <joao.luis@inktank.com>
(cherry picked from commit 4b0809a13eb363a15e52a6a57372a0a31a64cef8)

10 years agoqa/workunits: cephtool: set +e for the tcmalloc tests
Joao Eduardo Luis [Tue, 24 Jun 2014 22:16:17 +0000 (23:16 +0100)]
qa/workunits: cephtool: set +e for the tcmalloc tests

Avoids failing the tests when tcmalloc is not present

Signed-off-by: Joao Eduardo Luis <joao.luis@inktank.com>
(cherry picked from commit 5c4616e100297ba8639919aca7a9cb59e4bda54a)

10 years agoqa/workunits: cephtool: delete unnecessary function calls
Joao Eduardo Luis [Tue, 24 Jun 2014 21:47:31 +0000 (22:47 +0100)]
qa/workunits: cephtool: delete unnecessary function calls

Signed-off-by: Joao Eduardo Luis <joao.luis@inktank.com>
(cherry picked from commit 67255435151627314cc2fc38732d4fb5efddc3cc)

10 years agoqa/workunits: cephtool: disable bash debug when not running tests
Joao Eduardo Luis [Tue, 24 Jun 2014 21:46:44 +0000 (22:46 +0100)]
qa/workunits: cephtool: disable bash debug when not running tests

Signed-off-by: Joao Eduardo Luis <joao.luis@inktank.com>
(cherry picked from commit 946bd0dad4b027326b03c13405782b99ef0f91b2)

10 years agoqa/workunits: cephtool: allow running individual tests
Joao Eduardo Luis [Tue, 24 Jun 2014 21:39:34 +0000 (22:39 +0100)]
qa/workunits: cephtool: allow running individual tests

Signed-off-by: Joao Eduardo Luis <joao.luis@inktank.com>
(cherry picked from commit 5d26575ef2d31d745ec4aa69ca1501cd76e5e8db)

10 years agoqa/workunits: cephtool: cleanup state after erasure-code-profile test
Joao Eduardo Luis [Tue, 24 Jun 2014 19:55:27 +0000 (20:55 +0100)]
qa/workunits: cephtool: cleanup state after erasure-code-profile test

Signed-off-by: Joao Eduardo Luis <joao.luis@inktank.com>
(cherry picked from commit f4184086d0d647e064e34308f678ef889e13c373)

10 years agoqa/workunits: cephtool: add/remove comments
Joao Eduardo Luis [Wed, 25 Jun 2014 00:17:58 +0000 (01:17 +0100)]
qa/workunits: cephtool: add/remove comments

Signed-off-by: Joao Eduardo Luis <joao.luis@inktank.com>
(cherry picked from commit 780424df3a107c7da57fc28d64f9e7a4bb47f8e8)

10 years agoqa/workunits: cephtool: split into properly indented functions
Joao Eduardo Luis [Wed, 25 Jun 2014 23:55:46 +0000 (00:55 +0100)]
qa/workunits: cephtool: split into properly indented functions

The test was a big sequence of commands being run and it has been growing
organically for a while, even though it has maintained a sense of
locality with regard to the portions being tested.

This patch intends to split the commands into functions, allowing for a
better semantic context and easier expansion.  On the other hand, this
will also allow us to implement mechanisms to run specific portions of
the test instead of always having to run the whole thing just to test a
couple of lines down at the bottom (or have to creatively edit the test).

Signed-off-by: Joao Eduardo Luis <joao.luis@inktank.com>
(cherry picked from commit 3d14a96f4b2b7094d05ead1dec7547d165857e31)

Conflicts:
qa/workunits/cephtool/test.sh

10 years agoqa/workunits: cephtool: move test line to where it's more appropriate
Joao Eduardo Luis [Wed, 25 Jun 2014 00:12:55 +0000 (01:12 +0100)]
qa/workunits: cephtool: move test line to where it's more appropriate

Signed-off-by: Joao Eduardo Luis <joao.luis@inktank.com>
(cherry picked from commit 04658b7b2b5f98ae81ffb3f77303745e6d46eb81)

10 years agoqa/workunits: cephtool: split into functions
Joao Eduardo Luis [Wed, 25 Jun 2014 00:11:52 +0000 (01:11 +0100)]
qa/workunits: cephtool: split into functions

Signed-off-by: Joao Eduardo Luis <joao.luis@inktank.com>
(cherry picked from commit db6cc133ba4bb38b3c11eb835fd3983dc2f6b00e)

Conflicts:
qa/workunits/cephtool/test.sh

10 years agomon: test that pools used in tiers cannot be removed
Loic Dachary [Fri, 20 Jun 2014 07:38:39 +0000 (09:38 +0200)]
mon: test that pools used in tiers cannot be removed

Signed-off-by: Loic Dachary <loic@dachary.org>
(cherry picked from commit 39a4b78177cb9896ff35ab05bcf8774bfc934f3a)

10 years agoqa/workunits/cephtool: test setting options using SI units
Joao Eduardo Luis [Fri, 23 May 2014 16:02:23 +0000 (17:02 +0100)]
qa/workunits/cephtool: test setting options using SI units

Signed-off-by: Joao Eduardo Luis <joao.luis@inktank.com>
(cherry picked from commit 38405d3554dfb0caf2b0a2c010b95a61bdb99349)

Conflicts:
qa/workunits/cephtool/test.sh

10 years agomon: OSDMonitor: be scary about inconsistent pool tier ids
Joao Eduardo Luis [Wed, 2 Jul 2014 19:19:19 +0000 (20:19 +0100)]
mon: OSDMonitor: be scary about inconsistent pool tier ids

We may not crash your cluster, but you'll know that this is not something
that should have happened.  Big letters makes it obvious.  We'd make them
red too if we bothered to look for the ANSI code.

Signed-off-by: Joao Eduardo Luis <joao.luis@inktank.com>
(cherry picked from commit 8e5a8daf98052954f3880d2d3516841b5062466b)

10 years agoosd: pg_pool_t: clear tunables on clear_tier()
Joao Eduardo Luis [Wed, 2 Jul 2014 18:47:52 +0000 (19:47 +0100)]
osd: pg_pool_t: clear tunables on clear_tier()

Signed-off-by: Joao Eduardo Luis <joao.luis@inktank.com>
(cherry picked from commit 64bdf6c92bc44adad5a49b9dc4f674789cee80b0)

10 years agomon: OSDMonitor: limit tier-specific pool set/get on non-tier pools
Joao Eduardo Luis [Wed, 2 Jul 2014 18:46:48 +0000 (19:46 +0100)]
mon: OSDMonitor: limit tier-specific pool set/get on non-tier pools

Fixes: 8696
Signed-off-by: Joao Eduardo Luis <joao.luis@inktank.com>
(cherry picked from commit f131dfbaedf6f451572e7aa3a83f653912122953)

10 years agomon/OSDMonitor: improve no-op cache_mode set check
Sage Weil [Thu, 24 Jul 2014 17:06:31 +0000 (10:06 -0700)]
mon/OSDMonitor: improve no-op cache_mode set check

If we have a pending pool value but the cache_mode hasn't changed, this is
still a no-op (and we don't need to block).

Backport: firefly
Signed-off-by: Sage Weil <sage@redhat.com>
(cherry picked from commit 67d13d76f5692fa20649ea877f254c34094c11f6)

10 years agomon: OSDMonitor: disallow nonsensical cache-mode transitions
Joao Eduardo Luis [Sat, 3 May 2014 02:42:19 +0000 (03:42 +0100)]
mon: OSDMonitor: disallow nonsensical cache-mode transitions

Fixes: 8155
Signed-off-by: Joao Eduardo Luis <joao.luis@inktank.com>
(cherry picked from commit fd970bbc95d89bf66c9551feca17ac0afbf4d1e2)

10 years agomon: OSDMonitor: return immediately if 'osd tier cache-mode' is a no-op
Joao Eduardo Luis [Tue, 29 Apr 2014 17:03:56 +0000 (18:03 +0100)]
mon: OSDMonitor: return immediately if 'osd tier cache-mode' is a no-op

Signed-off-by: Joao Eduardo Luis <joao.luis@inktank.com>
(cherry picked from commit d01aa5bff30441eec1ffaa3e59a21187f8478475)

10 years agoosd/ReplicatedPG: debug obc locks
Sage Weil [Wed, 23 Jul 2014 01:01:14 +0000 (18:01 -0700)]
osd/ReplicatedPG: debug obc locks

Signed-off-by: Sage Weil <sage@redhat.com>
(cherry picked from commit 356af4bf46d6387e2f1a59646548f9a77e49e5f8)

10 years agoosd/ReplicatedPG: greedily take write_lock for copyfrom finish, snapdir
Sage Weil [Tue, 22 Jul 2014 20:16:11 +0000 (13:16 -0700)]
osd/ReplicatedPG: greedily take write_lock for copyfrom finish, snapdir

In the cases where we are taking a write lock and are careful
enough that we know we should succeed (i.e, we assert(got)),
use the get_write_greedy() variant that skips the checks for
waiters (be they ops or backfill) that are normally necessary
to avoid starvation.  We don't care about staration here
because our op is already in-progress and can't easily be
aborted, and new ops won't start because they do make those
checks.

Fixes: #8889
Signed-off-by: Sage Weil <sage@redhat.com>
(cherry picked from commit 6fe27823b8459271bf0c0e807493bb7cf1e4559b)

10 years agoosd: allow greedy get_write() for ObjectContext locks
Sage Weil [Tue, 22 Jul 2014 20:11:42 +0000 (13:11 -0700)]
osd: allow greedy get_write() for ObjectContext locks

There are several lockers that need to take a write lock
because there is an operation that is already in progress and
know it is safe to do so.  In particular, they need to skip
the starvation checks (op waiters, backfill waiting).

Signed-off-by: Sage Weil <sage@redhat.com>
(cherry picked from commit 09626501d7a0ff964027fd7a534465b76bad23cb)

10 years agoqa/workunits/rest/test.py: make osd create test idempotent
Sage Weil [Wed, 2 Jul 2014 17:38:43 +0000 (10:38 -0700)]
qa/workunits/rest/test.py: make osd create test idempotent

Avoid possibility that we create multiple OSDs do to retries by passing in
the optional uuid arg.  (A stray osd id will make the osd tell tests a
few lines down fail.)

Fixes: #8728
Signed-off-by: Sage Weil <sage@inktank.com>
(cherry picked from commit bb3e1c92b6682ed39968dc5085b69c117f43cbb0)

10 years agoenforce rados put aligment
Lluis Pamies-Juarez [Wed, 18 Jun 2014 17:00:09 +0000 (10:00 -0700)]
enforce rados put aligment

Signed-off-by: Lluis Pamies-Juarez <lluis.pamies-juarez@hgst.com>
(cherry picked from commit 304b08a23a3db57010078046955a786fe3589ef8)
(cherry picked from commit dece65064d949b5afcc359cd408615883b5e002a)

10 years agouse llrintl when converting double to micro
Sage Weil [Thu, 31 Jul 2014 22:39:40 +0000 (15:39 -0700)]
use llrintl when converting double to micro

This avoids rounding error (noticeable on i386).

Backport: firefly
Signed-off-by: Sage Weil <sage@redhat.com>
(cherry picked from commit 80911736bd61b6b88eac0974d24f21c15c5385a4)

Conflicts:
src/mon/OSDMonitor.cc

10 years agomsg/SimpleMessenger: drop local_conneciton priv link on shutdwon
Sage Weil [Fri, 25 Jul 2014 01:22:22 +0000 (18:22 -0700)]
msg/SimpleMessenger: drop local_conneciton priv link on shutdwon

This breaks ref cycles between the local_connection and session, and let's
us drop the explicit set_priv() calls in OSD::shutdown().

Signed-off-by: Sage Weil <sage@redhat.com>
(cherry picked from commit 63c1711a9e237c14d137131f56751970ad1567b1)

10 years ago0.80.5 v0.80.5
Jenkins [Tue, 29 Jul 2014 12:24:39 +0000 (05:24 -0700)]
0.80.5

11 years agoosd: cancel agent_timer events on shutdown
Sage Weil [Fri, 9 May 2014 15:41:33 +0000 (08:41 -0700)]
osd: cancel agent_timer events on shutdown

We need to cancel all agent timer events on shutdown.  This also needs to
happen early so that any in-progress events will execute before we start
flushing and cleaning up PGs.

Backport: firefly
Signed-off-by: Sage Weil <sage@inktank.com>
(cherry picked from commit c0dc245b662f1f9c640d7dd15fdf4cf26e729782)

Conflicts:
src/osd/OSD.cc

11 years agoosd: s/applying repop/canceling repop/
Sage Weil [Tue, 8 Jul 2014 23:11:44 +0000 (16:11 -0700)]
osd: s/applying repop/canceling repop/

The 'applying' language dates back to when we would wait for acks from
replicas before applying writes locally.  We don't do any of that any more;
now, this loop just cancels the repops with remove_repop() and some other
cleanup.

Signed-off-by: Sage Weil <sage@inktank.com>
(cherry picked from commit ef40737eee4389faa7792661a0f9d15b3d0440f2)

11 years agoosd: clear PGBackend state on shutdown
Sage Weil [Tue, 8 Jul 2014 23:11:27 +0000 (16:11 -0700)]
osd: clear PGBackend state on shutdown

This was leaking state on shutdown whenever there were in-flight repops
that were canceled.

Fixes: #7891
Signed-off-by: Sage Weil <sage@inktank.com>
(cherry picked from commit cafceae6c243369d3616af8217884e7e029896b9)

11 years agoosd: separate cleanup from PGBackend::on_change()
Sage Weil [Tue, 8 Jul 2014 23:10:58 +0000 (16:10 -0700)]
osd: separate cleanup from PGBackend::on_change()

The generic portion of on_change() cleaned up temporary on-disk objects
and requires a Transaction.  The rest is clearing out in-memory state and
does not.  Separate the two.

Signed-off-by: Sage Weil <sage@inktank.com>
(cherry picked from commit e299357e2a24474ab7a02e65ca0279336fd04b76)

11 years agoMerge remote-tracking branch 'origin/wip-8858-firefly' into firefly
Josh Durgin [Wed, 23 Jul 2014 17:09:19 +0000 (10:09 -0700)]
Merge remote-tracking branch 'origin/wip-8858-firefly' into firefly

Reviewed-by: Josh Durgin <josh.durgin@inktank.com>
11 years agomon: AuthMonitor: always encode full regardless of keyserver having keys 2134/head
Joao Eduardo Luis [Mon, 21 Jul 2014 23:25:37 +0000 (00:25 +0100)]
mon: AuthMonitor: always encode full regardless of keyserver having keys

On clusters without cephx, assuming an admin never added a key to the
cluster, the monitors have empty key servers.  A previous patch had the
AuthMonitor not encoding an empty keyserver as a full version.

As such, whenever the monitor restarts we will have to read the whole
state from disk in the form of incrementals.  This poses a problem upon
trimming, as we do every now and then: whenever we start the monitor, it
will start with an empty keyserver, waiting to be populated from whatever
we have on disk.  This is performed in update_from_paxos(), and the
AuthMonitor's will rely on the keyserver version to decide which
incrementals we care about -- basically, all versions > keyserver version.

Although we started with an empty keyserver (version 0) and are expecting
to read state from disk, in this case it means we will attempt to read
version 1 first.  If the cluster has been running for a while now, and
even if no keys have been added, it's fair to assume that version is
greater than 0 (or even 1), as the AuthMonitor also deals and keeps track
of auth global ids.  As such, we expect to read version 1, then version 2,
and so on.  If we trim at some point however this will not be possible,
as version 1 will not exist -- and we will assert because of that.

This is fixed by ensuring the AuthMonitor keeps track of full versions
of the key server, even if it's of an empty key server -- it will still
keep track of the key server's version, which is incremented each time
we update from paxos even if it is empty.

Fixes: #8851
Backport: dumpling, firefly

Signed-off-by: Joao Eduardo Luis <joao.luis@inktank.com>
(cherry picked from commit b551ae2bcea2dd17b37f5f5ab34251cc78de0e26)

11 years agoMerge pull request #2122 from ceph/wip-dencoder-firefly
Sage Weil [Mon, 21 Jul 2014 20:10:28 +0000 (13:10 -0700)]
Merge pull request #2122 from ceph/wip-dencoder-firefly

fix linking deps, cpeh-dencoder, etc., firefly backport

11 years agorgw: dump prefix unconditionally
Yehuda Sadeh [Fri, 18 Jul 2014 21:52:48 +0000 (14:52 -0700)]
rgw: dump prefix unconditionally

As part of issue #8858, and to be more in line with S3, dump the Prefix
field when listing bucket even if bucket is empty.

Signed-off-by: Yehuda Sadeh <yehuda@redhat.com>
(cherry picked from commit d7209c11251d42227608bc54cc69232ef62ffe80)

11 years agorgw: list extra objects to set truncation flag correctly
Yehuda Sadeh [Thu, 17 Jul 2014 22:48:26 +0000 (15:48 -0700)]
rgw: list extra objects to set truncation flag correctly

Otherwise we end up returning wrong truncated value, and no data on the
next iteration.

Signed-off-by: Yehuda Sadeh <yehuda@inktank.com>
(cherry picked from commit dc417e477d4ad262885c6b5f5987cf06d63b159d)

11 years agorgw: account common prefixes for MaxKeys in bucket listing
Yehuda Sadeh [Thu, 17 Jul 2014 18:45:44 +0000 (11:45 -0700)]
rgw: account common prefixes for MaxKeys in bucket listing

To be more in line with the S3 api. Beforehand we didn't account the
common prefixes towards the MaxKeys (a single common prefix counts as a
single key). Also need to adjust the marker now if it is pointing at a
common prefix.

Signed-off-by: Yehuda Sadeh <yehuda@inktank.com>
(cherry picked from commit 82d2d612e700f94a0bb2d9fb7555abf327be379b)

11 years agorgw: add NextMarker param for bucket listing
Yehuda Sadeh [Thu, 17 Jul 2014 18:24:51 +0000 (11:24 -0700)]
rgw: add NextMarker param for bucket listing

Partially fixes #8858.

Signed-off-by: Yehuda Sadeh <yehuda@inktank.com>
(cherry picked from commit 924686f0b6593deffcd1d4e80ab06b1e7af00dcb)

11 years agorgw: improve delmited listing of bucket
Yehuda Sadeh [Wed, 16 Jul 2014 22:21:09 +0000 (15:21 -0700)]
rgw: improve delmited listing of bucket

If found a prefix, calculate a string greater than that so that next
request we can skip to that. This is still not the most efficient way to
do it. It'll be better to push it down to the objclass, but that'll
require a much bigger change.

Signed-off-by: Yehuda Sadeh <yehuda@inktank.com>
(cherry picked from commit e6cf618c257f26f97f60a4c1df1d23a14496cab0)

11 years agoutf8: export encode_utf8() and decode_utf8()
Yehuda Sadeh [Wed, 16 Jul 2014 23:05:58 +0000 (16:05 -0700)]
utf8: export encode_utf8() and decode_utf8()

Signed-off-by: Yehuda Sadeh <yehuda@inktank.com>
(cherry picked from commit 49fc68cf8c3122c878ea9503c9c74d7046bc9c6f)

11 years agoceph-dencoder: don't link librgw.la (and rados, etc.) 2122/head
Sage Weil [Sat, 19 Jul 2014 05:44:51 +0000 (22:44 -0700)]
ceph-dencoder: don't link librgw.la (and rados, etc.)

Signed-off-by: Sage Weil <sage@redhat.com>
(cherry picked from commit 34671108ce0b7597dba4f619732ecdb8933cda6e)

11 years agorgw: move a bunch of stuff into rgw_dencoder
Sage Weil [Sat, 19 Jul 2014 05:27:25 +0000 (22:27 -0700)]
rgw: move a bunch of stuff into rgw_dencoder

This will help out ceph-dencoder ...

Signed-off-by: Sage Weil <sage@redhat.com>
(cherry picked from commit b1a641f307942cbf43036f75ef67fb30441dfe95)

11 years agolibosd_types, libos_types, libmon_types
Sage Weil [Sat, 19 Jul 2014 04:58:29 +0000 (21:58 -0700)]
libosd_types, libos_types, libmon_types

Signed-off-by: Sage Weil <sage@redhat.com>
(cherry picked from commit 1c170776cb8c0266f0f54f049ed07bbdb9c9ab5e)

Conflicts:

src/os/Makefile.am
src/os/ObjectStore.cc
src/osd/Makefile.am

11 years agoRevert "ceph.spec: move ceph-dencoder to ceph from ceph-common"
Sage Weil [Sat, 19 Jul 2014 03:55:39 +0000 (20:55 -0700)]
Revert "ceph.spec: move ceph-dencoder to ceph from ceph-common"

This reverts commit 95f5a448b52db545a2b9bbad47fdb287254f93ea.
(cherry picked from commit 58cc894b3252a848ebc2169bcc4980a0ae6cc375)

11 years agoRevert "debian: move ceph-dencoder to ceph from ceph-common"
Sage Weil [Sat, 19 Jul 2014 03:55:35 +0000 (20:55 -0700)]
Revert "debian: move ceph-dencoder to ceph from ceph-common"

This reverts commit b37e3bde3bd31287b11c069062280258666df7c5.
(cherry picked from commit f181f78b7473260a717bc8ab4fc4d73a80e3b5ba)

11 years agoconfigure: do not link leveldb with everything
Dan Mick [Fri, 18 Jul 2014 04:44:06 +0000 (21:44 -0700)]
configure: do not link leveldb with everything

Detect leveldb, but do not let autoconf blindly link it with everything on the
planet.

Signed-off-by: Dan Mick <dan.mick@inktank.com>
Sighed-off-by: Sage Weil <sage@redhat.com>
(cherry picked from commit 06a8f7b99c5533f397b34f448138220384df60ac)

11 years agoceph.spec: move ceph-dencoder to ceph from ceph-common
Sage Weil [Tue, 15 Jul 2014 00:02:05 +0000 (17:02 -0700)]
ceph.spec: move ceph-dencoder to ceph from ceph-common

Signed-off-by: Sage Weil <sage@redhat.com>
(cherry picked from commit 95f5a448b52db545a2b9bbad47fdb287254f93ea)

11 years agodebian: move ceph-dencoder to ceph from ceph-common
Sage Weil [Mon, 14 Jul 2014 21:16:43 +0000 (14:16 -0700)]
debian: move ceph-dencoder to ceph from ceph-common

It links against the world currently (notably leveldb).  Not nice for the
client-side lib.

Signed-off-by: Sage Weil <sage@redhat.com>
(cherry picked from commit b37e3bde3bd31287b11c069062280258666df7c5)

11 years agologrotate.conf: fix osd log rotation under upstart
Sage Weil [Thu, 17 Jul 2014 23:40:06 +0000 (16:40 -0700)]
logrotate.conf: fix osd log rotation under upstart

In commit 7411c3c6a42bef5987bdd76b1812b01686303502 we generalized this
enumeration code by copying what was in the upstart scripts.  However,
while the mon and mds directories get a 'done' file, the OSDs get a 'ready'
file.  Bah!  Trigger off of either one.

Backport: firefly
Signed-off-by: Sage Weil <sage@redhat.com>
(cherry picked from commit 14a9ca602fa9573b0b6b94709b384bca02d12fac)

11 years agorgw: don't try to wait for pending if list is empty
Yehuda Sadeh [Wed, 16 Jul 2014 19:23:31 +0000 (12:23 -0700)]
rgw: don't try to wait for pending if list is empty

Fixes: #8846
Backport: firefly, dumpling

This was broken at ea68b9372319fd0bab40856db26528d36359102e. We ended
up calling wait_pending_front() when pending list was empty.
This commit also moves the need_to_wait check to a different place,
where we actually throttle (and not just drain completed IOs).

Reported-by: Sylvain Munaut <s.munaut@whatever-company.com>
Signed-off-by: Yehuda Sadeh <yehuda@inktank.com>
(cherry picked from commit f9f2417d7db01ecf2425039539997901615816a9)

11 years agoremove suse service restarts
Alfredo Deza [Thu, 17 Jul 2014 14:06:37 +0000 (10:06 -0400)]
remove suse service restarts

Signed-off-by: Alfredo Deza <alfredo.deza@inktank.com>
(cherry picked from commit 0f11aaeefd7e8b49f88607937aade6113ebda52c)

11 years agoremove ceph restarts on upgrades for RPMs
Alfredo Deza [Wed, 16 Jul 2014 20:12:12 +0000 (16:12 -0400)]
remove ceph restarts on upgrades for RPMs

Signed-off-by: Alfredo Deza <alfredo.deza@inktank.com>
(cherry picked from commit e3a5756f58ef5d07badf18ab08a26f47f7d232cb)

11 years agoset the default log level to WARNING
Alfredo Deza [Wed, 16 Jul 2014 15:07:13 +0000 (11:07 -0400)]
set the default log level to WARNING

Signed-off-by: Alfredo Deza <alfredo.deza@inktank.com>
(cherry picked from commit 420f0a471a31d1e56359ea642ed831e8a38b1e90)

11 years agoinit-ceph: wrap daemon startup with systemd-run when running under systemd
Sage Weil [Wed, 16 Jul 2014 01:11:41 +0000 (18:11 -0700)]
init-ceph: wrap daemon startup with systemd-run when running under systemd

We want to make sure the daemon runs in its own systemd environment.  Check
for systemd as pid 1 and, when present, use systemd-run -r <cmd> to do
this.

Probably fixes #7627

Signed-off-by: Sage Weil <sage@redhat.com>
Reviewed-by: Dan Mick <dan.mick@inktank.com>
Tested-by: Dan Mick <dan.mick@inktank.com>
(cherry picked from commit 3e0d9800767018625f0e7d797c812aa44c426dab)

11 years ago0.80.4 v0.80.4
Jenkins [Tue, 15 Jul 2014 19:13:55 +0000 (12:13 -0700)]
0.80.4

11 years agoXfsFileStoreBackend: default to disabling extsize on xfs
Samuel Just [Mon, 14 Jul 2014 20:29:37 +0000 (13:29 -0700)]
XfsFileStoreBackend: default to disabling extsize on xfs

This appears to be responsible for the deep scrub mismatches on some rbd
workloads.

Fixes: 8830
Signed-off-by: Samuel Just <sam.just@inktank.com>
(cherry picked from commit 01cd3cdc726a3e838bce05b355a021778b4e5db1)

11 years agoRevert "Revert "rgw: if extra data pool name is empty, use data pool name instead""
Sage Weil [Mon, 14 Jul 2014 22:00:30 +0000 (15:00 -0700)]
Revert "Revert "rgw: if extra data pool name is empty, use data pool name instead""

This reverts commit 0b6bd2545925b5e8a80d41de1fda13ffe9d30e2b.

We confused commit 5fd8b0d1639c67e355f0fc0d7e6d7036618d87a1 with commit
b1a4a7cb91e164d1f8af8ce9319e3b3c1949858d in our tests.  We tested without
the latter, saw a failure, applied it and then reverted the former, and it
passed, but didn't actually resolve the problem.

This puts them both back in place and all should be well.

Signed-off-by: Sage Weil <sage@redhat.com>
Reviewed-by: Yehuda Sadeh <yehuda@inktank.com>
11 years ago0.80.3 v0.80.3
Jenkins [Fri, 11 Jul 2014 17:14:12 +0000 (17:14 +0000)]
0.80.3

11 years agorgw: fix RGWObjManifestRule decoder
Sage Weil [Thu, 10 Jul 2014 17:36:16 +0000 (10:36 -0700)]
rgw: fix RGWObjManifestRule decoder

Only decode the new field if it is a new struct.

Fixes: #8804
Backport: firefly
Signed-off-by: Sage Weil <sage@inktank.com>
Reviewed-by: Josh Durgin <josh.durgin@inktank.com>
(cherry picked from commit c4afaf9dabd261853a44b2e08f0911c075c1cd3a)

11 years ago0.80.2 v0.80.2
Jenkins [Wed, 9 Jul 2014 19:32:26 +0000 (19:32 +0000)]
0.80.2

11 years agoRevert "rgw: if extra data pool name is empty, use data pool name instead"
Josh Durgin [Wed, 9 Jul 2014 19:04:49 +0000 (12:04 -0700)]
Revert "rgw: if extra data pool name is empty, use data pool name instead"

This breaks multipart uploads on firefly, though not on master.
Revert for now so we can release 0.80.2.

This reverts commit 5fd8b0d1639c67e355f0fc0d7e6d7036618d87a1.

11 years agoMerge pull request #2083 from ceph/wip-8727.firefly
Sage Weil [Tue, 8 Jul 2014 17:06:01 +0000 (10:06 -0700)]
Merge pull request #2083 from ceph/wip-8727.firefly

messages: MForward: fix compat version

Reviewed-by: Sage Weil <sage@redhat.com>
11 years agomessages: MForward: fix compat version 2083/head
Joao Eduardo Luis [Tue, 8 Jul 2014 15:46:27 +0000 (16:46 +0100)]
messages: MForward: fix compat version

A while ago we bumped the head version and reset the compat version to 0.
Doing this so happens to make the messenger assume that the message does
not support the compat versioning and sets the compat version to the head
version -- thus making compat = 2 when it should have been 1.

The nasty side-effect of this is that upgrading from emperor to firefly
will have emperor-leaders being unable to decode forwarded messages from
firefly-peons.

Fixes: #8727
Signed-off-by: Joao Eduardo Luis <joao.luis@inktank.com>
(cherry picked from commit c92feebb81f90344a085f8256f0ed03cdc2f14e1)

11 years agoceph.spec.in: add bash completion file for radosgw-admin
Dan Mick [Thu, 3 Jul 2014 23:11:24 +0000 (16:11 -0700)]
ceph.spec.in: add bash completion file for radosgw-admin

Signed-off-by: Sandon Van Ness <sandon@inktank.com>
(cherry picked from commit b70096307130bcbac176704493a63c5d039d3edc)

11 years agoceph.spec.in: rhel7-related changes:
Dan Mick [Thu, 3 Jul 2014 23:10:55 +0000 (16:10 -0700)]
ceph.spec.in: rhel7-related changes:

udev rules: /lib -> /usr/lib
/sbin binaries move to /usr/sbin or %{_sbindir}

Signed-off-by: Sandon Van Ness <sandon@inktank.com>
(cherry picked from commit 235e4c7de8f8efe491edefbdde8e5da4dfc44034)

Conflicts:
ceph.spec.in

11 years agoFix/add missing dependencies:
Dan Mick [Thu, 3 Jul 2014 23:08:44 +0000 (16:08 -0700)]
Fix/add missing dependencies:

- rbd-fuse depends on librados2/librbd1
- ceph-devel depends on specific releases of libs and libcephfs_jni1
- librbd1 depends on librados2
- python-ceph does not depend on libcephfs1

Signed-off-by: Sandon Van Ness <sandon@inktank.com>
(cherry picked from commit 7cf81322391b629b241da90181800ca1f138ce78)

Conflicts:
ceph.spec.in

11 years agoceph.spec.in: whitespace fixes
Dan Mick [Thu, 3 Jul 2014 23:05:00 +0000 (16:05 -0700)]
ceph.spec.in: whitespace fixes

Signed-off-by: Sandon Van Ness <sandon@inktank.com>
(cherry picked from commit ec8af52a5ede78511423a1455a496d46d580c644)

Conflicts:
ceph.spec.in

11 years agoceph.spec.in: split out ceph-common as in Debian
Dan Mick [Thu, 3 Jul 2014 23:04:10 +0000 (16:04 -0700)]
ceph.spec.in: split out ceph-common as in Debian

Move files, postun scriptlet, and add dependencies on ceph-common
where appropriate

Signed-off-by: Sandon Van Ness <sandon@inktank.com>
(cherry picked from commit e131b9d5a5e90e87d8a8346cb96cb5a26135c144)

11 years agoMerge pull request #2057 from ceph/wip-8593-firefly
Sage Weil [Mon, 7 Jul 2014 16:40:51 +0000 (09:40 -0700)]
Merge pull request #2057 from ceph/wip-8593-firefly

mon: backport health check improvements

Reviewed-by: Joao Eduardo Luis <joao.luis@inktank.com>
11 years agomon: check changes to the whole CRUSH map and to tunables against cluster features
Greg Farnum [Thu, 3 Jul 2014 23:30:49 +0000 (16:30 -0700)]
mon: check changes to the whole CRUSH map and to tunables against cluster features

When we change the tunables, or set a new CRUSH map, we need to make sure it's
supported by all the monitors and OSDs currently participating in the cluster.

Fixes: #8738
Signed-off-by: Greg Farnum <greg@inktank.com>
(cherry picked from commit 54af8104816ccc76aad251aa47a6efc1bf879e7d)

11 years agoOSDMonitor: fix quorum_features comparison in check_cluster_features
Greg Farnum [Thu, 3 Jul 2014 22:24:30 +0000 (15:24 -0700)]
OSDMonitor: fix quorum_features comparison in check_cluster_features

We need to see if there's a feature which is not in the quorum_features,
not if there are no features in common!

Signed-off-by: Greg Farnum <greg@inktank.com>
(cherry picked from commit 2280c0eaa9f3f733062085a5e7f7dc23c3bbe291)

11 years agoceph_test_rados_api_tier: disable LibRadosTierECPP::HitSetWrite
Sage Weil [Mon, 16 Jun 2014 19:57:36 +0000 (12:57 -0700)]
ceph_test_rados_api_tier: disable LibRadosTierECPP::HitSetWrite

Disable this test until hitget-get reliably works on EC pools (currently
it does not, and this test usually passes only because we get the in-memory
HitSet).

Signed-off-by: Sage Weil <sage@inktank.com>
(cherry picked from commit c5b5ed672c039cc4fa04772e065a59d3b1df803a)

11 years agoMerge pull request #2073 from ceph/wip-rgw-firefly-2
Sage Weil [Sat, 5 Jul 2014 04:18:32 +0000 (21:18 -0700)]
Merge pull request #2073 from ceph/wip-rgw-firefly-2

rgw: more firefly backports

Reviewed-by: Yehuda Sadeh <yehuda@inktank.com>
11 years agorgw: set a default data extra pool name 2073/head
Yehuda Sadeh [Wed, 11 Jun 2014 23:50:41 +0000 (16:50 -0700)]
rgw: set a default data extra pool name

Fixes: #8585
Have a default name for the data extra pool, otherwise it would be empty
which means that it'd default to the data pool name (which is a problem
with ec backends).

Signed-off-by: Yehuda Sadeh <yehuda@inktank.com>
(cherry picked from commit b2542f8e880e45bb6d052f13eb3ef6a7c61e4cd4)

11 years agoMerge pull request #2028 from ceph/wip-rgw-firefly
Sage Weil [Thu, 3 Jul 2014 14:00:52 +0000 (07:00 -0700)]
Merge pull request #2028 from ceph/wip-rgw-firefly

rgw: a couple backports for firefly

Passed the rgw suite, modulo a python bootstrap issue.

sage-2014-07-01_09:50:22-rgw-wip-rgw-firefly-testing-basic-plana/337393

Reviewed-by: Yehuda Sadeh <yehuda@inktank.com>
11 years agorgw: fix uninit ofs in RGWObjManifect::obj_iterator
Sage Weil [Mon, 30 Jun 2014 19:55:45 +0000 (12:55 -0700)]
rgw: fix uninit ofs in RGWObjManifect::obj_iterator

Valgrind picked this up:

  <kind>UninitCondition</kind>
  <what>Conditional jump or move depends on uninitialised value(s)</what>
  <stack>
    <frame>
      <ip>0x5145B8</ip>
      <obj>/usr/bin/radosgw</obj>
      <fn>RGWObjManifest::obj_iterator::seek(unsigned long)</fn>
      <dir>/srv/autobuild-ceph/gitbuilder.git/build/out~/ceph-0.82-354-g62027ec/src/rgw</dir>
      <file>rgw_rados.cc</file>
      <line>562</line>
    </frame>
    <frame>
      <ip>0x5672A4</ip>
      <obj>/usr/bin/radosgw</obj>
      <fn>list_multipart_parts(RGWRados*, req_state*, std::string const&amp;, std::string&amp;, int, int, std::map&lt;unsigned int, RGWUploadPartInfo, std::less&lt;unsigned int&gt;, std::allocator&lt;std::pair&lt;unsigned int const, RGWUploadPartInfo&gt; &gt; &gt;&amp;, int*, bool*, bool)</fn>
      <dir>/srv/autobuild-ceph/gitbuilder.git/build/out~/ceph-0.82-354-g62027ec/src/rgw</dir>
      <file>rgw_rados.h</file>
      <line>217</line>
    </frame>
    <frame>
      <ip>0x5688EE</ip>
      <obj>/usr/bin/radosgw</obj>
      <fn>RGWListMultipart::execute()</fn>
      <dir>/srv/autobuild-ceph/gitbuilder.git/build/out~/ceph-0.82-354-g62027ec/src/rgw</dir>
      <file>rgw_op.cc</file>
      <line>2956</line>
    </frame>
...

Fixes: #8699
Backport: firefly
Signed-off-by: Sage Weil <sage@inktank.com>
(cherry picked from commit e0d3b78b6af523ae77b0cee385cd40f67f7a0ab6)

11 years agorgw: if extra data pool name is empty, use data pool name instead
Yehuda Sadeh [Fri, 30 May 2014 21:47:25 +0000 (14:47 -0700)]
rgw: if extra data pool name is empty, use data pool name instead

Fixes: #8311
An empty pool name could be used as the extra data pool.

Signed-off-by: Yehuda Sadeh <yehuda@inktank.com>
(cherry picked from commit b300318113b162522759d4794b1cfa3d1d9398e4)

11 years agorgw: extend manifest to avoid old style manifest
Yehuda Sadeh [Tue, 6 May 2014 22:35:20 +0000 (15:35 -0700)]
rgw: extend manifest to avoid old style manifest

In case we hit issue #8269 we'd like to avoid creating an old style
manifest. Since we need to have parts that use different prefix we add a
new rule param that overrides the manifest prefix.

Signed-off-by: Yehuda Sadeh <yehuda@inktank.com>
(cherry picked from commit 545d8ad1d2dfe53b967ab1bd17dfeb1780abbb5e)

11 years agorgw: don't allow multiple writers to same multiobject part
Yehuda Sadeh [Sat, 3 May 2014 00:06:05 +0000 (17:06 -0700)]
rgw: don't allow multiple writers to same multiobject part

Fixes: #8269
Backport: firefly, dumpling

A client might need to retry a multipart part write. The original thread
might race with the new one, trying to clean up after it, clobbering the
part's data.
The fix is to detect whether an original part already existed, and if so
use a different part name for it.

Signed-off-by: Yehuda Sadeh <yehuda@inktank.com>
(cherry picked from commit bd8e026f88b812cc70caf6232c247844df5d99bf)

11 years agoMerge pull request #2056 from ceph/wip-8010
Sage Weil [Tue, 1 Jul 2014 23:16:09 +0000 (16:16 -0700)]
Merge pull request #2056 from ceph/wip-8010

Revert "mon: OSDMonitor: Refuse to delete CephFS pools"

Reviewed-by: Sage Weil <sage@redhat.com>
11 years agomon: ensure HealthService warning(s) include a summary 2057/head
Sage Weil [Tue, 17 Jun 2014 00:00:51 +0000 (17:00 -0700)]
mon: ensure HealthService warning(s) include a summary

The low disk space check would change our status to HEALTH_WARN and include
a detail message, but no summary.  We need both.

Backport: firefly
Signed-off-by: Sage Weil <sage@inktank.com>
(cherry picked from commit 3ed7f2dd4345633ff34017b201082f4c261ef387)

11 years agomon: refactor check_health()
Sage Weil [Mon, 16 Jun 2014 23:58:14 +0000 (16:58 -0700)]
mon: refactor check_health()

Refactor the get_health() methods to always take both a summary and detail.
Eliminate the return value and pull that directly from the summary, as we
already do with the PaxosServices.

Signed-off-by: Sage Weil <sage@inktank.com>
(cherry picked from commit 82e47db8073b622183a5e33f6e0b999a3a144804)

11 years agomon: fix typos, punctuation for mon disk space warning(s)
Sage Weil [Mon, 16 Jun 2014 23:40:05 +0000 (16:40 -0700)]
mon: fix typos, punctuation for mon disk space warning(s)

Backport: firefly
Signed-off-by: Sage Weil <sage@inktank.com>
(cherry picked from commit 98883f6308ce72f69a71feab29ef00e13f319cdb)

Conflicts:

src/mon/DataHealthService.cc

11 years agomon/OSDMonitor: make down osd count sensible
Sage Weil [Mon, 16 Jun 2014 23:27:05 +0000 (16:27 -0700)]
mon/OSDMonitor: make down osd count sensible

We currently log something like

 1/10 in osds are down

in the health warning when there are down OSDs, but this is based on a
comparison of the number of up vs the number of in osds, and makes no sense
when there are up osds that are not in.

Instead, count only the number OSDs that are both down and in (relative to
the total number of OSDs in) and warn about that.  This means that, if a
disk fails, and we mark it out, and the cluster fully repairs itself, it
will go back to a HEALTH_OK state.

I think that is a good thing, and certainly preferable to the current
nonsense.  If we want to distinguish between down+out OSDs that were failed
vs those that have been "acknowledged" by an admin to be dead, we will
need to add some additional state (possibly reusing the AUTOOUT flag?), but
that will require more discussion.

Backport: firefly (maybe)
Signed-off-by: Sage Weil <sage@inktank.com>
(cherry picked from commit 55a97787088b79356c678a909b2410b3924e7f5b)

11 years agoRevert "mon: OSDMonitor: Refuse to delete CephFS pools" 2056/head
John Spray [Tue, 1 Jul 2014 21:04:25 +0000 (22:04 +0100)]
Revert "mon: OSDMonitor: Refuse to delete CephFS pools"

This reverts commit c7d265a9b276aad5caf9b35f3ce8bc7bdd169f0f.

Because this pre-dates the `fs rm` command, this change was
preventing firefly users from ever deleting their filesystem pools.

Fixes: #8010
Signed-off-by: John Spray <john.spray@redhat.com>
11 years agorgw: set meta object in extra flag when initializing it 2028/head
Yehuda Sadeh [Wed, 4 Jun 2014 16:24:33 +0000 (09:24 -0700)]
rgw: set meta object in extra flag when initializing it

As part of the fix for 8452 we moved the meta object initialization.
Missed moving the extra flag initialization that is needed. This breaks
setups where there's a separate extra pool (needed in ec backends).

Reported-by: Sylvain Munaut <s.munaut@whatever-company.com>
Signed-off-by: Yehuda Sadeh <yehuda@inktank.com>
(cherry picked from commit 703d0eb9bffdf6c553b659728a3a07f068fb15ee)

11 years agoqa/workunits/suites/fsx.sh: don't use zero range
Sage Weil [Mon, 30 Jun 2014 14:05:04 +0000 (07:05 -0700)]
qa/workunits/suites/fsx.sh: don't use zero range

Zero range is not supported by cephfs.

Fixes: #8542
Signed-off-by: Sage Weil <sage@inktank.com>
(cherry picked from commit 2dec8a810060f65d022c06e82090b4aa5ccec0cb)

11 years agoMerge pull request #1991 from dachary/wip-8307-erasure-code-profile-implicit-creation
Loic Dachary [Mon, 30 Jun 2014 15:01:03 +0000 (17:01 +0200)]
Merge pull request #1991 from dachary/wip-8307-erasure-code-profile-implicit-creation

erasure code profile implicit creation (firefly backport)

Reviewed-by: Joao Eduardo Luis <joao.luis@inktank.com>
11 years agoerasure-code: pool create must not create profiles 1991/head
Loic Dachary [Wed, 11 Jun 2014 20:44:57 +0000 (22:44 +0200)]
erasure-code: pool create must not create profiles

If a non existent profile is provided as an argument to osd pool create,
it must exit on error and not create the profile as a side effect.

http://tracker.ceph.com/issues/8307 refs: #8307

Signed-off-by: Loic Dachary <loic@dachary.org>
(cherry picked from commit ff2eb234e63cd281b40405cb3397da5babda943f)

11 years agoerasure-code: OSDMonitor::get_erasure_code is a const
Loic Dachary [Wed, 11 Jun 2014 20:47:49 +0000 (22:47 +0200)]
erasure-code: OSDMonitor::get_erasure_code is a const

If it is not, the non const version of OSDMap::get_erasure_code_profile
is called and a profile is created as a side effect, which is not
intended.

http://tracker.ceph.com/issues/8307 refs: #8307

Signed-off-by: Loic Dachary <loic@dachary.org>
(cherry picked from commit 3c638111a4943758b6089c63a42aabbf281ac257)

11 years agomon: fix set cache_target_full_ratio
Loic Dachary [Tue, 27 May 2014 08:06:46 +0000 (10:06 +0200)]
mon: fix set cache_target_full_ratio

It was a noop because it was incorrectly using the variable n. Add a
test to protect against regression.

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

Reported-by: Geoffrey Hartz <hartz.geoffrey@gmail.com>
Signed-off-by: Loic Dachary <loic@dachary.org>
(cherry picked from commit c2225f874dcf37222d831b65b5a319d598d2fcd9)

11 years agorgw: allocate enough space for bucket instance id
Yehuda Sadeh [Mon, 16 Jun 2014 18:48:24 +0000 (11:48 -0700)]
rgw: allocate enough space for bucket instance id

Fixes: #8608
Backport: dumpling, firefly
Bucket instance id is a concatenation of zone name, rados instance id,
and a running counter. We need to allocate enough space to account zone
name length.

Signed-off-by: Yehuda Sadeh <yehuda@inktank.com>
(cherry picked from commit d2e86a66ca55685e04ffbfaa58452af59f381277)

11 years agolog the command that is being run with subprocess
Alfredo Deza [Fri, 20 Jun 2014 15:14:25 +0000 (11:14 -0400)]
log the command that is being run with subprocess

Signed-off-by: Alfredo Deza <alfredo.deza@inktank.com>
(cherry picked from commit e189a668285f9ab73116bc19f9df1cc515473541)

11 years agorgw: fetch object attrs on multipart completion
Yehuda Sadeh [Fri, 30 May 2014 23:17:47 +0000 (16:17 -0700)]
rgw: fetch object attrs on multipart completion

Fixes: #8452
Backport: firefly
This fixes a regression following a code cleanup.

Signed-off-by: Yehuda Sadeh <yehuda@inktank.com>
(cherry picked from commit 70afaaabf979d4cc1a14dbc2b772224cbafcac2f)

11 years agorgw: check appropriate entity permission on put_metadata
Yehuda Sadeh [Fri, 23 May 2014 01:27:58 +0000 (18:27 -0700)]
rgw: check appropriate entity permission on put_metadata

Fixes: #8428
Backport: firefly

Cannot use verify_object_permission() to test acls, as the operation
here might either be on object or on bucket.

Signed-off-by: Yehuda Sadeh <yehuda@inktank.com>
(cherry picked from commit 2ceb13af34bc38b418bb88d81131d770a71159bf)

11 years agoXfsFileStoreBackend: call ioctl(XFS_IOC_FSSETXATTR) less often
Ilya Dryomov [Thu, 5 Jun 2014 06:08:42 +0000 (10:08 +0400)]
XfsFileStoreBackend: call ioctl(XFS_IOC_FSSETXATTR) less often

No need to call ioctl(XFS_IOC_FSSETXATTR) if extsize is already set to
the value we want or if any extents are allocated - XFS will refuse to
change extsize in that's the case.

Fixes: #8241
Signed-off-by: Ilya Dryomov <ilya.dryomov@inktank.com>
(cherry picked from commit bc3b30ed09b8f3eb86b61e3a05ccacfd928faa95)

11 years agomon: Fix default replicated pool ruleset choice
John Spray [Tue, 20 May 2014 15:25:19 +0000 (16:25 +0100)]
mon: Fix default replicated pool ruleset choice

Specifically, in the case where the configured
default ruleset is CEPH_DEFAULT_CRUSH_REPLICATED_RULESET,
instead of assuming ruleset 0 exists, choose the lowest
numbered ruleset.

In the case where an explicit ruleset is passed to
OSDMonitor::prepare_pool_crush_ruleset, verify
that it really exists.

The idea is to eliminate cases where a pool could
exist with its crush ruleset set to something
other than a value ruleset ID.

Fixes: #8373
Signed-off-by: John Spray <john.spray@inktank.com>
(cherry picked from commit 1d9e4ac2e2bedfd40ee2d91a4a6098150af9b5df)

Conflicts:

src/crush/CrushWrapper.h

11 years agorgw: calc md5 and compare if user provided appropriate header
Yehuda Sadeh [Fri, 23 May 2014 21:58:54 +0000 (14:58 -0700)]
rgw: calc md5 and compare if user provided appropriate header

Fixes: #8436
Backport: firefly

This was broken in ddc2e1a8e39a5c6b9b224c3eebd1c0e762ca5782. The fix
resurrects and old check that was dropped.

Signed-off-by: Yehuda Sadeh <yehuda@inktank.com>
Reviewed-by: Sage Weil <sage@inktank.com>
(cherry picked from commit 9c56c86bdac6bcb8e76c3f04e7d393e4eaadd721)