summaryrefslogtreecommitdiffstats
path: root/tests/pipe_noreader.sh
diff options
context:
space:
mode:
authorRainer Gerhards <rgerhards@adiscon.com>2010-04-26 15:19:13 +0200
committerRainer Gerhards <rgerhards@adiscon.com>2010-04-26 15:19:13 +0200
commiteec894fbc5eb263e6def1f2e35f9882967c95a88 (patch)
treeb6be4e3076f499e4c8023f88e4ddbfac55f60ea0 /tests/pipe_noreader.sh
parent270e455d6d9c6e7e580d6784435bf57ddc71bd85 (diff)
downloadrsyslog-eec894fbc5eb263e6def1f2e35f9882967c95a88.tar.gz
rsyslog-eec894fbc5eb263e6def1f2e35f9882967c95a88.tar.xz
rsyslog-eec894fbc5eb263e6def1f2e35f9882967c95a88.zip
bugfix(kind of): output plugin retry behaviour could cause engine to loop
The rsyslog engine did not guard itself against output modules that do not properly convey back the tryResume() behaviour. This then leads to what looks like an endless loop. I consider this to be a bug of the engine not only because it should be hardened against plugin misbehaviour, but also because plugins may not be totally able to avoid this situation (depending on the type of and processing done by the plugin).
Diffstat (limited to 'tests/pipe_noreader.sh')
-rwxr-xr-xtests/pipe_noreader.sh9
1 files changed, 8 insertions, 1 deletions
diff --git a/tests/pipe_noreader.sh b/tests/pipe_noreader.sh
index c80aaf3f..8dea0818 100755
--- a/tests/pipe_noreader.sh
+++ b/tests/pipe_noreader.sh
@@ -4,6 +4,12 @@
# as a permanent testcase. For some details, please see bug tracker
# http://bugzilla.adiscon.com/show_bug.cgi?id=186
#
+# IMPORTANT: we do NOT check any result message set. The whole point in
+# this test is to verify that we do NOT run into an eternal loop. As such,
+# the test is "PASS", if rsyslogd terminates. If it does not terminate, we
+# obviously do not cause "FAIL", but processing will hang, which should be
+# a good-enough indication of failure.
+#
# added 2010-04-26 by Rgerhards
# This file is part of the rsyslog project, released under GPLv3
echo ===============================================================================
@@ -18,5 +24,6 @@ source $srcdir/diag.sh startup pipe_noreader.conf
source $srcdir/diag.sh tcpflood -m1000 -d500
source $srcdir/diag.sh shutdown-when-empty # shut down rsyslogd when done processing messages
source $srcdir/diag.sh wait-shutdown # and wait for it to terminate
-source $srcdir/diag.sh seq-check 0 999
+# NO need to check seqno -- see header comment
+echo we did not loop, so the test is sucessfull
source $srcdir/diag.sh exit