5497a671bc39f122c1484967171ef684873f5e6f
[rrdtool.git] / NEWS
1 RRDTOOL NEWS
2 ============
3
4 #####################################
5 Major Changes between 1.2.x and 1.3.x
6 -------------------------------------
7
8 NEW Fast file access methods (Bernhard Fischer / Tobi Oetiker)
9 ----------------------------
10 * introduced file-accessor functions rrd_read/rrd_seek/rrd_write
11
12 * implemented full mmap-based file access with madvise hints for
13   improved scalability, much reduced memory-footprint and much less
14   blocking while accessing the disk
15
16 * implemented optional full file-descriptor access instead of FILE*
17   access
18
19 NEW Graphing (Tobi Oetiker)
20 ------------
21 * libart has been replaced by cairo/pango
22
23 * pango markup is supported (--pango-markup)
24
25 * full grid fitting
26
27 * --graph-render-mode=mono for non anti aliased graphing
28
29 * --font-render-mode=mono for non anti aliased fonts
30
31 * fonts come through fontconfig, use the Pango font nameing scheme
32   -> 'Times 20' ... it is not possible to use truetype fonts
33   directly anymore.
34
35 * Tabs are position independent.
36
37 * TRENDNAN filter that ignores NAN values while calculating the
38   TREND data. (Timo Stripf)
39
40 * --full-size-mode to specify the outer border of the image and not
41   just of the graphing canvas (Matthew Chambers)
42
43 * TEXTALIGN command to alter default text alignment behavior
44
45 * C API in-memory graphing with rrd_graph_v (Evan Miller)
46
47 * draw dashed lines in graphs (Thomas Gutzler)
48
49 * new interface graphv which returns information using the rrd_info
50   interface (Tobi Oetiker and Mark Plaksin)
51
52 * improved horizontal grid. Have a bit more grid lines and y-axis
53   labels while keeping them far enough apart to not run into each
54   other.
55
56 NEW Forecasting (Evan Miller)
57 ---------------
58 * the new MHWPREDICT consolidation function uses a variation of the
59   Holt-Winters method. It is a drop-in replacement for HWPREDICT,
60   and is better suited for data whose seasonal variations grow or
61   shrink in proportion to the average.
62
63 * If you create an RRD with the new MHWPREDICT function, the
64   resulting rrd file will be version 0004 and can only be used in
65   rrdtool 1.3.
66
67 Rewrites
68 --------
69 * rrd_restore now uses libxml for parsing which makes things much
70   more tolerant towards xml variations. The old code could mostly
71   just parse the XML as it was output by rrdtool dump. See also:
72   the note at the bottom of this document. (by Florian octo
73   Forster)
74
75 * rrd_update rewritten to make it more modular. Fixed two
76   longstanding HW bugs in the process (Evan Miller)
77
78 Internationalization (Takao Fujiwara and Tobi Oetiker)
79 --------------------
80 * The help output by rrdtool has been internationalized. There are
81   no real translations included with rrdtool yet, contributions are
82   welcome.
83
84 * The internationalization will only be compiled if libintl and
85   friends are available on your system. Use the configure option
86   --disable-libintl if you want to disable this feature
87
88 Language Bindings
89 -----------------
90 * ruby rrd_fetch will return step as a last property -- Mike Perham
91
92 RRDtool dump / restore incompatibility
93 --------------------------------------
94 * rrdtool dump 1.3 does emit completely legal XML. Basically this
95   means that it contains an XML header and a DOCTYPE definition.
96   Unfortunately this causes older versions of rrdtool restore to be
97   unhappy.
98
99 * To restore a new dump with an old rrdtool restore version, either
100   remove the XML header and the doctype by hand (both on the first
101   line of the dump) or use rrdtool dump --no-header.
102
103
104 ######################################################################################
105 Major Changes between 1.0.x and 1.2.x
106 ======================================================================================
107 Graphing
108 --------
109
110 * rewritten graphics generation based on libart.
111   - anti-aliased output
112   - alpha transparency support
113   - truetype fonts
114  
115 * additional graphics formats: EPS, PDF, SVG
116
117 * extended multi-part documentation
118
119 * VDEF support; define and use variables.  Find, and use, the
120   maximum rate seen by rrdtool; compute and show the average
121
122 * Sliding window (trend) analysis
123   Compute a smoother average, for instance over the last 6 CDPs
124
125 * percentile (95th or other)
126   Remove peaks, 95 percent of all rates are at or below the
127   returned value
128
129 Logging
130 -------
131 * a second logging interface: rrdtool updatev
132   Verbose updating of the database; show CPDs being created
133
134 * Aberrant Behavior Detection with Holt-Winters Forecasting
135   Compare current data with expected data, detect and log when
136   the rates are outside expected levels
137
138 * COMPUTE data type for artificial data-sources calculating their
139   input using RPN math and data from the other data-sources.
140  
141 Incompatibilities
142 -----------------
143 * Colons in COMMENT arguments to rrdtool graph must be escaped with a backslash
144
145 * the --alt-y-mrtg option is gone or rather since 1.2.7 it is back but
146   without functionality.
147
148 * In pipe mode, rrdtool answers with OK only if it was successful with the
149   command. Otherwhise the answer will be ERROR...
150
151
152 Behind the Scenes
153 -----------------
154 * In order to support Holt-Winters and Calculated Datasources,
155   the rrdtool data format has changed. While the new version of rrdtool can
156   read files created with rrdtool 1.0.x. It is not possible to read files
157   created by rrdtool-1.2.x with rrdtool-1.0.x
158
159 * External libraries are not included with rrdtool anymore. This is in line
160   with todays trend of using shared libraries everywhere. With the exception
161   of the cgi library most things required by rrdtool will be found on every recent
162   system.
163
164 * Memory Mapped IO support for faster logging.