document adding dev key for custom Apache/FCGI install

following the docs will only get you the release key and the install of custom Apache/FCGI fails w/ key error
ReplicatedPG::make_writeable: fill in ssc on clone

ssc should always be filled in on live ObjectContexts.

Fixes: #7835
Signed-off-by: Samuel Just <sam.just@inktank.com>
ReplicatedPG:: s/_delete_head/_delete_oid, adjust head_exists iff is_head

Fixes: #7872
Signed-off-by: Samuel Just <sam.just@inktank.com>
ReplicatedPG: disable clone subsets for cache pools

To do this properly, we need to take appropriate read
locks on clone sources and handle evicted clones.

Fixes: #7874
Signed-off-by: Samuel Just <sam.just@inktank.com>
ReplicatedPG: include pending_attrs when reseting attrs in WRITEFULL

This is necessary for ops like:

2014-03-25 11:48:20.354168 7f0df0ff9700  1 -- 192.168.106.226:0/1016231
--> 192.168.106.226:6814/13647 -- osd_op(client.4198.0:153
default.4198.1_foo [create 0~0,delete,setxattr user.rgw.idtag
(15),writefull 0~3,setxattr user.rgw.manifest (407),setxattr
user.rgw.acl (133),setxattr user.rgw.content_type (25),setxattr
user.rgw.etag (33)] 3.ee3a09ea ondisk+write e49) v4 -- ?+0 0xd09830 con
0xcd74d0

Fixes: #7837
Signed-off-by: Samuel Just <sam.just@inktank.com>
osd: do not make pg_pool_t incompat when hit_sets are enabled

If we enable HitSet tracking, the OSD needs to know this, but clients do
not care.  Setting the compat version is too heavyweight as it locks out
older kernels (*any* currents, currently) who are unaffected by the new
fields.

Signed-off-by: Sage Weil <sage@inktank.com>
ceph-conf: do not log

If you are querying the conf for an osd and it has a log configured, we
should not generate any log activity.

This isn't super pretty, but it is much less intrusive that wiring a 'do
not log' flag down into CephContext and a zillion other places.

Fixes: #7849
Signed-off-by: Sage Weil <sage@inktank.com>
Merge pull request #1522 from themgt/patch-1

document adding dev key for custom Apache/FCGI install

Reviewed-by: Josh Durgin <josh.durgin@inktank.com>
ceph-conf: no admin_socket

We don't need to worry about pidfile because that is done by the fork
functions, which ceph-conf doesn't call.

Signed-off-by: Sage Weil <sage@inktank.com>
Merge pull request #1545 from ceph/wip-7849-b

ceph-conf: do not log

Reviewed-by: Josh Durgin <josh.durgin@inktank.com>
qa/workunits/mon/pool_ops.sh: use expect_false

Signed-off-by: Sage Weil <sage@inktank.com>
qa/workunits/mon/pool_ops.sh: fix test

The pool create command doesn't take k/v pairs any more.

Signed-off-by: Sage Weil <sage@inktank.com>
Merge pull request #1546 from ceph/wip-fix-pools

fix pool ops test
ceph_test_rados_api_tier: scrub while cache tier is missing clones

Trigger a scrub to verify that we can handle a cache tier that is missing
some clones.  We rely on the test harness to notice the error, and we do
not confirm that the scrub happened.  In practice this is plenty of time,
however.

Signed-off-by: Sage Weil <sage@inktank.com>
osd/ReplicatedPG: do not assert on clone_size mismatch

Signed-off-by: Sage Weil <sage@inktank.com>
osd/ReplicatedPG: improve clone vs head checking

- notice when we are missing a clone (that isn't at the end of the list)
- notice when we are missing a clone on the last object in the scrub map
- do not assert when we are missing a clone

There is still more we could do to improve this (like noticing one missing
clone but still checking the others), but we'll leave that aside for just
a moment...

Signed-off-by: Sage Weil <sage@inktank.com>
osd/ReplicatedPG: tolerate missing clones in cache pools

A few cases:

- As we are working through the list, if we see a clone that is lower than
  the next one we were expecting, we should be able to skip them.
- If we see a head, we can skip all of the rest of the clones.
- If we get to the end and next_clone was set, we can ignore it.

Signed-off-by: Sage Weil <sage@inktank.com>
mon/OSDMonitor: prevent setting hit_set unless all OSDs support it

We are using OSD_CACHEPOOL as a proxy for the support for the tiering
OSDMap infrastructure.

Signed-off-by: Sage Weil <sage@inktank.com>
mon/OSDMonitor: require OSD_CACHEPOOL feature before using tiering features

The OSDs need to support this feature before we allow users to turn it
on.  This is similar to what the erasure pool support does.

Signed-off-by: Sage Weil <sage@inktank.com>
Merge branch 'wip-7875'

Reviewed-by: Samuel Just <sam.just@inktank.com>