summaryrefslogtreecommitdiffstats
path: root/runtime
Commit message (Collapse)AuthorAgeFilesLines
* action processing optimized for queue shutdownRainer Gerhards2009-10-271-1/+1
|
* removed no longer needed flag variableRainer Gerhards2009-10-272-11/+6
|
* fix compile bug with last commitRainer Gerhards2009-10-271-1/+0
|
* some cleanupRainer Gerhards2009-10-274-83/+4
|
* fixed race condition during queue shutdownRainer Gerhards2009-10-272-12/+19
| | | | | | | | Problems could happen if the queue worker needed to be cancelled and this cancellation happened inside queue-code (including wtp, wti). We have now solved this by disabling cancellation while in this code and only enabling it when working inside the user consumer. This exactly matches the use case for which cancellation may be needed.
* shuffled cancelability state to different spotRainer Gerhards2009-10-261-3/+8
| | | | ... but in anticipation of changing cancel processing altogether...
* addressed some race issues during queue shutdownRainer Gerhards2009-10-263-22/+62
| | | | | | | these occured in very unusual scenarios where we had a DA-queue running in parallel and very lengthy actions. Then, in some situations, the shutdown could hang. The code needs some addition lab time, but is believed to be much better than any previous version.
* Merge branch 'master' into queuePartialDeleteBatchesRainer Gerhards2009-10-262-2/+6
|\
| * bugfix: potential abort if inputname property was not setRainer Gerhards2009-10-262-2/+6
| | | | | | | | | | | | primarily a problem of imdiag. Also added some fix for a potential situation during cancel processing. That one is not considered vital and may later be removed again.
* | implemented solution for cancel at shutdown/unprocessed entriesRainer Gerhards2009-10-262-36/+24
| | | | | | | | | | We do now enqueue those objects that are left unprocessed. This enables us to delete the full batch, what is exactly what we need to do.
* | Begun to work on partial batch deletes...Rainer Gerhards2009-10-221-9/+21
|/ | | | | | | | ... but this brings a lot of problems with it. The issue is that we still have a sequential store and we do not know how we could delete the one entry right in the middle of processing. I keep this branch if we intend to move on with it - but for now I look into a different solution...
* enhanced test environment (including testbench)Rainer Gerhards2009-10-2216-62/+84
| | | | | | | | support for enhancing probability of memory addressing failure by using non-NULL default value for malloced memory (optional, only if requested by configure option). This helps to track down some otherwise undetected issues within the testbench and is expected to be very useful in the future.
* Merge branch 'newqueue'Rainer Gerhards2009-10-217-465/+129
|\ | | | | | | | | | | Conflicts: ChangeLog runtime/queue.c
| * bugfix: message processing states were not set correctly in all casesRainer Gerhards2009-10-193-19/+6
| | | | | | | | | | | | however, this had no negative effect, as the message processing state was not evaluated when a batch was deleted, and that was the only case where the state could be wrong.
| * Merge branch 'master' into newqueueRainer Gerhards2009-10-163-9/+20
| |\ | | | | | | | | | | | | Conflicts: ChangeLog
| * | new queue engine - initial commit (probably not 100% working!)Rainer Gerhards2009-10-145-481/+115
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | simplified and thus speeded up the queue engine, also fixed some potential race conditions (in very unusual shutdown conditions) along the way. The threading model has seriously changes, so there may be some regressions. NOTE: the code passed basic tests, but there is still more work and testing to be done. This commit should be treated with care.
| * | added some debug settings plus improved shutdown sequenceRainer Gerhards2009-10-134-18/+61
| | | | | | | | | | | | ... non-working version!
* | | bugfix: segfault when starting up with an invalid .qi file for a disk queueRainer Gerhards2009-10-201-5/+16
| | | | | | | | | | | | | | | Failed for both pure disk as well as DA queues. Now, we emit an error message and disable disk queueing facility.
* | | bugfix: first UDP listener was incorrectly assigned its rulesetRainer Gerhards2009-10-191-1/+2
| | | | | | | | | | | | | | | this was a regression of the recent imudp multi-ruleset enhancement bug was not in any released version
* | | Merge branch 'david-segfault'Rainer Gerhards2009-10-191-0/+1
|\ \ \
| * | | added new testcase; fixed bug in testdriverRainer Gerhards2009-10-191-0/+1
| | |/ | |/|
* / | cleanup: finally moved some config variables just to conf.cRainer Gerhards2009-10-192-11/+15
|/ /
* | ensure proper imudp shutdown even on a very busy systemRainer Gerhards2009-10-161-0/+1
| |
* | Merge branch 'david-master' into masterRainer Gerhards2009-10-162-9/+19
|\ \ | |/ |/| | | | | | | Conflicts: ChangeLog runtime/msg.c
| * bugfix: potential segfault on messages with empty MSG part.Rainer Gerhards2009-10-091-3/+14
| | | | | | | | This was a recently introduced regression.
| * bugfix in debug system and more instrumentation to find an issueRainer Gerhards2009-10-082-9/+19
| | | | | | | | | | bugfix: debug string larger than 1K were improperly displayed. Max size is now 32K, and if a string is even longer it is meaningful truncated.
* | added multi-ruleset support to imudpRainer Gerhards2009-10-131-6/+1
| | | | | | | | | | also bumped version number and corrected ChangeLog, where I merged some post 5.3.1 changes into the 5.3.1 section.
* | removed no longer needed msg_t property "bParseHOSTNAME"Rainer Gerhards2009-10-132-4/+1
| |
* | bugfix: potential segfault on messages with empty MSG part.Rainer Gerhards2009-10-091-3/+12
| | | | | | | | This was a recently introduced regression.
* | Merge branch 'v4-beta' into betaRainer Gerhards2009-10-081-1/+1
|\ \
| * \ Merge branch 'aaron' into v4-betaRainer Gerhards2009-10-081-1/+1
| |\ \
| | * | bugfix: debug string larger than 1K were improperly displayed.Rainer Gerhards2009-10-081-1/+1
| | | | | | | | | | | | | | | | Max size is now 32K.
* | | | bugfix and testbench improvementsRainer Gerhards2009-10-073-7/+33
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | - bugfix: solved potential (temporary) stall of messages when the queue was almost empty and few new data added (caused testbench to sometimes hang!) - fixed some race condition in testbench - added more elaborate diagnostics to parts of the testbench - solved a potential race inside the queue engine
* | | | bugfix and testbench improvementRainer Gerhards2009-10-071-2/+20
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | made shutdown more reliable by makeing sure that the main queue DA worker is only cancelled if this is actually unavoidable. Also moved down the deletion of rsyslogd's pid file to immediately before termination, so that absence of the file is a proper indication that rsyslogd has finished (in the past, e.g. the testbench accidently ran two intances as the pid file was deleted too early). Also some improvments to the testbench, namely to handle aborts more intelligently (but still not perfect).
* | | | bugfix: potential race condition when queue worker threads were terminatedRainer Gerhards2009-10-061-1/+10
| |_|/ |/| |
* | | Merge branch 'v4-beta' into betaRainer Gerhards2009-10-051-1/+1
|\| |
| * | Merge branch 'aaron' into v4-betaRainer Gerhards2009-10-051-1/+1
| |\|
| | * bugfix[minor]: CHKiRet improperly usedRainer Gerhards2009-10-021-1/+1
| | |
* | | Merge branch 'v4-beta' into betaRainer Gerhards2009-10-024-44/+100
|\| | | | | | | | | | | | | | | | | | | | | | | | | | Conflicts: ChangeLog configure.ac doc/manual.html runtime/rsyslog.h tcpsrv.c
| * | Merge branch 'aaron' into v4-betaRainer Gerhards2009-10-021-0/+1
| |\| | | | | | | | | | | | | Conflicts: runtime/rsyslog.h
| | * bumped version number, corrected error message code (minor nit)Rainer Gerhards2009-10-011-0/+1
| | |
| * | Merge branch 'v4-stable' into v4-beta & BUGFIXRainer Gerhards2009-10-014-41/+96
| |\ \ | | |/ | |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Conflicts: configure.ac doc/manual.html runtime/datetime.h runtime/parser.c runtime/rsyslog.h tools/syslogd.c v4-stable had a bug with RFC5424-formatted structured data, which showed was detected by the enhanced automatted testbench of v4-beta.
| | * bugfix: invalid handling of zero-sized messagesRainer Gerhards2009-09-291-2/+4
| | | | | | | | | | | | could lead to mis-addressing and potential memory corruption/segfault
| | * bugfix: random data could be appended to message, possibly causing segfaultsRainer Gerhards2009-09-244-42/+88
| | |
* | | Merge branch 'v4-beta' into betaRainer Gerhards2009-09-292-29/+60
|\| | | | | | | | | | | | | | | | | | | | Conflicts: ChangeLog configure.ac doc/manual.html
| * | minor cleanup & preparation for 4.5.4v4.5.4Rainer Gerhards2009-09-291-9/+0
| | |
| * | bugfix: this morning's race patch was incomplete, completing nowRainer Gerhards2009-09-241-6/+8
| | | | | | | | | | | | | | | | | | | | | | | | we needed to release ALL resources (including file handles!) only after the the async writer thread has terminated (else it may access them). In this case, we had a file handle leak, because the handle was sometimes only opened in the async writer, but the close was attempted before the writer even started (in some cases).
| * | (temporary?) removal of very conservative locks in stream.cRainer Gerhards2009-09-241-2/+2
| | | | | | | | | | | | | | | | | | ...after we seem to have identified the root cause of the segfault. I leave them commented out so that we can re-activate it if need arises (aka "get some practice drill first").
| * | bugfix: potential segfault in stream writer on destructionRainer Gerhards2009-09-241-5/+9
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Most severely affected omfile. The problem was that some buffers were freed before the asynchronous writer thread was shut down. So the writer thread accessed invalid data, which may even already be overwritten. Symptoms (with omfile) were segfaults, grabled data and files with random names placed around the file system (most prominently into the root directory). Special thanks to Aaron for helping to track this down.
| * | minor: increased buffer size to be safe in all casesRainer Gerhards2009-09-221-2/+2
| | | | | | | | | | | | | | | if the buffer was too small, we would see more API calls, but no failure, so this is no fix!