Re: [Boost-bugs] [Boost C++ Libraries] #11016: Boost file logging misbehaves when file system is full

Subject: Re: [Boost-bugs] [Boost C++ Libraries] #11016: Boost file logging misbehaves when file system is full
From: Boost C++ Libraries (noreply_at_[hidden])
Date: 2015-02-13 09:33:42


#11016: Boost file logging misbehaves when file system is full
-------------------------------+---------------------
  Reporter: michi@… | Owner: andysem
      Type: Bugs | Status: new
 Milestone: To Be Determined | Component: log
   Version: Boost 1.55.0 | Severity: Problem
Resolution: | Keywords:
-------------------------------+---------------------

Comment (by Michi Henning <michi.henning@…>):

 Replying to [comment:8 andysem]:
>
> I'm not saying global suppression. You can suppress exceptions on
 different levels, including the logger you use in your library.

 Ah, OK, I didn't know that, thanks! Where do I look for this? Any doc on
 that?

> > In my opinion, throwing from log methods (at least the ones that
 create log messages) is a big no-no. If a log message can't be written,
 there is typically nothing that the code that does the logging can do. All
 it would achieve is that I would have to clutter the calling code with
 masses of catch handlers.
>
> Have a look at exception handlers, you don't have to write try/catch
 everywhere.

 OK, again thanks, I didn't know that!

> > Timers wouldn't be needed. Just remember the current time if a failure
 occurs. Then, when trying to write, if in the error state, check the
 current time and, if within the ban period, skip the write. Once a write
 works, re-enter the no-error state, to avoid the overhead of checking the
 current time.
>
> What does such record peeling give? Other than losing some records which
 could have been written when free space appears, it doesn't seem to do any
 significant effect.

 The savings would be minor. Basically, you'd avoid trying to write for a
 while, dealing with the failed calls and potentially re-establishing the
 previously bad situation. But I agree, this is just an embellishment and
 won't solve the fundamental problem.

-- 
Ticket URL: <https://svn.boost.org/trac/boost/ticket/11016#comment:9>
Boost C++ Libraries <http://www.boost.org/>
Boost provides free peer-reviewed portable C++ source libraries.

This archive was generated by hypermail 2.1.7 : 2017-02-16 18:50:17 UTC