table plugin: Add explicit NULL checks to clear functions.
[collectd.git] / ChangeLog
index 5155954..f990dd4 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,270 @@
+2017-06-06, Version 5.7.2
+       * Build system: The Notify Email plugin is no longer linked with
+         indirect dependencies. Thanks to Marc Fournier.
+       * collectd: A race condition when calculating a metric's rate has been
+         fixed. Thanks to Florian Forster. #1193
+       * AMQP, Exec, UnixSock, Write Kafka plugins: Parsing of the PUTVAL
+         command with multiple values has been fixed. Thanks to Florian
+         Forster. #2274
+       * AMQP plugin: The "ExchangeType" option is now also valid for
+         publishers. Thanks to Florian Forster. #2286
+       * BIND plugin: Fix parsing of the sample time provided by BIND.
+         Previously, the time was assumed to be in the local timezone when in
+         fact it was in UTC. Thanks to Ed Ravin. #1268
+       * BIND plugin: Memory leaks have been fixed. Thanks to Ruben Kerkhof.
+         #2303
+       * cURL-JSON plugin: Handling of arrays has been fixed. Thanks to Florian
+         Forster. #2266
+       * DPDKStat plugin: Error handling during initialization has been
+         improved. Thanks to Ruben Kerkhof.
+       * DPDKStat plugin: Handling of a number of metrics has been improved,
+         for example "rx_q0bytes". Thanks to Przemyslaw Szczerbik. #2167
+       * Intel RDT plugin: Configuration handling has been changed to be more
+         graceful. Thanks to Maryam Tahhan. #2165
+       * Log Logstash plugin: If writing the log entry fails, print it to
+         "STDERR" instead. Thanks to Marc Fournier.
+       * LogFile plugin: If writing to the file fails, print log messages on
+         "STDERR" instead. Thanks to Marc Fournier.
+       * memcachec, Tail plugins: A resource leak in the matching
+         infrastructure has been fixed. Thanks to Krzysztof Matczak. #2192
+       * MQTT plugin: Invalid symbols in topic names are now replaced and a
+         resource leak has been fixed. Thanks to Denys Fedoryshchenko. #2123
+       * Network plugin: A potential endless-loop has been fixed. This can be
+         triggered remotely by sending a signed network packet to a server
+         which is not set up to check signatures. Thanks to Marcin Kozlowski
+         and Pavel Rochnyack. #2174, #2233, CVE-2017-7401
+       * Perl plugin: A potential double-free has been fixed. Thanks to Florian
+         Forster. #2278
+       * Processes plugin: A compilation error on AIX has been fixed. Thanks to
+         Pavel Rochnyack. #2210
+       * SMART plugin: A check for the "CAP_SYS_RAWIO" capability has been
+         added. Thanks to Marc Fournier.
+       * Write Graphite plugin: Error handling in the case that calculating a
+         metric's rate fails has been improved. Previously, the raw counter
+         values were sent to Graphite. Thanks to Iain Buclaw. #2209
+       * Write Prometheus plugin: An incorrect use of "realloc(3)" has been
+         fixed. Thanks to Florian Forster. #2275
+
+2017-01-23, Version 5.7.1
+       * collectd: Handling of boolean configuration options has been unified.
+         Thanks to Sebastian Harl. #2083, #2098
+       * collectd: Reporting of internal statistics has been fixed. Thanks to
+         Florian Forster. #2108
+       * collectd, various plugins: Bugs and issues reported by scan-build and
+         coverity-scan have been fixed. Thanks to Ruben Kerkhof and Florian
+         Forster.
+       * Build system: Parallel build have been fixed. Thanks to Ruben Kerkhof.
+         #2110
+       * DPDKStat plugin: Portability issues and a double-close bug have been
+         fixed. Thanks to Ruben Kerkhof and Marc Fournier.
+       * Intel RDT plugin: A check for the libpqos library version has been
+         added. Thanks to Serhiy Pshyk.
+       * NetApp plugin: Compilation problems have been corrected. Thanks to
+         Florian Forster. #2120
+       * Write Prometheus plugin: A memory leak has been fixed. Thanks to Ruben
+         Kerkhof.
+
+2016-12-12, Version 5.7.0
+       * Documentation: The Turbostat plugin section has been improved. Thanks
+         to Florian Forster
+       * Documentation: The semantics of the "TypesDB" option have been
+         improved. Thanks to Florian Forster.
+       * collectd: A generic interface for parsing the text protocol has been
+         added. Thanks to Sebastian Harl. #1749
+       * collectd: Threads now get named, making them easier to track using
+         tools such as top, ps, etc. Thanks to Manuel Luis Sanmartín Rozada
+         and Marc Fournier. #547
+       * AMQP plugin, Write Graphite plugin, Write Kafka plugin: The new
+         "[Graphite]PreserveSeparator" option allows retaining the default dot
+         separator rather than escaping it. Thanks to Florian Forster. #419
+       * Battery plugin: A StateFS backend for gathering statistics has been
+         added. Thanks to Rinigus. #1795
+       * CPU plugin: CPU aggregation on AIX was fixed. Thanks to Chao Yang.
+         #1957
+       * Collectd::Unixsock: Fractional seconds support has been made more
+         robust. Thanks to Matthias Bethke. #2052
+       * DPDKStat plugin: This new plugin collects DPDK interface statistics.
+         Thanks to Maryam Tahhan, Harry van Haaren, Taras Chornyi and Kim
+         Jones. #1649
+       * gRPC plugin: The "DispatchValues" option has been renamed to
+         "PutValues". Thanks to Florian Forster.
+       * HDDTemp plugin: The 32 devices limit has been removed. Thanks to
+         Benjamin Gilbert. #631
+       * Hugepages plugin: This new plugin reports the number of used and free
+         hugepages on Linux. Thanks to Jaroslav Safka, Maryam Tahhan, Kim Jones
+         and Florian Forster. #1799
+       * Intel RDT plugin: This new plugin collects statistics exposed by
+         Intel's Resource Director Technology . Thanks to SerhiyX. #1970
+       * memcached plugin: The new "Address" option allows connecting to a
+         different server than specified by the "Host" option. Thanks to Pavel
+         Rochnyack. #1975
+       * nginx plugin: Support for reporting failed connections has been added.
+         Thanks to Pavel Rochnyack. #1609
+       * Perl plugin: Significant internal reworking has been made. The new
+         "RegisterLegacyFlush" option has been added. Thanks to Pavel
+         Rochnyack. #1731
+       * PostgreSQL plugin: Timestamps are now RFC 3339-formatted local time.
+         Thanks to Igor Peshansky and Dave Cunningham. #1918
+       * Processes plugin: Internal performance improvements have been made.
+         Thanks to Pavel Rochnyack. #1980, #1981
+       * RRDCacheD plugin: The plugin now tries to reconnect upon failed
+         operations. Thanks to Sebastian Harl. #1959
+       * SpamAssassin: The plugin can now run in Perl's "tainted mode" ("-T").
+         Thanks to Akos Vandra. #1962
+       * Tail plugin: Support for calculating latency distribution of matching
+         values has been added. Thanks to Pavel Rochnyack and Florian Forster.
+         #1700
+       * Tail plugin: The new "GaugePersist" option has been added. Thanks to
+         Florian Forster. #2015
+       * Target:Set, Target:Replace, Match:RegEx: MetaData support has been
+         added . Thanks to Igor Peshansky. #1922, #1923, #1930
+       * turbostat plugin: The new "LogicalCoreNames" option allows switching
+         to per-core naming rather than per-CPU. Thanks to Brock Johnson. #2056
+       * virt plugin: The new "BlockDeviceFormat" and
+         "BlockDeviceFormatBasename" options help controlling the names
+         reported for block-device metrics. Thanks to Deyan Chepishev. #2004
+       * Write Graphite plugin: A new "DropDuplicateFields" option has been
+         added. Thanks to Michael Leinartas. #1915
+       * Write Kafka plugin: The "Key Random" setting has been reintroduced.
+         Thanks to Florian Forster. #1977
+       * Write Log plugin: Support for formatting output in JSON has been
+         added, using the new "Format" configuration option. Thanks to Igor
+         Peshansky. #1924
+       * Write Prometheus plugin: This new plugin publishes values using an
+         embedded HTTP server, in a format compatible with Prometheus'
+         collectd_exporter. Thanks to Florian Forster. #1967
+
+2017-10-06, Version 5.6.3
+       * collectd: support for boolean string config values has been
+         reintroduced. Thanks to Sebastian Harl. #2083, #2098
+       * collectd: The capability checking has been changed to use
+         "cap_get_proc()". Thanks to Marc Fournier. #2151
+       * Documentation: A section documenting ignore lists has been added to
+         collectd.conf(5). Thanks to Florian Forster.
+       * AMQP plugin: The "ExchangeType" option is now also valid for
+         publishers. Thanks to Florian Forster. #2286
+       * Apache, Ascent, BIND, cURL, cURL-JSON, cURL-XML, nginx, Write HTTP
+         plugins: Handling of URLs that redirect elsewhere has been fixed.
+         Thanks to Pavel Rochnyack. #2328
+       * BIND plugin: Fix parsing of the sample time provided by BIND.
+         Previously, the time was assumed to be in the local time zone when in
+         fact it was in UTC. Thanks to Ed Ravin. #1268
+       * BIND plugin: Memory leaks have been fixed. Thanks to Ruben Kerkhof.
+         #2303
+       * Chrony plugin: Build flags have been fixed. Thanks to Thomas Jost and
+         Marc Fournier. #2133
+       * cURL-JSON plugin: The timeout value has been changed to default to the
+         collection interval. This fixes a regression. Thanks to Marc Fournier.
+       * cURL-JSON plugin: Handling of arrays has been fixed. Thanks to Florian
+         Forster. #2266
+       * DBI plugin: Memory leaks at shutdown have been fixes. Thanks to Pavel
+         Rochnyack and Florian Forster.
+       * E-Mail, Exec, UnixSock plugins: Group ID lookup on systems with many
+         groups has been fixed. Thanks to Ruben Kerkhof and Florian Forster.
+         #2208
+       * IPC plugin: A compilation error on AIX has been fixed. Thanks to Pavel
+         Rochnyack. #2305
+       * LogFile plugin: If writing to the file fails, print log messages on
+         "STDERR" instead. Thanks to Marc Fournier.
+       * Log Logstash plugin: If writing the log entry fails, print it to
+         "STDERR" instead. Thanks to Marc Fournier.
+       * memcachec, Tail plugins: A resource leak in the matching
+         infrastructure has been fixed. Thanks to Krzysztof Matczak. #2192
+       * MQTT plugin: Invalid symbols in topic names are now replaced and a
+         resource leak has been fixed. Thanks to Denys Fedoryshchenko. #2123
+       * Network plugin: A potential endless-loop has been fixed. This can be
+         triggered remotely by sending a signed network packet to a server
+         which is not set up to check signatures. Thanks to Marcin Kozlowski
+         and Pavel Rochnyack. #2174, #2233, CVE-2017-7401
+       * Network plugin: A use-after-free has been fixed. Thanks to Pavel
+         Rochnyack. #2375
+       * Notify Email plugin: The plugin is no longer explicitly linked against
+         libssl and libcrypto, relies on libesmtp being linked correctly.
+         Thanks to Marc Fournier. Debian#852924
+       * NTPd plugin: Calculation of loop offset and error has been fixed.
+         Thanks to Neil Wilson. #2188
+       * OpenLDAP plugin: An incorrect use of the ldap library, leading to a
+         crash, has been fixed. Thanks to Marc Fournier. #2331
+       * Perl plugin: A potential double-free has been fixed. Thanks to Florian
+         Forster. #2278
+       * Perl plugin: Print an error when an incorrect configuration is
+         encountered. Thanks to Pavel Rochnyack. #927
+       * RRDtool plugin: Incorrect handling of the flushes timeout option has
+         been fixed. Handling of the "RandomTimeout" has been fixed. Thanks to
+         Pavel Rochnyack. #2363
+       * SMART plugin: Some warning messages have been removed and the code has
+         been cleaned up. Thanks to Florian Forster. #2062
+       * SMART plugin: A check for the "CAP_SYS_RAWIO" capability has been
+         added. Thanks to Marc Fournier.
+       * SNMP plugin: A double free has been fixed. Thanks to Pavel Rochnyack.
+         #2291
+       * Write Graphite plugin: Error handling in the case that calculating a
+         metric's rate fails has been improved. Previously, the raw counter
+         values were sent to Graphite. Thanks to Iain Buclaw. #2209
+       * Write Kafka plugin: A 32 bit random number is now used when formatting
+         a random key. Thanks to Florian Forster. #2074
+
+
+2016-11-30, Version 5.6.2
+       * collectd: A compile error on AIX has been fixed: "MSG_DONTWAIT" is not
+         available on AIX. Thanks to Chao Yang.
+       * collectd: The capability checking has been rewritten to be more
+         portable. Thanks to Florian Forster. #2009
+       * collectd.conf(5): Various typos have been fixed. Thanks to Marc
+         Fournier.
+       * collectd-tg: Incorrect usage of "nanosleep()" has been fixed which
+         caused the tool to sleep (almost) indefinitely. Thanks to Florian
+         Forster.
+       * Build system: Detection of the Java environment has been made
+         deterministic to allow for reproducible builds. Thanks to Marc
+         Fournier. #1523
+       * Build system: Detection of the Lua headers has been improved. Thanks
+         to Ruben Kerkhof.
+       * APC UPS plugin: Unavailable metrics are now skipped instead of
+         reported as 0 (zero). Thanks to Florian Forster. #2025
+       * Modbus plugin: Build issues on FreeBSD have been fixed. Thanks to
+         Florian Forster.
+       * OpenVPN plugin: Gracefully handle empty configurations. Thanks to
+         Pavel Rochnyack. #1932
+       * PowerDNS plugin: The "recursor command" has been fixed so PowerDNS can
+         correctly parse all requested fields. Thanks to Ruben Kerkhof.
+       * Write Graphite and AMQP plugins: A bug that could lead to a missing
+         null-termination has been fixed. Thanks to Markus Linnala.
+       * Write HTTP plugin: A logic error when checking the correctness of the
+         data set has been fixed. Thanks to Pavel Rochnyack. #1996
+       * Write Kafka plugin: The "Key Random" config option has been fixed.
+         Thanks to Florian Forster. #1977
+       * Write Kafka plugin: Support for librdkafka 0.9.0 has been added.
+         Thanks to Florian Forster.
+       * Write Riemann plugin: Build issues on Solaris have been fixed. Thanks
+         to Florian Forster.
+       * ZFS ARC plugin: A duplicate metric has been removed. Thanks to Ruben
+         Kerkhof. #1963
+
+2016-10-07, Version 5.6.1
+       * Build system: Unnecessary linking of the Write Graphite plugin with
+         libyajl has been removed. Thanks to Marc Fournier.
+         Debian#839771, #1976
+       * collectd: A bug in the "FlushInterval" option that caused a
+         segmentation fault in the Write HTTP plugin has been fixed. Thanks to
+         Florian Forster. #1954
+       * Apache plugin: A syntax error has been fixed. Thanks to Florian
+         Forster.
+       * cURL-JSON plugin: A segmentation fault that occurred when handling
+         JSON with unexpected structure has been fixed. Thanks to Florian
+         Forster. #1896
+       * PostgreSQL plugin: Handling of "NULL" values in the "query_plans" and
+         "query_plans_by_table" queries has been fixed. Thanks to Bernd
+         Zeimetz. #1905
+       * RRDCacheD plugin: Reconnection behavior has been added. Thanks to
+         Sebastian Harl. Debian#657877
+       * VServer plugin: Use of a deprecated API ("readdir_r()") has been
+         fixed. Thanks to Sebastian Harl.
+       * Write Graphite plugin: Make default values configurable at compile
+         time again. Thanks to Florian Forster. #1953
+       * Write HTTP plugin: A bug has been fixed that lead to flush callbacks
+         being registered twice. Thanks to Florian Forster. #1955
+
 2016-09-11, Version 5.6.0
        * Build system: An option to to avoid building the DF plugin against XFS
          has been added. Thanks to Ruben Kerkhof. #1878
        * Zone plugin: This new plugin reads per-zone CPU usage on Solaris.
          Thanks to Mathijs Mohlmann and Dagobert Michelsen.
 
