376 Commits

Author SHA1 Message Date
Rainer Gerhards
774f7b7986 refactor: remove no longer needed elements from batch_t 2013-11-04 18:53:13 +01:00
Rainer Gerhards
094ae94c86 remove no longer needed vars from batch structure 2013-11-03 10:43:44 +01:00
Rainer Gerhards
26b5341c2e milestone: now shuffeling wti ptr correctly down to action handler
except if main queue is in direct mode -- this need smore work
and thinking (probably via pthreads state variables, but let's see later)
2013-10-27 10:42:49 +01:00
Rainer Gerhards
1f59e66eef milestone: calling sequence changed so that wti is passed to many functions 2013-10-26 17:56:04 +02:00
Rainer Gerhards
b7dc779ba9 change main/ruleset queue defaults to be more enterprise-like
new defaults are queue.size 100,000 max workers 2, worker
activation after 40,000 msgs are queued, batch size 256. These settings
are much more useful for enterprises and will not hurt low-end systems
that much. This is part of our re-focus on enterprise needs.
2013-10-04 12:27:50 +02:00
Rainer Gerhards
fbc737d650 experimental: make impstats return delta values where possible 2013-09-07 15:58:09 +02:00
Rainer Gerhards
3885eb7a35 Merge branch 'v7-stable' 2013-07-19 16:14:27 +02:00
Rainer Gerhards
743680f78f debug: improve queue startup debug output 2013-07-19 16:14:07 +02:00
Rainer Gerhards
0f7622dd1f Merge branch 'v7-stable' 2013-07-17 19:32:11 +02:00
Rainer Gerhards
62090c416c regression fix: %d used for long long types in debug output
regression from recent DA queue bug fix set of patches; not present
in any released code.
2013-07-17 13:34:23 +02:00
Rainer Gerhards
cd2b917fef cosmetic bugfix: file name buffer was not freed on disk queue destruction
This was an extremely small one-time per run memleak, so nothing of
concern. However, it bugs under valgrind and similar memory debuggers.
2013-07-17 13:33:13 +02:00
Rainer Gerhards
1ea14f211b Merge branch 'v7-stable' 2013-07-16 10:56:04 +02:00
Rainer Gerhards
1c6449022c add note on a potential future troublespot 2013-07-16 10:55:39 +02:00
d302fb7571 Fixed return state handling in ConsumerDA
The queue full loop fix added a problem to the queue when
rsyslog was shutdown. This problem has been corrected now.

Conflicts:

	runtime/queue.c
2013-07-16 10:51:12 +02:00
Rainer Gerhards
bb4a8c26f1 Merge branch 'v7-stable' 2013-07-15 15:27:18 +02:00
495ae87520 bugfix: 100% CPU utilization when DA queue became full 2013-07-15 08:17:08 +02:00
Rainer Gerhards
fae2b97256 Merge branch 'v7-stable' 2013-07-13 16:05:53 +02:00
Rainer Gerhards
bcb090ab8a nit: use correct function names in new debug instrumentation 2013-07-13 16:04:12 +02:00
fd63b32409 Changed and extended debug output in queue/action classes for further analysis 2013-07-13 15:58:01 +02:00
Rainer Gerhards
a336dc690f cleanup 2013-05-16 10:01:02 +02:00
Rainer Gerhards
940bdc4c41 enable ability to read existing encrypted queue file 2013-05-15 18:49:07 +02:00
Rainer Gerhards
bad876b265 clean up crypto provider state files on queue file close 2013-05-15 12:08:54 +02:00
Rainer Gerhards
0d000a8b10 basic queue file encryption 2013-05-13 08:04:13 +02:00
Rainer Gerhards
415b26d5a1 enable shuffling of crypto parameters down through queue definition 2013-05-10 15:39:42 +02:00
Rainer Gerhards
0817fc95a8 bugfix: segfault on startup if a disk queue was configure without file name
Now this triggers an error message and the queue is changed to
linkedList type.
2013-05-08 09:40:20 +02:00
Rainer Gerhards
d0cefac7a7 cleanup 2013-04-24 11:09:37 +02:00
Rainer Gerhards
acd140f653 Merge branch 'c7' into tmp
Conflicts:
	ChangeLog
	configure.ac
	runtime/queue.c
2013-04-09 11:29:39 +02:00
Rainer Gerhards
86e34c6985 make imrelp properly terminate on system shutdown
it didn't do so if it was inside a retry loop
2013-04-09 10:54:04 +02:00
Rainer Gerhards
d9cde56eb8 add output module interface to facilitate cooperative shutdown
... in more complex cases (where receiving SIGTTIN is not sufficient).
See also:
http://blog.gerhards.net/2013/04/rsyslog-output-plugin-wrangling.html
2013-04-08 17:55:52 +02:00
Rainer Gerhards
2bf626dce2 Merge branch 'v6-stable' into tmp 2013-03-20 09:43:22 +01:00
Rainer Gerhards
cdf8b7d909 Merge branch 'v6-stable' 2013-03-12 11:33:28 +01:00
Rainer Gerhards
07e296703b Merge branch 'v5-stable' into v6-stable
Conflicts:
	action.c
	queue.c (some code moved from action.c --> queue.c)
2013-03-12 11:32:53 +01:00
Rainer Gerhards
9273b4bb4d optimize memory layout for much better cache hits
Moave element status out of batch_obj_t because we
get a *much* better cache hit ratio this way.
Note that this is really a HUGE saving, even if it
doesn't look so (both profiler data as well as
practical tests indicate that!).
2013-01-15 15:01:16 +01:00
Rainer Gerhards
42d1d27a01 Merge branch 'v7-stable-newmsglock' into master-newmsglock
Conflicts:
	runtime/msg.c
	runtime/queue.c
	tools/syslogd.c
