Revision 9cded5d3

b/Ganeti/HTools/Cluster.hs
788 788
    in sum . map Instance.mem .
789 789
       map rfind $ Node.plist node
790 790

  
791
-- | Compute the amount of disk used by instances on a node (either primary
792
-- or secondary).
793
nodeIdsk :: Node.Node -> InstanceList -> Int
794
nodeIdsk node il =
795
    let rfind = flip Container.find $ il
796
    in sum . map Instance.dsk .
797
       map rfind $ (Node.plist node) ++ (Node.slist node)
798

  
791 799

  
792 800
-- | Check cluster data for consistency
793 801
checkData :: NodeList -> InstanceList -> NameList -> NameList
......
804 812
                             - (Node.f_mem node)
805 813
                             - (nodeImem node il)
806 814
                             + adj_mem
815
                 delta_dsk = (truncate $ Node.t_dsk node)
816
                             - (Node.f_dsk node)
817
                             - (nodeIdsk node il)
807 818
                 newn = Node.setFmem (Node.setXmem node delta_mem)
808 819
                        (Node.f_mem node - adj_mem)
809
                 umsg = if delta_mem > 16
810
                        then (printf "node %s has %6d MB of unaccounted \
811
                                     \memory "
812
                                     nname delta_mem):msgs
813
                        else msgs
814
             in (umsg, newn)
820
                 umsg1 = if delta_mem > 16 || delta_dsk > 1024
821
                         then [printf "node %s is missing %d MB ram \
822
                                     \and %d GB disk"
823
                                     nname delta_mem (delta_dsk `div` 1024)]
824
                         else []
825
             in (msgs ++ umsg1, newn)
815 826
        ) [] nl

Also available in: Unified diff