hbase-issues mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "ramkrishna.s.vasudevan (JIRA)" <j...@apache.org>
Subject [jira] [Commented] (HBASE-17887) TestAcidGuarantees fails frequently
Date Tue, 09 May 2017 09:39:04 GMT

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

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

I spent some time understanding the fix and what was the existing problem. After increasing
the timeout the test case did fail.
{code}
for (int i = 0; i < currentScanners.size(); i++) {
      if (!currentScanners.get(i).isFileScanner()) {
        currentScanners.remove(i);
        break;
      }
    }
{code}
This was the code that was removing the curretScanners that are of memstoreScanner type. The
idea was that the current flush would have loaded the actual store file. So having that will
unnecessarily hold on to the Scanner object and also may lead to multiple scans on the same
data. When memstore size is big that is going to be waste of scan.
One existing problem was that I think this scanner was not getting closed and only getting
removed. So that could be an issue.
So in your latest patch also you may have to do it.
Other part is that with the ScannerTicket and doing the merge operation now - should we really
have the currentScanners? If so then the point above of closing it does not apply.
This is great work. Thanks [~chia7712].

> TestAcidGuarantees fails frequently
> -----------------------------------
>
>                 Key: HBASE-17887
>                 URL: https://issues.apache.org/jira/browse/HBASE-17887
>             Project: HBase
>          Issue Type: Bug
>          Components: regionserver
>    Affects Versions: 2.0.0
>            Reporter: Umesh Agashe
>            Assignee: Chia-Ping Tsai
>            Priority: Blocker
>             Fix For: 2.0.0, 1.4.0, 1.2.6, 1.3.2, 1.4.1
>
>         Attachments: HBASE-17887.branch-1.v0.patch, HBASE-17887.branch-1.v1.patch, HBASE-17887.branch-1.v1.patch,
HBASE-17887.branch-1.v2.patch, HBASE-17887.branch-1.v2.patch, HBASE-17887.branch-1.v3.patch,
HBASE-17887.branch-1.v4.patch, HBASE-17887.branch-1.v4.patch, HBASE-17887.branch-1.v4.patch,
HBASE-17887.ut.patch, HBASE-17887.v0.patch, HBASE-17887.v1.patch, HBASE-17887.v2.patch, HBASE-17887.v3.patch
>
>
> As per the flaky tests dashboard here: https://builds.apache.org/job/HBASE-Find-Flaky-Tests/lastSuccessfulBuild/artifact/dashboard.html,
It fails 30% of the time.
> While working on HBASE-17863, a few verification builds on patch failed due to TestAcidGuarantees
didn't pass. IMHO, the changes for HBASE-17863 are unlikely to affect get/ put path.
> I ran the test with and without the patch several times locally and found that TestAcidGuarantees
fails without the patch similar number of times.
> Opening blocker, considering acid guarantees are critical to HBase.



--
This message was sent by Atlassian JIRA
(v6.3.15#6346)

Mime
View raw message