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

Anoop Sam John commented on HBASE-15600:
----------------------------------------

Sorry if I was not clear abt the last comment
{code}
checkAndPrepareMutation(cpMutation, replay, cpFamilyMap, now);
3125    
3126                  // Acquire row locks. If not, the whole batch will fail.
3127                  acquiredRowLocks.add(getRowLock(cpMutation.getRow(), 
true));
{code}
checkRow() is done already in checkAndPrepareMutation().   getRowLock() is 
going to do it again , instead if we use getRowLockInternal() that step is 
avoided.  Not a big deal, still better we can avoid 2 compare ops.

Can change on commit if you agree Enis.   +1

> Add provision for adding mutations to memstore or able to write to same 
> region in batchMutate coprocessor hooks
> ---------------------------------------------------------------------------------------------------------------
>
>                 Key: HBASE-15600
>                 URL: https://issues.apache.org/jira/browse/HBASE-15600
>             Project: HBase
>          Issue Type: Improvement
>            Reporter: Rajeshbabu Chintaguntla
>            Assignee: Rajeshbabu Chintaguntla
>              Labels: phoenix
>             Fix For: 2.0.0, 1.3.0, 1.4.0, 0.98.20
>
>         Attachments: HBASE-15600.patch, HBASE-15600_v1.patch, 
> HBASE-15600_v2.patch, hbase-15600_v3.patch, hbase-15600_v4.patch, 
> hbase-15600_v5.patch, hbase-15600_v6.patch
>
>
> As part of PHOENIX-1734 we need to write the index updates to same region 
> from coprocessors but writing from batchMutate API is not allowed because of 
> mvcc. 
> Raised PHOENIX-2742 to discuss any alternative way to write to the same 
> region directly or not but not having any proper solution there.
> Currently we have provision to write wal edits from coprocessors. We can set 
> wal edits in MiniBatchOperationInProgress.
> {noformat}
>   /**
>    * Sets the walEdit for the operation(Mutation) at the specified position.
>    * @param index
>    * @param walEdit
>    */
>   public void setWalEdit(int index, WALEdit walEdit) {
>     this.walEditsFromCoprocessors[getAbsoluteIndex(index)] = walEdit;
>   }
> {noformat}
> Similarly we can allow to write mutations from coprocessors to memstore as 
> well. Or else we should provide the batch mutation API allow write in batch 
> mutate coprocessors.



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

Reply via email to