oetiker [Wed, 14 Jan 2009 08:14:31 +0000 (08:14 +0000)]
In rrd_graph: the width/height values are written into rrd_infoval_t's u_cnt
but read out of u_int (u_long vs. int). This breaks on LP64BE. Patch by
Rafal Boni rafal pobox.com
git-svn-id: svn://svn.oetiker.ch/rrdtool/trunk/program@1733
a5681a0c-68f1-0310-ab6d-
d61299d08faa
oetiker [Wed, 14 Jan 2009 07:22:09 +0000 (07:22 +0000)]
added percentnan (VDEF PERCENT variant that ignores NAN) -- patch by Martin Sperl
git-svn-id: svn://svn.oetiker.ch/rrdtool/trunk/program@1732
a5681a0c-68f1-0310-ab6d-
d61299d08faa
oetiker [Tue, 6 Jan 2009 16:32:16 +0000 (16:32 +0000)]
with MMAP enabled rrd resize GROW was broken ... this fixes it ...
git-svn-id: svn://svn.oetiker.ch/rrdtool/trunk/program@1726
a5681a0c-68f1-0310-ab6d-
d61299d08faa
oetiker [Tue, 6 Jan 2009 15:45:53 +0000 (15:45 +0000)]
TICK with negative numbers should 'start from the top of the graph' looking down ... now it does.
git-svn-id: svn://svn.oetiker.ch/rrdtool/trunk/program@1725
a5681a0c-68f1-0310-ab6d-
d61299d08faa
oetiker [Tue, 6 Jan 2009 14:54:41 +0000 (14:54 +0000)]
fix for segfault in rrd_cgi: caused by freeing a invalid address when printing an error message.
git-svn-id: svn://svn.oetiker.ch/rrdtool/trunk/program@1724
a5681a0c-68f1-0310-ab6d-
d61299d08faa
oetiker [Fri, 26 Dec 2008 08:05:03 +0000 (08:05 +0000)]
Include libgen.h to get prototype for basename in a POSIX conformant way. Fix for #202.
git-svn-id: svn://svn.oetiker.ch/rrdtool/trunk/program@1723
a5681a0c-68f1-0310-ab6d-
d61299d08faa
oetiker [Fri, 26 Dec 2008 08:03:06 +0000 (08:03 +0000)]
improvements for build docs by Zorzoli, Pablo
git-svn-id: svn://svn.oetiker.ch/rrdtool/trunk/program@1722
a5681a0c-68f1-0310-ab6d-
d61299d08faa
oetiker [Mon, 22 Dec 2008 21:23:49 +0000 (21:23 +0000)]
should free memory after a successful fetch too ...
git-svn-id: svn://svn.oetiker.ch/rrdtool/trunk/program@1721
a5681a0c-68f1-0310-ab6d-
d61299d08faa
oetiker [Mon, 22 Dec 2008 21:23:04 +0000 (21:23 +0000)]
documentation fixes
git-svn-id: svn://svn.oetiker.ch/rrdtool/trunk/program@1720
a5681a0c-68f1-0310-ab6d-
d61299d08faa
oetiker [Mon, 22 Dec 2008 07:21:46 +0000 (07:21 +0000)]
Fix for POD error by Sebasian Harl
git-svn-id: svn://svn.oetiker.ch/rrdtool/trunk/program@1718
a5681a0c-68f1-0310-ab6d-
d61299d08faa
oetiker [Mon, 22 Dec 2008 07:20:17 +0000 (07:20 +0000)]
Fixes some typos by Sebastian Harl.
git-svn-id: svn://svn.oetiker.ch/rrdtool/trunk/program@1717
a5681a0c-68f1-0310-ab6d-
d61299d08faa
oetiker [Fri, 19 Dec 2008 14:26:47 +0000 (14:26 +0000)]
win32 fixes by Stefan . Ludewig . exitgames . com
* added portable plbasename since basename is not available on stock win32
* rrd_update was using %d to show a timestamp ... %lli is better
since it also will show 64bit time_t correctly.
git-svn-id: svn://svn.oetiker.ch/rrdtool/trunk/program@1716
a5681a0c-68f1-0310-ab6d-
d61299d08faa
oetiker [Thu, 18 Dec 2008 23:56:52 +0000 (23:56 +0000)]
fix extra dist to include missing win32 files
git-svn-id: svn://svn.oetiker.ch/rrdtool/trunk/program@1715
a5681a0c-68f1-0310-ab6d-
d61299d08faa
oetiker [Thu, 11 Dec 2008 14:31:16 +0000 (14:31 +0000)]
fixed another seek issue ...
git-svn-id: svn://svn.oetiker.ch/rrdtool/trunk/program@1708
a5681a0c-68f1-0310-ab6d-
d61299d08faa
oetiker [Thu, 11 Dec 2008 10:01:33 +0000 (10:01 +0000)]
The spec file for building the rrdtool as an RPM that comes with the
release is not "friendly" to older versions of RHEL and derivatives.
-- Martin Sperl <rrdtool@martin.sperl.org>
git-svn-id: svn://svn.oetiker.ch/rrdtool/trunk/program@1707
a5681a0c-68f1-0310-ab6d-
d61299d08faa
oetiker [Thu, 11 Dec 2008 09:59:10 +0000 (09:59 +0000)]
include luapod into distro
git-svn-id: svn://svn.oetiker.ch/rrdtool/trunk/program@1706
a5681a0c-68f1-0310-ab6d-
d61299d08faa
oetiker [Wed, 10 Dec 2008 13:18:10 +0000 (13:18 +0000)]
On some architectures, strtod does not turn "NaN" into 'Not A Number (NAN)'
se we better provide our own code here.
git-svn-id: svn://svn.oetiker.ch/rrdtool/trunk/program@1705
a5681a0c-68f1-0310-ab6d-
d61299d08faa
oetiker [Wed, 10 Dec 2008 12:42:46 +0000 (12:42 +0000)]
rrdtool dump is now backward compatible with rrdtool 1.3 dump again. Default is --header=dtd and
--no-header is an alias for --header=none
git-svn-id: svn://svn.oetiker.ch/rrdtool/trunk/program@1703
a5681a0c-68f1-0310-ab6d-
d61299d08faa
oetiker [Wed, 10 Dec 2008 08:29:38 +0000 (08:29 +0000)]
minichange
git-svn-id: svn://svn.oetiker.ch/rrdtool/trunk/program@1702
a5681a0c-68f1-0310-ab6d-
d61299d08faa
oetiker [Tue, 9 Dec 2008 18:30:43 +0000 (18:30 +0000)]
* forward ported right axis patch from 1.2 branche
* fixed --full-size-mode sizing issue when used in combination with --title
the work in the axis patch has been sponsored by VoltWerk.
git-svn-id: svn://svn.oetiker.ch/rrdtool/trunk/program@1701
a5681a0c-68f1-0310-ab6d-
d61299d08faa
oetiker [Mon, 8 Dec 2008 16:07:27 +0000 (16:07 +0000)]
Fix for last method in ruby bindings -- Hiroyuki Ikezoe
git-svn-id: svn://svn.oetiker.ch/rrdtool/trunk/program@1700
a5681a0c-68f1-0310-ab6d-
d61299d08faa
oetiker [Fri, 5 Dec 2008 15:39:55 +0000 (15:39 +0000)]
integrate osx build hints as indicated in #192
git-svn-id: svn://svn.oetiker.ch/rrdtool/trunk/program@1699
a5681a0c-68f1-0310-ab6d-
d61299d08faa
oetiker [Fri, 5 Dec 2008 15:23:45 +0000 (15:23 +0000)]
deleted a bit much from rrd_open ... merged back in
git-svn-id: svn://svn.oetiker.ch/rrdtool/trunk/program@1697
a5681a0c-68f1-0310-ab6d-
d61299d08faa
oetiker [Fri, 5 Dec 2008 15:18:11 +0000 (15:18 +0000)]
check for broken implementations of msync / MS_ASYNC where
the mtime does not get updated. warn and explicitly call utime
in rrd_open when a file is opened rw.
git-svn-id: svn://svn.oetiker.ch/rrdtool/trunk/program@1696
a5681a0c-68f1-0310-ab6d-
d61299d08faa
oetiker [Fri, 5 Dec 2008 10:23:46 +0000 (10:23 +0000)]
added rrdcached examples to extra_dist to make sure they get distributed
git-svn-id: svn://svn.oetiker.ch/rrdtool/trunk/program@1695
a5681a0c-68f1-0310-ab6d-
d61299d08faa
oetiker [Thu, 4 Dec 2008 16:01:37 +0000 (16:01 +0000)]
Legends should NOT be placed in reverse order when using --full-size-mode ... this fixed #198.
git-svn-id: svn://svn.oetiker.ch/rrdtool/trunk/program@1694
a5681a0c-68f1-0310-ab6d-
d61299d08faa
oetiker [Thu, 4 Dec 2008 15:49:11 +0000 (15:49 +0000)]
add de-referencing to step in fetch check
git-svn-id: svn://svn.oetiker.ch/rrdtool/trunk/program@1693
a5681a0c-68f1-0310-ab6d-
d61299d08faa
oetiker [Thu, 4 Dec 2008 15:48:39 +0000 (15:48 +0000)]
fix merg error with win32 port
git-svn-id: svn://svn.oetiker.ch/rrdtool/trunk/program@1692
a5681a0c-68f1-0310-ab6d-
d61299d08faa
oetiker [Thu, 4 Dec 2008 09:03:48 +0000 (09:03 +0000)]
Catch CDEF:tot= and raise and error to fix #199. Thanks to Jeron Massar for reporting this.
git-svn-id: svn://svn.oetiker.ch/rrdtool/trunk/program@1691
a5681a0c-68f1-0310-ab6d-
d61299d08faa
oetiker [Thu, 4 Dec 2008 07:02:56 +0000 (07:02 +0000)]
Update to WIN32-BUILD-TIPS.txt and VC project files so that the rrdtool.exe can be built too.
-- Stefan Ludewig Stefan.Ludewig exitgames.com
git-svn-id: svn://svn.oetiker.ch/rrdtool/trunk/program@1690
a5681a0c-68f1-0310-ab6d-
d61299d08faa
oetiker [Wed, 3 Dec 2008 11:08:48 +0000 (11:08 +0000)]
When fetching data from 'past' an rra, rrd_fetch was seeking past the rrd
file. This did cause seek errors in some setups. Fixed. Thanks to Daniel Pocock for finding the problem.
git-svn-id: svn://svn.oetiker.ch/rrdtool/trunk/program@1689
a5681a0c-68f1-0310-ab6d-
d61299d08faa
oetiker [Wed, 3 Dec 2008 09:54:09 +0000 (09:54 +0000)]
integrated rrdcached examples into build process
git-svn-id: svn://svn.oetiker.ch/rrdtool/trunk/program@1686
a5681a0c-68f1-0310-ab6d-
d61299d08faa
oetiker [Wed, 3 Dec 2008 08:47:56 +0000 (08:47 +0000)]
add rrdcached examples -- kevin
git-svn-id: svn://svn.oetiker.ch/rrdtool/trunk/program@1685
a5681a0c-68f1-0310-ab6d-
d61299d08faa
oetiker [Tue, 2 Dec 2008 12:35:02 +0000 (12:35 +0000)]
fixed solaris build instructions
git-svn-id: svn://svn.oetiker.ch/rrdtool/trunk/program@1683
a5681a0c-68f1-0310-ab6d-
d61299d08faa
oetiker [Mon, 1 Dec 2008 11:05:52 +0000 (11:05 +0000)]
added libdbi doc to extradist
git-svn-id: svn://svn.oetiker.ch/rrdtool/trunk/program@1682
a5681a0c-68f1-0310-ab6d-
d61299d08faa
oetiker [Thu, 20 Nov 2008 13:04:38 +0000 (13:04 +0000)]
Attached a patch for the rrd-tool LIBDBI integration with the following improvements:
a) correct error handling in case of libdbi being unable to load the driver
was producing segmentation faults.
b) better parsing of datasources
* until now timestamp fields had to be integer and had to contain a unix
timestamp - now you can now also use DateTime fields (you still need to
specify it, as the time-range needs to be defined correctly)
* data fields are now no longer limited to (var)char or DOUBLE fields -
FLOAT, INTEGER,... are now also supported.
c) there is a bug with at least LIBDBI 0.8.1 in conjunction with mysql that
can result in segmentation faults when BINARY/BLOB fields are accessed -
rrdtool will now tell you about this fact before dying ;)
d) also the value of rrdderivemaxstep only gets applied if derive has been
selected correctly.
e) "GROUP BY timestamp" has been removed from SQL statement.
f) "ORDER BY timestamp" will be added only in the case of fetching "derived" data.
-- Martin Sperl
git-svn-id: svn://svn.oetiker.ch/rrdtool/trunk/program@1678
a5681a0c-68f1-0310-ab6d-
d61299d08faa
oetiker [Tue, 18 Nov 2008 17:19:17 +0000 (17:19 +0000)]
win32 portability patch and win32/rrdlib.vcproj file for the source
-- christof wegmann Christof.Wegmann with exitgames.com
some fixes to make the result work on unix again ...
git-svn-id: svn://svn.oetiker.ch/rrdtool/trunk/program@1677
a5681a0c-68f1-0310-ab6d-
d61299d08faa
oetiker [Tue, 18 Nov 2008 07:14:10 +0000 (07:14 +0000)]
missing , added to help string
git-svn-id: svn://svn.oetiker.ch/rrdtool/trunk/program@1674
a5681a0c-68f1-0310-ab6d-
d61299d08faa
oetiker [Mon, 17 Nov 2008 16:21:41 +0000 (16:21 +0000)]
added build instruction for libdbi docu
git-svn-id: svn://svn.oetiker.ch/rrdtool/trunk/program@1672
a5681a0c-68f1-0310-ab6d-
d61299d08faa
oetiker [Sun, 16 Nov 2008 22:24:44 +0000 (22:24 +0000)]
missing pod files
git-svn-id: svn://svn.oetiker.ch/rrdtool/trunk/program@1670
a5681a0c-68f1-0310-ab6d-
d61299d08faa
oetiker [Sat, 15 Nov 2008 14:35:51 +0000 (14:35 +0000)]
switch tu using AS_HELP_STRING for formatting ...
git-svn-id: svn://svn.oetiker.ch/rrdtool/trunk/program@1669
a5681a0c-68f1-0310-ab6d-
d61299d08faa
oetiker [Sat, 15 Nov 2008 14:15:38 +0000 (14:15 +0000)]
fix typo in handle_request_help
--kevin
git-svn-id: svn://svn.oetiker.ch/rrdtool/trunk/program@1668
a5681a0c-68f1-0310-ab6d-
d61299d08faa
oetiker [Sat, 15 Nov 2008 14:14:19 +0000 (14:14 +0000)]
doc fixups for rrdcacehd
* documented the -p option
* added nbsp between option and argument
* layout one option per line
--kevin
git-svn-id: svn://svn.oetiker.ch/rrdtool/trunk/program@1667
a5681a0c-68f1-0310-ab6d-
d61299d08faa
oetiker [Tue, 11 Nov 2008 16:36:45 +0000 (16:36 +0000)]
make basename work
git-svn-id: svn://svn.oetiker.ch/rrdtool/trunk/program@1666
a5681a0c-68f1-0310-ab6d-
d61299d08faa
oetiker [Tue, 11 Nov 2008 16:36:13 +0000 (16:36 +0000)]
This patch allows for multiple RRD writer threads to service the queue.
Now, rrdcached can have more simultaneous I/O requests into the kernel.
This may allow the kernel to re-order disk writes, resulting in better
disk throughput. In practice, throughput is increased by 2-3x.
The flush (-f) timer maintenance has been moved from queue_thread_main
into its own thread.
Be more careful about when to use pthread_cond_signal vs _broadcast, since
multiple threads may be waiting on &queue_cond.
--kevin
git-svn-id: svn://svn.oetiker.ch/rrdtool/trunk/program@1665
a5681a0c-68f1-0310-ab6d-
d61299d08faa
oetiker [Sun, 9 Nov 2008 19:19:48 +0000 (19:19 +0000)]
be even more liberal with NOT using isfinite on solaris2.8
git-svn-id: svn://svn.oetiker.ch/rrdtool/trunk/program@1663
a5681a0c-68f1-0310-ab6d-
d61299d08faa
oetiker [Sun, 9 Nov 2008 00:00:33 +0000 (00:00 +0000)]
use basename to determine filename for imginfo as suggested by sebastian
git-svn-id: svn://svn.oetiker.ch/rrdtool/trunk/program@1662
a5681a0c-68f1-0310-ab6d-
d61299d08faa
oetiker [Sat, 8 Nov 2008 22:57:38 +0000 (22:57 +0000)]
rrdcached: move queue length decrement into remove_from_queue
-- kevin
git-svn-id: svn://svn.oetiker.ch/rrdtool/trunk/program@1661
a5681a0c-68f1-0310-ab6d-
d61299d08faa
oetiker [Sat, 8 Nov 2008 22:57:18 +0000 (22:57 +0000)]
rrdcached: examine the current queue with the "QUEUE" command
-- kevin
git-svn-id: svn://svn.oetiker.ch/rrdtool/trunk/program@1660
a5681a0c-68f1-0310-ab6d-
d61299d08faa
oetiker [Sat, 8 Nov 2008 22:50:51 +0000 (22:50 +0000)]
This helps with portability on platforms where realloc doesn't handle NULL.
-- kevin
git-svn-id: svn://svn.oetiker.ch/rrdtool/trunk/program@1659
a5681a0c-68f1-0310-ab6d-
d61299d08faa
oetiker [Sat, 8 Nov 2008 18:01:33 +0000 (18:01 +0000)]
document the "QUIT" command -- kevin
git-svn-id: svn://svn.oetiker.ch/rrdtool/trunk/program@1658
a5681a0c-68f1-0310-ab6d-
d61299d08faa
oetiker [Sat, 8 Nov 2008 18:01:01 +0000 (18:01 +0000)]
rrdcached: journal_replay default failure reason, just in case
avoids a "may be used uninitialized" warning -- kevin
git-svn-id: svn://svn.oetiker.ch/rrdtool/trunk/program@1657
a5681a0c-68f1-0310-ab6d-
d61299d08faa
oetiker [Sat, 8 Nov 2008 18:00:21 +0000 (18:00 +0000)]
added "quit" command -- kevin
git-svn-id: svn://svn.oetiker.ch/rrdtool/trunk/program@1656
a5681a0c-68f1-0310-ab6d-
d61299d08faa
oetiker [Sat, 8 Nov 2008 17:57:32 +0000 (17:57 +0000)]
rrdcached now frees all of its resources correctly. This facilitates
memory debugging. g_tree now knows how to free the nodes when it removes
them.
Also, use g_tree_replace instead of g_tree_insert. This fixes a bug
triggered when the same file was simultaneously inserted by two clients.
--kevin
git-svn-id: svn://svn.oetiker.ch/rrdtool/trunk/program@1655
a5681a0c-68f1-0310-ab6d-
d61299d08faa
oetiker [Sat, 8 Nov 2008 17:56:48 +0000 (17:56 +0000)]
do not quit when libdbi is missing
git-svn-id: svn://svn.oetiker.ch/rrdtool/trunk/program@1654
a5681a0c-68f1-0310-ab6d-
d61299d08faa
oetiker [Fri, 7 Nov 2008 22:46:40 +0000 (22:46 +0000)]
fixed --font TITLE:12: problem -- tobi
git-svn-id: svn://svn.oetiker.ch/rrdtool/trunk/program@1653
a5681a0c-68f1-0310-ab6d-
d61299d08faa
oetiker [Fri, 7 Nov 2008 22:23:16 +0000 (22:23 +0000)]
fix scaling issue -- Martin
git-svn-id: svn://svn.oetiker.ch/rrdtool/trunk/program@1652
a5681a0c-68f1-0310-ab6d-
d61299d08faa
oetiker [Fri, 7 Nov 2008 14:09:29 +0000 (14:09 +0000)]
extra file to make libdbi patch work
git-svn-id: svn://svn.oetiker.ch/rrdtool/trunk/program@1651
a5681a0c-68f1-0310-ab6d-
d61299d08faa
oetiker [Fri, 7 Nov 2008 14:07:53 +0000 (14:07 +0000)]
As some of you may know that I have created a patch for rrdtool 1.2 a few years ago, so that a database could be queried for
values for graphing.
The patch has been mostly rewritten and the following changes have been made:
* high dependency on mysql has been reduced by avoiding the
temporary tables (which was bad for mysql replication)
* The number of executed SQL-Statements for one CDEF has been
reduced to 1 compared to 11 SQLs (including CREATE TEMPORARY
TABLE) - for patch against version 1.2
* All consolidation is done in rrdtool itself (MIN,MAX,AVERAGE)
* Additional consolidation functions are COUNT and SIGMA, which give
information on statistics on a per "time-bin" basis.
* All these consolidation values are always returned as separate
columns, that are returned by RRD and the consolidation function
given as Argument is ignored.
Main reason is that this way there is only one call to rrd_fetcht
and thus the database even if we need to fetch for example min,
avg and max. Compare this to 3 calls in case of different
consolidation functions - and if you want to get SIGMA and COUNT
as well it is still only one call to the backend and the database.
* Some previous existing features have been taken out at the moment
to allow for this reduced set of SQL queries.
o prediction using the values from the last X days at the same
time
o the corresponding sigma calculation
* The idea is to create generic CDEF's that will do the same thing,
but that is also available when using RRD-files (similar to TREND,
but with another scope)
This will get posted as a separate patch.
* Overall performance should be much better and the patch as a whole
simpler.
* The patch also includes modifications to the configuration
infrastructure, to make libdbi support optional.
-- Martin Sperl
git-svn-id: svn://svn.oetiker.ch/rrdtool/trunk/program@1650
a5681a0c-68f1-0310-ab6d-
d61299d08faa
oetiker [Fri, 7 Nov 2008 14:02:09 +0000 (14:02 +0000)]
new CDEF functions for predictions PREDICT and PREDICTSIGMA
-- Martin Sperl
git-svn-id: svn://svn.oetiker.ch/rrdtool/trunk/program@1649
a5681a0c-68f1-0310-ab6d-
d61299d08faa
oetiker [Fri, 7 Nov 2008 13:51:24 +0000 (13:51 +0000)]
Much simpler handling of timestamp errors. Return an error to the user
when any of the time stamp values are invalid. This is similar to
RRDTool's normal behavior. Removed the complex logic previously used to
return error codes to the user.
This solves a bug where non-advancing timestamps could have produced
incorrect error output during "BATCH" mode. The bug was cause by using
the sock->wbuf pointer for the error output. -- kevin brintnall
git-svn-id: svn://svn.oetiker.ch/rrdtool/trunk/program@1648
a5681a0c-68f1-0310-ab6d-
d61299d08faa
oetiker [Fri, 7 Nov 2008 13:45:34 +0000 (13:45 +0000)]
rrdcached: pull in rrd_config.h so we can use its defines
... particularly HAVE_VSNPRINTF -- kevin brintnall
git-svn-id: svn://svn.oetiker.ch/rrdtool/trunk/program@1647
a5681a0c-68f1-0310-ab6d-
d61299d08faa
oetiker [Tue, 4 Nov 2008 07:12:46 +0000 (07:12 +0000)]
I realize now that the problem is the line
test -f lua/Makefile && cd lua && $(MAKE) install || true
in the target "install-data-local", in bindings/Makefile.am. It forces
execution of bindings/lua/Makefile independently of lua being found or
not. I added that line in my first patch, following perl, python and
ruby build style, but it's not needed after I switched to automake. The
make recursion is controlled by SUBDIRS, which will only contain "lua"
if BUILD_LUA is true.
-- Fidelis Assis
git-svn-id: svn://svn.oetiker.ch/rrdtool/trunk/program@1645
a5681a0c-68f1-0310-ab6d-
d61299d08faa
oetiker [Sun, 2 Nov 2008 17:25:36 +0000 (17:25 +0000)]
fix build process for systems without lua
git-svn-id: svn://svn.oetiker.ch/rrdtool/trunk/program@1644
a5681a0c-68f1-0310-ab6d-
d61299d08faa
oetiker [Sun, 2 Nov 2008 17:09:36 +0000 (17:09 +0000)]
PTHREAD_COND_INITIALIZER may only be used to initialize static cond variables.
-- Sebastian Harl
git-svn-id: svn://svn.oetiker.ch/rrdtool/trunk/program@1643
a5681a0c-68f1-0310-ab6d-
d61299d08faa
oetiker [Sun, 2 Nov 2008 15:25:48 +0000 (15:25 +0000)]
reverting non build makefile patch ... we need to lua makefile for building the ditribution
git-svn-id: svn://svn.oetiker.ch/rrdtool/trunk/program@1642
a5681a0c-68f1-0310-ab6d-
d61299d08faa
oetiker [Sat, 1 Nov 2008 09:09:07 +0000 (09:09 +0000)]
do not create the lua makefile if lua is not to be compiled.
git-svn-id: svn://svn.oetiker.ch/rrdtool/trunk/program@1641
a5681a0c-68f1-0310-ab6d-
d61299d08faa
oetiker [Thu, 30 Oct 2008 14:32:09 +0000 (14:32 +0000)]
fix from alex
git-svn-id: svn://svn.oetiker.ch/rrdtool/trunk/program@1638
a5681a0c-68f1-0310-ab6d-
d61299d08faa
oetiker [Tue, 28 Oct 2008 08:57:13 +0000 (08:57 +0000)]
- remove the spaccing between the elements
- add xsd support to dump output
- change the argument "[--no-header|-n]" to [--header|-h {xsd,dtd}]
-- tobias.lindenmann 1und1.de
git-svn-id: svn://svn.oetiker.ch/rrdtool/trunk/program@1637
a5681a0c-68f1-0310-ab6d-
d61299d08faa
oetiker [Sun, 26 Oct 2008 15:18:33 +0000 (15:18 +0000)]
make compilation on older OSX versios work by removing the # from the librrd.sym file
git-svn-id: svn://svn.oetiker.ch/rrdtool/trunk/program@1632
a5681a0c-68f1-0310-ab6d-
d61299d08faa
oetiker [Fri, 24 Oct 2008 06:20:21 +0000 (06:20 +0000)]
fixed typo ... GAUGE not GUAGE
git-svn-id: svn://svn.oetiker.ch/rrdtool/trunk/program@1628
a5681a0c-68f1-0310-ab6d-
d61299d08faa
oetiker [Wed, 22 Oct 2008 20:41:59 +0000 (20:41 +0000)]
The previous code relied on the assumption that pthread_cond_init(&cond)
was equivalent to memset(&cond,0). This may not be true on all platforms.
-- kevin
git-svn-id: svn://svn.oetiker.ch/rrdtool/trunk/program@1627
a5681a0c-68f1-0310-ab6d-
d61299d08faa
oetiker [Wed, 22 Oct 2008 06:02:23 +0000 (06:02 +0000)]
remove_cache_item() did not check whether a file was in queue before
modifying the cache head/tail pointers. Therefore, the process of
flushing old files may perturb the cache_queue_head pointer. This caused
some nodes with CI_FLAGS_IN_QUEUE to be un-linked from the queue list.
Thereafter, they would not be flushed by any periodic process (although
they could be revived with FLUSH or UPDATE). This caused a slow memory
leak for files that are no longer updated. Pending updates for these
"abandoned" files would remain in memory ad infinitum.
With this patch, remove_from_queue() will check that the item is queued
before modifying the head/tail pointers. This restores the intended
behavior.
--kevin
git-svn-id: svn://svn.oetiker.ch/rrdtool/trunk/program@1626
a5681a0c-68f1-0310-ab6d-
d61299d08faa
oetiker [Wed, 22 Oct 2008 05:08:47 +0000 (05:08 +0000)]
this was replaced by Makefile.am
git-svn-id: svn://svn.oetiker.ch/rrdtool/trunk/program@1625
a5681a0c-68f1-0310-ab6d-
d61299d08faa
oetiker [Tue, 21 Oct 2008 06:10:32 +0000 (06:10 +0000)]
guess one needs that in svn too for luabindings to work
git-svn-id: svn://svn.oetiker.ch/rrdtool/trunk/program@1624
a5681a0c-68f1-0310-ab6d-
d61299d08faa
oetiker [Tue, 21 Oct 2008 05:42:50 +0000 (05:42 +0000)]
* Open all listen sockets in daemonize(), while we still have stderr.
Changed open_listen_socket_* routines to complain to stderr. Now, any
errors in binding to the listen sockets are much more obvious.
* Simplified exit of parent after fork()
* PID file will be correctly cleaned up if there is a failure in daemonize().
* unlink the unix socket before trying to bind()
(after we're sure we have the PID file)
-- kevin
git-svn-id: svn://svn.oetiker.ch/rrdtool/trunk/program@1623
a5681a0c-68f1-0310-ab6d-
d61299d08faa
oetiker [Mon, 20 Oct 2008 11:46:08 +0000 (11:46 +0000)]
rrd_notify_row patch:
- Delegate choice of starting row for newly created RRD files to the rrd_open.c API.
- Introduce the rrd_notify_row() function so that an implementation can choose to align the rows of new RRDs with existing RRDs, if desirable.
- Maintain the existing behaviour (random starting row) by default.
-- Daniel.Pocock
git-svn-id: svn://svn.oetiker.ch/rrdtool/trunk/program@1622
a5681a0c-68f1-0310-ab6d-
d61299d08faa
oetiker [Mon, 20 Oct 2008 06:06:16 +0000 (06:06 +0000)]
- Lua module build and install process rewritten using automake+libtool
- improved check for compat-5.1 availability
-- Fidelis Assis
git-svn-id: svn://svn.oetiker.ch/rrdtool/trunk/program@1621
a5681a0c-68f1-0310-ab6d-
d61299d08faa
oetiker [Sat, 18 Oct 2008 22:32:19 +0000 (22:32 +0000)]
rrd_open should not create files with restrictive masks
Removed unnecessary "mode" varaible. The mode is only used when O_CREAT is
specified, where we want to use 0666 (as rrd_create_fn did r<=1612).
--kevin
git-svn-id: svn://svn.oetiker.ch/rrdtool/trunk/program@1620
a5681a0c-68f1-0310-ab6d-
d61299d08faa
oetiker [Sat, 18 Oct 2008 15:50:07 +0000 (15:50 +0000)]
- encapsulate fd and mmap related variables within a private data
structure
- rrd_file_t keeps a pointer to the private data structure of type
void*, so that other block storage implementations can store their
internal data with rrd_file_t
-- Daniel.Pocock
git-svn-id: svn://svn.oetiker.ch/rrdtool/trunk/program@1619
a5681a0c-68f1-0310-ab6d-
d61299d08faa
oetiker [Fri, 17 Oct 2008 05:50:22 +0000 (05:50 +0000)]
rrdc_flush_if_daemon should not clobber error message -- kevin (as suggested by Sebastian)
git-svn-id: svn://svn.oetiker.ch/rrdtool/trunk/program@1618
a5681a0c-68f1-0310-ab6d-
d61299d08faa
oetiker [Fri, 17 Oct 2008 05:44:09 +0000 (05:44 +0000)]
use double for legend positioning to fight wiggle
git-svn-id: svn://svn.oetiker.ch/rrdtool/trunk/program@1617
a5681a0c-68f1-0310-ab6d-
d61299d08faa
oetiker [Thu, 16 Oct 2008 21:33:08 +0000 (21:33 +0000)]
fix version numbers in compile instructions
tobi
git-svn-id: svn://svn.oetiker.ch/rrdtool/trunk/program@1616
a5681a0c-68f1-0310-ab6d-
d61299d08faa
oetiker [Thu, 16 Oct 2008 21:30:17 +0000 (21:30 +0000)]
In almost all cases where rrdc_flush can fail, it will leave a more
descriptive error message anyway.. better not overwrite it.
-- kevin
git-svn-id: svn://svn.oetiker.ch/rrdtool/trunk/program@1614
a5681a0c-68f1-0310-ab6d-
d61299d08faa
oetiker [Thu, 16 Oct 2008 21:12:27 +0000 (21:12 +0000)]
- rrd_open() calculates file size for new files and calls mmap once for
the whole file
- rrd_resize() cleaned up, no longer passing a size through the cookie
argument
- rrd_init(&my_rrd) must be called before rrd_open() - if people are
calling rrd_open directly from application code, this might be
troublesome. Alternative solutions: creating an additional function,
rrd_open_create(), or adding an extra argument to rrd_open() for setting
the file size
-- Daniel Pocock
git-svn-id: svn://svn.oetiker.ch/rrdtool/trunk/program@1613
a5681a0c-68f1-0310-ab6d-
d61299d08faa
oetiker [Thu, 16 Oct 2008 21:05:51 +0000 (21:05 +0000)]
move rrd_lock into rrd_open where the general rrd_file ops are located. -- Daniel Pocock
git-svn-id: svn://svn.oetiker.ch/rrdtool/trunk/program@1612
a5681a0c-68f1-0310-ab6d-
d61299d08faa
oetiker [Thu, 16 Oct 2008 06:11:54 +0000 (06:11 +0000)]
error reporting caused crash in journal replay
git-svn-id: svn://svn.oetiker.ch/rrdtool/trunk/program@1610
a5681a0c-68f1-0310-ab6d-
d61299d08faa
oetiker [Thu, 16 Oct 2008 06:11:44 +0000 (06:11 +0000)]
better build docs
git-svn-id: svn://svn.oetiker.ch/rrdtool/trunk/program@1609
a5681a0c-68f1-0310-ab6d-
d61299d08faa
oetiker [Wed, 15 Oct 2008 05:29:41 +0000 (05:29 +0000)]
reverted r1601 and r1606 since r1601 introduced a non portable mremap and r1606 has a dependency on r1601.
git-svn-id: svn://svn.oetiker.ch/rrdtool/trunk/program@1607
a5681a0c-68f1-0310-ab6d-
d61299d08faa
oetiker [Tue, 14 Oct 2008 20:14:35 +0000 (20:14 +0000)]
This moves selection of the initial RRA row into the rrd_open.c API
The current implementation (random row) is used by default. However, it
now provides an opportunity for alternative implementations to integrate
with rrdtool in a single place.
Maybe there are other places in rrdtool where I should insert calls to
the function rrd_notify_row()?
This has been tested with rrdtool create and rrdtool info to verify that
random rows are selected by default (existing behaviour preserved).
-- Daniel Pocock
git-svn-id: svn://svn.oetiker.ch/rrdtool/trunk/program@1606
a5681a0c-68f1-0310-ab6d-
d61299d08faa
oetiker [Tue, 14 Oct 2008 19:23:24 +0000 (19:23 +0000)]
Under most circumstances, rrdcached can detect a stale pid file.
If the process in the pid file does not exist, or cannot be signalled by
the rrdcached owner, then rrdcached will replace the pid file and start
normally. Otherwise, it will complain verbosely to STDERR.
--kevin
git-svn-id: svn://svn.oetiker.ch/rrdtool/trunk/program@1605
a5681a0c-68f1-0310-ab6d-
d61299d08faa
oetiker [Tue, 14 Oct 2008 19:08:56 +0000 (19:08 +0000)]
* this preserves principle of least surprise when dealing with files that
are reachable via many path strings. i.e. when $PWD=/base/dir the
following files are the same:
/base/dir/x.rrd
x.rrd
../dir/x.rrd
* for performance, absolute paths (starting with '/') are not resolved.
this reduces the number of stat(2) system calls.
git-svn-id: svn://svn.oetiker.ch/rrdtool/trunk/program@1604
a5681a0c-68f1-0310-ab6d-
d61299d08faa
oetiker [Tue, 14 Oct 2008 19:08:36 +0000 (19:08 +0000)]
Now, the daemon will check that a base directory is NOT reached via
symbolic link. Documentation added to illustrate the restriction.
This allows several simplifying (and performance-enhancing) assumptions to
be made elsewhere in the code:
* it ensures that paths resolved in the client via realpath() will match
our data structure keys
* it's possible to generate the correct absolute path when given a
relative path by simply prepending the base directory
* it's not necessary to resolve paths that begin with '/'
-- kevin
git-svn-id: svn://svn.oetiker.ch/rrdtool/trunk/program@1603
a5681a0c-68f1-0310-ab6d-
d61299d08faa
oetiker [Tue, 14 Oct 2008 19:08:00 +0000 (19:08 +0000)]
rrdcached treats relative and absolute paths the same -- kevin
git-svn-id: svn://svn.oetiker.ch/rrdtool/trunk/program@1602
a5681a0c-68f1-0310-ab6d-
d61299d08faa
oetiker [Tue, 14 Oct 2008 11:33:37 +0000 (11:33 +0000)]
Some observations I made while implementing this:
- In rrd_open(), the call to rrd_init() clobbers values already populated in
rrd_create.c
- The logic for newfile_size in rrd_open() wasn't really able to cope with the
logic for a file starting with size 0
I've tried to deal with these issues, but maybe there is a more elegant solution.
-- Daniel Pocock
git-svn-id: svn://svn.oetiker.ch/rrdtool/trunk/program@1601
a5681a0c-68f1-0310-ab6d-
d61299d08faa
oetiker [Tue, 14 Oct 2008 06:37:19 +0000 (06:37 +0000)]
clearer way of advancing the flush time
-- kevin
git-svn-id: svn://svn.oetiker.ch/rrdtool/trunk/program@1600
a5681a0c-68f1-0310-ab6d-
d61299d08faa
oetiker [Mon, 13 Oct 2008 22:07:14 +0000 (22:07 +0000)]
This patch reduces the number of time()/gettimeofday() system calls when
doing high volume processing. This enables about 25% speed increase
during journal replay and "BATCH" processing. (this is a function of
syscall overhead).
* note when "BATCH" processing or journal replay starts, use that
timestamp for all commands
* use the batch start time to detect when we're in batch mode. no longer
need a separate boolean.
* pass the time_t into handle_request
* pass the time_t through to the commands that need it
-- kevin brintnall
git-svn-id: svn://svn.oetiker.ch/rrdtool/trunk/program@1599
a5681a0c-68f1-0310-ab6d-
d61299d08faa
oetiker [Mon, 13 Oct 2008 18:41:12 +0000 (18:41 +0000)]
fixed bad folding marker (on handle_request_flush)
-- kevin
git-svn-id: svn://svn.oetiker.ch/rrdtool/trunk/program@1598
a5681a0c-68f1-0310-ab6d-
d61299d08faa
oetiker [Sat, 11 Oct 2008 09:53:40 +0000 (09:53 +0000)]
this ensures that the response is protocol-compliant even if additional
info has been added to the write buffer during processing.
-- kevin brintnall
git-svn-id: svn://svn.oetiker.ch/rrdtool/trunk/program@1597
a5681a0c-68f1-0310-ab6d-
d61299d08faa
oetiker [Sat, 11 Oct 2008 09:37:53 +0000 (09:37 +0000)]
This patch introduces a feature whereby rrdcached will disallow updates
that do not advance the update time. This prevents the updates from being
discarded later by rrd_update_r.
This patch attempts to make the most of the protocol's limited ability to
return error text when using a -1 return code.
-- kevin brintnall
git-svn-id: svn://svn.oetiker.ch/rrdtool/trunk/program@1596
a5681a0c-68f1-0310-ab6d-
d61299d08faa