| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
| |
The enhanced testbench now runs without failures, again
|
|
|
|
|
| |
also changed DA queue mode in that the regular workers now run
concurrently.
|
|
|
|
|
|
| |
... in preparation for some larger changes - I need to apply some
serious design changes, as the current system does not play well
at all with ultra-reliable queues. Will do that in a totally new version.
|
|
|
|
| |
slightly improved situation, would like to save it before carrying on
|
|\
| |
| |
| |
| |
| |
| |
| |
| | |
Conflicts:
tests/Makefile.am
tests/diskqueue.sh
tests/imtcp-multiport.sh
tests/manytcp.sh
tests/memq-persist.sh
|
| |
| |
| |
| |
| |
| |
| |
| |
| | |
The imdiag module now can very effectively inject messages, which also
frees us from uncertainties of tcp reception and processing. All shell
script based tests have been modularized, what makes it far easier to
create new tests. Also, the test bench now executes more reliable and
much faster, because we can now rely on actual engine information where
we previously did just a dumb sleep.
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
... and also improved the test suite. There is a design issue in the
v3 queue engine that manifested to some serious problems with the new
processing mode. However, in v3 shutdown may take eternally if a queue
runs in DA mode, is configured to preserve data AND the action fails and
retries immediately. There is no cure available for v3, it would
require doing much of the work we have done on the new engine. The window
of exposure, as one might guess from the description, is very small. That
is probably the reason why we have not seen it in practice.
|
|\| |
|
| | |
|
| |
| |
| |
| |
| |
| |
| |
| |
| | |
imdiag/imtcp had a modload race condition (as imdiag is a testing aid,
this has no implications for production deployments). Also, I replaced
netcat by a custom program to talk to imdiag. This, for the first time ever,
is now a Java program. I plan to add some GUI troubleshooting tools and
thought it is a good idea to start doing things in Java that can simply
be done in that language.
|
|\|
| |
| |
| |
| |
| | |
Conflicts:
tests/Makefile.am
tests/diskqueue.sh
|
| |
| |
| |
| |
| | |
which enables to talk to the rsyslog core at runtime. The current
implementation is only a beginning, but can be expanded over time
|
| | |
|
| | |
|
|\|
| |
| |
| |
| |
| |
| | |
Conflicts:
runtime/rsyslog.h
tests/Makefile.am
tools/syslogd.c
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Well, actually this and a lot of related things. I improved the
testbench so that the new capabilities are automatically tested and
also did some general cleanup. The current multiple tcp listener
solution will probably receive some further cleanup, too, but looks
quite OK so far. I also reviewed the way tcpsrv et all work, in
preparation of using this code for imdiag. I need to document the
findings, especially as the code is rather complicated "thanks" to
the combination of plain tcp and gssapi transport modes.
|
| |
| |
| |
| |
| |
| |
| |
| |
| | |
so far, the last processed message was only freed when the next
one was processed. This has been changed now. More precisely, a
better algorithm has been selected for the queue worker process, which
also involves less overhead than the previous one. The fix for
"free last processed message" as then more or less a side-effect
(easy to do) of the new algorithm.
|
| | |
|
| | |
|
| | |
|
| |
| |
| |
| |
| |
| | |
... needed to split the old single counter into two. I wouldn't bet that
I made some mistakes while doing so, but at least some ad-hoc tests plus
the testbench do no longer indicate errors.
|
|\|
| |
| |
| |
| | |
Conflicts:
tests/Makefile.am
|
| |
| |
| |
| |
| |
| | |
include <string.h> for memcpy and strlen.
Signed-off-by: Rainer Gerhards <rgerhards@adiscon.com>
|
| |
| |
| |
| | |
... which is no longer needed thanks to the new queue design.
|
| |
| |
| |
| |
| |
| | |
... on the way to the ultra-reliable queue modes (redesign doc). This
version does not really work, but is a good commit point. Next comes
queue size calculation. DA mode does not yet work.
|
| |
| |
| |
| |
| |
| | |
So far, the consumer was responsible for destroying objects. However, this
does not work well with ultra-reliable queues. This is the first move to
support them.
|
| |
| |
| |
| | |
plus some cosmetic changes
|
| |
| |
| |
| | |
... passed initial tests, but of course more are needed
|
| | |
|
| |
| |
| |
| | |
... now that we know what we need from a theoretical POV.
|
|\|
| |
| |
| |
| | |
Conflicts:
runtime/rsyslog.h
|
| |
| |
| |
| |
| |
| |
| |
| | |
- added $GenerateConfigGraph configuration command which can be used
to generate nice-looking (and very informative) rsyslog configuration
graphs.
- added $ActionName configuration directive (currently only used for
graph generation, but may find other uses)
|
| |
| |
| |
| |
| | |
I am commiting it so that the code is visible, but will no begin
with the test environment.
|
| |
| |
| |
| | |
code is not complete, error cases are not handled.
|
| | |
|
| |
| |
| |
| |
| | |
... plus simplifying free() calls after agreement on mailing list
that we no longer need to check if the pointer is non-NULL
|
| |
| |
| |
| | |
configuration directives
|
|\| |
|
| |\
| | |
| | |
| | |
| | |
| | |
| | | |
Conflicts:
ChangeLog
configure.ac
doc/manual.html
|
| | |\
| | | |
| | | |
| | | |
| | | |
| | | | |
Conflicts:
ChangeLog
runtime/queue.c
|
| | | |
| | | |
| | | |
| | | |
| | | | |
... badly affecting performance for delayable inputs (but not causeing
any other issues)
|
| | |\|
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
Conflicts:
ChangeLog
tcpsrv.c
tcpsrv.h
Note: we have a slight inconsistency, as interface version v4 was already
used for tcpsrv in this branch. We accept this inconsistency.
|
| | | |\
| | | | |
| | | | |
| | | | |
| | | | | |
Conflicts:
ChangeLog
|
| | | | | |
|
| | | | | |
|
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | | |
... but the action consumer does not do anything really intelligent
with them. But the DA consumer is already done, as is the
main message queue consumer.
|
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | | |
... but this code has serious problems when terminating the queue, also
it is far from being optimal. I will commit a series of patches (hopefully)
as I am on the path to the final implementation.
|
|\| | | | |
|
| | | | |
| | | | |
| | | | |
| | | | |
| | | | | |
... mostly removal of compile-time warnings (thanks to Michael
Biebl for suggesting to look after that)
|
|/ / / / |
|