[syslog-ng] [Bug 175] syslog-ng doesnt perform fsync() with fsync option enabled on file destinations

bugzilla at bugzilla.balabit.com bugzilla at bugzilla.balabit.com
Sat May 12 14:26:38 CEST 2012


https://bugzilla.balabit.com/show_bug.cgi?id=175





--- Comment #4 from Gergely Nagy <algernon at balabit.hu>  2012-05-12 14:26:37 ---
(In reply to comment #0)
> I do have a question about the fsync option as well. Does this option tell syslog-ng to flush() after every write, or after all lines have been written (like
> from the flush_lines or flush_timeout() options)? If it flushes after every write, would it be possible to get an option to flush only once all the messages in
> the batch have been written?

With the patch Bazsi posted, fsync(yes) will trigger an fsync after every write, assuming a file() destination (tested & verified, I'll apply it to 3.3 git in
a couple of minutes).

However, as far as I see, writes are done in batches, whenever flush_lines() or flush_timeout() triggers a batch, so fsync(yes) will mean that syslog-ng will
fsync after each flush-lines() number of lines, as that is how often it does the write.


-- 
Configure bugmail: https://bugzilla.balabit.com/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are watching all bug changes.


More information about the syslog-ng mailing list