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

ceph_test_filestore_idempotent_sequence: many fixes #20279

Merged
merged 12 commits into from Feb 6, 2018

Conversation

liewegas
Copy link
Member

@liewegas liewegas commented Feb 3, 2018

This tool was pretty broken and the tests weren't testing anything.

  • bunch of cleanups to the bash scripts and output so that you could tell wtf was going on
  • restructured the code in terms of the coll_entry_t* instead of coll_t
  • redid the collection_move_rename op so that it stayed without a collection, like a modern osd
  • fixed up the teuthology test to check random ranges of the sequence (as well as random seeds)

Most importantly, this includes a fix for a bug exposed in FileStore where omap ops aren't guarded during replay: http://tracker.ceph.com/issues/22920

This keeps our output separate from the filestore log, which we send to
a file so that the terminal output is readable.

Signed-off-by: Sage Weil <sage@redhat.com>
Signed-off-by: Sage Weil <sage@redhat.com>
Signed-off-by: Sage Weil <sage@redhat.com>
The old code made no sense whatsoever!

- create one colletion, not a zillion
- inform the model in the parent class

Signed-off-by: Sage Weil <sage@redhat.com>
Signed-off-by: Sage Weil <sage@redhat.com>
Signed-off-by: Sage Weil <sage@redhat.com>
We need some initial objects for this to work.

Signed-off-by: Sage Weil <sage@redhat.com>
@liewegas
Copy link
Member Author

liewegas commented Feb 6, 2018

We want to get past the initial colleciton and object creation steps,
which don't include interesting ops.

Signed-off-by: Sage Weil <sage@redhat.com>
Signed-off-by: Sage Weil <sage@redhat.com>
Signed-off-by: Sage Weil <sage@redhat.com>
These were not guarded, meaning they could get replayed onto an object
that was cloned or renamed.  Eek!

Fixes: http://tracker.ceph.com/issues/22920
Signed-off-by: Sage Weil <sage@redhat.com>
Copy link
Member

@jdurgin jdurgin left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Looks good. verified that all other filestore ops do the replay guard other than set_bits, which is only done on upgrade.

@liewegas liewegas merged commit 3ca0e0c into ceph:master Feb 6, 2018
@liewegas liewegas deleted the wip-idempotent-sequence branch February 6, 2018 16:53
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
2 participants