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-objectstore-tool: don't destroy SnapMapper until the txn is completed #20593

Merged
merged 4 commits into from Feb 28, 2018

Conversation

Projects
None yet
3 participants
@tchaikov
Copy link
Contributor

commented Feb 26, 2018

and some cleanups

qa/run-standalone.sh: pass PYTHONPATH env var to test
otherwise ceph-mgr will refuse to start if the required python binding,
a.k.a mgr_module is not available in default sys.path.

Signed-off-by: Kefu Chai <kchai@redhat.com>

@tchaikov tchaikov requested review from liewegas and dzafman Feb 26, 2018

@tchaikov

This comment has been minimized.

Copy link
Contributor Author

commented Feb 26, 2018

this PR contains #20589

@liewegas liewegas added the needs-qa label Feb 26, 2018

tchaikov added some commits Feb 26, 2018

ceph-objectstore-tool: don't destroy SnapMapper until the txn is comp…
…leted

ch->flush() only ensure that the op is dequeued from osr/collection's
queue. but the ops could be still in the flight and they could still be
holding a *weak* reference of SnapMapper. we should make sure that the
mapper is still available when they reference it,

Fixes: http://tracker.ceph.com/issues/23121
Signed-off-by: Kefu Chai <kchai@redhat.com>
ceph-objectstore-tool: do not check queue_transaction()'s retval
it never fails.

Signed-off-by: Kefu Chai <kchai@redhat.com>
ceph-objectstore-tool: do not check action_on_object_t::call()'s retval
it never fails.

Signed-off-by: Kefu Chai <kchai@redhat.com>

@tchaikov tchaikov force-pushed the tchaikov:wip-23121 branch from 9c072a9 to 92a2cba Feb 26, 2018

@tchaikov

This comment has been minimized.

Copy link
Contributor Author

commented Feb 26, 2018

changelog

  • keep the check for dry_run.
@@ -415,6 +413,22 @@ int mark_pg_for_removal(ObjectStore *fs, spg_t pgid, ObjectStore::Transaction *t
#pragma GCC diagnostic pop
#pragma GCC diagnostic warning "-Wpragmas"

template<typename Func>
void wait_until_done(ObjectStore::Transaction* txn, Func&& func)

This comment has been minimized.

Copy link
@dzafman

dzafman Feb 26, 2018

Member

Why is this mechanism needed now?

This comment has been minimized.

Copy link
@tchaikov

tchaikov Feb 27, 2018

Author Contributor

see the commit message of 42f310f

@dzafman
Copy link
Member

left a comment

run-standalone.sh started hanging so applied your change it fixed it.

@tchaikov tchaikov merged commit a14754f into ceph:master Feb 28, 2018

5 checks passed

Docs: build check OK - docs built
Details
Signed-off-by all commits in this PR are signed
Details
Unmodified Submodules submodules for project are unmodified
Details
make check make check succeeded
Details
make check (arm64) make check succeeded
Details

@tchaikov tchaikov deleted the tchaikov:wip-23121 branch Feb 28, 2018

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
You can’t perform that action at this time.