Drop from the correct side
authorKlaus Aehlig <aehlig@google.com>
Tue, 26 Jan 2016 17:45:29 +0000 (18:45 +0100)
committerKlaus Aehlig <aehlig@google.com>
Wed, 27 Jan 2016 18:08:55 +0000 (19:08 +0100)
When forgetting data from the buffer because the maximal buffer size is reached,
forget the oldest value, not the newest one.

Signed-off-by: Klaus Aehlig <aehlig@google.com>
Reviewed-by: Lisa Velden <velden@google.com>

src/Ganeti/DataCollectors/CPUload.hs

index 65ac423..ed13bde 100644 (file)
@@ -149,10 +149,7 @@ formatData l@(x:xs) = CPUavgload (length l - 1) xs x
 -- | Update a Map Entry.
 updateEntry :: Buffer -> Buffer -> Buffer
 updateEntry newBuffer mapEntry =
-  (Seq.><) newBuffer
-  (if Seq.length mapEntry < bufferSize
-    then mapEntry
-    else Seq.drop 1 mapEntry)
+  (Seq.><) newBuffer (Seq.take bufferSize mapEntry)
 
 -- | Updates the given Collector data.
 dcUpdate :: Maybe CollectorData -> IO CollectorData