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

If callQueueSize exceed maxQueueSize, all call will be rejected, do not reject priorityCall

    XMLWordPrintableJSON

Details

    • Improvement
    • Status: Closed
    • Major
    • Resolution: Not A Problem
    • None
    • None
    • None
    • None

    Description

      Current if the callQueueSize exceed maxQueueSize, all call will be rejected, Should we let the priority Call pass through?

      Current:

      if ((callSize + callQueueSize.get()) > maxQueueSize) {
        Call callTooBig = xxx
        return ;
      }
      if (priorityCallQueue != null && getQosLevel(param) > highPriorityLevel) {
        priorityCallQueue.put(call);
        updateCallQueueLenMetrics(priorityCallQueue);
      } else {
        callQueue.put(call);              // queue the call; maybe blocked here
        updateCallQueueLenMetrics(callQueue);
      }
      

      Should we change it to :

      if (priorityCallQueue != null && getQosLevel(param) > highPriorityLevel) {
        priorityCallQueue.put(call);
        updateCallQueueLenMetrics(priorityCallQueue);
      } else {
        if ((callSize + callQueueSize.get()) > maxQueueSize) {
         Call callTooBig = xxx
         return ;
        }
        callQueue.put(call);              // queue the call; maybe blocked here
        updateCallQueueLenMetrics(callQueue);
      }
      

      Attachments

        1. HBASE-6480-trunk.patch
          7 kB
          Lijin Bin
        2. HBASE-6480-94.patch
          4 kB
          Lijin Bin

        Activity

          People

            Unassigned Unassigned
            binlijin Lijin Bin
            Votes:
            0 Vote for this issue
            Watchers:
            5 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved: