diff options
Diffstat (limited to 'sys-cluster/ceph/files/ceph-10.2.9-osd-scrub_to_specifies_clone_ver_but_transaction_include.patch')
-rw-r--r-- | sys-cluster/ceph/files/ceph-10.2.9-osd-scrub_to_specifies_clone_ver_but_transaction_include.patch | 39 |
1 files changed, 39 insertions, 0 deletions
diff --git a/sys-cluster/ceph/files/ceph-10.2.9-osd-scrub_to_specifies_clone_ver_but_transaction_include.patch b/sys-cluster/ceph/files/ceph-10.2.9-osd-scrub_to_specifies_clone_ver_but_transaction_include.patch new file mode 100644 index 000000000000..8bf14c2944ba --- /dev/null +++ b/sys-cluster/ceph/files/ceph-10.2.9-osd-scrub_to_specifies_clone_ver_but_transaction_include.patch @@ -0,0 +1,39 @@ +From 153f77544118613e19d5e88c030c3901234cf950 Mon Sep 17 00:00:00 2001 +From: David Zafman <dzafman@redhat.com> +Date: Tue, 18 Jul 2017 15:08:14 -0700 +Subject: [PATCH] osd: scrub_to specifies clone ver, but transaction include + head write ver + +Fixes: http://tracker.ceph.com/issues/20041 + +Signed-off-by: David Zafman <dzafman@redhat.com> +(cherry picked from commit fd598a0d23d61c645633ae774c3404a43d035e3c) + +Conflicts: + src/osd/ReplicatedPG.cc (trivial) +--- + src/osd/ReplicatedPG.cc | 4 ++-- + 1 file changed, 2 insertions(+), 2 deletions(-) + +diff --git a/src/osd/ReplicatedPG.cc b/src/osd/ReplicatedPG.cc +index 4b4dc34c602a..4d80ad1770e1 100644 +--- a/src/osd/ReplicatedPG.cc ++++ b/src/osd/ReplicatedPG.cc +@@ -8318,7 +8318,7 @@ void ReplicatedPG::op_applied(const eversion_t &applied_version) + last_update_applied = applied_version; + if (is_primary()) { + if (scrubber.active) { +- if (last_update_applied == scrubber.subset_last_update) { ++ if (last_update_applied >= scrubber.subset_last_update) { + requeue_scrub(); + } + } else { +@@ -8326,7 +8326,7 @@ void ReplicatedPG::op_applied(const eversion_t &applied_version) + } + } else { + if (scrubber.active_rep_scrub) { +- if (last_update_applied == static_cast<MOSDRepScrub*>( ++ if (last_update_applied >= static_cast<MOSDRepScrub*>( + scrubber.active_rep_scrub->get_req())->scrub_to) { + osd->op_wq.queue( + make_pair( |