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

Geoffrey Jacoby commented on HBASE-22623:
-----------------------------------------

[~Apache9] - could you please go into more detail on how exposing a mutable 
WALEdit to a coproc could "mess things up"? The comment in the code says 
something similar, but doesn't give any example or principle explaining why 
this is so, and I'd like to understand the argument. 

I mean, the coproc could have a bug or malicious code which corrupts the 
WALEdit, but any mutation pipeline coproc could do that by corrupting the 
mutation object. Any read pipeline coproc hook could have buggy or malicious 
code that replaced the scanner with one that returned nonsense. I get keeping 
operation-level coprocessors away from process-level objects and services, but 
WALEdit is an operation-level object just like mutations and scanners are. 

> Add RegionObserver coprocessor hook for preWALAppend
> ----------------------------------------------------
>
>                 Key: HBASE-22623
>                 URL: https://issues.apache.org/jira/browse/HBASE-22623
>             Project: HBase
>          Issue Type: New Feature
>            Reporter: Geoffrey Jacoby
>            Assignee: Geoffrey Jacoby
>            Priority: Major
>             Fix For: 3.0.0, 1.5.0, 2.3.0
>
>
> While many coprocessor hooks expose the WALEdit to implementing coprocs, 
> there aren't any that expose the WALKey before it's created and added to the 
> WALEntry. 
> It's sometimes useful for coprocessors to be able to edit the WALKey, for 
> example to add extended attributes using the fields to be added in 
> HBASE-22622. 



--
This message was sent by Atlassian JIRA
(v7.6.14#76016)

Reply via email to