From: Florian Forster <o...@leeloo.lan.home.verplant.org>

Instead of flushing the file via the connection to the daemon and then
accessing it directly, use the "FETCH" command to access the file via
the RRDCacheD. This removes ambiguities with absolute and relative paths
and makes it possible to read data from files that are not available
locally.
---
 src/rrd_fetch.c |   15 +++++++++------
 1 files changed, 9 insertions(+), 6 deletions(-)

diff --git a/src/rrd_fetch.c b/src/rrd_fetch.c
index 45c0e7c..9e384b8 100644
--- a/src/rrd_fetch.c
+++ b/src/rrd_fetch.c
@@ -167,14 +167,17 @@ int rrd_fetch(
         return -1;
     }
 
-    status = rrdc_flush_if_daemon(opt_daemon, argv[optind]);
-    if (opt_daemon) free (opt_daemon);
-    if (status) return (-1);
-
     cf = argv[optind + 1];
 
-    status = rrd_fetch_r(argv[optind], cf, start, end, step,
-            ds_cnt, ds_namv, data);
+    rrdc_connect (opt_daemon);
+    if (rrdc_is_connected (opt_daemon))
+           status = rrdc_fetch (argv[optind], cf, start, end, step,
+                           ds_cnt, ds_namv, data);
+
+    else
+           status = rrd_fetch_r(argv[optind], cf, start, end, step,
+                           ds_cnt, ds_namv, data);
+
     if (status != 0)
         return (-1);
     return (0);
-- 
1.5.6.5

_______________________________________________
rrd-developers mailing list
rrd-developers@lists.oetiker.ch
https://lists.oetiker.ch/cgi-bin/listinfo/rrd-developers

Reply via email to