You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@hbase.apache.org by "Ted Yu (JIRA)" <ji...@apache.org> on 2017/01/06 13:39:58 UTC
[jira] [Commented] (HBASE-17431) Incorrect precheck condition in
RoundRobinPool#get()
[ https://issues.apache.org/jira/browse/HBASE-17431?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15804564#comment-15804564 ]
Ted Yu commented on HBASE-17431:
--------------------------------
{code}
363 if (super.size() < 0) {
{code}
When super.size() is 0, we should return null.
Otherwise the modulo operation would produce exception.
> Incorrect precheck condition in RoundRobinPool#get()
> ----------------------------------------------------
>
> Key: HBASE-17431
> URL: https://issues.apache.org/jira/browse/HBASE-17431
> Project: HBase
> Issue Type: Bug
> Reporter: Ted Yu
> Assignee: Jan Hentschel
> Priority: Minor
> Attachments: HBASE-17431.master.001.patch
>
>
> Here is related code:
> {code}
> public R get() {
> if (super.size() < maxSize) {
> return null;
> }
> nextResource %= super.size();
> {code}
> Since super.size() is involved in modulo operation after the check, it seems the check should compare against 0 instead of maxSize.
> Looks like a copy-paste error from put() method.
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)