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

osd/PGBackend: delete reply if fails to complete delete request #17183

Merged
merged 1 commit into from Aug 24, 2017

Conversation

Projects
None yet
3 participants
@tchaikov
Copy link
Contributor

commented Aug 23, 2017

if any of the objects fails to be deleted due to pg reset after latest
osdmap, the pg recovery delete reply won't be sent to the primary OSD.
in that case, we should delete the reply.

Fixes: http://tracker.ceph.com/issues/20913
Signed-off-by: Kefu Chai kchai@redhat.com

osd/PGBackend: delete reply if fails to complete delete request
if any of the objects fails to be deleted due to pg reset after latest
osdmap, the pg recovery delete reply won't be sent to the primary OSD.
in that case, we should delete the reply.

Fixes: http://tracker.ceph.com/issues/20913
Signed-off-by: Kefu Chai <kchai@redhat.com>

@liewegas liewegas added needs-qa and removed needs-backport labels Aug 23, 2017

@tchaikov

This comment has been minimized.

@tchaikov tchaikov merged commit 6d271ab into ceph:master Aug 24, 2017

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-20913 branch Aug 24, 2017

@liewegas

This comment has been minimized.

Copy link
Member

commented on 1c18b5c Aug 25, 2017

I think it needs to be reply->put()?

   -26> 2017-08-24 20:11:16.642534 7f05b4958700 -1 /build/ceph-12.1.4-136-g8ac866b/src/common/RefCountedObj.h: In function 'virtual RefCountedObject::~RefCountedObject()' thread 7f05b4958700 time 2017-08-24 20:11:16.637036
/build/ceph-12.1.4-136-g8ac866b/src/common/RefCountedObj.h: 33: FAILED assert(nref == 0)

 ceph version 12.1.4-136-g8ac866b (8ac866b55dab9db74abbc68b7f223cd6ad90c45e) luminous (rc)
 1: (ceph::__ceph_assert_fail(char const*, char const*, int, char const*)+0x10e) [0x7f05cb11a4de]
 2: (()+0x40635c) [0x7f05caae235c]
 3: (()+0x52e5da) [0x7f05cac0a5da]
 4: (MOSDPGRecoveryDeleteReply::~MOSDPGRecoveryDeleteReply()+0x38) [0x7f05cadb61a8]
 5: (FunctionContext::finish(int)+0x1a) [0x7f05cac0c4ca]
 6: (Context::complete(int)+0x9) [0x7f05cabf7709]
 7: (C_GatherBase::sub_finish(Context*, int)+0xf7) [0x7f05cadaa777]
 8: (C_GatherBase::C_GatherSub::finish(int)+0x12) [0x7f05cadaa962]
 9: (C_GatherBase::C_GatherSub::complete(int)+0x9) [0x7f05cad70e19]
 10: (()+0x61f6f4) [0x7f05cacfb6f4]
 11: (FunctionContext::finish(int)+0x1a) [0x7f05cac0c4ca]
 12: (Context::complete(int)+0x9) [0x7f05cabf7709]
 13: (std::_Sp_counted_base<(__gnu_cxx::_Lock_policy)2>::_M_release()+0x39) [0x7f05cab8c989]
 14: (ContainerContext >::~ContainerContext()+0x20) [0x7f05caca0e80]
 15: (Finisher::finisher_thread_entry()+0x188) [0x7f05cb117e88]
 16: (()+0x8184) [0x7f05c8bda184]
 17: (clone()+0x6d) [0x7f05c7ccabed]
 NOTE: a copy of the executable, or `objdump -rdS ` is needed to interpret this.

This comment has been minimized.

Copy link
Member

replied Aug 25, 2017

/a/sage-2017-08-24_17:38:40-rados-wip-sage-testing2-luminous-20170824a-distro-basic-smithi/1560433

This comment has been minimized.

Copy link
Contributor Author

replied Aug 25, 2017

@liewegas yes, it should be ->put(). lemme post a PR addressing this.

This comment has been minimized.

Copy link
Contributor Author

replied Aug 25, 2017

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.