Jeremy Davis's picture

I just had an email from Stuart regarding support for an old TurnKey Observium appliance. So I'm reposting it here.


I’m running observium on a turnkey linux applicance and an update to the rrd tool last night has broken our graphs. I managed to find that it’s a issue with the rrd tool itself and there is a new package to install.

This is the error:

RRDTool Output: ERROR: cannot compile regular expression: Error while compiling regular expression ^(?:[^%]+|%%)*%[+- 0#]?[0-9]*([.][0-9]+)?l[eEfF](?:[^%]+|%%)*%s(?:[^%]+|%%)*$ at char 18: range out of order in character class (^(?:[^%]+|%%)*%[+- 0#]?[0-9]*([.][0-9]+)?l[eEfF](?:[^%]+|%%)*%s(?:[^%]+|%%)*$)
RRDtool Runtime: 0.011s | Total time: 0.012s

The mailing lists suggest that the bug is fixed in +deb8u2

looks like I am running:

1.4.8-1.2+deb8u1

I upgraded to 1.4.8-1.2++deb8u2:

admin@observium /home2/observium$ sudo apt-get update
Get:1 http://security.debian.org jessie/updates InRelease [44.9 kB]
Ign http://archive.turnkeylinux.org jessie-security InRelease
Ign http://http.debian.net jessie InRelease
Hit http://security.debian.org jessie/updates/main amd64 Packages
Ign http://archive.turnkeylinux.org jessie InRelease
Hit http://http.debian.net jessie Release.gpg
Hit http://security.debian.org jessie/updates/contrib amd64 Packages
Hit http://security.debian.org jessie/updates/contrib Translation-en
Get:2 http://security.debian.org jessie/updates/main Translation-en [387 kB]
Hit http://archive.turnkeylinux.org jessie-security Release.gpg
Hit http://http.debian.net jessie Release
Hit http://http.debian.net jessie/main amd64 Packages
Hit http://archive.turnkeylinux.org jessie Release.gpg
Hit http://http.debian.net jessie/contrib amd64 Packages
Hit http://http.debian.net jessie/contrib Translation-en
Hit http://archive.turnkeylinux.org jessie-security Release
Hit http://http.debian.net jessie/main Translation-en
Hit http://archive.turnkeylinux.org jessie Release
Hit http://archive.turnkeylinux.org jessie-security/main amd64 Packages
Hit http://archive.turnkeylinux.org jessie/main amd64 Packages
Ign http://archive.turnkeylinux.org jessie-security/main Translation-en
Ign http://archive.turnkeylinux.org jessie/main Translation-en
Fetched 431 kB in 5s (80.4 kB/s)
Reading package lists... Done
W: There is no public key available for the following key IDs:
AA8E81B4331F7F50
admin@observium /home2/observium$ sudo apt-get install rrdtool
Reading package lists... Done
Building dependency tree
Reading state information... Done
The following packages were automatically installed and are no longer required:
libuuid-perl linux-image-3.16.0-4-amd64 linux-image-3.16.0-5-amd64 linux-image
Use 'apt-get autoremove' to remove them.
Suggested packages:
librrds-perl
The following packages will be upgraded:
rrdtool
1 upgraded, 0 newly installed, 0 to remove and 67 not upgraded.
Need to get 434 kB of archives.
After this operation, 0 B of additional disk space will be used.
Get:1 http://security.debian.org/ jessie/updates/main rrdtool amd64 1.4.8-1.2+de
Fetched 434 kB in 0s (1928 kB/s)
debconf: delaying package configuration, since apt-utils is not installed
(Reading database ... 56070 files and directories currently installed.)
Preparing to unpack .../rrdtool_1.4.8-1.2+deb8u2_amd64.deb ...
Unpacking rrdtool (1.4.8-1.2+deb8u2) over (1.4.8-1.2+deb8u1) ...
Processing triggers for man-db (2.7.0.2-5) ...
Setting up rrdtool (1.4.8-1.2+deb8u2) ...
Counting objects: 1938, done.
Compressing objects: 100% (1127/1127), done.
Writing objects: 100% (1938/1938), done.
Total 1938 (delta 236), reused 1938 (delta 236)
admin@observium /home2/observium$ sudo apt-get install rrdtool
Reading package lists... Done
Building dependency tree
Reading state information... Done
rrdtool is already the newest version.
The following packages were automatically installed and are no longer required:
libuuid-perl linux-image-3.16.0-4-amd64 linux-image-3.16.0-5-amd64 linux-image
Use 'apt-get autoremove' to remove them.
0 upgraded, 0 newly installed, 0 to remove and 67 not upgraded.

But I am still having the issue with graphs not drawing.

Forum: 
Jeremy Davis's picture

From a quick bit of research myself, it sounds like you did some great sleuthing already! So great work on that! :smile: And FWIW my reading agrees with what you've already stated.

My only thought re the issue that you've noted is perhaps it's worth restarting Apache? Perhaps it's got rrdtool in memory (and still using the same old broken one). TBH, it seems unlikely, but I'm not sure what else might be going on...

sudo service apache2 restart

What you've done certainly suggests that this newer version is indeed installed. Although you could double check using apt's policy. I.e.:

apt-cache policy rrdtool

If you continue to have issues, you could perhaps try reinstalling the old (insecure) version again and at least check that that resolves the issue.

If it does, then try updating to the latest fixed version again (I wouldn't expect that to make much difference, but perhaps the intermediate broken package broke something else?). This should do the trick there:

wget https://snapshot.debian.org/archive/debian-archive/20190328T105444Z/debian/pool/main/r/rrdtool/rrdtool_1.4.8-1.2_amd64.deb
sudo dpkg -i rrdtool_1.4.8-1.2_amd64.deb

​That will get you back to the older (insecure) version of rrdtool. Then check that your graphs are working again. (Perhaps restart Apache for good measure again if they don't immediately).

If so, then update back to the new version (as you did before) and see if it remains fixed.

Also, as an aside, the error regarding no public key for AA8E81B4331F7F50 is because there is a newer Debian ftp archive master key. Installing the newer debian-archive-keyring package should resolve that.

Add new comment