Uploaded image for project: 'Accumulo'
  1. Accumulo
  2. ACCUMULO-2208

Provide better error handling when unable to cleanly close log

    XMLWordPrintableJSON

Details

    • Bug
    • Status: Resolved
    • Major
    • Resolution: Fixed
    • 1.5.0
    • 1.5.1, 1.6.0
    • tserver
    • None

    Description

      I saw this once over 36 tserver/days, caused by an InvalidArgumentException, so odd occurrence. It was doing CI but before agitation started so it was a non issue, but it could be. The code around this is

      for (DfsLogger logger : loggers) {
              try {
                logger.close();
              } catch (DfsLogger.LogClosedException ex) {
                // ignore
              } catch (Throwable ex) {
                log.error("Unable to cleanly close log " + logger.getFileName() + ": " + ex);
              }
            }
            loggers.clear();
            logSizeEstimate.set(0);

      so it seems like it blindly powered forward. However, because of the frequency of syncs and such, even if there was agitation the odds of losing data are very minute, but I do believe their still there.

      But because the log message just relies on error.toString, I didn't get the violating stack trace. At the bare minimum, the message should be updated to log the full stack trace.

      Attachments

        Activity

          People

            vines John Vines
            vines John Vines
            Votes:
            0 Vote for this issue
            Watchers:
            4 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved: