You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@hbase.apache.org by la...@apache.org on 2015/05/22 07:04:18 UTC
[4/4] hbase git commit: HBASE-13703 ReplicateContext should not be a
member of ReplicationSource.
HBASE-13703 ReplicateContext should not be a member of ReplicationSource.
Project: http://git-wip-us.apache.org/repos/asf/hbase/repo
Commit: http://git-wip-us.apache.org/repos/asf/hbase/commit/fb09dead
Tree: http://git-wip-us.apache.org/repos/asf/hbase/tree/fb09dead
Diff: http://git-wip-us.apache.org/repos/asf/hbase/diff/fb09dead
Branch: refs/heads/branch-1.0
Commit: fb09dead1d464d972adf14c018ad8edbc2aa5c2d
Parents: dc47beb
Author: Lars Hofhansl <la...@apache.org>
Authored: Thu May 21 21:56:21 2015 -0700
Committer: Lars Hofhansl <la...@apache.org>
Committed: Thu May 21 22:04:02 2015 -0700
----------------------------------------------------------------------
.../apache/hadoop/hbase/replication/ReplicationEndpoint.java | 2 +-
.../hbase/replication/regionserver/ReplicationSource.java | 6 ++----
2 files changed, 3 insertions(+), 5 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/hbase/blob/fb09dead/hbase-server/src/main/java/org/apache/hadoop/hbase/replication/ReplicationEndpoint.java
----------------------------------------------------------------------
diff --git a/hbase-server/src/main/java/org/apache/hadoop/hbase/replication/ReplicationEndpoint.java b/hbase-server/src/main/java/org/apache/hadoop/hbase/replication/ReplicationEndpoint.java
index c3ec976..ef2dcc0 100644
--- a/hbase-server/src/main/java/org/apache/hadoop/hbase/replication/ReplicationEndpoint.java
+++ b/hbase-server/src/main/java/org/apache/hadoop/hbase/replication/ReplicationEndpoint.java
@@ -127,7 +127,7 @@ public interface ReplicationEndpoint extends Service {
* A context for {@link ReplicationEndpoint#replicate(ReplicateContext)} method.
*/
@InterfaceAudience.LimitedPrivate(HBaseInterfaceAudience.REPLICATION)
- class ReplicateContext {
+ static class ReplicateContext {
List<Entry> entries;
int size;
@InterfaceAudience.Private
http://git-wip-us.apache.org/repos/asf/hbase/blob/fb09dead/hbase-server/src/main/java/org/apache/hadoop/hbase/replication/regionserver/ReplicationSource.java
----------------------------------------------------------------------
diff --git a/hbase-server/src/main/java/org/apache/hadoop/hbase/replication/regionserver/ReplicationSource.java b/hbase-server/src/main/java/org/apache/hadoop/hbase/replication/regionserver/ReplicationSource.java
index ccde5c8..d332279 100644
--- a/hbase-server/src/main/java/org/apache/hadoop/hbase/replication/regionserver/ReplicationSource.java
+++ b/hbase-server/src/main/java/org/apache/hadoop/hbase/replication/regionserver/ReplicationSource.java
@@ -131,8 +131,6 @@ public class ReplicationSource extends Thread
private ReplicationEndpoint replicationEndpoint;
// A filter (or a chain of filters) for the WAL entries.
private WALEntryFilter walEntryFilter;
- // Context for ReplicationEndpoint#replicate()
- private ReplicationEndpoint.ReplicateContext replicateContext;
// throttler
private ReplicationThrottler throttler;
@@ -187,8 +185,6 @@ public class ReplicationSource extends Thread
this.peerId = this.replicationQueueInfo.getPeerId();
this.logQueueWarnThreshold = this.conf.getInt("replication.source.log.queue.warn", 2);
this.replicationEndpoint = replicationEndpoint;
-
- this.replicateContext = new ReplicationEndpoint.ReplicateContext();
}
private void decorateConf() {
@@ -689,6 +685,8 @@ public class ReplicationSource extends Thread
this.throttler.resetStartTick();
}
}
+ // create replicateContext here, so the entries can be GC'd upon return from this call stack
+ ReplicationEndpoint.ReplicateContext replicateContext = new ReplicationEndpoint.ReplicateContext();
replicateContext.setEntries(entries).setSize(currentSize);
// send the edits to the endpoint. Will block until the edits are shipped and acknowledged