[ https://issues.apache.org/jira/browse/HBASE-28770?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17882770#comment-17882770 ]
Hudson commented on HBASE-28770: -------------------------------- Results for branch master [build #1165 on builds.a.o|https://ci-hbase.apache.org/job/HBase%20Nightly/job/master/1165/]: (x) *{color:red}-1 overall{color}* ---- details (if available): (/) {color:green}+1 general checks{color} -- For more information [see general report|https://ci-hbase.apache.org/job/HBase%20Nightly/job/master/1165/General_20Nightly_20Build_20Report/] (x) {color:red}-1 jdk17 hadoop3 checks{color} -- For more information [see jdk17 report|https://ci-hbase.apache.org/job/HBase%20Nightly/job/master/1165/JDK17_20Nightly_20Build_20Report_20_28Hadoop3_29/] (/) {color:green}+1 source release artifact{color} -- See build output for details. (/) {color:green}+1 client integration test{color} > 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: Coprocessors > Affects Versions: 2.6.0 > Reporter: Charles Connell > Assignee: Charles Connell > Priority: Major > Labels: pull-request-available > Fix For: 3.0.0-beta-2 > > > 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)