summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--ChangeLog18
-rw-r--r--configure.ac23
-rw-r--r--doc/lookup_tables.html4
-rw-r--r--plugins/mmrfc5424addhmac/mmrfc5424addhmac.c2
-rw-r--r--tools/syslogd.c5
5 files changed, 43 insertions, 9 deletions
diff --git a/ChangeLog b/ChangeLog
index bdeda7de..1bee9804 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -7,10 +7,13 @@ Version 8.1.2 [devel] 2013-11-??
* queue.workerThreadMinimumMessage set to queue.size / num workers
For queues with very low queue.maxSize (< 100), "emergency" defaults
will be used.
+- support for jemalloc added via --enable-jemalloc
+ Note that build system is experiemental at this stage.
- bugfix: disk queues created files in wrong working directory
if the $WorkDirectory was changed multiple times, all queues only
used the last value set.
- bugfix: legacy directive $ActionQueueWorkerThreads was not honored
+- bugfix: mmrfc5424addhmac: "key" parameter was not properly processed
---------------------------------------------------------------------------
Version 8.1.1 [devel] 2013-11-19
- bugfix: STOP/discard(~) was mostly NOT honored
@@ -52,7 +55,10 @@ Version 8.1.0 [devel] 2013-11-15
statement. Also, it can still be build without problems, the option must
just explicitely be given.
---------------------------------------------------------------------------
-Version 7.5.7 [v7-devel] 2013-11-??
+Version 7.5.8 [v7-devel] 2013-11-??
+- bugfix: mmrfc5424addhmac: "key" parameter was not properly processed
+---------------------------------------------------------------------------
+Version 7.5.7 [v7-devel] 2013-11-25
- queue defaults have changed
* high water mark is now dynamically 90% of queue size
* low water makr is now dynamically 70% of queue size
@@ -60,6 +66,11 @@ Version 7.5.7 [v7-devel] 2013-11-??
* queue.workerThreadMinimumMessage set to queue.size / num workers
For queues with very low queue.maxSize (< 100), "emergency" defaults
will be used.
+- worker thread pool handling has been improved
+ Among others, permits pool to actually shrink (was quite hard with
+ previous implementation. This will also improve performance and/or
+ lower system overhead on busy systems.
+ Thanks to Pavel Levshin for the enhancement.
- bugfix: mmpstrucdata generated inaccessible properties
- bugfix: RainerScript optimizer did not optimize PRI filters
things like "if $syslogfacility-text == "local3"" were not converted
@@ -80,11 +91,6 @@ Version 7.5.7 [v7-devel] 2013-11-??
is very unlikely to happen and the fix itself has some regression
potential (the fix looks very solid, but it addresses a core component).
Thanks to Pavel Levshin for the fix
-- worker thread pool handling has been improved
- Among others, permits pool to actually shrink (was quite hard with
- previous implementation. This will also improve performance and/or
- lower system overhead on busy systems.
- Thanks to Pavel Levshin for the enhancement.
- now emit warning message if om with msg passing mode uses action queue
These can modify the message, and this causes races.
- bugfix: $SystemLogUseSysTimeStamp/$SystemLogUsePIDFromSystem did not work
diff --git a/configure.ac b/configure.ac
index 12392ac1..c1abde98 100644
--- a/configure.ac
+++ b/configure.ac
@@ -379,6 +379,29 @@ if test "$enable_inet" = "yes"; then
AC_DEFINE(SYSLOG_INET, 1, [network support is integrated.])
fi
+# jemalloc
+AC_ARG_ENABLE(jemalloc,
+ [AS_HELP_STRING([--enable-jemalloc],[Enable jemalloc support @<:@default=no@:>@])],
+ [case "${enableval}" in
+ yes) enable_jemalloc="yes" ;;
+ no) enable_jemalloc="no" ;;
+ *) AC_MSG_ERROR(bad value ${enableval} for --enable-jemalloc) ;;
+ esac],
+ [enable_jemalloc="no"]
+)
+AM_CONDITIONAL(ENABLE_JEMALLOC, test x$enable_jemalloc = xyes)
+if test "$enable_jemalloc" = "yes"; then
+ AC_CHECK_LIB(
+ [jemalloc],
+ [malloc_stats_print],
+ [RT_LIBS="$RT_LIBS -ljemalloc"
+ AC_DEFINE(HAVE_JEMALLOC, 1, [jemalloc support is integrated.])
+ ],
+ [AC_MSG_FAILURE([jemalloc library is missing])],
+ []
+ )
+fi
+
#
# The following define determines whether the package adheres to the
diff --git a/doc/lookup_tables.html b/doc/lookup_tables.html
index b7fcff04..e1fcd08c 100644
--- a/doc/lookup_tables.html
+++ b/doc/lookup_tables.html
@@ -190,8 +190,8 @@ be sufficiently secured, e.g. via TLS mutual auth.
<h2>Implementation Details</h2>
<p>The lookup table functionality is implemented via highly efficient algorithms.
-The string lookup is based on a parse tree and has O(1) time complexity. The array
-lookup is also O(1). In case of sparseArray, we have O(log n).
+The string lookup has O(log n) time complexity. The array
+lookup is O(1). In case of sparseArray, we have O(log n).
<p>To preserve space and, more important, increase cache hit performance, equal
data values are only stored once, no matter how often a lookup index points to them.
<p>[<a href="rsyslog_conf.html">rsyslog.conf overview</a>]
diff --git a/plugins/mmrfc5424addhmac/mmrfc5424addhmac.c b/plugins/mmrfc5424addhmac/mmrfc5424addhmac.c
index a7aea9b4..959a8bad 100644
--- a/plugins/mmrfc5424addhmac/mmrfc5424addhmac.c
+++ b/plugins/mmrfc5424addhmac/mmrfc5424addhmac.c
@@ -163,7 +163,7 @@ CODESTARTnewActInst
for(i = 0 ; i < actpblk.nParams ; ++i) {
if(!pvals[i].bUsed)
continue;
- if(!strcmp(actpblk.descr[i].name, "replacementchar")) {
+ if(!strcmp(actpblk.descr[i].name, "key")) {
pData->key = (uchar*)es_str2cstr(pvals[i].val.d.estr, NULL);
pData->keylen = es_strlen(pvals[i].val.d.estr);
} else if(!strcmp(actpblk.descr[i].name, "hashfunction")) {
diff --git a/tools/syslogd.c b/tools/syslogd.c
index 052a9329..ab905d49 100644
--- a/tools/syslogd.c
+++ b/tools/syslogd.c
@@ -1328,6 +1328,11 @@ static void printVersion(void)
#else
printf("\t64bit Atomic operations supported:\tNo\n");
#endif
+#ifdef HAVE_JEMALLOC
+ printf("\tmemory allocator:\t\t\tjemalloc\n");
+#else
+ printf("\tmemory allocator:\t\t\tsystem default\n");
+#endif
#ifdef RTINST
printf("\tRuntime Instrumentation (slow code):\tYes\n");
#else