Project

General

Profile

Bug #487

osd: fix hang during mkfs

Added by Sage Weil over 13 years ago. Updated over 13 years ago.

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

0%

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

Description

Ted writes on ML:

BTW, this might be a good time to report a tiny little problem which I
found.  If the journal file doesn't exist, then when you run mkcephfs,
cosd will attempt to create the file for you.  But it creates it as a
4k file, and then it loops forever in FileJournal::wrap_read_bl() on
line 808, because get_top() and and header.max_size are both 4096, and
it results in it being an expensive while (1) loop.  This completely
stalls the mkcephfs operation, and it took me a while to debug.

It might be nice if cosd either (a) failed completely if the journal
file is missing, or too small, or (b) if cosd is started in mkfs mode,
and the journal file does not exist, perhaps it should create a
journal file with some suitable default size.

For stuff like this, I assume the right thing to do is to just open a
bug in tracker.newdream.net?  Is there any project-specific customs I
should be aware of?

History

#1 Updated by Sage Weil over 13 years ago

This was on the testing branch.

Need to confirm the source of the problem and fix in testing; we'll merge it into rc later.

#2 Updated by Colin McCabe over 13 years ago

I can reproduce every time by not specifying any osd journal size in my ceph.conf.

#3 Updated by Colin McCabe over 13 years ago

  • Status changed from New to Resolved

Fixed by ad12d5d5be41ce740dfb8a6084484858d40898cc

cheers,
C.

Also available in: Atom PDF