From 421559c26e4ff437e472234d0bebd85ec9de1ce6 Mon Sep 17 00:00:00 2001 From: zzz Date: Tue, 16 Aug 2011 18:29:57 +0000 Subject: [PATCH] * Console: Delete corrupt rrd file (ticket #483) --- .../java/src/net/i2p/router/web/SummaryListener.java | 6 +++++- history.txt | 2 ++ 2 files changed, 7 insertions(+), 1 deletion(-) diff --git a/apps/routerconsole/java/src/net/i2p/router/web/SummaryListener.java b/apps/routerconsole/java/src/net/i2p/router/web/SummaryListener.java index 4eec3a255..1ea872a88 100644 --- a/apps/routerconsole/java/src/net/i2p/router/web/SummaryListener.java +++ b/apps/routerconsole/java/src/net/i2p/router/web/SummaryListener.java @@ -113,13 +113,14 @@ class SummaryListener implements RateSummaryListener { String baseName = rs.getName() + "." + period; _name = createName(_context, baseName); _eventName = createName(_context, baseName + ".events"); + File rrdFile = null; try { RrdBackendFactory factory = RrdBackendFactory.getFactory(getBackendName()); String rrdDefName; if (_isPersistent) { // generate full path for persistent RRD files File rrdDir = new SecureFile(_context.getRouterDir(), RRD_DIR); - File rrdFile = new File(rrdDir, RRD_PREFIX + _name + RRD_SUFFIX); + rrdFile = new File(rrdDir, RRD_PREFIX + _name + RRD_SUFFIX); rrdDefName = rrdFile.getAbsolutePath(); if (rrdFile.exists()) { _db = new RrdDb(rrdDefName, factory); @@ -164,6 +165,9 @@ class SummaryListener implements RateSummaryListener { _log.error("Error starting RRD for stat " + baseName, oom); } catch (RrdException re) { _log.error("Error starting RRD for stat " + baseName, re); + // corrupt file? + if (_isPersistent && rrdFile != null) + rrdFile.delete(); } catch (IOException ioe) { _log.error("Error starting RRD for stat " + baseName, ioe); } diff --git a/history.txt b/history.txt index c8ec60b31..3fa79cf0d 100644 --- a/history.txt +++ b/history.txt @@ -1,4 +1,6 @@ 2011-08-16 zzz + * Console: Tweak logs page CSS + * Graphs: Delete corrupt rrd file (ticket #483) * UPnP: Fix bug causing failure when the PC has multiple interfaces 2011-08-06 kytv