]> git.ipfire.org Git - thirdparty/rrdtool-1.x.git/commitdiff
add more test code and data required for testing
authorPeter Stamfest <peter@stamfest.at>
Mon, 3 Mar 2014 00:04:17 +0000 (01:04 +0100)
committerPeter Stamfest <peter@stamfest.at>
Mon, 3 Mar 2014 07:26:20 +0000 (08:26 +0100)
tests/functions
tests/modify-test3.create.dump [new file with mode: 0644]
tests/modify-test3.mod1.dump [new file with mode: 0644]
tests/modify1
tests/modify2 [new file with mode: 0755]
tests/modify2-testa-create.dump [new file with mode: 0644]
tests/modify2-testb-mod1.dump [new file with mode: 0644]
tests/modify2-testc-mod1.dump [new file with mode: 0644]
tests/modify3 [new file with mode: 0755]

index 715abe2e653e32daf4647bad47e806eb3cd8c954..f689678ee12008b418a6144b2dfff842ef4803a7 100644 (file)
@@ -1,4 +1,6 @@
 
+BASEDIR=$(dirname $0)
+RRDTOOL=$BASEDIR/../src/rrdtool
 
 function fail {
         echo >&2 "FAILED:" "$@"
@@ -8,3 +10,12 @@ function fail {
 function ok {
         echo >&2 "OK:" "$@"
 }
+
+function report {
+       RC=$?
+       if [ "$RC" = 0 ] ; then
+               ok "$@"
+       else
+               fail "$@"
+       fi
+}
diff --git a/tests/modify-test3.create.dump b/tests/modify-test3.create.dump
new file mode 100644 (file)
index 0000000..5c9b242
--- /dev/null
@@ -0,0 +1,129 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!DOCTYPE rrd SYSTEM "http://oss.oetiker.ch/rrdtool/rrdtool.dtd">
+<!-- Round Robin Database Dump -->
+<rrd>
+       <version>0003</version>
+       <step>60</step> <!-- Seconds -->
+       <lastupdate>1300003020</lastupdate> <!-- 2011-03-13 08:57:00 CET -->
+
+       <ds>
+               <name> a </name>
+               <type> GAUGE </type>
+               <minimal_heartbeat>120</minimal_heartbeat>
+               <min>0.0000000000e+00</min>
+               <max>NaN</max>
+
+               <!-- PDP Status -->
+               <last_ds>510</last_ds>
+               <value>0.0000000000e+00</value>
+               <unknown_sec> 0 </unknown_sec>
+       </ds>
+
+       <ds>
+               <name> b </name>
+               <type> GAUGE </type>
+               <minimal_heartbeat>120</minimal_heartbeat>
+               <min>0.0000000000e+00</min>
+               <max>NaN</max>
+
+               <!-- PDP Status -->
+               <last_ds>10510</last_ds>
+               <value>0.0000000000e+00</value>
+               <unknown_sec> 0 </unknown_sec>
+       </ds>
+
+       <ds>
+               <name> c </name>
+               <type> GAUGE </type>
+               <minimal_heartbeat>120</minimal_heartbeat>
+               <min>0.0000000000e+00</min>
+               <max>NaN</max>
+
+               <!-- PDP Status -->
+               <last_ds>20510</last_ds>
+               <value>0.0000000000e+00</value>
+               <unknown_sec> 0 </unknown_sec>
+       </ds>
+
+       <!-- Round Robin Archives -->
+       <rra>
+               <cf>AVERAGE</cf>
+               <pdp_per_row>1</pdp_per_row> <!-- 60 seconds -->
+
+               <params>
+               <xff>5.0000000000e-01</xff>
+               </params>
+               <cdp_prep>
+                       <ds>
+                       <primary_value>5.1000000000e+02</primary_value>
+                       <secondary_value>0.0000000000e+00</secondary_value>
+                       <value>NaN</value>
+                       <unknown_datapoints>0</unknown_datapoints>
+                       </ds>
+                       <ds>
+                       <primary_value>1.0510000000e+04</primary_value>
+                       <secondary_value>0.0000000000e+00</secondary_value>
+                       <value>NaN</value>
+                       <unknown_datapoints>0</unknown_datapoints>
+                       </ds>
+                       <ds>
+                       <primary_value>2.0510000000e+04</primary_value>
+                       <secondary_value>0.0000000000e+00</secondary_value>
+                       <value>NaN</value>
+                       <unknown_datapoints>0</unknown_datapoints>
+                       </ds>
+               </cdp_prep>
+               <database>
+                       <!-- 2011-03-13 08:48:00 CET / 1300002480 --> <row><v>4.2000000000e+02</v><v>1.0420000000e+04</v><v>2.0420000000e+04</v></row>
+                       <!-- 2011-03-13 08:49:00 CET / 1300002540 --> <row><v>4.3000000000e+02</v><v>1.0430000000e+04</v><v>2.0430000000e+04</v></row>
+                       <!-- 2011-03-13 08:50:00 CET / 1300002600 --> <row><v>4.4000000000e+02</v><v>1.0440000000e+04</v><v>2.0440000000e+04</v></row>
+                       <!-- 2011-03-13 08:51:00 CET / 1300002660 --> <row><v>4.5000000000e+02</v><v>1.0450000000e+04</v><v>2.0450000000e+04</v></row>
+                       <!-- 2011-03-13 08:52:00 CET / 1300002720 --> <row><v>4.6000000000e+02</v><v>1.0460000000e+04</v><v>2.0460000000e+04</v></row>
+                       <!-- 2011-03-13 08:53:00 CET / 1300002780 --> <row><v>4.7000000000e+02</v><v>1.0470000000e+04</v><v>2.0470000000e+04</v></row>
+                       <!-- 2011-03-13 08:54:00 CET / 1300002840 --> <row><v>4.8000000000e+02</v><v>1.0480000000e+04</v><v>2.0480000000e+04</v></row>
+                       <!-- 2011-03-13 08:55:00 CET / 1300002900 --> <row><v>4.9000000000e+02</v><v>1.0490000000e+04</v><v>2.0490000000e+04</v></row>
+                       <!-- 2011-03-13 08:56:00 CET / 1300002960 --> <row><v>5.0000000000e+02</v><v>1.0500000000e+04</v><v>2.0500000000e+04</v></row>
+                       <!-- 2011-03-13 08:57:00 CET / 1300003020 --> <row><v>5.1000000000e+02</v><v>1.0510000000e+04</v><v>2.0510000000e+04</v></row>
+               </database>
+       </rra>
+       <rra>
+               <cf>AVERAGE</cf>
+               <pdp_per_row>5</pdp_per_row> <!-- 300 seconds -->
+
+               <params>
+               <xff>5.0000000000e-01</xff>
+               </params>
+               <cdp_prep>
+                       <ds>
+                       <primary_value>4.7000000000e+02</primary_value>
+                       <secondary_value>4.9000000000e+02</secondary_value>
+                       <value>1.0100000000e+03</value>
+                       <unknown_datapoints>0</unknown_datapoints>
+                       </ds>
+                       <ds>
+                       <primary_value>1.0470000000e+04</primary_value>
+                       <secondary_value>1.0490000000e+04</secondary_value>
+                       <value>2.1010000000e+04</value>
+                       <unknown_datapoints>0</unknown_datapoints>
+                       </ds>
+                       <ds>
+                       <primary_value>2.0470000000e+04</primary_value>
+                       <secondary_value>2.0490000000e+04</secondary_value>
+                       <value>4.1010000000e+04</value>
+                       <unknown_datapoints>0</unknown_datapoints>
+                       </ds>
+               </cdp_prep>
+               <database>
+                       <!-- 2011-03-13 08:10:00 CET / 1300000200 --> <row><v>3.0000000000e+01</v><v>1.0030000000e+04</v><v>2.0030000000e+04</v></row>
+                       <!-- 2011-03-13 08:15:00 CET / 1300000500 --> <row><v>7.0000000000e+01</v><v>1.0070000000e+04</v><v>2.0070000000e+04</v></row>
+                       <!-- 2011-03-13 08:20:00 CET / 1300000800 --> <row><v>1.2000000000e+02</v><v>1.0120000000e+04</v><v>2.0120000000e+04</v></row>
+                       <!-- 2011-03-13 08:25:00 CET / 1300001100 --> <row><v>1.7000000000e+02</v><v>1.0170000000e+04</v><v>2.0170000000e+04</v></row>
+                       <!-- 2011-03-13 08:30:00 CET / 1300001400 --> <row><v>2.2000000000e+02</v><v>1.0220000000e+04</v><v>2.0220000000e+04</v></row>
+                       <!-- 2011-03-13 08:35:00 CET / 1300001700 --> <row><v>2.7000000000e+02</v><v>1.0270000000e+04</v><v>2.0270000000e+04</v></row>
+                       <!-- 2011-03-13 08:40:00 CET / 1300002000 --> <row><v>3.2000000000e+02</v><v>1.0320000000e+04</v><v>2.0320000000e+04</v></row>
+                       <!-- 2011-03-13 08:45:00 CET / 1300002300 --> <row><v>3.7000000000e+02</v><v>1.0370000000e+04</v><v>2.0370000000e+04</v></row>
+                       <!-- 2011-03-13 08:50:00 CET / 1300002600 --> <row><v>4.2000000000e+02</v><v>1.0420000000e+04</v><v>2.0420000000e+04</v></row>
+                       <!-- 2011-03-13 08:55:00 CET / 1300002900 --> <row><v>4.7000000000e+02</v><v>1.0470000000e+04</v><v>2.0470000000e+04</v></row>
+               </database>
+       </rra>
+</rrd>
diff --git a/tests/modify-test3.mod1.dump b/tests/modify-test3.mod1.dump
new file mode 100644 (file)
index 0000000..055b03a
--- /dev/null
@@ -0,0 +1,114 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!DOCTYPE rrd SYSTEM "http://oss.oetiker.ch/rrdtool/rrdtool.dtd">
+<!-- Round Robin Database Dump -->
+<rrd>
+       <version>0003</version>
+       <step>60</step> <!-- Seconds -->
+       <lastupdate>1300003020</lastupdate> <!-- 2011-03-13 08:57:00 CET -->
+
+       <ds>
+               <name> b </name>
+               <type> GAUGE </type>
+               <minimal_heartbeat>120</minimal_heartbeat>
+               <min>0.0000000000e+00</min>
+               <max>NaN</max>
+
+               <!-- PDP Status -->
+               <last_ds>10510</last_ds>
+               <value>0.0000000000e+00</value>
+               <unknown_sec> 0 </unknown_sec>
+       </ds>
+
+       <ds>
+               <name> c </name>
+               <type> GAUGE </type>
+               <minimal_heartbeat>120</minimal_heartbeat>
+               <min>0.0000000000e+00</min>
+               <max>NaN</max>
+
+               <!-- PDP Status -->
+               <last_ds>20510</last_ds>
+               <value>0.0000000000e+00</value>
+               <unknown_sec> 0 </unknown_sec>
+       </ds>
+
+       <!-- Round Robin Archives -->
+       <rra>
+               <cf>AVERAGE</cf>
+               <pdp_per_row>1</pdp_per_row> <!-- 60 seconds -->
+
+               <params>
+               <xff>5.0000000000e-01</xff>
+               </params>
+               <cdp_prep>
+                       <ds>
+                       <primary_value>1.0510000000e+04</primary_value>
+                       <secondary_value>0.0000000000e+00</secondary_value>
+                       <value>NaN</value>
+                       <unknown_datapoints>0</unknown_datapoints>
+                       </ds>
+                       <ds>
+                       <primary_value>2.0510000000e+04</primary_value>
+                       <secondary_value>0.0000000000e+00</secondary_value>
+                       <value>NaN</value>
+                       <unknown_datapoints>0</unknown_datapoints>
+                       </ds>
+               </cdp_prep>
+               <database>
+                       <!-- 2011-03-13 08:38:00 CET / 1300001880 --> <row><v>1.0320000000e+04</v><v>2.0320000000e+04</v></row>
+                       <!-- 2011-03-13 08:39:00 CET / 1300001940 --> <row><v>1.0320000000e+04</v><v>2.0320000000e+04</v></row>
+                       <!-- 2011-03-13 08:40:00 CET / 1300002000 --> <row><v>1.0320000000e+04</v><v>2.0320000000e+04</v></row>
+                       <!-- 2011-03-13 08:41:00 CET / 1300002060 --> <row><v>1.0370000000e+04</v><v>2.0370000000e+04</v></row>
+                       <!-- 2011-03-13 08:42:00 CET / 1300002120 --> <row><v>1.0370000000e+04</v><v>2.0370000000e+04</v></row>
+                       <!-- 2011-03-13 08:43:00 CET / 1300002180 --> <row><v>1.0370000000e+04</v><v>2.0370000000e+04</v></row>
+                       <!-- 2011-03-13 08:44:00 CET / 1300002240 --> <row><v>1.0370000000e+04</v><v>2.0370000000e+04</v></row>
+                       <!-- 2011-03-13 08:45:00 CET / 1300002300 --> <row><v>1.0370000000e+04</v><v>2.0370000000e+04</v></row>
+                       <!-- 2011-03-13 08:46:00 CET / 1300002360 --> <row><v>1.0420000000e+04</v><v>2.0420000000e+04</v></row>
+                       <!-- 2011-03-13 08:47:00 CET / 1300002420 --> <row><v>1.0420000000e+04</v><v>2.0420000000e+04</v></row>
+                       <!-- 2011-03-13 08:48:00 CET / 1300002480 --> <row><v>1.0420000000e+04</v><v>2.0420000000e+04</v></row>
+                       <!-- 2011-03-13 08:49:00 CET / 1300002540 --> <row><v>1.0430000000e+04</v><v>2.0430000000e+04</v></row>
+                       <!-- 2011-03-13 08:50:00 CET / 1300002600 --> <row><v>1.0440000000e+04</v><v>2.0440000000e+04</v></row>
+                       <!-- 2011-03-13 08:51:00 CET / 1300002660 --> <row><v>1.0450000000e+04</v><v>2.0450000000e+04</v></row>
+                       <!-- 2011-03-13 08:52:00 CET / 1300002720 --> <row><v>1.0460000000e+04</v><v>2.0460000000e+04</v></row>
+                       <!-- 2011-03-13 08:53:00 CET / 1300002780 --> <row><v>1.0470000000e+04</v><v>2.0470000000e+04</v></row>
+                       <!-- 2011-03-13 08:54:00 CET / 1300002840 --> <row><v>1.0480000000e+04</v><v>2.0480000000e+04</v></row>
+                       <!-- 2011-03-13 08:55:00 CET / 1300002900 --> <row><v>1.0490000000e+04</v><v>2.0490000000e+04</v></row>
+                       <!-- 2011-03-13 08:56:00 CET / 1300002960 --> <row><v>1.0500000000e+04</v><v>2.0500000000e+04</v></row>
+                       <!-- 2011-03-13 08:57:00 CET / 1300003020 --> <row><v>1.0510000000e+04</v><v>2.0510000000e+04</v></row>
+               </database>
+       </rra>
+       <rra>
+               <cf>AVERAGE</cf>
+               <pdp_per_row>5</pdp_per_row> <!-- 300 seconds -->
+
+               <params>
+               <xff>5.0000000000e-01</xff>
+               </params>
+               <cdp_prep>
+                       <ds>
+                       <primary_value>1.0470000000e+04</primary_value>
+                       <secondary_value>1.0490000000e+04</secondary_value>
+                       <value>2.1010000000e+04</value>
+                       <unknown_datapoints>0</unknown_datapoints>
+                       </ds>
+                       <ds>
+                       <primary_value>2.0470000000e+04</primary_value>
+                       <secondary_value>2.0490000000e+04</secondary_value>
+                       <value>4.1010000000e+04</value>
+                       <unknown_datapoints>0</unknown_datapoints>
+                       </ds>
+               </cdp_prep>
+               <database>
+                       <!-- 2011-03-13 08:10:00 CET / 1300000200 --> <row><v>1.0030000000e+04</v><v>2.0030000000e+04</v></row>
+                       <!-- 2011-03-13 08:15:00 CET / 1300000500 --> <row><v>1.0070000000e+04</v><v>2.0070000000e+04</v></row>
+                       <!-- 2011-03-13 08:20:00 CET / 1300000800 --> <row><v>1.0120000000e+04</v><v>2.0120000000e+04</v></row>
+                       <!-- 2011-03-13 08:25:00 CET / 1300001100 --> <row><v>1.0170000000e+04</v><v>2.0170000000e+04</v></row>
+                       <!-- 2011-03-13 08:30:00 CET / 1300001400 --> <row><v>1.0220000000e+04</v><v>2.0220000000e+04</v></row>
+                       <!-- 2011-03-13 08:35:00 CET / 1300001700 --> <row><v>1.0270000000e+04</v><v>2.0270000000e+04</v></row>
+                       <!-- 2011-03-13 08:40:00 CET / 1300002000 --> <row><v>1.0320000000e+04</v><v>2.0320000000e+04</v></row>
+                       <!-- 2011-03-13 08:45:00 CET / 1300002300 --> <row><v>1.0370000000e+04</v><v>2.0370000000e+04</v></row>
+                       <!-- 2011-03-13 08:50:00 CET / 1300002600 --> <row><v>1.0420000000e+04</v><v>2.0420000000e+04</v></row>
+                       <!-- 2011-03-13 08:55:00 CET / 1300002900 --> <row><v>1.0470000000e+04</v><v>2.0470000000e+04</v></row>
+               </database>
+       </rra>
+</rrd>
index 5d0c3c7f1c6d20df413682a5dd1bfe94d0ec480b..565ac5974a84108cc82b9278e44a438770a333b9 100755 (executable)
@@ -1,10 +1,6 @@
 #!/bin/bash
 
-BASEDIR=$(dirname $0)
-
-. $BASEDIR/functions
-
-RRDTOOL=$BASEDIR/../src/rrdtool
+. $(dirname $0)/functions
 
 BASE=$BASEDIR/modify-test1
 
diff --git a/tests/modify2 b/tests/modify2
new file mode 100755 (executable)
index 0000000..2658bc0
--- /dev/null
@@ -0,0 +1,29 @@
+#!/bin/bash
+
+. $(dirname $0)/functions
+
+BASE=$BASEDIR/modify2-test
+
+
+
+$RRDTOOL create ${BASE}a.rrd --start 1300000000 --step 60 DS:a:GAUGE:120:0:U  RRA:AVERAGE:0.5:1:100 RRA:AVERAGE:0.5:5:2 RRA:MIN:0.5:5:2 RRA:MAX:0.5:5:2 RRA:LAST:0.5:5:2
+
+# add 50 values to 
+N=10
+for T in $(seq 1300000020 60 1300003020) ; do
+       $RRDTOOL update ${BASE}a.rrd --template a $T:$N
+       let N=$N+10
+done
+
+$RRDTOOL dump ${BASE}a.rrd | diff - ${BASE}a-create.dump
+report create
+
+$RRDTOOL modify ${BASE}a.rrd ${BASE}b.rrd RRA#1:+10 RRA#2:+10 RRA#3:+10 RRA#4:+10
+
+$RRDTOOL dump ${BASE}b.rrd | diff - ${BASE}b-mod1.dump
+report "simultaneously extend aggregate RRAs"
+
+$RRDTOOL modify ${BASE}a.rrd ${BASE}c.rrd RRA:AVERAGE:0.5:2:10
+$RRDTOOL dump ${BASE}c.rrd | diff - ${BASE}c-mod1.dump
+report "add RRA with intermediate pdp_cnt"
+
diff --git a/tests/modify2-testa-create.dump b/tests/modify2-testa-create.dump
new file mode 100644 (file)
index 0000000..4478ad9
--- /dev/null
@@ -0,0 +1,221 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!DOCTYPE rrd SYSTEM "http://oss.oetiker.ch/rrdtool/rrdtool.dtd">
+<!-- Round Robin Database Dump -->
+<rrd>
+       <version>0003</version>
+       <step>60</step> <!-- Seconds -->
+       <lastupdate>1300003020</lastupdate> <!-- 2011-03-13 08:57:00 CET -->
+
+       <ds>
+               <name> a </name>
+               <type> GAUGE </type>
+               <minimal_heartbeat>120</minimal_heartbeat>
+               <min>0.0000000000e+00</min>
+               <max>NaN</max>
+
+               <!-- PDP Status -->
+               <last_ds>510</last_ds>
+               <value>0.0000000000e+00</value>
+               <unknown_sec> 0 </unknown_sec>
+       </ds>
+
+       <!-- Round Robin Archives -->
+       <rra>
+               <cf>AVERAGE</cf>
+               <pdp_per_row>1</pdp_per_row> <!-- 60 seconds -->
+
+               <params>
+               <xff>5.0000000000e-01</xff>
+               </params>
+               <cdp_prep>
+                       <ds>
+                       <primary_value>5.1000000000e+02</primary_value>
+                       <secondary_value>0.0000000000e+00</secondary_value>
+                       <value>NaN</value>
+                       <unknown_datapoints>0</unknown_datapoints>
+                       </ds>
+               </cdp_prep>
+               <database>
+                       <!-- 2011-03-13 07:18:00 CET / 1299997080 --> <row><v>NaN</v></row>
+                       <!-- 2011-03-13 07:19:00 CET / 1299997140 --> <row><v>NaN</v></row>
+                       <!-- 2011-03-13 07:20:00 CET / 1299997200 --> <row><v>NaN</v></row>
+                       <!-- 2011-03-13 07:21:00 CET / 1299997260 --> <row><v>NaN</v></row>
+                       <!-- 2011-03-13 07:22:00 CET / 1299997320 --> <row><v>NaN</v></row>
+                       <!-- 2011-03-13 07:23:00 CET / 1299997380 --> <row><v>NaN</v></row>
+                       <!-- 2011-03-13 07:24:00 CET / 1299997440 --> <row><v>NaN</v></row>
+                       <!-- 2011-03-13 07:25:00 CET / 1299997500 --> <row><v>NaN</v></row>
+                       <!-- 2011-03-13 07:26:00 CET / 1299997560 --> <row><v>NaN</v></row>
+                       <!-- 2011-03-13 07:27:00 CET / 1299997620 --> <row><v>NaN</v></row>
+                       <!-- 2011-03-13 07:28:00 CET / 1299997680 --> <row><v>NaN</v></row>
+                       <!-- 2011-03-13 07:29:00 CET / 1299997740 --> <row><v>NaN</v></row>
+                       <!-- 2011-03-13 07:30:00 CET / 1299997800 --> <row><v>NaN</v></row>
+                       <!-- 2011-03-13 07:31:00 CET / 1299997860 --> <row><v>NaN</v></row>
+                       <!-- 2011-03-13 07:32:00 CET / 1299997920 --> <row><v>NaN</v></row>
+                       <!-- 2011-03-13 07:33:00 CET / 1299997980 --> <row><v>NaN</v></row>
+                       <!-- 2011-03-13 07:34:00 CET / 1299998040 --> <row><v>NaN</v></row>
+                       <!-- 2011-03-13 07:35:00 CET / 1299998100 --> <row><v>NaN</v></row>
+                       <!-- 2011-03-13 07:36:00 CET / 1299998160 --> <row><v>NaN</v></row>
+                       <!-- 2011-03-13 07:37:00 CET / 1299998220 --> <row><v>NaN</v></row>
+                       <!-- 2011-03-13 07:38:00 CET / 1299998280 --> <row><v>NaN</v></row>
+                       <!-- 2011-03-13 07:39:00 CET / 1299998340 --> <row><v>NaN</v></row>
+                       <!-- 2011-03-13 07:40:00 CET / 1299998400 --> <row><v>NaN</v></row>
+                       <!-- 2011-03-13 07:41:00 CET / 1299998460 --> <row><v>NaN</v></row>
+                       <!-- 2011-03-13 07:42:00 CET / 1299998520 --> <row><v>NaN</v></row>
+                       <!-- 2011-03-13 07:43:00 CET / 1299998580 --> <row><v>NaN</v></row>
+                       <!-- 2011-03-13 07:44:00 CET / 1299998640 --> <row><v>NaN</v></row>
+                       <!-- 2011-03-13 07:45:00 CET / 1299998700 --> <row><v>NaN</v></row>
+                       <!-- 2011-03-13 07:46:00 CET / 1299998760 --> <row><v>NaN</v></row>
+                       <!-- 2011-03-13 07:47:00 CET / 1299998820 --> <row><v>NaN</v></row>
+                       <!-- 2011-03-13 07:48:00 CET / 1299998880 --> <row><v>NaN</v></row>
+                       <!-- 2011-03-13 07:49:00 CET / 1299998940 --> <row><v>NaN</v></row>
+                       <!-- 2011-03-13 07:50:00 CET / 1299999000 --> <row><v>NaN</v></row>
+                       <!-- 2011-03-13 07:51:00 CET / 1299999060 --> <row><v>NaN</v></row>
+                       <!-- 2011-03-13 07:52:00 CET / 1299999120 --> <row><v>NaN</v></row>
+                       <!-- 2011-03-13 07:53:00 CET / 1299999180 --> <row><v>NaN</v></row>
+                       <!-- 2011-03-13 07:54:00 CET / 1299999240 --> <row><v>NaN</v></row>
+                       <!-- 2011-03-13 07:55:00 CET / 1299999300 --> <row><v>NaN</v></row>
+                       <!-- 2011-03-13 07:56:00 CET / 1299999360 --> <row><v>NaN</v></row>
+                       <!-- 2011-03-13 07:57:00 CET / 1299999420 --> <row><v>NaN</v></row>
+                       <!-- 2011-03-13 07:58:00 CET / 1299999480 --> <row><v>NaN</v></row>
+                       <!-- 2011-03-13 07:59:00 CET / 1299999540 --> <row><v>NaN</v></row>
+                       <!-- 2011-03-13 08:00:00 CET / 1299999600 --> <row><v>NaN</v></row>
+                       <!-- 2011-03-13 08:01:00 CET / 1299999660 --> <row><v>NaN</v></row>
+                       <!-- 2011-03-13 08:02:00 CET / 1299999720 --> <row><v>NaN</v></row>
+                       <!-- 2011-03-13 08:03:00 CET / 1299999780 --> <row><v>NaN</v></row>
+                       <!-- 2011-03-13 08:04:00 CET / 1299999840 --> <row><v>NaN</v></row>
+                       <!-- 2011-03-13 08:05:00 CET / 1299999900 --> <row><v>NaN</v></row>
+                       <!-- 2011-03-13 08:06:00 CET / 1299999960 --> <row><v>NaN</v></row>
+                       <!-- 2011-03-13 08:07:00 CET / 1300000020 --> <row><v>NaN</v></row>
+                       <!-- 2011-03-13 08:08:00 CET / 1300000080 --> <row><v>2.0000000000e+01</v></row>
+                       <!-- 2011-03-13 08:09:00 CET / 1300000140 --> <row><v>3.0000000000e+01</v></row>
+                       <!-- 2011-03-13 08:10:00 CET / 1300000200 --> <row><v>4.0000000000e+01</v></row>
+                       <!-- 2011-03-13 08:11:00 CET / 1300000260 --> <row><v>5.0000000000e+01</v></row>
+                       <!-- 2011-03-13 08:12:00 CET / 1300000320 --> <row><v>6.0000000000e+01</v></row>
+                       <!-- 2011-03-13 08:13:00 CET / 1300000380 --> <row><v>7.0000000000e+01</v></row>
+                       <!-- 2011-03-13 08:14:00 CET / 1300000440 --> <row><v>8.0000000000e+01</v></row>
+                       <!-- 2011-03-13 08:15:00 CET / 1300000500 --> <row><v>9.0000000000e+01</v></row>
+                       <!-- 2011-03-13 08:16:00 CET / 1300000560 --> <row><v>1.0000000000e+02</v></row>
+                       <!-- 2011-03-13 08:17:00 CET / 1300000620 --> <row><v>1.1000000000e+02</v></row>
+                       <!-- 2011-03-13 08:18:00 CET / 1300000680 --> <row><v>1.2000000000e+02</v></row>
+                       <!-- 2011-03-13 08:19:00 CET / 1300000740 --> <row><v>1.3000000000e+02</v></row>
+                       <!-- 2011-03-13 08:20:00 CET / 1300000800 --> <row><v>1.4000000000e+02</v></row>
+                       <!-- 2011-03-13 08:21:00 CET / 1300000860 --> <row><v>1.5000000000e+02</v></row>
+                       <!-- 2011-03-13 08:22:00 CET / 1300000920 --> <row><v>1.6000000000e+02</v></row>
+                       <!-- 2011-03-13 08:23:00 CET / 1300000980 --> <row><v>1.7000000000e+02</v></row>
+                       <!-- 2011-03-13 08:24:00 CET / 1300001040 --> <row><v>1.8000000000e+02</v></row>
+                       <!-- 2011-03-13 08:25:00 CET / 1300001100 --> <row><v>1.9000000000e+02</v></row>
+                       <!-- 2011-03-13 08:26:00 CET / 1300001160 --> <row><v>2.0000000000e+02</v></row>
+                       <!-- 2011-03-13 08:27:00 CET / 1300001220 --> <row><v>2.1000000000e+02</v></row>
+                       <!-- 2011-03-13 08:28:00 CET / 1300001280 --> <row><v>2.2000000000e+02</v></row>
+                       <!-- 2011-03-13 08:29:00 CET / 1300001340 --> <row><v>2.3000000000e+02</v></row>
+                       <!-- 2011-03-13 08:30:00 CET / 1300001400 --> <row><v>2.4000000000e+02</v></row>
+                       <!-- 2011-03-13 08:31:00 CET / 1300001460 --> <row><v>2.5000000000e+02</v></row>
+                       <!-- 2011-03-13 08:32:00 CET / 1300001520 --> <row><v>2.6000000000e+02</v></row>
+                       <!-- 2011-03-13 08:33:00 CET / 1300001580 --> <row><v>2.7000000000e+02</v></row>
+                       <!-- 2011-03-13 08:34:00 CET / 1300001640 --> <row><v>2.8000000000e+02</v></row>
+                       <!-- 2011-03-13 08:35:00 CET / 1300001700 --> <row><v>2.9000000000e+02</v></row>
+                       <!-- 2011-03-13 08:36:00 CET / 1300001760 --> <row><v>3.0000000000e+02</v></row>
+                       <!-- 2011-03-13 08:37:00 CET / 1300001820 --> <row><v>3.1000000000e+02</v></row>
+                       <!-- 2011-03-13 08:38:00 CET / 1300001880 --> <row><v>3.2000000000e+02</v></row>
+                       <!-- 2011-03-13 08:39:00 CET / 1300001940 --> <row><v>3.3000000000e+02</v></row>
+                       <!-- 2011-03-13 08:40:00 CET / 1300002000 --> <row><v>3.4000000000e+02</v></row>
+                       <!-- 2011-03-13 08:41:00 CET / 1300002060 --> <row><v>3.5000000000e+02</v></row>
+                       <!-- 2011-03-13 08:42:00 CET / 1300002120 --> <row><v>3.6000000000e+02</v></row>
+                       <!-- 2011-03-13 08:43:00 CET / 1300002180 --> <row><v>3.7000000000e+02</v></row>
+                       <!-- 2011-03-13 08:44:00 CET / 1300002240 --> <row><v>3.8000000000e+02</v></row>
+                       <!-- 2011-03-13 08:45:00 CET / 1300002300 --> <row><v>3.9000000000e+02</v></row>
+                       <!-- 2011-03-13 08:46:00 CET / 1300002360 --> <row><v>4.0000000000e+02</v></row>
+                       <!-- 2011-03-13 08:47:00 CET / 1300002420 --> <row><v>4.1000000000e+02</v></row>
+                       <!-- 2011-03-13 08:48:00 CET / 1300002480 --> <row><v>4.2000000000e+02</v></row>
+                       <!-- 2011-03-13 08:49:00 CET / 1300002540 --> <row><v>4.3000000000e+02</v></row>
+                       <!-- 2011-03-13 08:50:00 CET / 1300002600 --> <row><v>4.4000000000e+02</v></row>
+                       <!-- 2011-03-13 08:51:00 CET / 1300002660 --> <row><v>4.5000000000e+02</v></row>
+                       <!-- 2011-03-13 08:52:00 CET / 1300002720 --> <row><v>4.6000000000e+02</v></row>
+                       <!-- 2011-03-13 08:53:00 CET / 1300002780 --> <row><v>4.7000000000e+02</v></row>
+                       <!-- 2011-03-13 08:54:00 CET / 1300002840 --> <row><v>4.8000000000e+02</v></row>
+                       <!-- 2011-03-13 08:55:00 CET / 1300002900 --> <row><v>4.9000000000e+02</v></row>
+                       <!-- 2011-03-13 08:56:00 CET / 1300002960 --> <row><v>5.0000000000e+02</v></row>
+                       <!-- 2011-03-13 08:57:00 CET / 1300003020 --> <row><v>5.1000000000e+02</v></row>
+               </database>
+       </rra>
+       <rra>
+               <cf>AVERAGE</cf>
+               <pdp_per_row>5</pdp_per_row> <!-- 300 seconds -->
+
+               <params>
+               <xff>5.0000000000e-01</xff>
+               </params>
+               <cdp_prep>
+                       <ds>
+                       <primary_value>4.7000000000e+02</primary_value>
+                       <secondary_value>4.9000000000e+02</secondary_value>
+                       <value>1.0100000000e+03</value>
+                       <unknown_datapoints>0</unknown_datapoints>
+                       </ds>
+               </cdp_prep>
+               <database>
+                       <!-- 2011-03-13 08:50:00 CET / 1300002600 --> <row><v>4.2000000000e+02</v></row>
+                       <!-- 2011-03-13 08:55:00 CET / 1300002900 --> <row><v>4.7000000000e+02</v></row>
+               </database>
+       </rra>
+       <rra>
+               <cf>MIN</cf>
+               <pdp_per_row>5</pdp_per_row> <!-- 300 seconds -->
+
+               <params>
+               <xff>5.0000000000e-01</xff>
+               </params>
+               <cdp_prep>
+                       <ds>
+                       <primary_value>4.5000000000e+02</primary_value>
+                       <secondary_value>4.9000000000e+02</secondary_value>
+                       <value>5.0000000000e+02</value>
+                       <unknown_datapoints>0</unknown_datapoints>
+                       </ds>
+               </cdp_prep>
+               <database>
+                       <!-- 2011-03-13 08:50:00 CET / 1300002600 --> <row><v>4.0000000000e+02</v></row>
+                       <!-- 2011-03-13 08:55:00 CET / 1300002900 --> <row><v>4.5000000000e+02</v></row>
+               </database>
+       </rra>
+       <rra>
+               <cf>MAX</cf>
+               <pdp_per_row>5</pdp_per_row> <!-- 300 seconds -->
+
+               <params>
+               <xff>5.0000000000e-01</xff>
+               </params>
+               <cdp_prep>
+                       <ds>
+                       <primary_value>4.9000000000e+02</primary_value>
+                       <secondary_value>4.9000000000e+02</secondary_value>
+                       <value>5.1000000000e+02</value>
+                       <unknown_datapoints>0</unknown_datapoints>
+                       </ds>
+               </cdp_prep>
+               <database>
+                       <!-- 2011-03-13 08:50:00 CET / 1300002600 --> <row><v>4.4000000000e+02</v></row>
+                       <!-- 2011-03-13 08:55:00 CET / 1300002900 --> <row><v>4.9000000000e+02</v></row>
+               </database>
+       </rra>
+       <rra>
+               <cf>LAST</cf>
+               <pdp_per_row>5</pdp_per_row> <!-- 300 seconds -->
+
+               <params>
+               <xff>5.0000000000e-01</xff>
+               </params>
+               <cdp_prep>
+                       <ds>
+                       <primary_value>4.9000000000e+02</primary_value>
+                       <secondary_value>4.9000000000e+02</secondary_value>
+                       <value>5.1000000000e+02</value>
+                       <unknown_datapoints>0</unknown_datapoints>
+                       </ds>
+               </cdp_prep>
+               <database>
+                       <!-- 2011-03-13 08:50:00 CET / 1300002600 --> <row><v>4.4000000000e+02</v></row>
+                       <!-- 2011-03-13 08:55:00 CET / 1300002900 --> <row><v>4.9000000000e+02</v></row>
+               </database>
+       </rra>
+</rrd>
diff --git a/tests/modify2-testb-mod1.dump b/tests/modify2-testb-mod1.dump
new file mode 100644 (file)
index 0000000..6871be5
--- /dev/null
@@ -0,0 +1,261 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!DOCTYPE rrd SYSTEM "http://oss.oetiker.ch/rrdtool/rrdtool.dtd">
+<!-- Round Robin Database Dump -->
+<rrd>
+       <version>0003</version>
+       <step>60</step> <!-- Seconds -->
+       <lastupdate>1300003020</lastupdate> <!-- 2011-03-13 08:57:00 CET -->
+
+       <ds>
+               <name> a </name>
+               <type> GAUGE </type>
+               <minimal_heartbeat>120</minimal_heartbeat>
+               <min>0.0000000000e+00</min>
+               <max>NaN</max>
+
+               <!-- PDP Status -->
+               <last_ds>510</last_ds>
+               <value>0.0000000000e+00</value>
+               <unknown_sec> 0 </unknown_sec>
+       </ds>
+
+       <!-- Round Robin Archives -->
+       <rra>
+               <cf>AVERAGE</cf>
+               <pdp_per_row>1</pdp_per_row> <!-- 60 seconds -->
+
+               <params>
+               <xff>5.0000000000e-01</xff>
+               </params>
+               <cdp_prep>
+                       <ds>
+                       <primary_value>5.1000000000e+02</primary_value>
+                       <secondary_value>0.0000000000e+00</secondary_value>
+                       <value>NaN</value>
+                       <unknown_datapoints>0</unknown_datapoints>
+                       </ds>
+               </cdp_prep>
+               <database>
+                       <!-- 2011-03-13 07:18:00 CET / 1299997080 --> <row><v>NaN</v></row>
+                       <!-- 2011-03-13 07:19:00 CET / 1299997140 --> <row><v>NaN</v></row>
+                       <!-- 2011-03-13 07:20:00 CET / 1299997200 --> <row><v>NaN</v></row>
+                       <!-- 2011-03-13 07:21:00 CET / 1299997260 --> <row><v>NaN</v></row>
+                       <!-- 2011-03-13 07:22:00 CET / 1299997320 --> <row><v>NaN</v></row>
+                       <!-- 2011-03-13 07:23:00 CET / 1299997380 --> <row><v>NaN</v></row>
+                       <!-- 2011-03-13 07:24:00 CET / 1299997440 --> <row><v>NaN</v></row>
+                       <!-- 2011-03-13 07:25:00 CET / 1299997500 --> <row><v>NaN</v></row>
+                       <!-- 2011-03-13 07:26:00 CET / 1299997560 --> <row><v>NaN</v></row>
+                       <!-- 2011-03-13 07:27:00 CET / 1299997620 --> <row><v>NaN</v></row>
+                       <!-- 2011-03-13 07:28:00 CET / 1299997680 --> <row><v>NaN</v></row>
+                       <!-- 2011-03-13 07:29:00 CET / 1299997740 --> <row><v>NaN</v></row>
+                       <!-- 2011-03-13 07:30:00 CET / 1299997800 --> <row><v>NaN</v></row>
+                       <!-- 2011-03-13 07:31:00 CET / 1299997860 --> <row><v>NaN</v></row>
+                       <!-- 2011-03-13 07:32:00 CET / 1299997920 --> <row><v>NaN</v></row>
+                       <!-- 2011-03-13 07:33:00 CET / 1299997980 --> <row><v>NaN</v></row>
+                       <!-- 2011-03-13 07:34:00 CET / 1299998040 --> <row><v>NaN</v></row>
+                       <!-- 2011-03-13 07:35:00 CET / 1299998100 --> <row><v>NaN</v></row>
+                       <!-- 2011-03-13 07:36:00 CET / 1299998160 --> <row><v>NaN</v></row>
+                       <!-- 2011-03-13 07:37:00 CET / 1299998220 --> <row><v>NaN</v></row>
+                       <!-- 2011-03-13 07:38:00 CET / 1299998280 --> <row><v>NaN</v></row>
+                       <!-- 2011-03-13 07:39:00 CET / 1299998340 --> <row><v>NaN</v></row>
+                       <!-- 2011-03-13 07:40:00 CET / 1299998400 --> <row><v>NaN</v></row>
+                       <!-- 2011-03-13 07:41:00 CET / 1299998460 --> <row><v>NaN</v></row>
+                       <!-- 2011-03-13 07:42:00 CET / 1299998520 --> <row><v>NaN</v></row>
+                       <!-- 2011-03-13 07:43:00 CET / 1299998580 --> <row><v>NaN</v></row>
+                       <!-- 2011-03-13 07:44:00 CET / 1299998640 --> <row><v>NaN</v></row>
+                       <!-- 2011-03-13 07:45:00 CET / 1299998700 --> <row><v>NaN</v></row>
+                       <!-- 2011-03-13 07:46:00 CET / 1299998760 --> <row><v>NaN</v></row>
+                       <!-- 2011-03-13 07:47:00 CET / 1299998820 --> <row><v>NaN</v></row>
+                       <!-- 2011-03-13 07:48:00 CET / 1299998880 --> <row><v>NaN</v></row>
+                       <!-- 2011-03-13 07:49:00 CET / 1299998940 --> <row><v>NaN</v></row>
+                       <!-- 2011-03-13 07:50:00 CET / 1299999000 --> <row><v>NaN</v></row>
+                       <!-- 2011-03-13 07:51:00 CET / 1299999060 --> <row><v>NaN</v></row>
+                       <!-- 2011-03-13 07:52:00 CET / 1299999120 --> <row><v>NaN</v></row>
+                       <!-- 2011-03-13 07:53:00 CET / 1299999180 --> <row><v>NaN</v></row>
+                       <!-- 2011-03-13 07:54:00 CET / 1299999240 --> <row><v>NaN</v></row>
+                       <!-- 2011-03-13 07:55:00 CET / 1299999300 --> <row><v>NaN</v></row>
+                       <!-- 2011-03-13 07:56:00 CET / 1299999360 --> <row><v>NaN</v></row>
+                       <!-- 2011-03-13 07:57:00 CET / 1299999420 --> <row><v>NaN</v></row>
+                       <!-- 2011-03-13 07:58:00 CET / 1299999480 --> <row><v>NaN</v></row>
+                       <!-- 2011-03-13 07:59:00 CET / 1299999540 --> <row><v>NaN</v></row>
+                       <!-- 2011-03-13 08:00:00 CET / 1299999600 --> <row><v>NaN</v></row>
+                       <!-- 2011-03-13 08:01:00 CET / 1299999660 --> <row><v>NaN</v></row>
+                       <!-- 2011-03-13 08:02:00 CET / 1299999720 --> <row><v>NaN</v></row>
+                       <!-- 2011-03-13 08:03:00 CET / 1299999780 --> <row><v>NaN</v></row>
+                       <!-- 2011-03-13 08:04:00 CET / 1299999840 --> <row><v>NaN</v></row>
+                       <!-- 2011-03-13 08:05:00 CET / 1299999900 --> <row><v>NaN</v></row>
+                       <!-- 2011-03-13 08:06:00 CET / 1299999960 --> <row><v>NaN</v></row>
+                       <!-- 2011-03-13 08:07:00 CET / 1300000020 --> <row><v>NaN</v></row>
+                       <!-- 2011-03-13 08:08:00 CET / 1300000080 --> <row><v>2.0000000000e+01</v></row>
+                       <!-- 2011-03-13 08:09:00 CET / 1300000140 --> <row><v>3.0000000000e+01</v></row>
+                       <!-- 2011-03-13 08:10:00 CET / 1300000200 --> <row><v>4.0000000000e+01</v></row>
+                       <!-- 2011-03-13 08:11:00 CET / 1300000260 --> <row><v>5.0000000000e+01</v></row>
+                       <!-- 2011-03-13 08:12:00 CET / 1300000320 --> <row><v>6.0000000000e+01</v></row>
+                       <!-- 2011-03-13 08:13:00 CET / 1300000380 --> <row><v>7.0000000000e+01</v></row>
+                       <!-- 2011-03-13 08:14:00 CET / 1300000440 --> <row><v>8.0000000000e+01</v></row>
+                       <!-- 2011-03-13 08:15:00 CET / 1300000500 --> <row><v>9.0000000000e+01</v></row>
+                       <!-- 2011-03-13 08:16:00 CET / 1300000560 --> <row><v>1.0000000000e+02</v></row>
+                       <!-- 2011-03-13 08:17:00 CET / 1300000620 --> <row><v>1.1000000000e+02</v></row>
+                       <!-- 2011-03-13 08:18:00 CET / 1300000680 --> <row><v>1.2000000000e+02</v></row>
+                       <!-- 2011-03-13 08:19:00 CET / 1300000740 --> <row><v>1.3000000000e+02</v></row>
+                       <!-- 2011-03-13 08:20:00 CET / 1300000800 --> <row><v>1.4000000000e+02</v></row>
+                       <!-- 2011-03-13 08:21:00 CET / 1300000860 --> <row><v>1.5000000000e+02</v></row>
+                       <!-- 2011-03-13 08:22:00 CET / 1300000920 --> <row><v>1.6000000000e+02</v></row>
+                       <!-- 2011-03-13 08:23:00 CET / 1300000980 --> <row><v>1.7000000000e+02</v></row>
+                       <!-- 2011-03-13 08:24:00 CET / 1300001040 --> <row><v>1.8000000000e+02</v></row>
+                       <!-- 2011-03-13 08:25:00 CET / 1300001100 --> <row><v>1.9000000000e+02</v></row>
+                       <!-- 2011-03-13 08:26:00 CET / 1300001160 --> <row><v>2.0000000000e+02</v></row>
+                       <!-- 2011-03-13 08:27:00 CET / 1300001220 --> <row><v>2.1000000000e+02</v></row>
+                       <!-- 2011-03-13 08:28:00 CET / 1300001280 --> <row><v>2.2000000000e+02</v></row>
+                       <!-- 2011-03-13 08:29:00 CET / 1300001340 --> <row><v>2.3000000000e+02</v></row>
+                       <!-- 2011-03-13 08:30:00 CET / 1300001400 --> <row><v>2.4000000000e+02</v></row>
+                       <!-- 2011-03-13 08:31:00 CET / 1300001460 --> <row><v>2.5000000000e+02</v></row>
+                       <!-- 2011-03-13 08:32:00 CET / 1300001520 --> <row><v>2.6000000000e+02</v></row>
+                       <!-- 2011-03-13 08:33:00 CET / 1300001580 --> <row><v>2.7000000000e+02</v></row>
+                       <!-- 2011-03-13 08:34:00 CET / 1300001640 --> <row><v>2.8000000000e+02</v></row>
+                       <!-- 2011-03-13 08:35:00 CET / 1300001700 --> <row><v>2.9000000000e+02</v></row>
+                       <!-- 2011-03-13 08:36:00 CET / 1300001760 --> <row><v>3.0000000000e+02</v></row>
+                       <!-- 2011-03-13 08:37:00 CET / 1300001820 --> <row><v>3.1000000000e+02</v></row>
+                       <!-- 2011-03-13 08:38:00 CET / 1300001880 --> <row><v>3.2000000000e+02</v></row>
+                       <!-- 2011-03-13 08:39:00 CET / 1300001940 --> <row><v>3.3000000000e+02</v></row>
+                       <!-- 2011-03-13 08:40:00 CET / 1300002000 --> <row><v>3.4000000000e+02</v></row>
+                       <!-- 2011-03-13 08:41:00 CET / 1300002060 --> <row><v>3.5000000000e+02</v></row>
+                       <!-- 2011-03-13 08:42:00 CET / 1300002120 --> <row><v>3.6000000000e+02</v></row>
+                       <!-- 2011-03-13 08:43:00 CET / 1300002180 --> <row><v>3.7000000000e+02</v></row>
+                       <!-- 2011-03-13 08:44:00 CET / 1300002240 --> <row><v>3.8000000000e+02</v></row>
+                       <!-- 2011-03-13 08:45:00 CET / 1300002300 --> <row><v>3.9000000000e+02</v></row>
+                       <!-- 2011-03-13 08:46:00 CET / 1300002360 --> <row><v>4.0000000000e+02</v></row>
+                       <!-- 2011-03-13 08:47:00 CET / 1300002420 --> <row><v>4.1000000000e+02</v></row>
+                       <!-- 2011-03-13 08:48:00 CET / 1300002480 --> <row><v>4.2000000000e+02</v></row>
+                       <!-- 2011-03-13 08:49:00 CET / 1300002540 --> <row><v>4.3000000000e+02</v></row>
+                       <!-- 2011-03-13 08:50:00 CET / 1300002600 --> <row><v>4.4000000000e+02</v></row>
+                       <!-- 2011-03-13 08:51:00 CET / 1300002660 --> <row><v>4.5000000000e+02</v></row>
+                       <!-- 2011-03-13 08:52:00 CET / 1300002720 --> <row><v>4.6000000000e+02</v></row>
+                       <!-- 2011-03-13 08:53:00 CET / 1300002780 --> <row><v>4.7000000000e+02</v></row>
+                       <!-- 2011-03-13 08:54:00 CET / 1300002840 --> <row><v>4.8000000000e+02</v></row>
+                       <!-- 2011-03-13 08:55:00 CET / 1300002900 --> <row><v>4.9000000000e+02</v></row>
+                       <!-- 2011-03-13 08:56:00 CET / 1300002960 --> <row><v>5.0000000000e+02</v></row>
+                       <!-- 2011-03-13 08:57:00 CET / 1300003020 --> <row><v>5.1000000000e+02</v></row>
+               </database>
+       </rra>
+       <rra>
+               <cf>AVERAGE</cf>
+               <pdp_per_row>5</pdp_per_row> <!-- 300 seconds -->
+
+               <params>
+               <xff>5.0000000000e-01</xff>
+               </params>
+               <cdp_prep>
+                       <ds>
+                       <primary_value>4.7000000000e+02</primary_value>
+                       <secondary_value>4.9000000000e+02</secondary_value>
+                       <value>1.0100000000e+03</value>
+                       <unknown_datapoints>0</unknown_datapoints>
+                       </ds>
+               </cdp_prep>
+               <database>
+                       <!-- 2011-03-13 08:00:00 CET / 1299999600 --> <row><v>NaN</v></row>
+                       <!-- 2011-03-13 08:05:00 CET / 1299999900 --> <row><v>NaN</v></row>
+                       <!-- 2011-03-13 08:10:00 CET / 1300000200 --> <row><v>3.0000000000e+01</v></row>
+                       <!-- 2011-03-13 08:15:00 CET / 1300000500 --> <row><v>7.0000000000e+01</v></row>
+                       <!-- 2011-03-13 08:20:00 CET / 1300000800 --> <row><v>1.2000000000e+02</v></row>
+                       <!-- 2011-03-13 08:25:00 CET / 1300001100 --> <row><v>1.7000000000e+02</v></row>
+                       <!-- 2011-03-13 08:30:00 CET / 1300001400 --> <row><v>2.2000000000e+02</v></row>
+                       <!-- 2011-03-13 08:35:00 CET / 1300001700 --> <row><v>2.7000000000e+02</v></row>
+                       <!-- 2011-03-13 08:40:00 CET / 1300002000 --> <row><v>3.2000000000e+02</v></row>
+                       <!-- 2011-03-13 08:45:00 CET / 1300002300 --> <row><v>3.7000000000e+02</v></row>
+                       <!-- 2011-03-13 08:50:00 CET / 1300002600 --> <row><v>4.2000000000e+02</v></row>
+                       <!-- 2011-03-13 08:55:00 CET / 1300002900 --> <row><v>4.7000000000e+02</v></row>
+               </database>
+       </rra>
+       <rra>
+               <cf>MIN</cf>
+               <pdp_per_row>5</pdp_per_row> <!-- 300 seconds -->
+
+               <params>
+               <xff>5.0000000000e-01</xff>
+               </params>
+               <cdp_prep>
+                       <ds>
+                       <primary_value>4.5000000000e+02</primary_value>
+                       <secondary_value>4.9000000000e+02</secondary_value>
+                       <value>5.0000000000e+02</value>
+                       <unknown_datapoints>0</unknown_datapoints>
+                       </ds>
+               </cdp_prep>
+               <database>
+                       <!-- 2011-03-13 08:00:00 CET / 1299999600 --> <row><v>NaN</v></row>
+                       <!-- 2011-03-13 08:05:00 CET / 1299999900 --> <row><v>NaN</v></row>
+                       <!-- 2011-03-13 08:10:00 CET / 1300000200 --> <row><v>2.0000000000e+01</v></row>
+                       <!-- 2011-03-13 08:15:00 CET / 1300000500 --> <row><v>5.0000000000e+01</v></row>
+                       <!-- 2011-03-13 08:20:00 CET / 1300000800 --> <row><v>1.0000000000e+02</v></row>
+                       <!-- 2011-03-13 08:25:00 CET / 1300001100 --> <row><v>1.5000000000e+02</v></row>
+                       <!-- 2011-03-13 08:30:00 CET / 1300001400 --> <row><v>2.0000000000e+02</v></row>
+                       <!-- 2011-03-13 08:35:00 CET / 1300001700 --> <row><v>2.5000000000e+02</v></row>
+                       <!-- 2011-03-13 08:40:00 CET / 1300002000 --> <row><v>3.0000000000e+02</v></row>
+                       <!-- 2011-03-13 08:45:00 CET / 1300002300 --> <row><v>3.5000000000e+02</v></row>
+                       <!-- 2011-03-13 08:50:00 CET / 1300002600 --> <row><v>4.0000000000e+02</v></row>
+                       <!-- 2011-03-13 08:55:00 CET / 1300002900 --> <row><v>4.5000000000e+02</v></row>
+               </database>
+       </rra>
+       <rra>
+               <cf>MAX</cf>
+               <pdp_per_row>5</pdp_per_row> <!-- 300 seconds -->
+
+               <params>
+               <xff>5.0000000000e-01</xff>
+               </params>
+               <cdp_prep>
+                       <ds>
+                       <primary_value>4.9000000000e+02</primary_value>
+                       <secondary_value>4.9000000000e+02</secondary_value>
+                       <value>5.1000000000e+02</value>
+                       <unknown_datapoints>0</unknown_datapoints>
+                       </ds>
+               </cdp_prep>
+               <database>
+                       <!-- 2011-03-13 08:00:00 CET / 1299999600 --> <row><v>NaN</v></row>
+                       <!-- 2011-03-13 08:05:00 CET / 1299999900 --> <row><v>NaN</v></row>
+                       <!-- 2011-03-13 08:10:00 CET / 1300000200 --> <row><v>4.0000000000e+01</v></row>
+                       <!-- 2011-03-13 08:15:00 CET / 1300000500 --> <row><v>9.0000000000e+01</v></row>
+                       <!-- 2011-03-13 08:20:00 CET / 1300000800 --> <row><v>1.4000000000e+02</v></row>
+                       <!-- 2011-03-13 08:25:00 CET / 1300001100 --> <row><v>1.9000000000e+02</v></row>
+                       <!-- 2011-03-13 08:30:00 CET / 1300001400 --> <row><v>2.4000000000e+02</v></row>
+                       <!-- 2011-03-13 08:35:00 CET / 1300001700 --> <row><v>2.9000000000e+02</v></row>
+                       <!-- 2011-03-13 08:40:00 CET / 1300002000 --> <row><v>3.4000000000e+02</v></row>
+                       <!-- 2011-03-13 08:45:00 CET / 1300002300 --> <row><v>3.9000000000e+02</v></row>
+                       <!-- 2011-03-13 08:50:00 CET / 1300002600 --> <row><v>4.4000000000e+02</v></row>
+                       <!-- 2011-03-13 08:55:00 CET / 1300002900 --> <row><v>4.9000000000e+02</v></row>
+               </database>
+       </rra>
+       <rra>
+               <cf>LAST</cf>
+               <pdp_per_row>5</pdp_per_row> <!-- 300 seconds -->
+
+               <params>
+               <xff>5.0000000000e-01</xff>
+               </params>
+               <cdp_prep>
+                       <ds>
+                       <primary_value>4.9000000000e+02</primary_value>
+                       <secondary_value>4.9000000000e+02</secondary_value>
+                       <value>5.1000000000e+02</value>
+                       <unknown_datapoints>0</unknown_datapoints>
+                       </ds>
+               </cdp_prep>
+               <database>
+                       <!-- 2011-03-13 08:00:00 CET / 1299999600 --> <row><v>NaN</v></row>
+                       <!-- 2011-03-13 08:05:00 CET / 1299999900 --> <row><v>NaN</v></row>
+                       <!-- 2011-03-13 08:10:00 CET / 1300000200 --> <row><v>4.0000000000e+01</v></row>
+                       <!-- 2011-03-13 08:15:00 CET / 1300000500 --> <row><v>9.0000000000e+01</v></row>
+                       <!-- 2011-03-13 08:20:00 CET / 1300000800 --> <row><v>1.4000000000e+02</v></row>
+                       <!-- 2011-03-13 08:25:00 CET / 1300001100 --> <row><v>1.9000000000e+02</v></row>
+                       <!-- 2011-03-13 08:30:00 CET / 1300001400 --> <row><v>2.4000000000e+02</v></row>
+                       <!-- 2011-03-13 08:35:00 CET / 1300001700 --> <row><v>2.9000000000e+02</v></row>
+                       <!-- 2011-03-13 08:40:00 CET / 1300002000 --> <row><v>3.4000000000e+02</v></row>
+                       <!-- 2011-03-13 08:45:00 CET / 1300002300 --> <row><v>3.9000000000e+02</v></row>
+                       <!-- 2011-03-13 08:50:00 CET / 1300002600 --> <row><v>4.4000000000e+02</v></row>
+                       <!-- 2011-03-13 08:55:00 CET / 1300002900 --> <row><v>4.9000000000e+02</v></row>
+               </database>
+       </rra>
+</rrd>
diff --git a/tests/modify2-testc-mod1.dump b/tests/modify2-testc-mod1.dump
new file mode 100644 (file)
index 0000000..5cf3696
--- /dev/null
@@ -0,0 +1,249 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!DOCTYPE rrd SYSTEM "http://oss.oetiker.ch/rrdtool/rrdtool.dtd">
+<!-- Round Robin Database Dump -->
+<rrd>
+       <version>0003</version>
+       <step>60</step> <!-- Seconds -->
+       <lastupdate>1300003020</lastupdate> <!-- 2011-03-13 08:57:00 CET -->
+
+       <ds>
+               <name> a </name>
+               <type> GAUGE </type>
+               <minimal_heartbeat>120</minimal_heartbeat>
+               <min>0.0000000000e+00</min>
+               <max>NaN</max>
+
+               <!-- PDP Status -->
+               <last_ds>510</last_ds>
+               <value>0.0000000000e+00</value>
+               <unknown_sec> 0 </unknown_sec>
+       </ds>
+
+       <!-- Round Robin Archives -->
+       <rra>
+               <cf>AVERAGE</cf>
+               <pdp_per_row>1</pdp_per_row> <!-- 60 seconds -->
+
+               <params>
+               <xff>5.0000000000e-01</xff>
+               </params>
+               <cdp_prep>
+                       <ds>
+                       <primary_value>5.1000000000e+02</primary_value>
+                       <secondary_value>0.0000000000e+00</secondary_value>
+                       <value>NaN</value>
+                       <unknown_datapoints>0</unknown_datapoints>
+                       </ds>
+               </cdp_prep>
+               <database>
+                       <!-- 2011-03-13 07:18:00 CET / 1299997080 --> <row><v>NaN</v></row>
+                       <!-- 2011-03-13 07:19:00 CET / 1299997140 --> <row><v>NaN</v></row>
+                       <!-- 2011-03-13 07:20:00 CET / 1299997200 --> <row><v>NaN</v></row>
+                       <!-- 2011-03-13 07:21:00 CET / 1299997260 --> <row><v>NaN</v></row>
+                       <!-- 2011-03-13 07:22:00 CET / 1299997320 --> <row><v>NaN</v></row>
+                       <!-- 2011-03-13 07:23:00 CET / 1299997380 --> <row><v>NaN</v></row>
+                       <!-- 2011-03-13 07:24:00 CET / 1299997440 --> <row><v>NaN</v></row>
+                       <!-- 2011-03-13 07:25:00 CET / 1299997500 --> <row><v>NaN</v></row>
+                       <!-- 2011-03-13 07:26:00 CET / 1299997560 --> <row><v>NaN</v></row>
+                       <!-- 2011-03-13 07:27:00 CET / 1299997620 --> <row><v>NaN</v></row>
+                       <!-- 2011-03-13 07:28:00 CET / 1299997680 --> <row><v>NaN</v></row>
+                       <!-- 2011-03-13 07:29:00 CET / 1299997740 --> <row><v>NaN</v></row>
+                       <!-- 2011-03-13 07:30:00 CET / 1299997800 --> <row><v>NaN</v></row>
+                       <!-- 2011-03-13 07:31:00 CET / 1299997860 --> <row><v>NaN</v></row>
+                       <!-- 2011-03-13 07:32:00 CET / 1299997920 --> <row><v>NaN</v></row>
+                       <!-- 2011-03-13 07:33:00 CET / 1299997980 --> <row><v>NaN</v></row>
+                       <!-- 2011-03-13 07:34:00 CET / 1299998040 --> <row><v>NaN</v></row>
+                       <!-- 2011-03-13 07:35:00 CET / 1299998100 --> <row><v>NaN</v></row>
+                       <!-- 2011-03-13 07:36:00 CET / 1299998160 --> <row><v>NaN</v></row>
+                       <!-- 2011-03-13 07:37:00 CET / 1299998220 --> <row><v>NaN</v></row>
+                       <!-- 2011-03-13 07:38:00 CET / 1299998280 --> <row><v>NaN</v></row>
+                       <!-- 2011-03-13 07:39:00 CET / 1299998340 --> <row><v>NaN</v></row>
+                       <!-- 2011-03-13 07:40:00 CET / 1299998400 --> <row><v>NaN</v></row>
+                       <!-- 2011-03-13 07:41:00 CET / 1299998460 --> <row><v>NaN</v></row>
+                       <!-- 2011-03-13 07:42:00 CET / 1299998520 --> <row><v>NaN</v></row>
+                       <!-- 2011-03-13 07:43:00 CET / 1299998580 --> <row><v>NaN</v></row>
+                       <!-- 2011-03-13 07:44:00 CET / 1299998640 --> <row><v>NaN</v></row>
+                       <!-- 2011-03-13 07:45:00 CET / 1299998700 --> <row><v>NaN</v></row>
+                       <!-- 2011-03-13 07:46:00 CET / 1299998760 --> <row><v>NaN</v></row>
+                       <!-- 2011-03-13 07:47:00 CET / 1299998820 --> <row><v>NaN</v></row>
+                       <!-- 2011-03-13 07:48:00 CET / 1299998880 --> <row><v>NaN</v></row>
+                       <!-- 2011-03-13 07:49:00 CET / 1299998940 --> <row><v>NaN</v></row>
+                       <!-- 2011-03-13 07:50:00 CET / 1299999000 --> <row><v>NaN</v></row>
+                       <!-- 2011-03-13 07:51:00 CET / 1299999060 --> <row><v>NaN</v></row>
+                       <!-- 2011-03-13 07:52:00 CET / 1299999120 --> <row><v>NaN</v></row>
+                       <!-- 2011-03-13 07:53:00 CET / 1299999180 --> <row><v>NaN</v></row>
+                       <!-- 2011-03-13 07:54:00 CET / 1299999240 --> <row><v>NaN</v></row>
+                       <!-- 2011-03-13 07:55:00 CET / 1299999300 --> <row><v>NaN</v></row>
+                       <!-- 2011-03-13 07:56:00 CET / 1299999360 --> <row><v>NaN</v></row>
+                       <!-- 2011-03-13 07:57:00 CET / 1299999420 --> <row><v>NaN</v></row>
+                       <!-- 2011-03-13 07:58:00 CET / 1299999480 --> <row><v>NaN</v></row>
+                       <!-- 2011-03-13 07:59:00 CET / 1299999540 --> <row><v>NaN</v></row>
+                       <!-- 2011-03-13 08:00:00 CET / 1299999600 --> <row><v>NaN</v></row>
+                       <!-- 2011-03-13 08:01:00 CET / 1299999660 --> <row><v>NaN</v></row>
+                       <!-- 2011-03-13 08:02:00 CET / 1299999720 --> <row><v>NaN</v></row>
+                       <!-- 2011-03-13 08:03:00 CET / 1299999780 --> <row><v>NaN</v></row>
+                       <!-- 2011-03-13 08:04:00 CET / 1299999840 --> <row><v>NaN</v></row>
+                       <!-- 2011-03-13 08:05:00 CET / 1299999900 --> <row><v>NaN</v></row>
+                       <!-- 2011-03-13 08:06:00 CET / 1299999960 --> <row><v>NaN</v></row>
+                       <!-- 2011-03-13 08:07:00 CET / 1300000020 --> <row><v>NaN</v></row>
+                       <!-- 2011-03-13 08:08:00 CET / 1300000080 --> <row><v>2.0000000000e+01</v></row>
+                       <!-- 2011-03-13 08:09:00 CET / 1300000140 --> <row><v>3.0000000000e+01</v></row>
+                       <!-- 2011-03-13 08:10:00 CET / 1300000200 --> <row><v>4.0000000000e+01</v></row>
+                       <!-- 2011-03-13 08:11:00 CET / 1300000260 --> <row><v>5.0000000000e+01</v></row>
+                       <!-- 2011-03-13 08:12:00 CET / 1300000320 --> <row><v>6.0000000000e+01</v></row>
+                       <!-- 2011-03-13 08:13:00 CET / 1300000380 --> <row><v>7.0000000000e+01</v></row>
+                       <!-- 2011-03-13 08:14:00 CET / 1300000440 --> <row><v>8.0000000000e+01</v></row>
+                       <!-- 2011-03-13 08:15:00 CET / 1300000500 --> <row><v>9.0000000000e+01</v></row>
+                       <!-- 2011-03-13 08:16:00 CET / 1300000560 --> <row><v>1.0000000000e+02</v></row>
+                       <!-- 2011-03-13 08:17:00 CET / 1300000620 --> <row><v>1.1000000000e+02</v></row>
+                       <!-- 2011-03-13 08:18:00 CET / 1300000680 --> <row><v>1.2000000000e+02</v></row>
+                       <!-- 2011-03-13 08:19:00 CET / 1300000740 --> <row><v>1.3000000000e+02</v></row>
+                       <!-- 2011-03-13 08:20:00 CET / 1300000800 --> <row><v>1.4000000000e+02</v></row>
+                       <!-- 2011-03-13 08:21:00 CET / 1300000860 --> <row><v>1.5000000000e+02</v></row>
+                       <!-- 2011-03-13 08:22:00 CET / 1300000920 --> <row><v>1.6000000000e+02</v></row>
+                       <!-- 2011-03-13 08:23:00 CET / 1300000980 --> <row><v>1.7000000000e+02</v></row>
+                       <!-- 2011-03-13 08:24:00 CET / 1300001040 --> <row><v>1.8000000000e+02</v></row>
+                       <!-- 2011-03-13 08:25:00 CET / 1300001100 --> <row><v>1.9000000000e+02</v></row>
+                       <!-- 2011-03-13 08:26:00 CET / 1300001160 --> <row><v>2.0000000000e+02</v></row>
+                       <!-- 2011-03-13 08:27:00 CET / 1300001220 --> <row><v>2.1000000000e+02</v></row>
+                       <!-- 2011-03-13 08:28:00 CET / 1300001280 --> <row><v>2.2000000000e+02</v></row>
+                       <!-- 2011-03-13 08:29:00 CET / 1300001340 --> <row><v>2.3000000000e+02</v></row>
+                       <!-- 2011-03-13 08:30:00 CET / 1300001400 --> <row><v>2.4000000000e+02</v></row>
+                       <!-- 2011-03-13 08:31:00 CET / 1300001460 --> <row><v>2.5000000000e+02</v></row>
+                       <!-- 2011-03-13 08:32:00 CET / 1300001520 --> <row><v>2.6000000000e+02</v></row>
+                       <!-- 2011-03-13 08:33:00 CET / 1300001580 --> <row><v>2.7000000000e+02</v></row>
+                       <!-- 2011-03-13 08:34:00 CET / 1300001640 --> <row><v>2.8000000000e+02</v></row>
+                       <!-- 2011-03-13 08:35:00 CET / 1300001700 --> <row><v>2.9000000000e+02</v></row>
+                       <!-- 2011-03-13 08:36:00 CET / 1300001760 --> <row><v>3.0000000000e+02</v></row>
+                       <!-- 2011-03-13 08:37:00 CET / 1300001820 --> <row><v>3.1000000000e+02</v></row>
+                       <!-- 2011-03-13 08:38:00 CET / 1300001880 --> <row><v>3.2000000000e+02</v></row>
+                       <!-- 2011-03-13 08:39:00 CET / 1300001940 --> <row><v>3.3000000000e+02</v></row>
+                       <!-- 2011-03-13 08:40:00 CET / 1300002000 --> <row><v>3.4000000000e+02</v></row>
+                       <!-- 2011-03-13 08:41:00 CET / 1300002060 --> <row><v>3.5000000000e+02</v></row>
+                       <!-- 2011-03-13 08:42:00 CET / 1300002120 --> <row><v>3.6000000000e+02</v></row>
+                       <!-- 2011-03-13 08:43:00 CET / 1300002180 --> <row><v>3.7000000000e+02</v></row>
+                       <!-- 2011-03-13 08:44:00 CET / 1300002240 --> <row><v>3.8000000000e+02</v></row>
+                       <!-- 2011-03-13 08:45:00 CET / 1300002300 --> <row><v>3.9000000000e+02</v></row>
+                       <!-- 2011-03-13 08:46:00 CET / 1300002360 --> <row><v>4.0000000000e+02</v></row>
+                       <!-- 2011-03-13 08:47:00 CET / 1300002420 --> <row><v>4.1000000000e+02</v></row>
+                       <!-- 2011-03-13 08:48:00 CET / 1300002480 --> <row><v>4.2000000000e+02</v></row>
+                       <!-- 2011-03-13 08:49:00 CET / 1300002540 --> <row><v>4.3000000000e+02</v></row>
+                       <!-- 2011-03-13 08:50:00 CET / 1300002600 --> <row><v>4.4000000000e+02</v></row>
+                       <!-- 2011-03-13 08:51:00 CET / 1300002660 --> <row><v>4.5000000000e+02</v></row>
+                       <!-- 2011-03-13 08:52:00 CET / 1300002720 --> <row><v>4.6000000000e+02</v></row>
+                       <!-- 2011-03-13 08:53:00 CET / 1300002780 --> <row><v>4.7000000000e+02</v></row>
+                       <!-- 2011-03-13 08:54:00 CET / 1300002840 --> <row><v>4.8000000000e+02</v></row>
+                       <!-- 2011-03-13 08:55:00 CET / 1300002900 --> <row><v>4.9000000000e+02</v></row>
+                       <!-- 2011-03-13 08:56:00 CET / 1300002960 --> <row><v>5.0000000000e+02</v></row>
+                       <!-- 2011-03-13 08:57:00 CET / 1300003020 --> <row><v>5.1000000000e+02</v></row>
+               </database>
+       </rra>
+       <rra>
+               <cf>AVERAGE</cf>
+               <pdp_per_row>5</pdp_per_row> <!-- 300 seconds -->
+
+               <params>
+               <xff>5.0000000000e-01</xff>
+               </params>
+               <cdp_prep>
+                       <ds>
+                       <primary_value>4.7000000000e+02</primary_value>
+                       <secondary_value>4.9000000000e+02</secondary_value>
+                       <value>1.0100000000e+03</value>
+                       <unknown_datapoints>0</unknown_datapoints>
+                       </ds>
+               </cdp_prep>
+               <database>
+                       <!-- 2011-03-13 08:50:00 CET / 1300002600 --> <row><v>4.2000000000e+02</v></row>
+                       <!-- 2011-03-13 08:55:00 CET / 1300002900 --> <row><v>4.7000000000e+02</v></row>
+               </database>
+       </rra>
+       <rra>
+               <cf>MIN</cf>
+               <pdp_per_row>5</pdp_per_row> <!-- 300 seconds -->
+
+               <params>
+               <xff>5.0000000000e-01</xff>
+               </params>
+               <cdp_prep>
+                       <ds>
+                       <primary_value>4.5000000000e+02</primary_value>
+                       <secondary_value>4.9000000000e+02</secondary_value>
+                       <value>5.0000000000e+02</value>
+                       <unknown_datapoints>0</unknown_datapoints>
+                       </ds>
+               </cdp_prep>
+               <database>
+                       <!-- 2011-03-13 08:50:00 CET / 1300002600 --> <row><v>4.0000000000e+02</v></row>
+                       <!-- 2011-03-13 08:55:00 CET / 1300002900 --> <row><v>4.5000000000e+02</v></row>
+               </database>
+       </rra>
+       <rra>
+               <cf>MAX</cf>
+               <pdp_per_row>5</pdp_per_row> <!-- 300 seconds -->
+
+               <params>
+               <xff>5.0000000000e-01</xff>
+               </params>
+               <cdp_prep>
+                       <ds>
+                       <primary_value>4.9000000000e+02</primary_value>
+                       <secondary_value>4.9000000000e+02</secondary_value>
+                       <value>5.1000000000e+02</value>
+                       <unknown_datapoints>0</unknown_datapoints>
+                       </ds>
+               </cdp_prep>
+               <database>
+                       <!-- 2011-03-13 08:50:00 CET / 1300002600 --> <row><v>4.4000000000e+02</v></row>
+                       <!-- 2011-03-13 08:55:00 CET / 1300002900 --> <row><v>4.9000000000e+02</v></row>
+               </database>
+       </rra>
+       <rra>
+               <cf>LAST</cf>
+               <pdp_per_row>5</pdp_per_row> <!-- 300 seconds -->
+
+               <params>
+               <xff>5.0000000000e-01</xff>
+               </params>
+               <cdp_prep>
+                       <ds>
+                       <primary_value>4.9000000000e+02</primary_value>
+                       <secondary_value>4.9000000000e+02</secondary_value>
+                       <value>5.1000000000e+02</value>
+                       <unknown_datapoints>0</unknown_datapoints>
+                       </ds>
+               </cdp_prep>
+               <database>
+                       <!-- 2011-03-13 08:50:00 CET / 1300002600 --> <row><v>4.4000000000e+02</v></row>
+                       <!-- 2011-03-13 08:55:00 CET / 1300002900 --> <row><v>4.9000000000e+02</v></row>
+               </database>
+       </rra>
+       <rra>
+               <cf>AVERAGE</cf>
+               <pdp_per_row>2</pdp_per_row> <!-- 120 seconds -->
+
+               <params>
+               <xff>5.0000000000e-01</xff>
+               </params>
+               <cdp_prep>
+                       <ds>
+                       <primary_value>0.0000000000e+00</primary_value>
+                       <secondary_value>0.0000000000e+00</secondary_value>
+                       <value>NaN</value>
+                       <unknown_datapoints>1</unknown_datapoints>
+                       </ds>
+               </cdp_prep>
+               <database>
+                       <!-- 2011-03-13 08:38:00 CET / 1300001880 --> <row><v>3.1500000000e+02</v></row>
+                       <!-- 2011-03-13 08:40:00 CET / 1300002000 --> <row><v>3.3500000000e+02</v></row>
+                       <!-- 2011-03-13 08:42:00 CET / 1300002120 --> <row><v>3.5500000000e+02</v></row>
+                       <!-- 2011-03-13 08:44:00 CET / 1300002240 --> <row><v>3.7500000000e+02</v></row>
+                       <!-- 2011-03-13 08:46:00 CET / 1300002360 --> <row><v>3.9500000000e+02</v></row>
+                       <!-- 2011-03-13 08:48:00 CET / 1300002480 --> <row><v>4.1500000000e+02</v></row>
+                       <!-- 2011-03-13 08:50:00 CET / 1300002600 --> <row><v>4.3500000000e+02</v></row>
+                       <!-- 2011-03-13 08:52:00 CET / 1300002720 --> <row><v>4.5500000000e+02</v></row>
+                       <!-- 2011-03-13 08:54:00 CET / 1300002840 --> <row><v>4.7500000000e+02</v></row>
+                       <!-- 2011-03-13 08:56:00 CET / 1300002960 --> <row><v>4.9500000000e+02</v></row>
+               </database>
+       </rra>
+</rrd>
diff --git a/tests/modify3 b/tests/modify3
new file mode 100755 (executable)
index 0000000..0db4a42
--- /dev/null
@@ -0,0 +1,21 @@
+#!/bin/bash
+
+. $(dirname $0)/functions
+
+BASE=$BASEDIR/modify-test3
+
+$RRDTOOL create ${BASE}a.rrd --start 1300000000 --step 60 DS:a:GAUGE:120:0:U  DS:b:GAUGE:120:0:U DS:c:GAUGE:120:0:U RRA:AVERAGE:0.5:1:10 RRA:AVERAGE:0.5:5:10
+# add 50 values to 
+N=10
+for T in $(seq 1300000020 60 1300003020) ; do
+       rrdtool update ${BASE}a.rrd --template a:b:c $T:$N:$((10000+$N)):$((20000+$N))
+       let N=$N+10
+done
+
+$RRDTOOL dump ${BASE}a.rrd | diff - $BASEDIR/modify-test3.create.dump && ok "create" || fail "create"
+
+# extend base RRA, refill from coarse RRA
+$RRDTOOL modify ${BASE}a.rrd ${BASE}b.rrd DEL:a RRA#0:+10
+
+$RRDTOOL dump ${BASE}b.rrd | diff - $BASEDIR/modify-test3.mod1.dump && ok "extend base RRA" || fail "extend base RRA"
+