[Pkg-ceph-commits] [ceph] 04/05: New "p1846.patch" to try harder to start all OSDs.
Dmitry Smirnov
onlyjob at moszumanska.debian.org
Thu May 22 16:15:05 UTC 2014
This is an automated email from the git hooks/post-receive script.
onlyjob pushed a commit to branch master
in repository ceph.
commit f01ac40
Author: Dmitry Smirnov <onlyjob at member.fsf.org>
Date: Thu May 22 15:55:38 2014
New "p1846.patch" to try harder to start all OSDs.
---
debian/patches/p1846.patch | 38 ++++++++++++++++++++++++++++++++++++++
debian/patches/series | 1 +
2 files changed, 39 insertions(+)
diff --git a/debian/patches/p1846.patch b/debian/patches/p1846.patch
new file mode 100644
index 0000000..adf5fe2
--- /dev/null
+++ b/debian/patches/p1846.patch
@@ -0,0 +1,38 @@
+Last-update: 2014-05-20
+Origin: upstream, https://github.com/ceph/ceph/pull/1846/
+Bug-Ceph: http://tracker.ceph.com/issues/8342
+Author: Sage Weil <sage at inktank.com>
+Description: [Fixes:#8342]
+ * init-ceph: continue loop immediately on daemon start failure
+ If we fail to start the daemon, skip the post_start and other steps.
+ * if we fail to set an OSD's crush position, continue
+ If we fail to set the CRUSH position for one OSD, continue on to try
+ starting others, just as we do when we fail to start the daemon.
+
+--- a/src/init-ceph.in
++++ b/src/init-ceph.in
+@@ -326,9 +326,13 @@
+ osd_location=`$osd_location_hook --cluster ceph --id $id --type osd`
+ get_conf osd_weight "" "osd crush initial weight"
+ defaultweight="$(df -P -k $osd_data/. | tail -1 | awk '{ print sprintf("%.2f",$2/1073741824) }')"
+ get_conf osd_keyring "$osd_data/keyring" "keyring"
+- do_cmd "timeout 30 $BINDIR/ceph -c $conf --name=osd.$id --keyring=$osd_keyring osd crush create-or-move -- $id ${osd_weight:-${defaultweight:-1}} $osd_location"
++ do_cmd_okfail "timeout 30 $BINDIR/ceph -c $conf --name=osd.$id --keyring=$osd_keyring osd crush create-or-move -- $id ${osd_weight:-${defaultweight:-1}} $osd_location"
++ if [ "$ERR" != "0" ]; then
++ EXIT_STATUS=$ERR
++ continue
++ fi
+ fi
+ fi
+
+ echo Starting Ceph $name on $host...
+@@ -340,8 +344,9 @@
+ [ -n "$pre_start" ] && do_cmd "$pre_start"
+ do_cmd_okfail "$cmd" $runarg
+ if [ "$ERR" != "0" ]; then
+ EXIT_STATUS=$ERR
++ continue
+ fi
+
+ if [ "$type" = "mon" ]; then
+ # this will only work if we are using default paths
diff --git a/debian/patches/series b/debian/patches/series
index 5692740..5b0a9db 100644
--- a/debian/patches/series
+++ b/debian/patches/series
@@ -1,3 +1,4 @@
+p1846.patch
ceph-ao-require-cas.patch
## Backported / Upstream
--
Alioth's /usr/local/bin/git-commit-notice on /srv/git.debian.org/git/pkg-ceph/ceph.git
More information about the Pkg-ceph-commits
mailing list