Lock-Free Main Queue
From rsyslog wiki
There is some discussion in favor of providing a lock-free version of the main message queue algorithm. This is currently under consideration. This here shall serve as a container for all relevant information.
This discussion thread on rsyslog performance, while hard to read, provides useful information on why this work is considered important.
[edit] Implementation efforts
There currently exists an experimental implementation of a "nearly lock-free" algorithm in the git perf branch. It is waiting for review/testing from some users. This experimental code does abort once all messages have been drained from the queue. This is expected and will be addressed as the code evolves.
[edit] Useful Papers
- http://portal.acm.org/citation.cfm?id=1073970.1074013&coll=ACM&dl=ACM&CFID=5751428&CFTOKEN=63155945
- http://delivery.acm.org/10.1145/1080000/1074013/p253-moir.pdf?key1=1074013&key2=6316453221&coll=ACM&dl=ACM&CFID=5751428&CFTOKEN=63155945
- http://delivery.acm.org/10.1145/1020000/1011776/p50-fomitchev.pdf?key1=1011776&key2=6985453221&coll=GUIDE&dl=GUIDE&CFID=5751428&CFTOKEN=63155945
In general, the ACM digital library is a good place to get started. Note: access to the paper requires membership and/or payment.

