[GitHub] [hbase] bharathv commented on a change in pull request #2193: HBASE-24779 Report on the WAL edit buffer usage/limit for replication

2020-08-04 Thread GitBox


bharathv commented on a change in pull request #2193:
URL: https://github.com/apache/hbase/pull/2193#discussion_r465216898



##
File path: 
hbase-hadoop-compat/src/main/java/org/apache/hadoop/hbase/replication/regionserver/MetricsReplicationSourceSourceImpl.java
##
@@ -314,4 +314,15 @@ public String getMetricsName() {
   @Override public long getEditsFiltered() {
 return this.walEditsFilteredCounter.value();
   }
+
+  @Override
+  public void setWALReaderEditsBufferBytes(long usage) {
+//noop. Global limit, tracked globally. Do not need per-source metrics

Review comment:
   Oh, I see. Looks like you pushed the metrics update logic into the 
source, the patch looks clean now.





This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

For queries about this service, please contact Infrastructure at:
us...@infra.apache.org




[GitHub] [hbase] bharathv commented on a change in pull request #2193: HBASE-24779 Report on the WAL edit buffer usage/limit for replication

2020-08-04 Thread GitBox


bharathv commented on a change in pull request #2193:
URL: https://github.com/apache/hbase/pull/2193#discussion_r465146006



##
File path: 
hbase-hadoop-compat/src/main/java/org/apache/hadoop/hbase/replication/regionserver/MetricsReplicationSourceSourceImpl.java
##
@@ -314,4 +314,15 @@ public String getMetricsName() {
   @Override public long getEditsFiltered() {
 return this.walEditsFilteredCounter.value();
   }
+
+  @Override
+  public void setWALReaderEditsBufferBytes(long usage) {
+//noop. Global limit, tracked globally. Do not need per-source metrics

Review comment:
   > Once we chuck something into this usage, we have zero insight back to 
which source put it there.
   
   I had the same question. I was wondering if a drill down by source would be 
helpful in addition to the global usage. Correct me if I'm wrong, looks like 
ReplicationSource class has access to the MetricsSource object.. we can just 
update the byte usage for that source? (and the global too at the same time). 
That way we can also get rid of the special logic to update one metric 
setWALReaderEditsBufferBytes(). Does that not work for some reason?





This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

For queries about this service, please contact Infrastructure at:
us...@infra.apache.org