Uploaded image for project: 'HBase'
  1. HBase
  2. HBASE-6878

DistributerLogSplit can fail to resubmit a task done if there is an exception during the log archiving

    XMLWordPrintableJSON

    Details

    • Type: Bug
    • Status: Resolved
    • Priority: Minor
    • Resolution: Won't Fix
    • Affects Version/s: None
    • Fix Version/s: None
    • Component/s: master
    • Labels:
      None

      Description

      The code in SplitLogManager# getDataSetWatchSuccess is:

      if (slt.isDone()) {
            LOG.info("task " + path + " entered state: " + slt.toString());
            if (taskFinisher != null && !ZKSplitLog.isRescanNode(watcher, path)) {
              if (taskFinisher.finish(slt.getServerName(), ZKSplitLog.getFileName(path)) == Status.DONE) {
                setDone(path, SUCCESS);
              } else {
                resubmitOrFail(path, CHECK);
              }
            } else {
              setDone(path, SUCCESS);
            }
      

      resubmitOrFail(path, CHECK);

      should be
      resubmitOrFail(path, FORCE);

      Without it, the task won't be resubmitted if the delay is not reached, and the task will be marked as failed.

        Attachments

          Issue Links

            Activity

              People

              • Assignee:
                Unassigned
                Reporter:
                nkeywal Nicolas Liochon
              • Votes:
                0 Vote for this issue
                Watchers:
                6 Start watching this issue

                Dates

                • Created:
                  Updated:
                  Resolved: