[ https://issues.apache.org/jira/browse/HBASE-6480?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Zhihong Ted Yu updated HBASE-6480: ---------------------------------- Description: Current if the callQueueSize exceed maxQueueSize, all call will be rejected, Should we let the priority Call pass through? Current: {code} 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); } {code} Should we change it to : {code} 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); } {code} was: 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); } > If callQueueSize exceed maxQueueSize, all call will be rejected, do not > reject priorityCall > -------------------------------------------------------------------------------------------- > > Key: HBASE-6480 > URL: https://issues.apache.org/jira/browse/HBASE-6480 > Project: HBase > Issue Type: Bug > Reporter: binlijin > Fix For: 0.96.0, 0.94.2 > > Attachments: HBASE-6480-94.patch, HBASE-6480-trunk.patch > > > Current if the callQueueSize exceed maxQueueSize, all call will be rejected, > Should we let the priority Call pass through? > Current: > {code} > 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); > } > {code} > Should we change it to : > {code} > 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); > } > {code} -- This message is automatically generated by JIRA. If you think it was sent incorrectly, please contact your JIRA administrators: https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa For more information on JIRA, see: http://www.atlassian.com/software/jira