Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

kraken: core: two instances of omap_digest mismatch #14200

Merged
merged 17 commits into from Mar 28, 2017

Conversation

dzafman
Copy link
Contributor

@dzafman dzafman commented Mar 28, 2017

http://tracker.ceph.com/issues/19391

See #14024

Identical diff but the cherry-picks have been corrected

dzafman and others added 15 commits March 28, 2017 09:30
Fix and add comment(s)

Signed-off-by: David Zafman <dzafman@redhat.com>
(cherry picked from commit 937e6a0)
Signed-off-by: David Zafman <dzafman@redhat.com>
(cherry picked from commit 2d94889)
Signed-off-by: David Zafman <dzafman@redhat.com>
(cherry picked from commit f410159)

Conflicts:
	src/os/filestore/DBObjectMap.h (trivial)
Changed check to return an error count and fix tool error message

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

Conflicts:
	src/os/filestore/DBObjectMap.h (trivial)
…testing

Signed-off-by: David Zafman <dzafman@redhat.com>
(cherry picked from commit 053a273)
Signed-off-by: David Zafman <dzafman@redhat.com>
(cherry picked from commit fcf1e17)
Signed-off-by: David Zafman <dzafman@redhat.com>
(cherry picked from commit 5fb2b2d)
Signed-off-by: David Zafman <dzafman@redhat.com>
(cherry picked from commit 0e97a01)
Signed-off-by: Samuel Just <sjust@redhat.com>
(cherry picked from commit f131dbc)
The previous implementation assumed that
lower_bound(parent_iter->key()) always leaves the iterator
on_parent().  There isn't any guarantee, however, that that
key isn't present on the child as well.

Signed-off-by: Samuel Just <sjust@redhat.com>
(cherry picked from commit 74a7631)
Previously, in_complete_region didn't guarantee anything about
where it left complete_iter pointing.  It will be handy for
complete_iter to be pointing at the lowest interval which ends
after to_test.  Make it so.

Signed-off-by: Samuel Just <sjust@redhat.com>
(cherry picked from commit 97b35f4)
Leverage the updated in_complete_region and needs_parent to simplify
these methods.

Signed-off-by: Samuel Just <sjust@redhat.com>
(cherry picked from commit c4dffb6)
Signed-off-by: David Zafman <dzafman@redhat.com>
(cherry picked from commit 666f14e)
Add repair command to ceph-osdomap-tool too

Under some situations the previous rm_keys() code would
generated a corrupt complete table.  There is no way to
figure out what the table should look like now.  By removing
the entries we fix the corruption and aren't much worse off
because the corruption caused some deleted keys to re-appear.

This doesn't breaking the parent/child relationship during
repair because some of the keys may still be contained
in the parent.

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

Conflicts:
	src/os/filestore/DBObjectMap.h (trivial)
Signed-off-by: David Zafman <dzafman@redhat.com>
(cherry picked from commit 1dda041)
@dzafman dzafman requested a review from jdurgin March 28, 2017 16:42
Bump the version for new maps to 3
Make clone less efficient but simpler
Add rename operation (use instead of clone/unlink)
For now keep code that understands version 2 maps

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

No ghobject_t::operator>() so use Kraken cmp_bitwise() instead
Need to use MIN_GHOBJ/MAX_GHOBJ instead of std::min/std::max
Signed-off-by: David Zafman <dzafman@redhat.com>
(cherry picked from commit 1704f62)
@dzafman
Copy link
Contributor Author

dzafman commented Mar 28, 2017

@jdurgin Please mark as reviewed. You already reviewed this, but due to a master rebase I had to regenerate the cherry-picks to get the SHA1s right. It diffs identically to what is running on LRC and was merged with the prior pull request.

@dzafman dzafman merged commit 55444ce into ceph:kraken Mar 28, 2017
@dzafman dzafman deleted the wip-18533-again branch March 28, 2017 22:25
@smithfarm smithfarm changed the title kraken: Wip 18533 again kraken: core: two instances of omap_digest mismatch Aug 2, 2017
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
3 participants