Package: munin-node Version: 2.0.6-1 Severity: normal Tags: patch Dear Maintainer,
after upgrading from squeeze[0] to wheezy I noticed the iostat_ios graphs are empty. The error messages in node-log were helpful: 2012/09/23-16:05:10 [12979] Error output from iostat_ios: 2012/09/23-16:05:10 [12979] Byte order is not compatible at /usr/lib/perl/5.14/Storable.pm line 379, at /etc/munin/plugins/iostat_ios line 216 2012/09/23-16:05:10 [12979] Service 'iostat_ios' exited with status 25/0. Problem: The storable format went through an obviously incompatible change between squeeze (Perl 5.10) and wheezy (Perl 5.14), at least on i386 (not on amd64, though). How to repeat: On i386, for both squeeze and wheezy, run $ perl -e 'use Storable qw(store); store ({}, "$^V.storable")' then $ perl -e 'use Storable qw(retrieve); print "$^V\n"; foreach (@ARGV) { print "$_\n"; eval { retrieve ($_) } or print "FAIL: $@" }' *.storable Output for squeeze: v5.10.1 v5.10.1.storable v5.14.2.storable FAIL: Byte order is not compatible at ../../lib/Storable.pm (autosplit into ../../lib/auto/Storable/_retrieve.al) line 380, at -e line 1 Output for wheezy: v5.14.2 v5.10.1.storable FAIL: Byte order is not compatible at /usr/lib/perl/5.14/Storable.pm line 379, at -e line 1 v5.14.2.storable How to fix: At first, handle "retrieve" failures gracefully: sub get_state { my ($R); return(undef) unless ( -r STATEFILE); - $R = retrieve( STATEFILE ); + eval { $R = retrieve( STATEFILE ); }; return($R); } And second, please do never use "store" unless you really know what you're doing and you're willing to suffer from a lot of pain, like here. Use "nstore" instead. If that plugin would have used nstore in the first place, the entire upgrade would have been smoothless. Cheers, Christoph [0] More precisely, the upgrade was from a 2.0.6 backport but I doubt this makes a difference. -- System Information: Debian Release: wheezy/sid APT prefers testing APT policy: (500, 'testing') Architecture: i386 (i686) Kernel: Linux 3.4.11 (SMP w/4 CPU cores) Locale: LANG=de_DE.UTF-8, LC_CTYPE=de_DE.UTF-8 (charmap=UTF-8) Shell: /bin/sh linked to /bin/dash Versions of packages munin-node depends on: ii adduser 3.113+nmu3 ii gawk 1:4.0.1+dfsg-2 ii libnet-server-perl 2.006-1 ii lsb-base 4.1+Debian7 ii munin-common 2.0.6-1 ii munin-plugins-core 2.0.6-1 ii perl 5.14.2-13 ii procps 1:3.3.3-2 Versions of packages munin-node recommends: ii libnet-snmp-perl 6.0.1-2 ii munin-plugins-extra 2.0.6-1 Versions of packages munin-node suggests: ii ethtool 1:3.4.2-1 ii hdparm 9.39-1+b1 pn libcache-cache-perl <none> pn libcrypt-ssleay-perl <none> pn libdbd-mysql-perl <none> pn libdbd-pg-perl <none> pn liblwp-useragent-determined-perl <none> pn libnet-irc-perl <none> pn libtext-csv-xs-perl <none> ii libwww-perl 6.04-1 pn libxml-simple-perl <none> ii lm-sensors 1:3.3.2-2 pn logtail <none> pn munin <none> pn munin-plugins-java <none> pn mysql-client <none> ii net-tools 1.60-24.2 ii python 2.7.3~rc2-1 pn ruby <none> ii smartmontools 5.41+svn3365-1 -- no debconf information
signature.asc
Description: Digital signature