+2016-11-28, Version 5.5.3
+       * collectd: Write threads are stopped before shutdown callbacks are
+         called. Thanks to Florian Forster. #1110
+       * collectd: A compile error on AIX has been fixed: "MSG_DONTWAIT" is not
+         available on AIX. Thanks to Chao Yang.
+       * libcollectdclient: Lines printed to "STDERR" are now guarded by the
+         environment variable "COLLECTD_TRACE". Thanks to Florian Forster. #105
+       * collectd.conf(5): Various typos have been fixed. Thanks to Marc
+         Fournier.
+       * Build system: Detection of the Java environment has been made
+         deterministic to allow for reproducible builds. Thanks to Marc
+         Fournier. #1523
+       * APC UPS plugin: Unavailable metrics are now skipped instead of
+         reported as 0 (zero). Thanks to Florian Forster. #2025
+       * Battery plugin: The minimum value has been removed from the power type
+         to allow the plugin to report discharging batteries as negative power.
+         Thanks to Florian Forster.
+       * DBI, Oracle and PostgreSQL plugins: An error message when the type
+         instance is truncated has been added. Thanks to Florian Forster. #4
+       * cURL-JSON plugin: A possible segmentation fault when parsing
+         unexpected JSON has been fixed. Thanks to Florian Forster. #1896
+       * DF plugin: Compilation with xfsprogs ≥ 4.7.0 has been fixed. Thanks
+         to Thomas Deutschmann. #1877
+       * Modbus plugin: Build issues on FreeBSD have been fixed. Thanks to
+         Florian Forster.
+       * Network plugin: An error message has been corrected. Thanks to Florian
+         Forster.
+       * Network plugin: Handling of errors form secure memory initialization
+         has been improved: the plugin fails gracefully now instead of calling
+         "abort()". Thanks to Sebastian Harl.
+       * Network plugin: The gcrypt library is only initialized when it is
+         actually required due to the network plugin's configuration. Thanks to
+         Florian Forster. #1902
+       * Ping plugin: The init callback has been changed to be idempotent,
+         fixing errors being reported on Solaris. Thanks to Florian Forster.
+         #869
+       * PostgreSQL plugin: The query_plans and query_plans_by_table queries
+         have been improved to return 0 (zero) instead of "NULL" when not
+         available. Thanks to Bernd Zeimetz. #1905
+       * PowerDNS plugin: The "recursor command" has been fixed so PowerDNS can
+         correctly parse all requested fields. Thanks to Ruben Kerkhof.
+       * Python plugin: Handling of data sets with multiple data sources of
+         different type has been fixed. Thanks to Sebastian Harl.
+       * RRDCacheD plugin: Reconnection behavior after failed operations has
+         been added. Thanks to Sebastian Harl. Debian#657877
+       * Write Graphite and AMQP plugins: A bug that could lead to a missing
+         null-termination has been fixed. Thanks to Markus Linnala.
+       * Write Kafka plugin: Support for librdkafka 0.9.0 has been added.
+         Thanks to Florian Forster.
+       * Write Riemann plugin: Build issues on Solaris have been fixed. Thanks
+         to Florian Forster.
+
 2016-07-25, Version 5.5.2
        * collectd: A division by zero has been fixed in the
          "plugin_dispatch_multivalue()" function. Thanks to Corey Kosak.