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-osd: --flush-journal: sporadic segfaults on exit #13311

Merged
merged 1 commit into from Feb 14, 2017

Conversation

asheplyakov
Copy link

FileStore holds a number of recources like op thread pool and work
queue, key/value DB threads, etc. These should be properly stopped
(released) before exiting to avoid segfaults on exit.

Note: more code paths (mkfs, dump_journal, etc) need similar fixes,
these will be submitted as separate patches.

Fixes: http://tracker.ceph.com/issues/18820
Signed-off-by: Alexey Sheplyakov asheplyakov@mirantis.com

@liuchang0812
Copy link
Contributor

liuchang0812 commented Feb 8, 2017

seems that system will releases those resources.

@asheplyakov
Copy link
Author

@liuchang0812 "system will release those resources" involves nasty things like

  • abruptly killing the kv DB thread doing background compaction
  • abruptly killing the thread which accepts/handles admin socket
  • trying to print a message to the log when the logger has been already deleted (runtime can't know what is the correct order of destruction)

That's why the main code path cares to shut the OSD down properly (see https://github.com/ceph/ceph/blob/jewel/src/ceph_osd.cc#L636-L646)

FileStore holds a number of recources like op thread pool and work
queue, key/value DB threads, etc. These should be properly stopped
(released) before exiting to avoid segfaults on exit.

Note: more code paths (mkfs, dump_journal, etc) need similar fixes,
these will be submitted as separate patches.

Fixes: http://tracker.ceph.com/issues/18820
Signed-off-by: Alexey Sheplyakov <asheplyakov@mirantis.com>
@asheplyakov
Copy link
Author

jenkins test this please

@yuriw yuriw merged commit 477356f into ceph:master Feb 14, 2017
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
4 participants