GitHub user ShawnWalker opened a pull request:
https://github.com/apache/accumulo/pull/90
ACCUMULO-4187: Added rate limiting for major compactions.
Added configuration property `tserver.compaction.major.throughput` of type
`PropertyType.MEMORY` to control rate limiting of major compactions on each
tserver.
Specifying a value of `0B` (the default) disables rate limiting.
If a positive value is specified, then all tablet servers will limit the
I/O performed during major compaction accordingly. For example, with
`tserver.compaction.major.throughput=30M`, then each tserver will read no more
than 30MiB per second and write no more than 30MiB combined over all major
compaction threads.
This change involved adding an optional `RateLimiter` parameter to
`FileOperations.openReader(...)` and `FileOperations.openWriter(...)`. Most of
the file changes involve adding an appropriate `null` to invocations of these
methods.
You can merge this pull request into a Git repository by running:
$ git pull https://github.com/ShawnWalker/accumulo ACCUMULO-4187
Alternatively you can review and apply these changes as the patch at:
https://github.com/apache/accumulo/pull/90.patch
To close this pull request, make a commit to your master/trunk branch
with (at least) the following in the commit message:
This closes #90
----
commit 51396335b275b980c09964ad3ca95bf2a6fe5842
Author: Shawn Walker <[email protected]>
Date: 2016-04-06T17:18:09Z
ACCUMULO-4187: Added rate limiting for major compactions.
Added configuration property tserver.compaction.major.throughput of type
PropertyType.MEMORY with a default of 0B (unlimited). If another value is
specified (e.g. 30M), then all tablet servers will limit the I/O performed
during major compaction accordingly (e.g. neither reading nor writing more than
30MiB per second combined over all major compaction threads).
----
---
If your project is set up for it, you can reply to this email and have your
reply appear on GitHub as well. If your project does not have this feature
enabled and wishes so, or if the feature is enabled but not working, please
contact infrastructure at [email protected] or file a JIRA ticket
with INFRA.
---