Project

General

Profile

Bug #11693

pidfile is overwritten and removed if the ceph-osd with the specified pidfile is already running

Added by Xinze Chi almost 9 years ago. Updated almost 9 years ago.

Status:
Resolved
Priority:
Urgent
Assignee:
Category:
-
Target version:
-
% Done:

0%

Source:
Community (dev)
Tags:
Backport:
Regression:
No
Severity:
3 - minor
Reviewed:
Affected Versions:
ceph-qa-suite:
Pull request ID:
Crash signature (v1):
Crash signature (v2):

Description

If osd.5 is already up and running, following command will try to start osd.5 again.

/usr/bin/ceph-osd -i 5 --pid-file /var/run/ceph/osd.5.pid

this command fails, but the pid file for osd.5 is removed [1] after the command returns.

so we can not identify the running osd.5 using the pid file any more, hence not able to kill it using its pid.

as a result, test/erasure-code/test-erasure-code.sh will leave us with some running OSD daemons after it returns, even if this test passes.

---
[1] ceph-osd use pidfile_write(g_conf) to write pid file, use atexit(pidfile_remove_void) to remove the pid file.

Associated revisions

Revision f417eda9 (diff)
Added by Kefu Chai almost 9 years ago

tests/test-erasure-code: spin off eio tests into another testsuite

  • since the eio tests crashes some of the OSD nodes, before the
    change, the tests try to undo the crash before moving on, so it
    won't interfere with following tests. a more robust/clean way to
    do this is to isolate individual tests in a sandbox, so each eio
    test will have its own:
    setup + inject + verify crash + teardown
    cycle. this change helps to remove the cleanup/undo steps in
    invidual test.
  • update the disabled tests accordingly.
  • use a minimum set of OSDs and R-S(2,1) for the testing to speed
    up the test.
  • add the new testsuite to check_SCRIPTS

Fixes: #11693
Signed-off-by: Kefu Chai <>

History

#1 Updated by Kefu Chai almost 9 years ago

  • Description updated (diff)

#2 Updated by Kefu Chai almost 9 years ago

  • Subject changed from Do not rewrite and remove pidfile when there are ceph-osd is already running to pidfile is overwritten and removed if the ceph-osd with the specified pidfile is already running

#3 Updated by Kefu Chai almost 9 years ago

  • Description updated (diff)

#4 Updated by Kefu Chai almost 9 years ago

  • Status changed from New to Fix Under Review

#5 Updated by Loïc Dachary almost 9 years ago

  • Assignee set to Kefu Chai
  • Priority changed from High to Urgent

#6 Updated by Kefu Chai almost 9 years ago

  • Source changed from other to Community (dev)

#7 Updated by Kefu Chai almost 9 years ago

  • Status changed from Fix Under Review to Resolved

Also available in: Atom PDF