syslog-ng 3.3.0beta2 has been released
------------------------------------------------------------------------------ PACKAGE : syslog-ng VERSION : 3.3.0beta2 SUMMARY : new stable release DATE : Aug 15, 2011 ------------------------------------------------------------------------------ DESCRIPTION: A new version of syslog-ng Open Source Edition (3.3.0beta2) has been released. CHANGES: 3.3.0beta2 Fri, 12 Aug 2011 09:00:17 +0200 Highlights ========== This release has started using the officially assigned port numbers for RFC5424 based log transports. syslog-ng will properly use the old defaults if the configuration @version indicates an old config. This release contains all identified bug fixes published by the BalaBit syslog-ng team in their syslog-ng PE 4.1 release, additional features will be integrated into syslog-ng 3.4 as 3.3 is already feature-frozen. See more details on the list of bugs fixed in the "bugfixes" section below. This release got a "beta" tag instead of a "release-candidate" because of the level of public testing it has received. However all currently known bugs are believed to be fixed and this should be much better than beta1 was. Bugfixes: ========= * Fixed a memory leak in macro based destination files. * Fixed the "dropped" and "stored" counters for the SQL destination, which were swapped previously. * Fixed file sources to properly start the source file from the beginning when restoring the persistent state failed. * Fixed BSD timestamp parsing, that caused an extra syslog header to be added to messages which had a single digit day-of-the-month (e.g. the first ten days for every month). * Fixed a possible crasher at exit, caused by the destinations being flushed and the associated sources already cleaned up. * Fixed a destination specific memory leak, which caused some hundred bytes to be leaked when the configuration was reloaded. * Set O_CLOEXEC for child program pipes, in order to avoid inheriting those to other children. * Allow RFC5424 structured data blocks to have no parameters (e.g. "[foo]", which only has an SDID and no SDPARAM). * Fixed the value of the $PRI macro which expanded to an empty string if the priority was 0 (= kern.emerg) * Fixed a race conditions in template compilation and expansion, that could cause segmentation faults and other nastiness. * Fixed a race condition in macro based file destinations, which caused crashes when multiple sources wrote into the same file, when the filename expanded to the same name from the multiple connections. (e.g. using $PROGRAM in the filename and receiving messages from different hosts running the same programs). * Fixed a possible segmentation fault in certificate validation, when the peer certificate contains an X.509 certificate purpose extension. * Try to load modules with the .a extension on AIX. * Fixed a possible crash in the socket source with optional(yes). * Made stats counters and their registration thread safe, which either caused crashes if stats_level() > 1 or miscalculated values due to parallel threads accessing the same counters. * Fixed a possible crash for unknown or mistyped source flags. * Fixed an fd and memory leak for opened destination connections. * Fixed possible crashes in SIGHUP handling in case syslog-ng is busy processing messages. * Fixed a failed assertion in persistent-state handling, triggered when multiple file sources are busy processing messages and recording their current file position. * Fixed SCL block expansion, when passing the empty value for a parameter. * The final flush that happens right before syslog-ng exits honoured the throttle() value. Since this is an attempt to squeeze out everything we have to the destination, it's best to ignore throttle in this case. * Fixed a possible use-after-free and other crash causing problems in file macro based destinations. * Fixed a massive memory leak of all processed messages, which were triggered by a change past v3.3.0beta1, but was found in a git snapshot. * Fixed keep-alive(yes) behaviour for destination drivers. * Messages generated by the db-parser() will be marked as local messages. * Implemented locking callbacks for OpenSSL, without which enabling SSL and threading mode almost guaranteed a crash in case multiple connections were running SSL. * Fixed an issue with the SQL destination, which can cause stalls in message processing. Build changes: ============== * Added --with-module-path configure option that specifies the default search path for modules. The help for the older --with-module-dir option was clarified, it indicates where syslog-ng Makefiles install modules. * The configure script automatically adds -pthread to the CC command line. Hopefully this is indeed supported on all platforms (worked on the ones I've tried), and avoids having to play dirty tricks with macros like _REENTRANT and _THREAD_SAFE. * Link unit test programs against -livykis in case we're using a system-installed ivykis, rather than our private copy. * Fixed compile issues on Solaris. * Updated to a newer libmongo-client (v0.1.3) * Updated to a newer ivykis version (v0.19 with syslog-ng specific patches) Performance improvements: ========================= * Use the GSlice allocator for objects allocated in the fast path. * Avoid another use of sprintf in the LogWriter fastpath. * Use per-thread caches for time related functions and the DNS cache. * Use the string representation of IP addresses in the DNS cache, as inet_ntop() performs much worse than the cache. Other changes: ============== * Functional tests: properly detect the presence of sqlite to do the sql() testing. * The minimum permissible value for the log-iw-size was changed to 100 from 10, as the per-connection window calculation has changed. Earlier all connections shared the same window, starting with 3.3, the window is distributed evenly to all connections, to avoid starving (e.g. one connection starves the rest by using up the window space) and to avoid thread synchronization in the message processing fast path. * Ported per-facility, per-severity, per-program and per-host counters from the PE version. * Other systemd unit files. Credits: ======== syslog-ng is developed as a community project, and as such it relies on volunteers to do the work necessarily to produce syslog-ng. Reporting bugs, testing changes, writing code or simply providing feedback are all important contributions, so please if you are a user of syslog-ng, contribute. These people have helped in this release: * Dave Reisner (ArchLinux) * Nix (esperi.org.uk) * Hendrik Visage * Viacheslav Biriukov * Andras Mitzki (BalaBit) * Attila Nagy (BalaBit) * Gyorgy Fischhof (BalaBit) * Viktor Juhasz (BalaBit) * Balazs Scheidler (BalaBit) * Peter Czanik (BalaBit) * Gergely Nagy (BalaBit) * Peter Gyorko (BalaBit) * Tamas Pal (BalaBit) * Zoltan Pallagi (BalaBit) * Robert Fekete (BalaBit) DOWNLOAD: You can download the source or binary packages from: http://www.balabit.com/network-security/syslog-ng/opensource-logging-system/... The documentation of the syslog-ng Open Source Edition is available in The syslog-ng Open Source Edition Administrator's Guide at http://www.balabit.com/support/documentation/
devel@balabit.hu writes:
A new version of syslog-ng Open Source Edition (3.3.0beta2) has been released.
There's a minor issue with the git repo: git://git.balabit.hu/bazsi/libmongo-client.git was probably not pushed, because git submodule update --init in a fresh checkout fails with this: fatal: reference is not a tree: 4e98171c63001d3fd80c83ce219a5a3a3d482764 Unable to checkout '4e98171c63001d3fd80c83ce219a5a3a3d482764' in submodule path 'modules/afmongodb/libmongo-client' The head of said tree appears to be 61af67978c520885bcff39dfd673622e162f161e, which is about two weeks old. -- |8]
Hi, Done, and sorry for the confusion. On Tue, 2011-08-16 at 11:48 +0200, Gergely Nagy wrote:
devel@balabit.hu writes:
A new version of syslog-ng Open Source Edition (3.3.0beta2) has been released.
There's a minor issue with the git repo: git://git.balabit.hu/bazsi/libmongo-client.git was probably not pushed, because git submodule update --init in a fresh checkout fails with this:
fatal: reference is not a tree: 4e98171c63001d3fd80c83ce219a5a3a3d482764 Unable to checkout '4e98171c63001d3fd80c83ce219a5a3a3d482764' in submodule path 'modules/afmongodb/libmongo-client'
The head of said tree appears to be 61af67978c520885bcff39dfd673622e162f161e, which is about two weeks old.
-- Bazsi
participants (3)
-
Balazs Scheidler
-
devel@balabit.hu
-
Gergely Nagy