accumulo-notifications mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Josh Elser (JIRA)" <j...@apache.org>
Subject [jira] [Commented] (ACCUMULO-3888) getActiveScans should not eat TableNotFoundException
Date Mon, 15 Jun 2015 20:02:02 GMT

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

Josh Elser commented on ACCUMULO-3888:
--------------------------------------

bq.  I don't think anything needs to be done when transitioning between tablets.

Ok, I hadn't looked close enough at the implementation if this was something that a hypothetical
close() would have to manage. I just kind of assumed it would have to.

bq. If the user did not read all data, then the close method could reach out to the last tablet
read from and close the session.

This is generally what I was thinking we'd have to do in the most simple case. Thanks for
confirming.

> getActiveScans should not eat TableNotFoundException
> ----------------------------------------------------
>
>                 Key: ACCUMULO-3888
>                 URL: https://issues.apache.org/jira/browse/ACCUMULO-3888
>             Project: Accumulo
>          Issue Type: Bug
>          Components: client
>            Reporter: Josh Elser
>            Assignee: Josh Elser
>            Priority: Critical
>             Fix For: 1.8.0
>
>
> Noticed this awkwardness during integration tests running against a real cluster.
> {noformat}
> org.apache.accumulo.core.client.TableNotFoundException: Table (Id=r) does not exist
>  at org.apache.accumulo.core.client.impl.Tables.getTableName(Tables.java:128)
>  at org.apache.accumulo.core.client.impl.ActiveScanImpl.<init>(ActiveScanImpl.java:63)
>  at org.apache.accumulo.core.client.impl.InstanceOperationsImpl.getActiveScans(InstanceOperationsImpl.java:138)
>  at org.apache.accumulo.test.functional.ScanIdIT.testScanId(ScanIdIT.java:151)
> {noformat}
> The table from the previous test was deleted at the end of the test, but, somehow, a
tabletserver returned an ActiveScan for that table. When the client tried to unwrap the table
ID into a table name, it got a TableNotFoundException.
> Semantically, if a client is asking for active scans on a server, and the server reports
a scan for a table the client doesn't think exists, it's reasonable to assume it was just
deleted and not return that ActiveScan from the API call.
> Right now, this situation results in an exception back to the client and they get no
results.



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

Mime
View raw message