2012-12-06 17:27:37 +01:00
Rainer Gerhards
62f6a7d7b4 fix missing functionality: ruleset(){} could not specify ruleset queue
The "queue.xxx" parameter set was not supported, and legacy ruleset
config statements did not work (by intention). The fix introduces the
"queue.xxx" parameter set. It has some regression potential, but only
for the new functionality. Note that using that interface it is possible
to specify duplicate queue file names, which will cause trouble. This
will be solved in v7.3, because there is a too-large regression
potential for the v7.2 stable branch.
2012-11-30 17:09:28 +01:00
Rainer Gerhards
7182c6def3 silence compiler warnings
the changes do not affect actual code execution, just keep the
compile log clean.
2012-11-30 12:57:26 +01:00
Rainer Gerhards
c563914d6f queue: file delete stream does no longer do real io
This stream is primarily used for state tracking, and has been
modified to do just that. This results in considerable less io
being done and the respective speedup.
2012-11-19 16:46:41 +01:00
Rainer Gerhards
05eb0a5052 silence compiler warnings & some cleanup 2012-11-14 12:16:24 +01:00
Rainer Gerhards
94f6326237 queue: reduce CPU load for deserializing message properties
Linear runtime due to message order. Was quadratic before. However, not
a big overall improvement.
2012-11-06 17:48:35 +01:00
Rainer Gerhards
704bb9fc21 queue: mini-improvement in deserializer (stage work) 2012-11-05 17:04:30 +01:00
Rainer Gerhards
9ab1503180 queue: handle unknown queue type in debug output
note: can not happen, but...
2012-11-03 17:18:11 +01:00
Rainer Gerhards
5a64366922 queue: remove time() calls from msg deserialization 2012-11-03 17:07:22 +01:00
Rainer Gerhards
c28d92259b queue: use specific deserializer for msg object
spares lengthy table lookups
2012-11-03 13:27:27 +01:00
Rainer Gerhards
f88d4f76f6 queue: remove unnecessary (obj_t*) redirection from msg ptrs 2012-11-03 12:51:19 +01:00
Rainer Gerhards
c55e0a5a06 queue: change generic msg ptr (pUsr) to be of msg_t type 2012-11-03 12:32:50 +01:00
Rainer Gerhards
feddb2cc8f queue: change gerenic queue pUsr ptr to be action_t
this was always action_t, but the initial design was more generic. We are
making it specific now in order to gain better performance (after all, we
did not need the generic engine in the past 8 years...)
2012-11-03 11:40:13 +01:00
Rainer Gerhards
40fffde2b6 generate disk .qi file once at queue construction
... instead of each time a file write happens. In some situations
(very frequent sync), this can probably be a big performane win.
2012-11-02 18:55:53 +01:00
Rainer Gerhards
de2fd07836 cosmetic: get rid of compiler warning on currently unused debug code 2012-10-19 08:45:04 +02:00
Rainer Gerhards
7dea4b3f32 fix optimizer-introduced memleak in action destruction 2012-09-25 13:48:42 +02:00
Rainer Gerhards
5227871598 bugfix: debug output indicated improper queue type 2012-09-19 15:12:45 +02:00