summaryrefslogtreecommitdiffstats
path: root/runtime/wti.c
Commit message (Collapse)AuthorAgeFilesLines
...
| * removed uniprocessor optimizationRainer Gerhards2009-06-191-5/+0
| | | | | | | | | | | | ... as it was not even optimal on uniprocessors any longer ;) I keep the config directive in, maybe we can utilize it again at some later point in time (questionable).
| * fixed a small memory leak...Rainer Gerhards2009-06-101-2/+1
| | | | | | | | and another problem, both introduced today. Also did some general cleanup.
* | some more fixes for queue engineRainer Gerhards2009-05-281-1/+1
| | | | | | | | The enhanced testbench now runs without failures, again
* | fixing an issue during DA mode queue shutdownRainer Gerhards2009-05-281-0/+1
| | | | | | | | | | also changed DA queue mode in that the regular workers now run concurrently.
* | preserving current changesRainer Gerhards2009-05-281-11/+2
| | | | | | | | | | | | ... 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.
* | interim commit: working on failure casesRainer Gerhards2009-05-271-7/+23
| | | | | | | | slightly improved situation, would like to save it before carrying on
* | solved design issue with queue terminationRainer Gerhards2009-05-261-3/+10
| | | | | | | | | | | | | | | | | | | | | | ... 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.
* | free last processed message in all casesRainer Gerhards2009-05-201-28/+48
| | | | | | | | | | | | | | | | | | 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.
* | yield() no longer needed on uniproc thanks to new algorithmsRainer Gerhards2009-05-201-23/+4
| |
* | some cleanupRainer Gerhards2009-05-191-1/+0
| |
* | one astrisk too much - and we have a segfault... - fixed ;)Rainer Gerhards2009-05-121-1/+1
| |
* | moving to a cleaner implementation of batchesRainer Gerhards2009-05-121-6/+4
| | | | | | | | ... now that we know what we need from a theoretical POV.
* | fixed abort condition in DA modeRainer Gerhards2009-04-231-1/+0
| |
* | fixing a small (newly-introduced) memory leakRainer Gerhards2009-04-231-5/+3
| | | | | | | | | | ... plus simplifying free() calls after agreement on mailing list that we no longer need to check if the pointer is non-NULL
* | added $MainMsgQueueDequeueBatchSize and $ActionQueueDequeueBatchSize ↵Rainer Gerhards2009-04-231-3/+3
| | | | | | | | configuration directives
* | first attempt at dequeueing multiple batches inside the queueRainer Gerhards2009-04-221-3/+14
|/ | | | | | ... 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.
* Merge branch 'dapatch'Rainer Gerhards2009-03-251-3/+7
|\
| * bugfix: potential abort with DA queue after high watermark is reachedRainer Gerhards2009-03-251-3/+7
| | | | | | | | | | | | There exists a race condition that can lead to a segfault. Thanks go to vbernetr, who performed the analysis and provided patch, which I only tweaked a very little bit.
* | integrated various patches for solarisRainer Gerhards2009-03-051-0/+5
| | | | | | | | | | | | | | | | | | Unfortunatley, I do not have the full list of contributors available. The patch set was compiled by Ben Taylor, and I made some further changes to adopt it to the news rsyslog branch. Others provided much of the base work, but I can not find the names of the original authors. If you happen to be one of them, please let me know so that I can give proper credits.
* | added a setting "$OptimizeForUniprocessor"Rainer Gerhards2008-10-221-1/+14
| | | | | | | | | | | | ...to enable users to turn off pthread_yield calls which are counter-productive on multiprocessor machines (but have been shown to be useful on uniprocessors)
* | reordered imudp processing.Rainer Gerhards2008-10-081-3/+3
| | | | | | | | | | | | Message parsing is now done as part of main message queue worker processing (was part of the input thread) This should also improve performance, as potentially more work is done in parallel.
* | improved threadingRainer Gerhards2008-09-301-5/+4
|/ | | | | | | | - changed sequence when awakening thread - removed no longer needed condition variable - EXPERIMENTALLY added mutex guarding to hostname lookups this is to be removed if it does not have any verifyable useful effect
* reduced number of compile warnings in -pedantic gcc modeRainer Gerhards2008-06-271-1/+1
|
* disabled compile warnings caused by third-party librariesRainer Gerhards2008-06-231-0/+2
|
* completed better modularity of runtimeRainer Gerhards2008-04-171-1/+0
| | | | | | | | | | - added the ability to specify an error log function for the runtime - removed dependency of core runtime on dirty.h Note that it is "better" modularity, not perfect. There is still work to do, but I think we can for the time being proceed with other things.
* some more cleanupRainer Gerhards2008-04-161-1/+1
| | | | | reduced dependencies, moved non-runtime files to its own directory except for some whom's status is unclear
* moved runtime files into their own directoryRainer Gerhards2008-04-161-0/+480