You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@bookkeeper.apache.org by si...@apache.org on 2016/02/09 08:32:32 UTC
bookkeeper git commit: BOOKKEEPER-886: Allow to disable ledgers
operation throttling
Repository: bookkeeper
Updated Branches:
refs/heads/master 63a2a91eb -> d96a2db91
BOOKKEEPER-886: Allow to disable ledgers operation throttling
Author: Matteo Merli <mm...@yahoo-inc.com>
Reviewers: Sijie Guo <si...@apache.org>
Closes #7 from merlimat/bk-886-disable-throttling
Project: http://git-wip-us.apache.org/repos/asf/bookkeeper/repo
Commit: http://git-wip-us.apache.org/repos/asf/bookkeeper/commit/d96a2db9
Tree: http://git-wip-us.apache.org/repos/asf/bookkeeper/tree/d96a2db9
Diff: http://git-wip-us.apache.org/repos/asf/bookkeeper/diff/d96a2db9
Branch: refs/heads/master
Commit: d96a2db912278e3d88ed59d8d3e15b62bc37ffd4
Parents: 63a2a91
Author: Matteo Merli <mm...@yahoo-inc.com>
Authored: Mon Feb 8 23:32:28 2016 -0800
Committer: Sijie Guo <si...@apache.org>
Committed: Mon Feb 8 23:32:28 2016 -0800
----------------------------------------------------------------------
.../java/org/apache/bookkeeper/client/LedgerHandle.java | 11 +++++++++--
.../java/org/apache/bookkeeper/client/PendingReadOp.java | 4 +++-
.../org/apache/bookkeeper/conf/ClientConfiguration.java | 6 ++++--
3 files changed, 16 insertions(+), 5 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/bookkeeper/blob/d96a2db9/bookkeeper-server/src/main/java/org/apache/bookkeeper/client/LedgerHandle.java
----------------------------------------------------------------------
diff --git a/bookkeeper-server/src/main/java/org/apache/bookkeeper/client/LedgerHandle.java b/bookkeeper-server/src/main/java/org/apache/bookkeeper/client/LedgerHandle.java
index 61cc603..12d689c 100644
--- a/bookkeeper-server/src/main/java/org/apache/bookkeeper/client/LedgerHandle.java
+++ b/bookkeeper-server/src/main/java/org/apache/bookkeeper/client/LedgerHandle.java
@@ -101,7 +101,11 @@ public class LedgerHandle {
this.ledgerId = ledgerId;
- this.throttler = RateLimiter.create(bk.getConf().getThrottleValue());
+ if (bk.getConf().getThrottleValue() > 0) {
+ this.throttler = RateLimiter.create(bk.getConf().getThrottleValue());
+ } else {
+ this.throttler = null;
+ }
macManager = DigestManager.instantiate(ledgerId, password, digestType);
this.ledgerKey = MacDigestManager.genDigest("ledger", password);
@@ -648,7 +652,10 @@ public class LedgerHandle {
"Invalid values for offset(" +offset
+") or length("+length+")");
}
- throttler.acquire();
+
+ if (throttler != null) {
+ throttler.acquire();
+ }
final long entryId;
final long currentLength;
http://git-wip-us.apache.org/repos/asf/bookkeeper/blob/d96a2db9/bookkeeper-server/src/main/java/org/apache/bookkeeper/client/PendingReadOp.java
----------------------------------------------------------------------
diff --git a/bookkeeper-server/src/main/java/org/apache/bookkeeper/client/PendingReadOp.java b/bookkeeper-server/src/main/java/org/apache/bookkeeper/client/PendingReadOp.java
index 102d38e..d9c11d1 100644
--- a/bookkeeper-server/src/main/java/org/apache/bookkeeper/client/PendingReadOp.java
+++ b/bookkeeper-server/src/main/java/org/apache/bookkeeper/client/PendingReadOp.java
@@ -343,7 +343,9 @@ class PendingReadOp implements Enumeration<LedgerEntry>, ReadEntryCallback {
}
void sendReadTo(BookieSocketAddress to, LedgerEntryRequest entry) throws InterruptedException {
- lh.throttler.acquire();
+ if (lh.throttler != null) {
+ lh.throttler.acquire();
+ }
lh.bk.bookieClient.readEntry(to, lh.ledgerId, entry.entryId,
this, new ReadContext(to, entry));
http://git-wip-us.apache.org/repos/asf/bookkeeper/blob/d96a2db9/bookkeeper-server/src/main/java/org/apache/bookkeeper/conf/ClientConfiguration.java
----------------------------------------------------------------------
diff --git a/bookkeeper-server/src/main/java/org/apache/bookkeeper/conf/ClientConfiguration.java b/bookkeeper-server/src/main/java/org/apache/bookkeeper/conf/ClientConfiguration.java
index fdbfd53..7a99559 100644
--- a/bookkeeper-server/src/main/java/org/apache/bookkeeper/conf/ClientConfiguration.java
+++ b/bookkeeper-server/src/main/java/org/apache/bookkeeper/conf/ClientConfiguration.java
@@ -106,10 +106,12 @@ public class ClientConfiguration extends AbstractConfiguration {
/**
* Set throttle value.
*
- * Since BookKeeper process requests in asynchrous way, it will holds
+ * Since BookKeeper process requests in asynchronous way, it will holds
* those pending request in queue. You may easily run it out of memory
* if producing too many requests than the capability of bookie servers can handle.
- * To prevent that from happeding, you can set a throttle value here.
+ * To prevent that from happening, you can set a throttle value here.
+ *
+ * Setting the throttle value to 0, will disable any throttling.
*
* @param throttle
* Throttle Value