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

ramkrishna.s.vasudevan commented on HBASE-16696:
------------------------------------------------

bq.Regarding the fix. Does it make sense now to move the code in finally to be 
the last statements in the try block itself? Because we have ex == null check 
now. If any exception happened, we tend to not execute the code in finally 
block now.. Means we want only try to do this work. 
Also we might not need if (scanners.containsKey(scannerName)) this if check 
also.
I think that can be done. But let me verify if there are places where return is 
being done before the last part of try. Am even fine in leaving the patch as 
is. Having things in finally block also looks fine to me .
bq.I did not get the test code change fully.
{code}
-      assertTrue(usedBlocksFound);
-      // Sleep till the scan lease would expire? Can we reduce this value?
-      Thread.sleep(5100);
-      iterator = cache.iterator();
-      refCount = 0;
{code}
Previously before the lease expiry could happen we could see that the ref count 
was still non-zero - means the shipped() or close() call did not happen.
So we wait for the lease expiry time so that then when we see the blocks are 
returned back and ref count is 0.
Now there is no such need. We are sure that the close() will be called and so 
the block ref count will be 0.

> After HBASE-16604 - does not release blocks in case of scanner exception
> ------------------------------------------------------------------------
>
>                 Key: HBASE-16696
>                 URL: https://issues.apache.org/jira/browse/HBASE-16696
>             Project: HBase
>          Issue Type: Bug
>            Reporter: Ted Yu
>            Assignee: ramkrishna.s.vasudevan
>            Priority: Critical
>             Fix For: 2.0.0
>
>         Attachments: HBASE-16696.patch, build-1638.out, build-1639.out
>
>
> TestBlockEvictionFromClient consistently fails in master branch.
> From existing Jenkins builds, looks like this started with build 1639.
> See attached Jenkins console logs.
> Pls refer to this comment 
> https://issues.apache.org/jira/secure/EditComment!default.jspa?id=13004009&commentId=15522451
> for the reason for the test failure.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

Reply via email to