From af17c80a3ad1e77afd6bc19a0828a66b824ff8bb Mon Sep 17 00:00:00 2001 From: =?utf8?q?Jos=C3=A9=20Fonseca?= Date: Thu, 25 Aug 2011 15:36:23 +0100 Subject: [PATCH] Make FlushDeep the default and only flush type. Now that flush is only called at extreme events, such as before crashes and abnormal termination, we really want the flush method to really flush everything to disk, to prevent dropping calls. --- trace_file.cpp | 2 +- trace_file.hpp | 14 +++++--------- trace_snappyfile.cpp | 6 ++---- trace_snappyfile.hpp | 2 +- 4 files changed, 9 insertions(+), 15 deletions(-) diff --git a/trace_file.cpp b/trace_file.cpp index 4c170a6..e206858 100644 --- a/trace_file.cpp +++ b/trace_file.cpp @@ -129,7 +129,7 @@ void ZLibFile::rawClose() } } -void ZLibFile::rawFlush(FlushType type) +void ZLibFile::rawFlush() { gzflush(m_gzFile, Z_SYNC_FLUSH); } diff --git a/trace_file.hpp b/trace_file.hpp index f0e183d..a8b3345 100644 --- a/trace_file.hpp +++ b/trace_file.hpp @@ -38,10 +38,6 @@ public: Read, Write }; - enum FlushType { - FlushShallow, - FlushDeep - }; public: static bool isZLibCompressed(const std::string &filename); static bool isSnappyCompressed(const std::string &filename); @@ -59,7 +55,7 @@ public: bool write(const void *buffer, int length); bool read(void *buffer, int length); void close(); - void flush(FlushType type = FlushShallow); + void flush(void); int getc(); protected: @@ -68,7 +64,7 @@ protected: virtual bool rawRead(void *buffer, int length) = 0; virtual int rawGetc() = 0; virtual void rawClose() = 0; - virtual void rawFlush(FlushType type) = 0; + virtual void rawFlush() = 0; protected: std::string m_filename; @@ -126,9 +122,9 @@ inline void File::close() } } -inline void File::flush(File::FlushType type) +inline void File::flush(void) { - rawFlush(type); + rawFlush(); } inline int File::getc() @@ -151,7 +147,7 @@ protected: virtual bool rawRead(void *buffer, int length); virtual int rawGetc(); virtual void rawClose(); - virtual void rawFlush(FlushType type); + virtual void rawFlush(); private: void *m_gzFile; }; diff --git a/trace_snappyfile.cpp b/trace_snappyfile.cpp index 28ee4eb..a348183 100644 --- a/trace_snappyfile.cpp +++ b/trace_snappyfile.cpp @@ -181,11 +181,9 @@ void SnappyFile::rawClose() m_cachePtr = NULL; } -void SnappyFile::rawFlush(FlushType type) +void SnappyFile::rawFlush() { - if (type == FlushDeep) { - flushCache(); - } + flushCache(); m_stream.flush(); } diff --git a/trace_snappyfile.hpp b/trace_snappyfile.hpp index e84b0ea..7fab835 100644 --- a/trace_snappyfile.hpp +++ b/trace_snappyfile.hpp @@ -58,7 +58,7 @@ protected: virtual bool rawRead(void *buffer, int length); virtual int rawGetc(); virtual void rawClose(); - virtual void rawFlush(FlushType type); + virtual void rawFlush(); private: inline int freeCacheSize() const -- 2.43.0