Details
-
Improvement
-
Status: Closed
-
Major
-
Resolution: Duplicate
-
0.99.0
-
None
-
None
Description
Since HBASE-10566, we have an explicit call timeout available in the client.
We could forward it to the server, and use this information for:
- if the call is still in the queue, just cancel it
- if the call is under execution, makes this information available in RpcCallContext (actually change the RpcCallContext#disconnectSince to something more generic), so it can be used by the query under execution to stop its execution
- in the future, interrupt it to manage the case 'stuck on a dead datanode' or something similar
- if the operation has finished, don't send the reply to the client, as by definition the client is not interested anymore.
From this, it will be easy to manage the cancellation: disconnect/timeout/cancellation are similar from a service execution PoV
Attachments
Issue Links
- relates to
-
HBASE-10070 HBase read high-availability using timeline-consistent region replicas
- Closed