From a786ad773cd33880075f1deb3691528d1afd03ec Mon Sep 17 00:00:00 2001 From: Sage Weil Date: Mon, 9 Sep 2013 22:27:23 -0700 Subject: ceph-disk: make initial journal files 0 bytes The ceph-osd will resize journal files up and properly fallocate() them so that the blocks are preallocated and (hopefully) contiguous. We don't need to do it here too, and getting fallocate() to work from python is a pain in the butt. Fixes: #5981 Signed-off-by: Sage Weil --- src/ceph-disk | 13 +++++-------- 1 file changed, 5 insertions(+), 8 deletions(-) diff --git a/src/ceph-disk b/src/ceph-disk index 3d09bdf7418..641bd64d60e 100755 --- a/src/ceph-disk +++ b/src/ceph-disk @@ -888,15 +888,12 @@ def prepare_journal_dev( def prepare_journal_file( - journal, - journal_size): + journal): if not os.path.exists(journal): - LOG.debug('Creating journal file %s with size %dM', journal, journal_size) + LOG.debug('Creating journal file %s with size 0 (ceph-osd will resize and allocate)', journal) with file(journal, 'wb') as journal_file: - journal_file.truncate(journal_size * 1048576) - - # FIXME: should we resize an existing journal file? + pass LOG.debug('Journal is file %s', journal) LOG.warning('OSD will not be hot-swappable if journal is not the same device as the osd data') @@ -921,13 +918,13 @@ def prepare_journal( if not os.path.exists(journal): if force_dev: raise Error('Journal does not exist; not a block device', journal) - return prepare_journal_file(journal, journal_size) + return prepare_journal_file(journal) jmode = os.stat(journal).st_mode if stat.S_ISREG(jmode): if force_dev: raise Error('Journal is not a block device', journal) - return prepare_journal_file(journal, journal_size) + return prepare_journal_file(journal) if stat.S_ISBLK(jmode): if force_file: -- cgit v1.2.1