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