summaryrefslogtreecommitdiff
path: root/src/ceph_osd.cc
diff options
context:
space:
mode:
authorSamuel Just <sam.just@inktank.com>2012-06-18 14:02:28 -0700
committerSage Weil <sage@inktank.com>2012-06-18 14:33:33 -0700
commitb0e66b70cbbbb2e9ee9c7ad39b48825cf5e72ddc (patch)
tree142afca36adfc90f3000208eaabec49754fd0a35 /src/ceph_osd.cc
parent37e56e01232c8043f3a91076f734a1d4d4565cbc (diff)
downloadceph-b0e66b70cbbbb2e9ee9c7ad39b48825cf5e72ddc.tar.gz
ceph_osd: move auto-upgrade to after fork
Signed-off-by: Samuel Just <sam.just@inktank.com>
Diffstat (limited to 'src/ceph_osd.cc')
-rw-r--r--src/ceph_osd.cc15
1 files changed, 11 insertions, 4 deletions
diff --git a/src/ceph_osd.cc b/src/ceph_osd.cc
index 6ced00268a0..dc4e13f1958 100644
--- a/src/ceph_osd.cc
+++ b/src/ceph_osd.cc
@@ -255,16 +255,14 @@ int main(int argc, const char **argv)
}
- if (convertfilestore ||
- g_conf->filestore_update_to >= (int)FileStore::on_disk_version) {
+ if (convertfilestore) {
int err = OSD::convertfs(g_conf->osd_data, g_conf->osd_journal);
if (err < 0) {
derr << TEXT_RED << " ** ERROR: error converting store " << g_conf->osd_data
<< ": " << cpp_strerror(-err) << TEXT_NORMAL << dendl;
exit(1);
}
- if (convertfilestore)
- exit(0);
+ exit(0);
}
string magic;
@@ -400,6 +398,15 @@ int main(int argc, const char **argv)
global_init_daemonize(g_ceph_context, CINIT_FLAG_NO_CLOSE_STDERR);
common_init_finish(g_ceph_context);
+ if (g_conf->filestore_update_to >= (int)FileStore::on_disk_version) {
+ int err = OSD::convertfs(g_conf->osd_data, g_conf->osd_journal);
+ if (err < 0) {
+ derr << TEXT_RED << " ** ERROR: error converting store " << g_conf->osd_data
+ << ": " << cpp_strerror(-err) << TEXT_NORMAL << dendl;
+ exit(1);
+ }
+ }
+
MonClient mc(g_ceph_context);
if (mc.build_initial_monmap() < 0)
return -1;