[jira] [Commented] (HBASE-6480) If callQueueSize exceed maxQueueSize, all call will be rejected, do not reject priorityCall

2012-10-24 Thread binlijin (JIRA)

[ 
https://issues.apache.org/jira/browse/HBASE-6480?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13483112#comment-13483112
 ] 

binlijin commented on HBASE-6480:
-

@stack i agree that should be some limit for priorityQueue, Lars's suggestion 
is good.

> 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.4
>
> 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
For more information on JIRA, see: http://www.atlassian.com/software/jira


[jira] [Commented] (HBASE-6480) If callQueueSize exceed maxQueueSize, all call will be rejected, do not reject priorityCall

2012-10-02 Thread stack (JIRA)

[ 
https://issues.apache.org/jira/browse/HBASE-6480?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13468069#comment-13468069
 ] 

stack commented on HBASE-6480:
--

[~aoxiang] These should be some upper bound.  What is your operational 
experience running with this patch?  The idea is good.  This call is probably 
expensive ' callSize = call.getSize();'  What happens when client gets 
'callTooBig'?  It retries?  Can it wait before it retries?

> 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.94.3, 0.96.0
>
> 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
For more information on JIRA, see: http://www.atlassian.com/software/jira


[jira] [Commented] (HBASE-6480) If callQueueSize exceed maxQueueSize, all call will be rejected, do not reject priorityCall

2012-08-30 Thread Lars Hofhansl (JIRA)

[ 
https://issues.apache.org/jira/browse/HBASE-6480?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13445457#comment-13445457
 ] 

Lars Hofhansl commented on HBASE-6480:
--

Maybe for priority request we allow 2x the maxQueueSize.

> 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.3
>
> 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
For more information on JIRA, see: http://www.atlassian.com/software/jira


[jira] [Commented] (HBASE-6480) If callQueueSize exceed maxQueueSize, all call will be rejected, do not reject priorityCall

2012-08-29 Thread Hadoop QA (JIRA)

[ 
https://issues.apache.org/jira/browse/HBASE-6480?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13444507#comment-13444507
 ] 

Hadoop QA commented on HBASE-6480:
--

-1 overall.  Here are the results of testing the latest attachment 
  
http://issues.apache.org/jira/secure/attachment/12538516/HBASE-6480-trunk.patch
  against trunk revision .

+1 @author.  The patch does not contain any @author tags.

-1 tests included.  The patch doesn't appear to include any new or modified 
tests.
Please justify why no new tests are needed for this 
patch.
Also please list what manual steps were performed to 
verify this patch.

-1 patch.  The patch command could not apply the patch.

Console output: 
https://builds.apache.org/job/PreCommit-HBASE-Build/2729//console

This message is automatically generated.

> 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
For more information on JIRA, see: http://www.atlassian.com/software/jira


[jira] [Commented] (HBASE-6480) If callQueueSize exceed maxQueueSize, all call will be rejected, do not reject priorityCall

2012-08-29 Thread Lars Hofhansl (JIRA)

[ 
https://issues.apache.org/jira/browse/HBASE-6480?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13444506#comment-13444506
 ] 

Lars Hofhansl commented on HBASE-6480:
--

I think this would be an improvement. I'm +1 on the patch.
@Stack: Wanna have a look too?

> 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
For more information on JIRA, see: http://www.atlassian.com/software/jira


[jira] [Commented] (HBASE-6480) If callQueueSize exceed maxQueueSize, all call will be rejected, do not reject priorityCall

2012-08-27 Thread binlijin (JIRA)

[ 
https://issues.apache.org/jira/browse/HBASE-6480?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13442896#comment-13442896
 ] 

binlijin commented on HBASE-6480:
-

@Lars
Yes, i think so.

> 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
For more information on JIRA, see: http://www.atlassian.com/software/jira


[jira] [Commented] (HBASE-6480) If callQueueSize exceed maxQueueSize, all call will be rejected, do not reject priorityCall

2012-07-31 Thread binlijin (JIRA)

[ 
https://issues.apache.org/jira/browse/HBASE-6480?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13426338#comment-13426338
 ] 

binlijin commented on HBASE-6480:
-

We already use this way in our cluster, and don't consider the 
priorityCallQueue.

> 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




[jira] [Commented] (HBASE-6480) If callQueueSize exceed maxQueueSize, all call will be rejected, do not reject priorityCall

2012-07-31 Thread Zhihong Ted Yu (JIRA)

[ 
https://issues.apache.org/jira/browse/HBASE-6480?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13426317#comment-13426317
 ] 

Zhihong Ted Yu commented on HBASE-6480:
---

Did you encounter this scenario on a cluster or, find this scenario through 
code analysis ?

How do we bound the size of priorityCallQueue after proposed change ?

Thanks

> 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