Todd Lipcon created HBASE-5973:
----------------------------------

             Summary: Add ability for potentially long-running IPC calls to 
abort if client disconnects
                 Key: HBASE-5973
                 URL: https://issues.apache.org/jira/browse/HBASE-5973
             Project: HBase
          Issue Type: Improvement
          Components: ipc
    Affects Versions: 0.92.1, 0.90.7, 0.94.0, 0.96.0
            Reporter: Todd Lipcon
            Assignee: Todd Lipcon


We recently had a cluster issue where a user was submitting scanners with a 
very restrictive filter, and then calling next() with a high scanner caching 
value. The clients would generally time out the next() call and disconnect, but 
the IPC kept running looking to fill the requested number of rows. Since this 
was in the context of MR, the tasks making the calls would retry, and the 
retries wuld be more likely to time out due to contention with the previous 
still-running scanner next() call. Eventually, the system spiraled out of 
control.

We should add a hook to the IPC system so that RPC calls can check if the 
client has already disconnected. In such a case, the next() call could abort 
processing, given any further work is wasted. I imagine coprocessor endpoints, 
etc, could make good use of this as well.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: 
https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

Reply via email to