<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
  <meta content="text/html;charset=ISO-8859-1" http-equiv="Content-Type">
</head>
<body bgcolor="#ffffff" text="#000000">
Hi Robert!<br>
<br>
See:
<a class="moz-txt-link-freetext" href="https://lists.oetiker.ch/pipermail/rrd-developers/2006-November/001813.html">https://lists.oetiker.ch/pipermail/rrd-developers/2006-November/001813.html</a>&nbsp;
for the patch.<br>
<br>
There is one other patch to this if the library which can help with
detecting "wraparounds" when using counter style data-sources:<br>
--- src/rrd_fetch_libdbi.c.1&nbsp;&nbsp;&nbsp; 2007-01-17 19:07:58.000000000 +0000<br>
+++ src/rrd_fetch_libdbi.c&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 2007-01-17 19:12:14.000000000 +0000<br>
@@ -185,7 +185,7 @@<br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; return NULL;<br>
&nbsp;&nbsp;&nbsp;&nbsp; }<br>
&nbsp;&nbsp;&nbsp;&nbsp; /* now clean result table */<br>
-&nbsp;&nbsp;&nbsp; if (! rrd_fetch_dbi_do_sql(conn,"INSERT INTO tmpVals SELECT
t1.grouped,t1.time,(t1.value-t2.value)/(t1.time-t2.time) FROM
tmpDerive1 as t1<br>
, tmpDerive2 as t2 WHERE t1.id=t2.id AND t1.time&lt;&gt;t2.time AND
t1.value IS NOT NULL AND t2.value IS NOT NULL;",1)) {<br>
+&nbsp;&nbsp;&nbsp; if (! rrd_fetch_dbi_do_sql(conn,"INSERT INTO tmpVals SELECT
t1.grouped,t1.time,(t1.value-t2.value)/(t1.time-t2.time) FROM
tmpDerive1 as t1<br>
, tmpDerive2 as t2 WHERE t1.id=t2.id AND t1.time&lt;&gt;t2.time AND
t1.value IS NOT NULL AND t2.value IS NOT NULL AND
t1.value-t2.value&gt;-10000000;",1<br>
)) {<br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; rrd_fetch_dbi_do_sql(conn,"DROP TEMPORARY TABLE
tmpVals,tmpDerive1,tmpDerive2",1);<br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; return NULL;<br>
&nbsp;&nbsp;&nbsp;&nbsp; }<br>
<br>
(It is dirty, as hardcoded, and that is why I have not published it up
to now... But If you need something like this, then you can use it)<br>
<br>
We are currently updating 179135 different data sources every 5 minute
to the database, but I have to warn you, that with this many
data-sources you have to have a clever database design with migrations
etc... to keep the DB efficient over longer periods of times...<br>
<br>
Ciao,<br>
&nbsp;&nbsp;&nbsp; &nbsp;&nbsp; &nbsp;&nbsp; Martin<br>
<br>
Robert Halstead wrote:
<blockquote
 cite="mid:63ab770c0705150844y692ed209l65306550df6b1855@mail.gmail.com"
 type="cite">I while ago I noticed a topic that let rrdtool use a
database backend.&nbsp; What is the status with this project?&nbsp; Also, has
this turned out to be a viable solution when updating large amounts of
rrd files?&nbsp; We're currently exploring other storage media to help our
writes become faster.&nbsp; We are currently writing just under 100K rrd
files and have distributed writing.&nbsp; We were thinking of modifying
rrdtool to use a MySql database and would like to modify the database
beackend I saw on the list (if needed) accordingly so that we don't
have to re-invent the wheel.
  <br>
  <br>
I tried to look through the archives, but was only seeing patches to
the library file.&nbsp; Is there a place to get the whole thing at?&nbsp; I
couldn't see it in the /lib or /contrib download directories of the
main site.
  <br clear="all">
  <br>
-- <br>
"A fool acts, regardless; knowing well that he is wrong. The ignoramus
acts on only what he knows, but all that he knows.<br>
The ignoramus may be saved, but the fool knows that he is doomed."
  <br>
  <br>
Robert Halstead
  <pre wrap="">
<hr size="4" width="90%">
_______________________________________________
rrd-developers mailing list
<a class="moz-txt-link-abbreviated" href="mailto:rrd-developers@lists.oetiker.ch">rrd-developers@lists.oetiker.ch</a>
<a class="moz-txt-link-freetext" href="https://lists.oetiker.ch/cgi-bin/listinfo/rrd-developers">https://lists.oetiker.ch/cgi-bin/listinfo/rrd-developers</a>
  </pre>
</blockquote>
<br>
</body>
</html>