From d2bfba6324ca54253be62716b1bbdc86e0e1aafe Mon Sep 17 00:00:00 2001 From: Joey Hess Date: Sun, 29 Apr 2012 16:10:47 -0400 Subject: [PATCH] show percent the bloom filter is full --- Command/Status.hs | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/Command/Status.hs b/Command/Status.hs index 16bcec7cce..057ab72bfa 100644 --- a/Command/Status.hs +++ b/Command/Status.hs @@ -12,6 +12,7 @@ module Command.Status where import Control.Monad.State.Strict import qualified Data.Map as M import Text.JSON +import Data.Ratio import Common.Annex import qualified Types.Backend as B @@ -160,7 +161,7 @@ bloom_info = stat "bloom filter size" $ json id $ do let note = aside $ if localkeys >= capacity then "appears too small for this repository; adjust annex.bloomcapacity" - else "has room for " ++ show (capacity - localkeys) ++ " more local annex keys" + else show (floor (percentage capacity localkeys) :: Integer) ++ "% full" -- Two bloom filters are used at the same time, so double the size -- of one. @@ -169,6 +170,10 @@ bloom_info = stat "bloom filter size" $ json id $ do return $ size ++ note + where + percentage :: Integer -> Integer -> Double + percentage full have = 100 * (fromRational $ have % full) + disk_size :: Stat disk_size = stat "available local disk space" $ json id $ lift $ calcfree