[ https://issues.apache.org/jira/browse/HBASE-28770?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Nick Dimiduk reopened HBASE-28770: ---------------------------------- Reopening while we resolve the branch-2.6 compatibility issue flagged on the 2.6.1rc0 VOTE thread, https://lists.apache.org/thread/j3sv12msdcpk9sh4g7hq5v8q560zknjn > Support partial results in AggregateImplementation and AsyncAggregationClient > ----------------------------------------------------------------------------- > > Key: HBASE-28770 > URL: https://issues.apache.org/jira/browse/HBASE-28770 > Project: HBase > Issue Type: Improvement > Components: Client, Coprocessors, Quotas > Affects Versions: 2.6.0 > Reporter: Charles Connell > Assignee: Charles Connell > Priority: Major > Labels: pull-request-available > Fix For: 2.7.0, 3.0.0-beta-2, 2.6.1 > > > Currently there is a gap in the coverage of HBase's quota-based workload > throttling. Requests sent by {{[Async]AggregationClient}} reach > {{AggregateImplementation}}. This then executes Scans in a way that bypasses > the quota system. We see issues with this at Hubspot where clusters suffer > under this load and we don't have a good way to protect them. > In this ticket I'm teaching {{AggregateImplementation}} to optionally stop > scanning when a throttle is violated, and send back just the results it has > accumulated so far. In addition, it will send back a row key to > {{AsyncAggregationClient}}. When the client gets a response with a row key, > it will sleep in order to satisfy the throttle, and then send a new request > with a scan starting at that row key. This will have the effect of continuing > the work where the last request stopped. > This feature will be unconditionally enabled by {{AsyncAggregationClient}} > once this ticket is finished. {{AggregateImplementation}} will not assume > that clients support partial results, however, so it can keep supporting > older clients. For clients that do not support partial results, throttles > will not be respecting, and results will always be complete. > This feature was [first proposed on the mailing > list|https://lists.apache.org/thread/1vqnxb71z7swq2cogz4qg3cn6b10xp4v]. > Builds on work in HBASE-28346. -- This message was sent by Atlassian Jira (v8.20.10#820010)