You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Please describe the issue you observed:
PendingAddOp:maybeRecycle()->recycle() keeps the buffer until writeComplete() is called
for each bookie write. We need to keep this buffer only until it is successfully transferred by netty.
In the current code, the write is retired only if disableEnsembleChangeFeature is enabled. Otherwise, there is no point in keeping this buffer around.
Netty direct buffers are too scarce in the heavy workload scenarios. Keeping these buffers around longer than needed negatively affects the throughput on the client.
The text was updated successfully, but these errors were encountered:
Descriptions of the changes in this PR:
Current code keeps the toSend buffers until client receives
resonses from all wq bookies. From the senders perspective,
It is not required to keep the refcount on it at the PendingAddOp
level, as the ref is taken at bookie client level.
Keeping these buffers longer will increase the memory pressure
on the client.
Signed-off-by: Venkateswararao Jujjuri (JV) <vjujjurisalesforce.com>
Master Issue: #1091
Author: JV Jujjuri <vjujjuri@vjujjuri-ltm2.internal.salesforce.com>
Reviewers: Enrico Olivelli <eolivelli@gmail.com>, Sijie Guo <sijie@apache.org>
This closes#1091 from jvrao/bookkeeper-1063, closes#1063
(cherry picked from commit 9d09a9c)
Signed-off-by: Sijie Guo <sijie@apache.org>
sijie
added a commit
to sijie/bookkeeper
that referenced
this issue
Mar 5, 2018
BUG REPORT
PendingAddOp:maybeRecycle()->recycle() keeps the buffer until writeComplete() is called
for each bookie write. We need to keep this buffer only until it is successfully transferred by netty.
In the current code, the write is retired only if disableEnsembleChangeFeature is enabled. Otherwise, there is no point in keeping this buffer around.
Netty direct buffers are too scarce in the heavy workload scenarios. Keeping these buffers around longer than needed negatively affects the throughput on the client.
The text was updated successfully, but these errors were encountered: