Ticket #228 (closed defect: wontfix)
Failed to update/fetch the rrd file.
| Reported by: | human | Owned by: | oetiker |
|---|---|---|---|
| Priority: | major | Milestone: | |
| Component: | rrd_update | Version: | 1.2.23 |
| Keywords: | Cc: |
Description
There are two same nics in the machine,I made the script to update the rrd file for network error information per 6 minutes in the crontab. Now, one rrd file("Erroreth4.rrd") was incorrect and the file was not updated any more and I cannot fetch the data of the file.
But the other rrd file("Normaleth1.rrd") is correct. The following is the files' info:
$ ls -l
total 1720 -rw-r--r-- 1 hydragui hydragui 1259176 May 15 09:20 Normaleth1.rrd -rw-r--r-- 1 hydragui hydragui 491520 May 15 04:54 Erroreth4.rrd
$ rrdtool first Normaleth1.rrd
1241774040
$ rrdtool last Normaleth1.rrd
1242378780
$ rrdtool first Erroreth4.rrd
1241758500
$ rrdtool last Erroreth4.rrd
1242363267
$ rrdtool fetch Erroreth4.rrd AVERAGE -s 1241758500 -e 1242363267
ERROR: fetching cdp from rra
$ rrdtool update Erroreth4.rrd 1243296840:0:0:0:0:0:0:0
Segmentation fault (core dumped) * Normal File info $ rrdtool info Normaleth1.rrd filename = "Normaleth1.rrd" rrd_version = "0003" step = 60 last_update = 1242378780 ds[In_Octets].type = "DERIVE" ds[In_Octets].minimal_heartbeat = 90 ds[In_Octets].min = 0.0000000000e+00 ds[In_Octets].max = NaN ds[In_Octets].last_ds = "0" ds[In_Octets].value = 0.0000000000e+00 ds[In_Octets].unknown_sec = 0 ds[Out_Octets].type = "DERIVE" ds[Out_Octets].minimal_heartbeat = 90 ds[Out_Octets].min = 0.0000000000e+00 ds[Out_Octets].max = NaN ds[Out_Octets].last_ds = "0" ds[Out_Octets].value = 0.0000000000e+00 ds[Out_Octets].unknown_sec = 0 ds[In_Errors].type = "GAUGE" ds[In_Errors].minimal_heartbeat = 90 ds[In_Errors].min = 0.0000000000e+00 ds[In_Errors].max = NaN ds[In_Errors].last_ds = "0" ds[In_Errors].value = 0.0000000000e+00 ds[In_Errors].unknown_sec = 0 ds[Out_Errors].type = "GAUGE" ds[Out_Errors].minimal_heartbeat = 90 ds[Out_Errors].min = 0.0000000000e+00 ds[Out_Errors].max = NaN ds[Out_Errors].last_ds = "0" ds[Out_Errors].value = 0.0000000000e+00 ds[Out_Errors].unknown_sec = 0 ds[In_Drop].type = "GAUGE" ds[In_Drop].minimal_heartbeat = 90 ds[In_Drop].min = 0.0000000000e+00 ds[In_Drop].max = NaN ds[In_Drop].last_ds = "0" ds[In_Drop].value = 0.0000000000e+00 ds[In_Drop].unknown_sec = 0 ds[Out_Drop].type = "GAUGE" ds[Out_Drop].minimal_heartbeat = 90 ds[Out_Drop].min = 0.0000000000e+00 ds[Out_Drop].max = NaN ds[Out_Drop].last_ds = "0" ds[Out_Drop].value = 0.0000000000e+00 ds[Out_Drop].unknown_sec = 0 ds[Collision].type = "GAUGE" ds[Collision].minimal_heartbeat = 90 ds[Collision].min = 0.0000000000e+00 ds[Collision].max = NaN ds[Collision].last_ds = "0" ds[Collision].value = 0.0000000000e+00 ds[Collision].unknown_sec = 0 rra[0].cf = "AVERAGE" rra[0].rows = 10080 rra[0].pdp_per_row = 1 rra[0].xff = 5.0000000000e-01 rra[0].cdp_prep[0].value = NaN rra[0].cdp_prep[0].unknown_datapoints = 0 rra[0].cdp_prep[1].value = NaN rra[0].cdp_prep[1].unknown_datapoints = 0 rra[0].cdp_prep[2].value = NaN rra[0].cdp_prep[2].unknown_datapoints = 0 rra[0].cdp_prep[3].value = NaN rra[0].cdp_prep[3].unknown_datapoints = 0 rra[0].cdp_prep[4].value = NaN rra[0].cdp_prep[4].unknown_datapoints = 0 rra[0].cdp_prep[5].value = NaN rra[0].cdp_prep[5].unknown_datapoints = 0 rra[0].cdp_prep[6].value = NaN rra[0].cdp_prep[6].unknown_datapoints = 0 rra[1].cf = "AVERAGE" rra[1].rows = 744 rra[1].pdp_per_row = 60 rra[1].xff = 5.0000000000e-01 rra[1].cdp_prep[0].value = 0.0000000000e+00 rra[1].cdp_prep[0].unknown_datapoints = 2 rra[1].cdp_prep[1].value = 0.0000000000e+00 rra[1].cdp_prep[1].unknown_datapoints = 2 rra[1].cdp_prep[2].value = 0.0000000000e+00 rra[1].cdp_prep[2].unknown_datapoints = 2 rra[1].cdp_prep[3].value = 0.0000000000e+00 rra[1].cdp_prep[3].unknown_datapoints = 2 rra[1].cdp_prep[4].value = 0.0000000000e+00 rra[1].cdp_prep[4].unknown_datapoints = 2 rra[1].cdp_prep[5].value = 0.0000000000e+00 rra[1].cdp_prep[5].unknown_datapoints = 2 rra[1].cdp_prep[6].value = 0.0000000000e+00 rra[1].cdp_prep[6].unknown_datapoints = 2 rra[2].cf = "AVERAGE" rra[2].rows = 366 rra[2].pdp_per_row = 1440 rra[2].xff = 5.0000000000e-01 rra[2].cdp_prep[0].value = 0.0000000000e+00 rra[2].cdp_prep[0].unknown_datapoints = 383 rra[2].cdp_prep[1].value = 0.0000000000e+00 rra[2].cdp_prep[1].unknown_datapoints = 383 rra[2].cdp_prep[2].value = 0.0000000000e+00 rra[2].cdp_prep[2].unknown_datapoints = 383 rra[2].cdp_prep[3].value = 0.0000000000e+00 rra[2].cdp_prep[3].unknown_datapoints = 383 rra[2].cdp_prep[4].value = 0.0000000000e+00 rra[2].cdp_prep[4].unknown_datapoints = 383 rra[2].cdp_prep[5].value = 0.0000000000e+00 rra[2].cdp_prep[5].unknown_datapoints = 383 rra[2].cdp_prep[6].value = 0.0000000000e+00 rra[2].cdp_prep[6].unknown_datapoints = 383 rra[3].cf = "MAX" rra[3].rows = 10080 rra[3].pdp_per_row = 1 rra[3].xff = 5.0000000000e-01 rra[3].cdp_prep[0].value = NaN rra[3].cdp_prep[0].unknown_datapoints = 0 rra[3].cdp_prep[1].value = NaN rra[3].cdp_prep[1].unknown_datapoints = 0 rra[3].cdp_prep[2].value = NaN rra[3].cdp_prep[2].unknown_datapoints = 0 rra[3].cdp_prep[3].value = NaN rra[3].cdp_prep[3].unknown_datapoints = 0 rra[3].cdp_prep[4].value = NaN rra[3].cdp_prep[4].unknown_datapoints = 0 rra[3].cdp_prep[5].value = NaN rra[3].cdp_prep[5].unknown_datapoints = 0 rra[3].cdp_prep[6].value = NaN rra[3].cdp_prep[6].unknown_datapoints = 0 rra[4].cf = "MAX" rra[4].rows = 744 rra[4].pdp_per_row = 60 rra[4].xff = 5.0000000000e-01 rra[4].cdp_prep[0].value = 0.0000000000e+00 rra[4].cdp_prep[0].unknown_datapoints = 2 rra[4].cdp_prep[1].value = 0.0000000000e+00 rra[4].cdp_prep[1].unknown_datapoints = 2 rra[4].cdp_prep[2].value = 0.0000000000e+00 rra[4].cdp_prep[2].unknown_datapoints = 2 rra[4].cdp_prep[3].value = 0.0000000000e+00 rra[4].cdp_prep[3].unknown_datapoints = 2 rra[4].cdp_prep[4].value = 0.0000000000e+00 rra[4].cdp_prep[4].unknown_datapoints = 2 rra[4].cdp_prep[5].value = 0.0000000000e+00 rra[4].cdp_prep[5].unknown_datapoints = 2 rra[4].cdp_prep[6].value = 0.0000000000e+00 rra[4].cdp_prep[6].unknown_datapoints = 2 rra[5].cf = "MAX" rra[5].rows = 366 rra[5].pdp_per_row = 1440 rra[5].xff = 5.0000000000e-01 rra[5].cdp_prep[0].value = 0.0000000000e+00 rra[5].cdp_prep[0].unknown_datapoints = 383 rra[5].cdp_prep[1].value = 0.0000000000e+00 rra[5].cdp_prep[1].unknown_datapoints = 383 rra[5].cdp_prep[2].value = 0.0000000000e+00 rra[5].cdp_prep[2].unknown_datapoints = 383 rra[5].cdp_prep[3].value = 0.0000000000e+00 rra[5].cdp_prep[3].unknown_datapoints = 383 rra[5].cdp_prep[4].value = 0.0000000000e+00 rra[5].cdp_prep[4].unknown_datapoints = 383 rra[5].cdp_prep[5].value = 0.0000000000e+00 rra[5].cdp_prep[5].unknown_datapoints = 383 rra[5].cdp_prep[6].value = 0.0000000000e+00 rra[5].cdp_prep[6].unknown_datapoints = 383
* Error File info $ rrdtool info Erroreth4.rrd filename = "Erroreth4.rrd" rrd_version = "0003" step = 60 last_update = 1242363267 ds[In_Octets].type = "DERIVE" ds[In_Octets].minimal_heartbeat = 90 ds[In_Octets].min = 0.0000000000e+00 ds[In_Octets].max = NaN ds[In_Octets].last_ds = "UNKN" ds[In_Octets].value = 0.0000000000e+00 ds[In_Octets].unknown_sec = 27 ds[Out_Octets].type = "DERIVE" ds[Out_Octets].minimal_heartbeat = 90 ds[Out_Octets].min = 0.0000000000e+00 ds[Out_Octets].max = NaN ds[Out_Octets].last_ds = "UNKN" ds[Out_Octets].value = 0.0000000000e+00 ds[Out_Octets].unknown_sec = 27 ds[In_Errors].type = "GAUGE" ds[In_Errors].minimal_heartbeat = 90 ds[In_Errors].min = 0.0000000000e+00 ds[In_Errors].max = NaN ds[In_Errors].last_ds = "UNKN" ds[In_Errors].value = 0.0000000000e+00 ds[In_Errors].unknown_sec = 27 ds[Out_Errors].type = "GAUGE" ds[Out_Errors].minimal_heartbeat = 90 ds[Out_Errors].min = 0.0000000000e+00 ds[Out_Errors].max = NaN ds[Out_Errors].last_ds = "UNKN" ds[Out_Errors].value = 0.0000000000e+00 ds[Out_Errors].unknown_sec = 27 ds[In_Drop].type = "GAUGE" ds[In_Drop].minimal_heartbeat = 90 ds[In_Drop].min = 0.0000000000e+00 ds[In_Drop].max = NaN ds[In_Drop].last_ds = "UNKN" ds[In_Drop].value = 0.0000000000e+00 ds[In_Drop].unknown_sec = 27 ds[Out_Drop].type = "GAUGE" ds[Out_Drop].minimal_heartbeat = 90 ds[Out_Drop].min = 0.0000000000e+00 ds[Out_Drop].max = NaN ds[Out_Drop].last_ds = "UNKN" ds[Out_Drop].value = 0.0000000000e+00 ds[Out_Drop].unknown_sec = 27 ds[Collision].type = "GAUGE" ds[Collision].minimal_heartbeat = 90 ds[Collision].min = 0.0000000000e+00 ds[Collision].max = NaN ds[Collision].last_ds = "UNKN" ds[Collision].value = 0.0000000000e+00 ds[Collision].unknown_sec = 27 rra[0].cf = "AVERAGE" rra[0].rows = 10080 rra[0].pdp_per_row = 1 rra[0].xff = 5.0000000000e-01 rra[0].cdp_prep[0].value = NaN rra[0].cdp_prep[0].unknown_datapoints = 0 rra[0].cdp_prep[1].value = NaN rra[0].cdp_prep[1].unknown_datapoints = 0 rra[0].cdp_prep[2].value = NaN rra[0].cdp_prep[2].unknown_datapoints = 0 rra[0].cdp_prep[3].value = NaN rra[0].cdp_prep[3].unknown_datapoints = 0 rra[0].cdp_prep[4].value = NaN rra[0].cdp_prep[4].unknown_datapoints = 0 rra[0].cdp_prep[5].value = NaN rra[0].cdp_prep[5].unknown_datapoints = 0 rra[0].cdp_prep[6].value = NaN rra[0].cdp_prep[6].unknown_datapoints = 0 rra[1].cf = "AVERAGE" rra[1].rows = 744 rra[1].pdp_per_row = 60 rra[1].xff = 5.0000000000e-01 rra[1].cdp_prep[0].value = NaN rra[1].cdp_prep[0].unknown_datapoints = 54 rra[1].cdp_prep[1].value = NaN rra[1].cdp_prep[1].unknown_datapoints = 54 rra[1].cdp_prep[2].value = NaN rra[1].cdp_prep[2].unknown_datapoints = 54 rra[1].cdp_prep[3].value = NaN rra[1].cdp_prep[3].unknown_datapoints = 54 rra[1].cdp_prep[4].value = NaN rra[1].cdp_prep[4].unknown_datapoints = 54 rra[1].cdp_prep[5].value = NaN rra[1].cdp_prep[5].unknown_datapoints = 54 rra[1].cdp_prep[6].value = NaN rra[1].cdp_prep[6].unknown_datapoints = 54 rra[2].cf = "AVERAGE" rra[2].rows = 366 rra[2].pdp_per_row = 1440 rra[2].xff = 5.0000000000e-01 rra[2].cdp_prep[0].value = NaN rra[2].cdp_prep[0].unknown_datapoints = 294 rra[2].cdp_prep[1].value = NaN rra[2].cdp_prep[1].unknown_datapoints = 294 rra[2].cdp_prep[2].value = NaN rra[2].cdp_prep[2].unknown_datapoints = 294 rra[2].cdp_prep[3].value = NaN rra[2].cdp_prep[3].unknown_datapoints = 294 rra[2].cdp_prep[4].value = NaN rra[2].cdp_prep[4].unknown_datapoints = 294 rra[2].cdp_prep[5].value = NaN rra[2].cdp_prep[5].unknown_datapoints = 294 rra[2].cdp_prep[6].value = NaN rra[2].cdp_prep[6].unknown_datapoints = 294 rra[3].cf = "MAX" rra[3].rows = 10080 rra[3].pdp_per_row = 1 rra[3].xff = 5.0000000000e-01 rra[3].cdp_prep[0].value = NaN rra[3].cdp_prep[0].unknown_datapoints = 0 rra[3].cdp_prep[1].value = NaN rra[3].cdp_prep[1].unknown_datapoints = 0 rra[3].cdp_prep[2].value = NaN rra[3].cdp_prep[2].unknown_datapoints = 0 rra[3].cdp_prep[3].value = NaN rra[3].cdp_prep[3].unknown_datapoints = 0 rra[3].cdp_prep[4].value = NaN rra[3].cdp_prep[4].unknown_datapoints = 0 rra[3].cdp_prep[5].value = NaN rra[3].cdp_prep[5].unknown_datapoints = 0 rra[3].cdp_prep[6].value = NaN rra[3].cdp_prep[6].unknown_datapoints = 0 rra[4].cf = "MAX" rra[4].rows = 744 rra[4].pdp_per_row = 60 rra[4].xff = 5.0000000000e-01 rra[4].cdp_prep[0].value = NaN rra[4].cdp_prep[0].unknown_datapoints = 54 rra[4].cdp_prep[1].value = NaN rra[4].cdp_prep[1].unknown_datapoints = 54 rra[4].cdp_prep[2].value = NaN rra[4].cdp_prep[2].unknown_datapoints = 54 rra[4].cdp_prep[3].value = NaN rra[4].cdp_prep[3].unknown_datapoints = 54 rra[4].cdp_prep[4].value = NaN rra[4].cdp_prep[4].unknown_datapoints = 54 rra[4].cdp_prep[5].value = NaN rra[4].cdp_prep[5].unknown_datapoints = 54 rra[4].cdp_prep[6].value = NaN rra[4].cdp_prep[6].unknown_datapoints = 54 rra[5].cf = "MAX" rra[5].rows = 366 rra[5].pdp_per_row = 1440 rra[5].xff = 5.0000000000e-01 rra[5].cdp_prep[0].value = NaN rra[5].cdp_prep[0].unknown_datapoints = 294 rra[5].cdp_prep[1].value = NaN rra[5].cdp_prep[1].unknown_datapoints = 294 rra[5].cdp_prep[2].value = NaN rra[5].cdp_prep[2].unknown_datapoints = 294 rra[5].cdp_prep[3].value = NaN rra[5].cdp_prep[3].unknown_datapoints = 294 rra[5].cdp_prep[4].value = NaN rra[5].cdp_prep[4].unknown_datapoints = 294 rra[5].cdp_prep[5].value = NaN rra[5].cdp_prep[5].unknown_datapoints = 294 rra[5].cdp_prep[6].value = NaN rra[5].cdp_prep[6].unknown_datapoints = 294
Thank you
Change History
comment:2 in reply to: ↑ 1 Changed 3 years ago by human
Replying to oetiker:
it seems your file has been damaged somehow ... can you reproduce this problem with a fresh file? Please submit a script to reproduce the problem.
Thank you for you reply. I don't know how to reproduce the problem. How can catch the exception when I use "RRDs::update()" to update the damaged file? Could I use the exit code or other information?



it seems your file has been damaged somehow ... can you reproduce this problem with a fresh file? Please submit a script to reproduce the problem.