On Thu, 21 Apr 2016, Kane Kim wrote:
Thanks for great explanation, David, that really helped me to understand
this part. What I'm suggesting is essentially this (and please correct me
if I'm telling obviously stupid things):
1. Server tries to tell action1 to deliver messages (calling
EndTransaction) and has a loop here until it succeeds.
at some point you need to stop looping and give up for now and try again later.
Especially if rsyslog exits and restarts (with a disk queue), you will need to
process the entire batch again.
This is what I was saying when I said the retry logic is 'interesting' :-P
There is some balance between retrying at this point and giving up to
potentially let a different worker thread try. I've seen cases where the
receiver only allows X connections at once and the sender tries to use X+y
connections, so you have y threads that will never succeed, but they can't know
that. If they simply gave up and one of the X threads that is successfully
connected were to try, the messages would get through.
the dirt simple approach is to try once and fail the entire batch if it can't.
but that is probably not ideal.
2. Server tries to tell action2 to deliver messages (calling
EndTransaction) and has a loop here until it succeeds.
3. Queue is locked/marked delivered/unlocked.
As Rainer mentioned above that would lock only current queue where those
actions executed.
the queue is not locked for steps 1 and 2, only for step 0 (start batch) and
step 3 (mark batch as done either succeeded/failed)
David Lang
_______________________________________________
rsyslog mailing list
http://lists.adiscon.net/mailman/listinfo/rsyslog
http://www.rsyslog.com/professional-services/
What's up with rsyslog? Follow https://twitter.com/rgerhards
NOTE WELL: This is a PUBLIC mailing list, posts are ARCHIVED by a myriad of
sites beyond our control. PLEASE UNSUBSCRIBE and DO NOT POST if you DON'T LIKE
THAT.
_______________________________________________
rsyslog mailing list
http://lists.adiscon.net/mailman/listinfo/rsyslog
http://www.rsyslog.com/professional-services/
What's up with rsyslog? Follow https://twitter.com/rgerhards
NOTE WELL: This is a PUBLIC mailing list, posts are ARCHIVED by a myriad of
sites beyond our control. PLEASE UNSUBSCRIBE and DO NOT POST if you DON'T LIKE
THAT.