diff options
author | Rainer Gerhards <rgerhards@adiscon.com> | 2009-07-08 15:23:25 +0200 |
---|---|---|
committer | Rainer Gerhards <rgerhards@adiscon.com> | 2009-07-08 15:23:25 +0200 |
commit | cf906392c3039ffa2526316b44ff28bd1d899061 (patch) | |
tree | 09c83a8866c917207b7d7130de1c88590c5f2b64 /tools/omfile.c | |
parent | 8e4ad77e54c9d9272cef41f71d94ae277965711e (diff) | |
parent | 5221a1e42e16c8c39b48a4a1a18ee6322c38cd17 (diff) | |
download | rsyslog-cf906392c3039ffa2526316b44ff28bd1d899061.tar.gz rsyslog-cf906392c3039ffa2526316b44ff28bd1d899061.tar.bz2 rsyslog-cf906392c3039ffa2526316b44ff28bd1d899061.zip |
Merge branch 'v4-devel'
Conflicts:
runtime/debug.h
runtime/stream.c
Diffstat (limited to 'tools/omfile.c')
-rw-r--r-- | tools/omfile.c | 7 |
1 files changed, 6 insertions, 1 deletions
diff --git a/tools/omfile.c b/tools/omfile.c index 82944a96..bb12b4b6 100644 --- a/tools/omfile.c +++ b/tools/omfile.c @@ -401,12 +401,17 @@ prepareFile(instanceData *pData, uchar *newFileName) CHKiRet(strm.SetDir(pData->pStrm, szDirName, ustrlen(szDirName))); CHKiRet(strm.SetiZipLevel(pData->pStrm, pData->iZipLevel)); CHKiRet(strm.SetsIOBufSize(pData->pStrm, (size_t) pData->iIOBufSize)); - CHKiRet(strm.SetiFlushInterval(pData->pStrm, pData->iFlushInterval)); CHKiRet(strm.SettOperationsMode(pData->pStrm, STREAMMODE_WRITE_APPEND)); CHKiRet(strm.SettOpenMode(pData->pStrm, fCreateMode)); CHKiRet(strm.SetbSync(pData->pStrm, pData->bSyncFile)); CHKiRet(strm.SetsType(pData->pStrm, STREAMTYPE_FILE_SINGLE)); CHKiRet(strm.SetiSizeLimit(pData->pStrm, pData->iSizeLimit)); + /* set the flush interval only if we actually use it - otherwise it will activate + * async processing, which is a real performance waste if we do not do buffered + * writes! -- rgerhards, 2009-07-06 + */ + if(!pData->bFlushOnTXEnd) + CHKiRet(strm.SetiFlushInterval(pData->pStrm, pData->iFlushInterval)); if(pData->pszSizeLimitCmd != NULL) CHKiRet(strm.SetpszSizeLimitCmd(pData->pStrm, ustrdup(pData->pszSizeLimitCmd))); CHKiRet(strm.ConstructFinalize(pData->pStrm)); |