Details
-
Bug
-
Status: Resolved
-
Critical
-
Resolution: Incomplete
-
None
-
None
-
None
Description
Noticed this awkwardness during integration tests running against a real cluster.
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)
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.
Attachments
Issue Links
- relates to
-
ACCUMULO-3889 Make sure ScanIdIT doesn't fail due to TableNotFoundException
- Resolved
-
ACCUMULO-3902 Ensure [Batch]Scanners are closed in ITs
- Resolved