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

PreemptiveFastFailInterceptor clean repeatedFailuresMap issue

    XMLWordPrintableJSON

    Details

    • Type: Bug
    • Status: Resolved
    • Priority: Blocker
    • Resolution: Fixed
    • Affects Version/s: None
    • Fix Version/s: 3.0.0-alpha-1, 2.2.0, 2.3.0, 2.1.5
    • Component/s: None
    • Labels:
      None
    • Release Note:
      Adds new configuration hbase.client.failure.map.cleanup.interval which defaults to ten minutes.

      Description

      PreemptiveFastFailInterceptor do not set fastFailClearingTimeMilliSec, so in 

      occasionallyCleanupFailureInformation function this branch

      else if (now > entry.getValue().timeOfFirstFailureMilliSec
          + this.fastFailClearingTimeMilliSec) {

      will be always be true,then the repeatedFailuresMap will be clean.

      and in the constructor function 

      public PreemptiveFastFailInterceptor(Configuration conf) {
        this.fastFailThresholdMilliSec = conf.getLong(
            HConstants.HBASE_CLIENT_FAST_FAIL_THREASHOLD_MS,
            HConstants.HBASE_CLIENT_FAST_FAIL_THREASHOLD_MS_DEFAULT);
        this.failureMapCleanupIntervalMilliSec = conf.getLong(
      // this constant seem to set fastFailClearingTimeMilliSec, it may be a mistake.
            HConstants.HBASE_CLIENT_FAST_FAIL_CLEANUP_MS_DURATION_MS,
            HConstants.HBASE_CLIENT_FAST_FAIL_CLEANUP_DURATION_MS_DEFAULT);
        lastFailureMapCleanupTimeMilliSec = EnvironmentEdgeManager.currentTime();
      }
      

       

       

        Attachments

          Activity

            People

            • Assignee:
              xiangwen zou
              Reporter:
              xiangwen zou
            • Votes:
              0 Vote for this issue
              Watchers:
              3 Start watching this issue

              Dates

              • Created:
                Updated:
                Resolved: