ECBackend::continue_recovery_op: handle a source shard going down

get_min_avail_to_read_shards might return an error if there are
no longer enough sources to reconstruct the missing shards.
This is possible if osds went down while we were writing the
previous chunk -- we already notice in check_recovery_sources
if a source goes down during a read.

Fixes: #8161
Signed-off-by: Samuel Just <sam.just@inktank.com>
rados.h,ReplicatedPG: add CEPH_OSD_FLAG_ENFORCE_SNAPC and use on flush

We need to ensure that even with pool snaps, we use the snapc provided in order
to ensure that the clones are written back correctly.

Fixes: #7941
Signed-off-by: Samuel Just <sam.just@inktank.com>
ReplicatedPG: do not preserve op context during flush

Any information stashed in the OpContext may be obsolete by the time we
actually mark the object clean.  Instead, let the start_flush caller
clean up its OpContext and in try_flush_mark_clean we'll create a new
one.  The primary reason to keep the OpContext would have been locking,
but we can set the obc as blocking without holding an OpContext, and
that would allow trimming to happen in the mean time (which is good
since trim_object does not respect rw locks since it doesn't change user
visible state).  In try_flush_mark_clean, we requeue the fop->op along
with (but ahead of) the fop->dup_ops.

Fixes: #8068
Signed-off-by: Samuel Just <sam.just@inktank.com>
ReplicatedPG: we can get EAGAIN on missing clone flush

Signed-off-by: Samuel Just <sam.just@inktank.com>
osd: automatically scrub PGs with invalid stats

If a PG has recnetly split and has invalid stats, scrub it now, even if
it has scrubbed recently.  This helps the stats become valid again soon.

Fixes: #8147
Signed-off-by: Sage Weil <sage@inktank.com>
Merge pull request #1746 from ceph/wip-8086

Wip 8086

Reviewed-by: Sage Weil <sage@inktank.com>
Merge pull request #1744 from ceph/wip-8161

ECBackend::continue_recovery_op: handle a source shard going down

Reviewed-by: Sage Weil <sage@inktank.com>
Merge pull request #1745 from ceph/wip-7941

rados.h,ReplicatedPG: add CEPH_OSD_FLAG_ENFORCE_SNAPC and use on flush

Reviewed-by: Sage Weil <sage@inktank.com>
ReplicatedPG: block scrub on blocked object contexts

Fixes: #8011
Signed-off-by: Samuel Just <sam.just@inktank.com>
Reviewed-by: Sage Weil <sage@inktank.com>
doc: documenting links to get-involved
Create a link from documenting-ceph so that it is easy to find the
github repository used for ceph.

Signed-off-by: Kevin Dalley <kevin@kelphead.org>
Fixes a very minor typo in the release notes

pyramind -> pyramid
Merge pull request #1750 from nereocystis/doc-link-to-involved

doc: documenting links to get-involved
doc/release-notes: final v0.67.8 notes and changelog

Signed-off-by: Sage Weil <sage@inktank.com>
doc/release-notes: changelog link

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

osd: automatically scrub PGs with invalid stats

Reviewed-by: Samuel Just <sam.just@inktank.com>
Reviewed-by: David Zafman <david.zafman@inktank.com>
mds: bump protocol

In commit f689e5f049736bb0a0fa437e05936f6c1b9c1bb6 we change the encoding
and semantics for MDiscoverReply.

Signed-off-by: Sage Weil <sage@inktank.com>
mds: note MDiscoverReply encoding change in corpus

Signed-off-by: Sage Weil <sage@inktank.com>
Merge pull request #1749 from hufman/fix-typo-releasenotes-pyramind

Fixes a very minor typo in the release notes

Reviewed-by: Danny Al-Gaaf <danny.al-gaaf@bisect.de>
doc: Include links from hardware-recommendations to glossary
Included :term: in parts of hardware-recommendations so that glossary
links appear.
Signed-off-by: Kevin Dalley <kevin@kelphead.org>
Merge pull request #1754 from nereocystis/hardware-to-glossary

doc: Include links from hardware-recommendations to glossary