You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@hbase.apache.org by "Reid Chan (JIRA)" <ji...@apache.org> on 2017/09/22 09:21:01 UTC
[jira] [Updated] (HBASE-18837) HTableMultiplexer behavior during
regions split
[ https://issues.apache.org/jira/browse/HBASE-18837?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Reid Chan updated HBASE-18837:
------------------------------
Description:
HTableMultiplexer class mentions following in the javadoc : "If any queue is full, the HTableMultiplexer starts to drop the Put requests for that particular queue."
This could be improved by replacing following code in HTableMultiplexer.resubmitFailedPut() method :
{code:title=HTableMultiplexer}
try {
succ = FlushWorker.this.getMultiplexer().put(tableName, failedPut, retryCount);
} finally {
FlushWorker.this.getRetryInQueue().decrementAndGet();
if (!succ) {
FlushWorker.this.getTotalFailedPutCount().incrementAndGet();
}
}
{code}
With :
{code}
try {
succ = FlushWorker.this.getMultiplexer().put(tableName, failedPut, retryCount);
if (!succ) {
if (!resubmitFailedPut(ps, oldLoc)) {
FlushWorker.this.getTotalFailedPutCount().incrementAndGet();
}
}
} finally {
FlushWorker.this.getRetryInQueue().decrementAndGet();
}
{code}
was:
HTableMultiplexer class mentions following in the javadoc : "If any queue is full, the HTableMultiplexer starts to drop the Put requests for that particular queue."
This could be improved by replacing following code in HTableMultiplexer.resubmitFailedPut() method :
try {
succ = FlushWorker.this.getMultiplexer().put(tableName, failedPut, retryCount);
} finally {
FlushWorker.this.getRetryInQueue().decrementAndGet();
if (!succ) {
FlushWorker.this.getTotalFailedPutCount().incrementAndGet();
}
}
With :
try {
succ = FlushWorker.this.getMultiplexer().put(tableName, failedPut, retryCount);
if (!succ) {
if (!resubmitFailedPut(ps, oldLoc)) {
FlushWorker.this.getTotalFailedPutCount().incrementAndGet();
}
}
} finally {
FlushWorker.this.getRetryInQueue().decrementAndGet();
}
> HTableMultiplexer behavior during regions split
> -----------------------------------------------
>
> Key: HBASE-18837
> URL: https://issues.apache.org/jira/browse/HBASE-18837
> Project: HBase
> Issue Type: Improvement
> Components: Client
> Affects Versions: 1.1.2
> Reporter: chausson
> Priority: Minor
>
> HTableMultiplexer class mentions following in the javadoc : "If any queue is full, the HTableMultiplexer starts to drop the Put requests for that particular queue."
> This could be improved by replacing following code in HTableMultiplexer.resubmitFailedPut() method :
> {code:title=HTableMultiplexer}
> try {
> succ = FlushWorker.this.getMultiplexer().put(tableName, failedPut, retryCount);
> } finally {
> FlushWorker.this.getRetryInQueue().decrementAndGet();
> if (!succ) {
> FlushWorker.this.getTotalFailedPutCount().incrementAndGet();
> }
> }
> {code}
> With :
> {code}
> try {
> succ = FlushWorker.this.getMultiplexer().put(tableName, failedPut, retryCount);
> if (!succ) {
> if (!resubmitFailedPut(ps, oldLoc)) {
> FlushWorker.this.getTotalFailedPutCount().incrementAndGet();
> }
> }
> } finally {
> FlushWorker.this.getRetryInQueue().decrementAndGet();
> }
> {code}
--
This message was sent by Atlassian JIRA
(v6.4.14#64029)