summaryrefslogtreecommitdiffstats
path: root/runtime/queue.c
diff options
context:
space:
mode:
authorRainer Gerhards <rgerhards@adiscon.com>2013-11-05 18:22:45 +0100
committerRainer Gerhards <rgerhards@adiscon.com>2013-11-05 18:22:45 +0100
commit80a4feb542e15b2fe100f88690000789eab562bb (patch)
tree064ddd05efea786c32c3c80c6749eb90547feb22 /runtime/queue.c
parent9052857047f0cb67ef7b2fe1519120bf37ba2648 (diff)
parentf45297ed9b0687e9b5148b58d627678414121370 (diff)
downloadrsyslog-80a4feb542e15b2fe100f88690000789eab562bb.tar.gz
rsyslog-80a4feb542e15b2fe100f88690000789eab562bb.tar.bz2
rsyslog-80a4feb542e15b2fe100f88690000789eab562bb.zip
Merge branch 'master' into master-ruleeng
Diffstat (limited to 'runtime/queue.c')
-rw-r--r--runtime/queue.c20
1 files changed, 14 insertions, 6 deletions
diff --git a/runtime/queue.c b/runtime/queue.c
index 968c016e..e0f4481f 100644
--- a/runtime/queue.c
+++ b/runtime/queue.c
@@ -2106,16 +2106,24 @@ qqueueStart(qqueue_t *pThis) /* this is the ConstructionFinalizer */
break;
}
- if(pThis->iFullDlyMrk == -1)
+ if(pThis->iMaxQueueSize < 100) {
+ errmsg.LogError(0, RS_RET_OK_WARN, "Note: queue.size=\"%d\" is very "
+ "low and can lead to unpredictable results. See also "
+ "http://www.rsyslog.com/lower-bound-for-queue-sizes/",
+ pThis->iMaxQueueSize);
+ }
+
+ /* we need to do a quick check if our water marks are set plausible. If not,
+ * we correct the most important shortcomings.
+ */
+ if(pThis->iFullDlyMrk == -1 || pThis->iFullDlyMrk > pThis->iMaxQueueSize)
pThis->iFullDlyMrk = pThis->iMaxQueueSize
- (pThis->iMaxQueueSize / 100) * 3; /* default 97% */
- if(pThis->iLightDlyMrk == -1)
+ if(pThis->iLightDlyMrk == -1 || pThis->iLightDlyMrk > pThis->iMaxQueueSize)
pThis->iLightDlyMrk = pThis->iMaxQueueSize
- (pThis->iMaxQueueSize / 100) * 30; /* default 70% */
-
- /* we need to do a quick check if our water marks are set plausible. If not,
- * we correct the most important shortcomings. TODO: do that!!!! -- rgerhards, 2008-03-14
- */
+ if(pThis->iDeqBatchSize > pThis->iMaxQueueSize)
+ pThis->iDeqBatchSize = pThis->iMaxQueueSize;
/* finalize some initializations that could not yet be done because it is
* influenced by properties which might have been set after queueConstruct ()