ChangeLog for 5.3.6 (v5-beta)
Version 5.3.6 [BETA] (rgerhards), 2010-01-13
- bugfix: ompgsql did not properly check the server connection in
tryResume(), which could lead to rsyslog running in a thight loop - bugfix: suspension during beginTransaction() was not properly handled
by rsyslog core - bugfix: omfile output was only written when buffer was full, not at
end of transaction - bugfix: commit transaction was not properly conveyed to message layer,
potentially resulting in non-message destruction and thus hangs - bugfix: enabling GSSServer crashes rsyslog startup
Thanks to Tomas Kubina for the patch [imgssapi] - bugfix (kind of): check if TCP connection is still alive if using TLS
Thanks to Jonathan Bond-Caron for the patch. - bugfix: $CreateDirs variable not properly initialized, default thus
was random (but most often “on”) [imported from v3] - bugfix: ompgsql had problems with transaction support, what actually
rendered it unsuable. Thanks to forum user “horhe” for alerting me
on this bug and helping to debug/fix it! - bugfix: memory leak when sending messages in zip-compressed format
Thanks to Naoya Nakazawa for analyzing this issue and providing a patch. - worked around an issue where omfile failed to compile on 32 bit platforms
under some circumstances (this smells like a gcc problem, but a simple
solution was available). Thanks to Kenneth Marshall for some advice.
[backported from 5.5.x branch]
ChangeLog for 5.5.1 (devel)
Version 5.5.1 [DEVEL] (rgerhards), 2009-11-27
- introduced the ablity for netstream drivers to utilize an epoll interface
This offers increased performance and removes the select() FDSET size limit from imtcp. Note that we fall back to select() if there is no epoll netstream drivers. So far, an epoll driver has only been implemented for plain tcp syslog, the rest will follow once the code proves well in practice AND there is demand. - re-implemented $EscapeControlCharacterTab config directive
Based on Jonathan Bond-Caron’s patch for v4. This now also includes some automatted tests. - bugfix: enabling GSSServer crashes rsyslog startup
Thanks to Tomas Kubina for the patch [imgssapi] - bugfix (kind of): check if TCP connection is still alive if using TLS
Thanks to Jonathan Bond-Caron for the patch.
ChangeLog for 4.5.7 (v4-beta)ChangeLog for 4.5.7 (v4-beta)
Version 4.5.7 [v4-beta] (rgerhards), 2009-11-18
- added a so-called “On Demand Debug” mode, in which debug output can be generated only after the process has started, but not right from the beginning. This is assumed to be useful for hard-to-find bugs. Also improved the doc on the debug system.
- bugfix [imported from 4.4.3]: $ActionExecOnlyOnceEveryInterval did not work.
ChangeLog for 5.5.0 (devel)
Version 5.5.0 [DEVEL] (rgerhards), 2009-11-18
- moved DNS resolution code out of imudp and into the backend processing
Most importantly, DNS resolution now never happens if the resolved name is not required. Note that this applies to imudp – for the other inputs, DNS resolution almost comes for free, so we do not do it there. However, the new method has been implemented in a generic way and as such may also be used by other modules in the future. - added option to use unlimited-size select() calls
Thanks to varmjofekoj for the patch
This is not done in imudp, as it natively supports epoll(). - doc: improved description of what loadable modules can do
ChangeLog for 5.3.5 (beta)
Version 5.3.5 [BETA] (rgerhards), 2009-11-13
- some light performance enhancement by replacing time() call with much faster (at least under linux) gettimeofday() calls.
- some improvement of omfile performance with dynafiles saved costly time() calls by employing a logical clock, which is sufficient for the use case
- bugfix: omudpspoof miscalculated source and destination ports while this was probably not noticed for source ports, it resulted in almost all destination ports being wrong, except for the default port of 514, which by virtue of its binary representation was calculated correct (and probably thus the bug not earlier detected).
- bugfixes imported from earlier releases
- bugfix: named pipes did no longer work (they always got an open error)
this was a regression from the omfile rewrite in 4.5.0 - bugfix(testbench): sequence check was not always performed correctly, that could result in tests reporting success when they actually failed
- bugfix: named pipes did no longer work (they always got an open error)
- improved testbench: added tests for UDP forwarding and omudpspoof
- doc bugfix: omudpspoof had wrong config command names (“om” missing)
- bugfix [imported from 4.4.3]: $ActionExecOnlyOnceEveryInterval did not work.
- [inport v4] improved testbench, contains now tcp and gzip test cases
- [import v4] added a so-called “On Demand Debug” mode, in which debug output can be generated only after the process has started, but not right from the beginning. This is assumed to be useful for hard-to-find bugs. Also improved the doc on the debug system.
- bugfix: segfault on startup when -q or -Q option was given [imported from v3-stable]
ChangeLog for 4.5.6 (v4-beta)
Version 4.5.6 [v4-beta] (rgerhards), 2009-11-05
- bugfix: named pipes did no longer work (they always got an open error) this was a regression from the omfile rewrite in 4.5.0
- bugfix(minor): diag function returned wrong queue memeber count for the main queue if an active DA queue existed. This had no relevance to real deployments (assuming they are not running the debug/diagnostic module…), but sometimes caused grief and false alerts in the testbench.
- included some important fixes from v4-stable:
- bugfix: invalid handling of zero-sized messages
- bugfix: zero-sized UDP messages are no longer processed
- bugfix: random data could be appended to message
- bugfix: reverse lookup reduction logic in imudp do DNS queries too often
- bugfix(testbench): testcase did not properly wait for rsyslod shutdown thus some unpredictable behavior and a false negative test result could occur. [BACKPORTED from v5]
- bugfix(testbench): sequence check was not always performed correctly, that could result in tests reporting success when they actually failed
ChangeLog for 5.3.4 (devel)
Version 5.3.4 [DEVEL] (rgerhards), 2009-11-04
- added the ability to create custom message parsers
- added $RulesetParser config directive that permits to bind specific parsers to specific rulesets
- added omruleset output module, which provides great flexibility in action processing. THIS IS A VERY IMPORTANT ADDITION, see its doc for why.
- added the capability to have ruleset-specific main message queues
This offers considerable additional flexibility AND superior performance (in cases where multiple inputs now can avoid lock contention) - bugfix: correct default for escape (‘#’) character restored
This was accidently changed to ‘\\’, thanks to David Lang for reporting - bugfix(testbench): testcase did not properly wait for rsyslogd shutdown thus some unpredictable behavior and a false negative test result could occur.
ChangeLog for 5.2.0 (v5-stable)
Version 5.2.0 [v5-stable] (rgerhards), 2009-11-02
This is a re-release of version 5.1.6 as stable after we did not get any bug reports during the whole beta phase. Still, this first v5-stable may not be as stable as one hopes for, I am not sure if we did not get bug reports just because nobody tried it. Anyhow, we need to go forward and so we have the initial v5-stable.
ChangeLog for 5.3.3 (devel)
Version 5.3.3 [DEVEL] (rgerhards), 2009-10-27
- simplified and thus speeded up the queue engine, also fixed some potential race conditions (in very unusual shutdown conditions) along the way. The threading model has seriously changes, so there may be some regressions.
- enhanced test environment (inlcuding testbench): support for enhancing probability of memory addressing failure by using non-NULL default value for malloced memory (optional, only if requested by configure option). This helps to track down some otherwise undetected issues within the testbench.
- bugfix: potential abort if inputname property was not set primarily a problem of imdiag
- bugfix: message processing states were not set correctly in all cases however, this had no negative effect, as the message processing state was not evaluated when a batch was deleted, and that was the only case where the state could be wrong.
ChangeLog for 5.3.2 (devel)
Version 5.3.2 [DEVEL] (rgerhards), 2009-10-21
- enhanced omfile to support transactional interface. This will increase performance in many cases.
- added multi-ruleset support to imudp
- re-enabled input thread termination handling that does avoid thread cancellation where possible. This provides a more reliable mode of rsyslogd termination (canceling threads my result in not properly freed resouces and potential later hangs, even though we perform proper cancel handling in our code). This is part of an effort to reduce thread cancellation as much as possible in rsyslog.
NOTE: the code previously written code for this functionality had a subtle race condition. The new code solves that. - enhanced immark to support non-cancel input module termination
- improved imudp so that epoll can be used in more environments, fixed potential compile time problem if EPOLL_CLOEXEC is not available.
- some cleanup/slight improvement:
- changed imuxsock to no longer use deprecated submitAndParseMsg() IF
- changed submitAndParseMsg() interface to be a wrapper around the new way of message creation/submission. This enables older plugins to be used together with the new interface. The removal also enables us to drop a lot of duplicate code, reducing complexity and increasing maintainability.
- bugfix: segfault when starting up with an invalid .qi file for a disk queue
Failed for both pure disk as well as DA queues. Now, we emit an error message and disable disk queueing facility. - bugfix: potential segfault on messages with empty MSG part. This was a recently introduced regression.
- bugfix: debug string larger than 1K were improperly displayed. Max size is now 32K, and if a string is even longer it is meaningfully truncated.