hbase-issues mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Enis Soztutar (JIRA)" <j...@apache.org>
Subject [jira] [Commented] (HBASE-15600) Add provision for adding mutations to memstore or able to write to same region in batchMutate coprocessor hooks
Date Wed, 04 May 2016 18:54:13 GMT

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

Enis Soztutar commented on HBASE-15600:
---------------------------------------

bq. Better take this miniBatchOp.getOperationsFromCoprocessors(i - firstIndex) into a local
variable and use that.. Else there is always a chance to miss one place 
Good catch. Addressed in v6. 
bq. If the other jira can committed 1st, we can change here to use getRowLockInternal?
{{get rowLock()}} in this case is better since these are Mutations coming from the CP. It
is not clear the CP will only give Mutations that fall in the region boundaries, so we should
opt for the safe approach. 


> 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
>             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
>
>
> 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)

Mime
View raw message