Details
-
Improvement
-
Status: Resolved
-
Minor
-
Resolution: Incomplete
-
None
-
None
-
None
Description
As far as I can tell, we have no means in the TabletServer which actively interrupt() a Thread which is running a Scan.
As long as all of the Iterators in the ScanTask are actively making progress (fetching data from memory or disk), they'll see the interruptFlag which is set via InterruptibleIterator. This does not suffice if an Iterator is performing some long-running task or blocked on some external call which might hang/fail/pause/block/etc.
In general, we've worked around this issue by recommending to "not do that": Iterators shouldn't access external resources or perform long-running computations (or do anything that won't return reliably). It would be better if we could make a stronger guarantee server-side about cleaning up ScanTasks and their iterator stack.
Attachments
Issue Links
- is related to
-
ACCUMULO-1188 Sandbox iterators
- Resolved
-
ACCUMULO-3751 Iterator Redesign
- Open