You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@hbase.apache.org by "Nick Dimiduk (JIRA)" <ji...@apache.org> on 2016/12/11 01:45:58 UTC

[jira] [Commented] (HBASE-16033) Add more details in logging of responseTooSlow/TooLarge

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

Nick Dimiduk commented on HBASE-16033:
--------------------------------------

Hey fellas, this patch was flagged by the compatibility report because of the new method {{RpcServerInterface#setRsRpcServices()}}. The interface change will potentially break downstream implementers. We can't rely on Java8 default methods yet, so this may need to be addressed. Is introduction of this interface method absolutely necessary on branch-1.1?

Since this method is annotated with InterfaceAudience.Phoenix, I've asked about it over on their dev list as well.

> Add more details in logging of responseTooSlow/TooLarge
> -------------------------------------------------------
>
>                 Key: HBASE-16033
>                 URL: https://issues.apache.org/jira/browse/HBASE-16033
>             Project: HBase
>          Issue Type: Improvement
>          Components: Operability
>    Affects Versions: 1.2.3, 1.1.7
>            Reporter: Yu Li
>            Assignee: Yu Li
>             Fix For: 2.0.0, 1.3.0, 1.4.0, 0.98.21, 1.2.4, 1.1.8
>
>         Attachments: HBASE-16033.patch, HBASE-16033.patch, HBASE-16033.patch
>
>
> Currently the log message when responseTooSlow/TooLarge is like:
> {noformat}
> 2016-06-08 12:18:04,363 WARN  [B.defaultRpcServer.handler=127,queue=10,port=16020]
> ipc.RpcServer: (responseTooSlow): {"processingtimems":13125,"call":"Multi(org.apache.hadoop.hbase.protobuf.generated.ClientProtos$MultiRequest)",
> "client":"11.251.158.22:36331","starttimems":1465359471238,"queuetimems":1540116,
> "class":"HRegionServer","responsesize":17,"method":"Multi"}
> {noformat}
> which is kind of helpless for debugging since we don't know on which table/region/row the request is against.
> What's more, we could see some if-else check in the {{RpcServer#logResponse}} method which trying to do sth different when the {{param}} includes instance of {{Operation}}, but there's only one place invoking {{logResponse}} and the {{param}} is always an instance of {{Message}}. Checking the change history, I believe this is a left-over cleanup in work of HBASE-8214 
> We will address the above issues, do some cleanup and improve the log just like {{RpcServer$Call#toString}} does to include table/region/row information of the request



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)