Hello Attila Bukor, Kudu Jenkins, Andrew Wong, Grant Henke, Todd Lipcon,

I'd like you to reexamine a change. Please visit

    http://gerrit.cloudera.org:8080/16343

to look at the new patch set (#7).

Change subject: KUDU-1587 part 2: reject write ops if apply queue is overloaded
......................................................................

KUDU-1587 part 2: reject write ops if apply queue is overloaded

This patch implements control admission for write requests in tablet
servers based on the load status of their apply queue. With this change,
the recently introduced OpApplyQueueTest.ApplyQueueBackpressure scenario
successfully passes.

If the queue times of the tasks in the apply queue become higher than
the specified threshold, the apply queue enters overloaded state.  When
the queue is overloaded, the tablet server rejects incoming write
requests with some probability.  The longer the queue stays overloaded,
the greater the probability of rejections.  In addition, the more row
operations a write request has, the greater the probability of such
request to be the rejected.  The apply queue exits the overloaded state
when queue times drop below the specified threshold.

This new behavior is not yet enabled by default, keeping the legacy
behavior of unbounded/uncontrolled queue times as is.  To enable it,
set --tablet_apply_pool_overload_threshold_ms to something greater
than 0 (e.g., 500).

Change-Id: I6d7688d6fa832e606b8efc4549568fa52dfa1931
---
M src/kudu/integration-tests/same_tablet_concurrent_writes-itest.cc
M src/kudu/kserver/kserver.cc
M src/kudu/tablet/tablet_replica.cc
M src/kudu/tserver/tablet_server-test.cc
M src/kudu/tserver/tablet_service.cc
M src/kudu/tserver/tablet_service.h
6 files changed, 267 insertions(+), 76 deletions(-)


  git pull ssh://gerrit.cloudera.org:29418/kudu refs/changes/43/16343/7
--
To view, visit http://gerrit.cloudera.org:8080/16343
To unsubscribe, visit http://gerrit.cloudera.org:8080/settings

Gerrit-Project: kudu
Gerrit-Branch: master
Gerrit-MessageType: newpatchset
Gerrit-Change-Id: I6d7688d6fa832e606b8efc4549568fa52dfa1931
Gerrit-Change-Number: 16343
Gerrit-PatchSet: 7
Gerrit-Owner: Alexey Serbin <[email protected]>
Gerrit-Reviewer: Alexey Serbin <[email protected]>
Gerrit-Reviewer: Andrew Wong <[email protected]>
Gerrit-Reviewer: Attila Bukor <[email protected]>
Gerrit-Reviewer: Grant Henke <[email protected]>
Gerrit-Reviewer: Kudu Jenkins (120)
Gerrit-Reviewer: Todd Lipcon <[email protected]>

Reply via email to