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

ASF GitHub Bot commented on OMID-85:
------------------------------------

Github user ebortnikov commented on a diff in the pull request:

    https://github.com/apache/incubator-omid/pull/20#discussion_r166408476
  
    --- Diff: 
hbase-client/src/main/java/org/apache/omid/transaction/TTable.java ---
    @@ -321,16 +317,51 @@ public void put(Transaction tx, Put put) throws 
IOException {
                     Bytes.putLong(kv.getValueArray(), kv.getTimestampOffset(), 
writeTimestamp);
                     tsput.add(kv);
     
    -                transaction.addWriteSetElement(
    +                updateMetaData.update(transaction, kv, tsput);
    +            }
    +        }
    +
    +        table.put(tsput);
    +    }
    +
    +    /**
    +     * putWithAutocommit implementation. Similar to a transactional put 
that includes the commit time stamp.
    +     *
    +     * @param put an instance of Put
    +     * @param tx  an instance of transaction to be used
    +     * @throws IOException if a remote or network exception occurs.
    +     */
    +    public void putWithAutocommit(Transaction tx, Put put) throws 
IOException {
    --- End diff --
    
    Not sure it's a good idea to have a separate method for this. Is it painful 
to add a parameter? Alternatively, maybe you could pass an attribute to 
propagate (mechanism defined in OMID-83)? 


> Autocommit
> ----------
>
>                 Key: OMID-85
>                 URL: https://issues.apache.org/jira/browse/OMID-85
>             Project: Apache Omid
>          Issue Type: Sub-task
>            Reporter: Ohad Shacham
>            Assignee: Ohad Shacham
>            Priority: Major
>
> Writing directly to HBase using specific version marks the write as a write 
> that was done by a specific transaction. However, due to lack of shadow 
> cells, getting the commit timestamp of the transaction can be done only by 
> access the commit table. The motivation of this feature is to add the shadow 
> cells during the write and save the commit table access.
> This feature is required by Apache Phoenix that during index creation adds 
> the data table's entries, appeared before creation, to the index. In this 
> case, the version and the commit timestamp should be the fence id and 
> therefore, a direct write to HBase with the addition of shadow cells is 
> required.



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)

Reply via email to