[ 
https://issues.apache.org/jira/browse/HBASE-19035?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16225980#comment-16225980
 ] 

stack commented on HBASE-19035:
-------------------------------

[~zghaobac] We still need this it looks like. The philosophy is not to expose 
core metrics to coprocessors and to update counters even if the coprocessor 
bypasses normal operation. In the patch, the remove of the counting in 
RSRpcServer looks good as does purge of metrics methods from Region.

Over in 
https://issues.apache.org/jira/browse/HBASE-18770?focusedCommentId=16225855&page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#comment-16225855
 there is a table on updates to make it so we up metrics even when coprocessor 
calls bypass.

> Miss metrics when coprocessor use region scanner to read data
> -------------------------------------------------------------
>
>                 Key: HBASE-19035
>                 URL: https://issues.apache.org/jira/browse/HBASE-19035
>             Project: HBase
>          Issue Type: Bug
>            Reporter: Guanghao Zhang
>            Assignee: Guanghao Zhang
>             Fix For: 2.0.0-beta-1
>
>         Attachments: HBASE-19035.master.001.patch, 
> HBASE-19035.master.002.patch
>
>
> Region interface is exposed to coprocessor. So coprocessor use getScanner to 
> get a region scanner to read data. But the scan metrics was only updated in 
> region server level. So we will miss some scan metrics for the read from 
> coprocessor.
> || Region Operation || When to update requests metric ||
> | get | update read metric in nextRaw() |
> | put | update write metric in batchMutate() |
> | delete | update write metric in batchMutate() |
> | increment | update read metric by get() and  update write metric in 
> doDelta() |
> | append | update read metric by get() and  update write metric in doDelta() |
> | mutateRow | update write metric in processRowsWithLocks() |
> | mutateRowsWithLocks | update write metric in processRowsWithLocks() |
> | batchMutate | update write metric in batchMutate() |
> | checkAndMutate | update read metric by get() and  update write metric by 
> mutateRow() |
> | checkAndRowMutate | update read metric by get() and  update write metric by 
> doBatchMutate() |
> | processRowsWithLocks | update write metric in processRowsWithLocks() |
> Meanwhile, remove requestRowActionCount in RSRpcServices. This metric can be 
> computed by region's readRequestsCount and writeRequestsCount.



--
This message was sent by Atlassian JIRA
(v6.4.14#64029)

Reply via email to