[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Bug#711773: pu: package munin/2.0.6-4+deb7u1



package: release.debian.org
Severity: normal
User: release.debian.org@packages.debian.org
Usertags: pu

Hi,

I've uploaded munin/2.0.6-4+deb7u1 to wheezy with the following changes and 
debdiff, which is also attached to this mail:

munin (2.0.6-4+deb7u1) wheezy; urgency=low

  * master:
    - on limit checks, if one of the two values is 'U', make
      the final value 'U' as well. Cherry-picked 9d84cb3 as 764006e.
      (Closes: #711201)
    - fix limit for ABSOLUTE checks too. Cherry-picked 334b691 as 1e44056.
    - add ":" to the allowed chars in CGI. Cherry-picked 456e117 as 7d3cb5f.
      (Closes: #710527)
    - fixes for munin-cgi-graph crashes in trend and predict. Cherry-picked
      f325fd6 as 5cb74ba.
  * plugins/df: ignore devtmpfs. Cherry picked from 2.0.16-2.
    (Closes: #710899)
  * asyncd: use the same rules as munin-update. Cherry-picked d4ba06b as
    87975d0. (Closes: #710529)

$ debdiff munin_2.0.6-4.dsc munin_2.0.6-4+deb7u1.dsc|diffstat
 master/lib/Munin/Master/LimitsOld.pm            |   14 +++++++++++++-
 munin-2.0.6/debian/changelog                    |   18 ++++++++++++++++++
 munin-2.0.6/master/_bin/munin-cgi-graph.in      |    3 ++-
 munin-2.0.6/master/lib/Munin/Master/GraphOld.pm |   10 ++++++----
 node/lib/Munin/Node/SpoolWriter.pm              |    6 +++++-
 plugins/node.d.linux/df.in                      |    4 ++--
 6 files changed, 46 insertions(+), 9 deletions(-)

git commit / #debbug / severity
9d84cb3 711201  normal
334b691         normal
ab42e8b 710899  important
d4ba06b 710529  important
456e117 710527  important
f325fd6         important

Most of these commits have seen longer testing, ab42e8b is really trivial.
9d84cb3 is included in: 2.0.10 2.0.10-1 2.0.11 2.0.11-1 2.0.11.1 2.0.11.1-1 
2.0.12 2.0.12-1 2.0.13 2.0.13-1 2.0.14 2.0.14-1 2.0.14-1-bpo70+1 2.0.15 
2.0.15-1 2.0.16 2.0.16-1 2.0.8 2.0.9 2.0.9-1 2.0.9-2 2.0.9-3 2.0.9-4 2.0.9-5 
2.1.0 2.1.1 2.1.1-1 2.1.2 2.1.2-1
334b691 is included in: 2.0.14 2.0.14-1 2.0.14-1-bpo70+1 2.0.15 2.0.15-1 
2.0.16 2.0.16-1 2.1.1 2.1.1-1 2.1.2 2.1.2-1
ab42e8b is included in: 2.0.16-2
d4ba06b is included in: 2.0.15 2.0.15-1 2.0.16 2.0.16-1
456e117 is included in: 2.0.15 2.0.15-1 2.0.16 2.0.16-1
f325fd6 is included in: 2.0.15 2.0.15-1 2.0.16 2.0.16-1

Sorry for the late upload and thanks for your work on wheezy r1!

Please include it into wheezy r1, without it async is rather unusable as DSA 
found out. (see 710529 + 710527)


cheers,
	Holger
diff -u munin-2.0.6/debian/changelog munin-2.0.6/debian/changelog
--- munin-2.0.6/debian/changelog
+++ munin-2.0.6/debian/changelog
@@ -1,3 +1,21 @@
+munin (2.0.6-4+deb7u1) wheezy; urgency=low
+
+  * master:
+    - on limit checks, if one of the two values is 'U', make
+      the final value 'U' as well. Cherry-picked 9d84cb3 as 764006e.
+      (Closes: #711201)
+    - fix limit for ABSOLUTE checks too. Cherry-picked 334b691 as 1e44056.
+    - add ":" to the allowed chars in CGI. Cherry-picked 456e117 as 7d3cb5f.
+      (Closes: #710527)
+    - fixes for munin-cgi-graph crashes in trend and predict. Cherry-picked
+      f325fd6 as 5cb74ba.
+  * plugins/df: ignore devtmpfs. Cherry picked from 2.0.16-2.
+    (Closes: #710899)
+  * asyncd: use the same rules as munin-update. Cherry-picked d4ba06b as
+    87975d0. (Closes: #710529)
+
+ -- Holger Levsen <holger@debian.org>  Sun, 09 Jun 2013 17:38:04 +0200
+
 munin (2.0.6-4) unstable; urgency=medium
 
   * Master/Node.pm: cherry-pick 71d0a86 from 2.0.12 to fix TLS enabled
diff -u munin-2.0.6/master/_bin/munin-cgi-graph.in munin-2.0.6/master/_bin/munin-cgi-graph.in
--- munin-2.0.6/master/_bin/munin-cgi-graph.in
+++ munin-2.0.6/master/_bin/munin-cgi-graph.in
@@ -344,7 +344,8 @@
 sub has_offending_chars {
 	my $url_part = shift;
 	return 0 if ! defined $url_part;
-	return $url_part =~ m:[^a-zA-Z0-9_/.,=&-]:;
+	# "." and ":" are for ip_ in IPv4 & IPv6
+	return $url_part =~ m:[^a-zA-Z0-9_/.,=&\:-]:;
 }
 
 sub verify_parameters {
diff -u munin-2.0.6/master/lib/Munin/Master/GraphOld.pm munin-2.0.6/master/lib/Munin/Master/GraphOld.pm
--- munin-2.0.6/master/lib/Munin/Master/GraphOld.pm
+++ munin-2.0.6/master/lib/Munin/Master/GraphOld.pm
@@ -1596,6 +1596,8 @@
             $colour = "$service->{$fieldname}{'colour'}66";
         }                                                                                                                                                    
                                                                                                                                                              
+        my $rrd_fieldname = get_field_name($fieldname);
+
         my $cdef = "";
         if (defined $service->{$fieldname}{'cdef'}) {
             $cdef = "cdef";
@@ -1603,8 +1605,8 @@
 
         #trends
         if (defined $service->{$fieldname}{'trend'} and $service->{$fieldname}{'trend'} eq 'yes') {
-            push (@complete, "CDEF:t$fieldname=c$cdef$fieldname,$futuretime,TRENDNAN");
-            push (@complete, "LINE1:t$fieldname#$colour:$fieldname trend\\l");
+            push (@complete, "CDEF:t$rrd_fieldname=c$cdef$rrd_fieldname,$futuretime,TRENDNAN");
+            push (@complete, "LINE1:t$rrd_fieldname#$colour:$service->{$fieldname}->{'label'} trend\\l");
             DEBUG "[DEBUG] set trend for $fieldname\n";
         }
 
@@ -1614,8 +1616,8 @@
             my @predict = split(",", $service->{$fieldname}{'predict'});
             my $predictiontime = int ($futuretime / $predict[0]) + 2; #2 needed for 1 day
             my $smooth = $predict[1]*$resolutions{$time};
-            push (@complete, "CDEF:p$fieldname=$predict[0],-$predictiontime,$smooth,c$cdef$fieldname,PREDICT");
-            push (@complete, "LINE1:p$fieldname#$colour:$fieldname prediction\\l");
+            push (@complete, "CDEF:p$rrd_fieldname=$predict[0],-$predictiontime,$smooth,c$cdef$rrd_fieldname,PREDICT");
+            push (@complete, "LINE1:p$rrd_fieldname#$colour:$service->{$fieldname}->{'label'} prediction\\l");
             DEBUG "[DEBUG] set prediction for $fieldname\n";
         }
     }
only in patch2:
unchanged:
--- munin-2.0.6.orig/plugins/node.d.linux/df.in
+++ munin-2.0.6/plugins/node.d.linux/df.in
@@ -24,7 +24,7 @@
 This configuration snipplet is an example with the defaults:
 
   [df]
-    env.exclude none unknown rootfs iso9660 squashfs udf romfs ramfs debugfs
+    env.exclude none unknown rootfs iso9660 squashfs udf romfs ramfs debugfs devtmpfs
     env.warning 92
     env.critical 98
 
@@ -87,7 +87,7 @@
 # For these devices use the mount point, the device is useless
 my %usemntpt = ( tmpfs => 1, none => 1, udev => 1, simfs => 1 );
 
-my $exclude = $ENV{'exclude'} || 'none unknown rootfs iso9660 squashfs udf romfs ramfs debugfs cgroup_root';
+my $exclude = $ENV{'exclude'} || 'none unknown rootfs iso9660 squashfs udf romfs ramfs debugfs cgroup_root devtmpfs';
 my $dfopts  = "-P -l ".join(' -x ',('',split('\s+',$exclude)));
 
 my $mode = ($ARGV[0] or "print");
only in patch2:
unchanged:
--- munin-2.0.6.orig/node/lib/Munin/Node/SpoolWriter.pm
+++ munin-2.0.6/node/lib/Munin/Node/SpoolWriter.pm
@@ -106,7 +106,11 @@
         or die "Unable to open spool file: $!";
 
     print {$fh} "timestamp $timestamp\n";
-    print {$fh} "multigraph $service\n" unless $data->[0] =~ m{^multigraph};
+
+    # squash the $service name with the same rules as the munin-update when using plain TCP
+    # Closes D:710529
+    my $service_squashed = $service; $service_squashed =~ tr/.:/__/;
+    print {$fh} "multigraph $service_squashed\n" unless $data->[0] =~ m{^multigraph};
 
     foreach my $line (@$data) {
         # Ignore blank lines and "."-ones.
only in patch2:
unchanged:
--- munin-2.0.6.orig/master/lib/Munin/Master/LimitsOld.pm
+++ munin-2.0.6/master/lib/Munin/Master/LimitsOld.pm
@@ -328,7 +328,7 @@
 		my ($previous_updated_timestamp, $previous_updated_value) = @{ $state->{value}{"$rrd_filename:42"}{previous} || [ ] };
 
 		my $heartbeat = 600; # XXX - $heartbeat is a fixed 10 min (2 runs of 5 min).
-		if (! $field->{type} || $field->{type} eq "GAUGE" || $field->{type} eq "ABSOLUTE") {
+		if (! $field->{type} || $field->{type} eq "GAUGE") {
 			$value = $current_updated_value;
 		} elsif (! defined $current_updated_value || ! defined $previous_updated_value || $current_updated_timestamp == $previous_updated_timestamp) {
 			# No derive computing possible. Report unknown.
@@ -342,7 +342,19 @@
 		} elsif ($field->{type} eq "COUNTER" && $current_updated_value < $previous_updated_value) {
 			# COUNTER never decrease. Report unknown.
 			$value = "U";
+		} elsif ($current_updated_value eq "U") {
+			# The current value is unknown. Report unknown.
+			$value = "U";
+		} elsif ($field->{type} eq "ABSOLUTE") {
+			# The previous value is unimportant, as if ABSOLUTE, the counter is reset anytime the value is read
+			$value = $current_updated_value / ($current_updated_timestamp - $previous_updated_timestamp);
+		} elsif ($previous_updated_value eq "U") {
+			# The previous value is unknown.
+			# Report unknown, as we are not ABSOLUTE
+			$value = "U";
 		} else {
+			# Everything is ok for DERIVE/COUNTER
+			# compute the value per timeunit
 			$value = ($current_updated_value - $previous_updated_value) / ($current_updated_timestamp - $previous_updated_timestamp);
 		}
 	}

Attachment: signature.asc
Description: This is a digitally signed message part.


Reply to: