From: Sage Weil Date: Tue, 2 Jun 2015 21:20:31 +0000 (-0700) Subject: init-ceph, ceph-osd-prestart: set osd weight with more precision X-Git-Tag: v9.0.3~180^2 X-Git-Url: http://git-server-git.apps.pok.os.sepia.ceph.com/?a=commitdiff_plain;h=e9e68655d765cb6523eb2f0f3b0d44e9d98cb9a1;p=ceph.git init-ceph, ceph-osd-prestart: set osd weight with more precision Our fixed point weights can go down to .0001 -- allow that. Fixes: #11500 Signed-off-by: Sage Weil --- diff --git a/src/ceph-osd-prestart.sh b/src/ceph-osd-prestart.sh index 77153c9b369..79f2c132d9f 100644 --- a/src/ceph-osd-prestart.sh +++ b/src/ceph-osd-prestart.sh @@ -27,7 +27,7 @@ if [ "${update:-1}" = "1" -o "${update:-1}" = "true" ]; then fi location="$($hook --cluster ${cluster:-ceph} --id $id --type osd)" weight="$(ceph-conf --cluster=${cluster:-ceph} --name=osd.$id --lookup osd_crush_initial_weight || :)" - defaultweight=`df -P -k /var/lib/ceph/osd/${cluster:-ceph}-$id/ | tail -1 | awk '{ d= $2/1073741824 ; r = sprintf("%.2f", d); print r }'` + defaultweight=`df -P -k /var/lib/ceph/osd/${cluster:-ceph}-$id/ | tail -1 | awk '{ d= $2/1073741824 ; r = sprintf("%.4f", d); print r }'` ceph \ --cluster="${cluster:-ceph}" \ --name="osd.$id" \ diff --git a/src/init-ceph.in b/src/init-ceph.in index 71e1b6a6872..d676ac72f2c 100644 --- a/src/init-ceph.in +++ b/src/init-ceph.in @@ -365,7 +365,7 @@ for name in $what; do get_conf osd_location_hook "$BINDIR/ceph-crush-location" "osd crush location hook" osd_location=`$osd_location_hook --cluster $cluster --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) }')" + defaultweight="$(df -P -k $osd_data/. | tail -1 | awk '{ print sprintf("%.4f",$2/1073741824) }')" get_conf osd_keyring "$osd_data/keyring" "keyring" 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