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

jirapos...@reviews.apache.org commented on HBASE-4507:
------------------------------------------------------



bq.  On 2011-09-30 01:26:24, Ming Ma wrote:
bq.  > Nice stuff, Stack.
bq.  > 
bq.  > Some questions:
bq.  > 
bq.  > 1. The approach of "isTimestampClash and the nowBytes = 
Bytes.toBytes(now + 1)". It seems there is still a rare case, where 
EnvironmentEdgeManager.currentTimeMillis() returns 
expectedTimestampOfLatestVersion - 1. Then later on in put, updateKVTimestamps 
set it to the new now value, which happens to be 
expectedTimestampOfLatestVersion. Perhaps we can use "now <= 
expectedTimestampOfLatestVersion" condition instead of "now == 
expectedTimestampOfLatestVersion" in isTimestampClash. Set the new time value 
as nowBytes = Bytes.toBytes(expectedTimestampOfLatestVersion + 1).
bq.  > 2. Do we need to modify coprocessor interfaces preCheckAndPut, 
postCheckAndPut, etc.? Perhaps we don't have any scenario for this yet.
bq.  > 3. Do we need the same thing for checkAndDelete? Perhaps we don't have 
any scenario for this yet.

1. Doesn't updateKVTimestamps only mess with timestamps if the timestamp is set 
to HConstants.LATEST_TIMESTAMP?  My setting the timestamp here before we go 
down into internalPut means the later updateKVTimestamps will not change the 
timestamps I've set?  Let me check for sure.
2. Let me look into this.
3.  I considered it but stopped myself.  Figured I'd let someone ask for it 
before I went and implemented new functionality.

Thanks Ming for review.


- Michael


-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
https://reviews.apache.org/r/2118/#review2203
-----------------------------------------------------------


On 2011-09-29 23:52:43, Michael Stack wrote:
bq.  
bq.  -----------------------------------------------------------
bq.  This is an automatically generated e-mail. To reply, visit:
bq.  https://reviews.apache.org/r/2118/
bq.  -----------------------------------------------------------
bq.  
bq.  (Updated 2011-09-29 23:52:43)
bq.  
bq.  
bq.  Review request for hbase.
bq.  
bq.  
bq.  Summary
bq.  -------
bq.  
bq.  Adds a checkAndPut that takes a timestamp
bq.  
bq.  
bq.  This addresses bug hbase-4507.
bq.      https://issues.apache.org/jira/browse/hbase-4507
bq.  
bq.  
bq.  Diffs
bq.  -----
bq.  
bq.    src/main/java/org/apache/hadoop/hbase/ipc/HRegionInterface.java 3679c02 
bq.    src/main/java/org/apache/hadoop/hbase/regionserver/HRegion.java 6ec857c 
bq.    src/main/java/org/apache/hadoop/hbase/regionserver/HRegionServer.java 
96b763b 
bq.    src/test/java/org/apache/hadoop/hbase/regionserver/TestHRegion.java 
99b34cc 
bq.  
bq.  Diff: https://reviews.apache.org/r/2118/diff
bq.  
bq.  
bq.  Testing
bq.  -------
bq.  
bq.  
bq.  Thanks,
bq.  
bq.  Michael
bq.  
bq.


                
> Create checkAndPut variant that exposes timestamp / UUID
> --------------------------------------------------------
>
>                 Key: HBASE-4507
>                 URL: https://issues.apache.org/jira/browse/HBASE-4507
>             Project: HBase
>          Issue Type: Sub-task
>            Reporter: Ted Yu
>            Assignee: stack
>
> Michael checked the checkAndPut which doesn't expose timestamp. A variant of 
> checkAndPut should be created to expose timestamp which is written into a 
> column specified by additional parameters.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: 
https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

Reply via email to