Return-Path: X-Original-To: apmail-hbase-issues-archive@www.apache.org Delivered-To: apmail-hbase-issues-archive@www.apache.org Received: from mail.apache.org (hermes.apache.org [140.211.11.3]) by minotaur.apache.org (Postfix) with SMTP id 601EC7C00 for ; Fri, 30 Sep 2011 06:04:13 +0000 (UTC) Received: (qmail 70932 invoked by uid 500); 30 Sep 2011 06:04:12 -0000 Delivered-To: apmail-hbase-issues-archive@hbase.apache.org Received: (qmail 70897 invoked by uid 500); 30 Sep 2011 06:04:12 -0000 Mailing-List: contact issues-help@hbase.apache.org; run by ezmlm Precedence: bulk List-Help: List-Unsubscribe: List-Post: List-Id: Delivered-To: mailing list issues@hbase.apache.org Received: (qmail 70847 invoked by uid 99); 30 Sep 2011 06:04:10 -0000 Received: from athena.apache.org (HELO athena.apache.org) (140.211.11.136) by apache.org (qpsmtpd/0.29) with ESMTP; Fri, 30 Sep 2011 06:04:10 +0000 X-ASF-Spam-Status: No, hits=-2000.5 required=5.0 tests=ALL_TRUSTED,RP_MATCHES_RCVD X-Spam-Check-By: apache.org Received: from [140.211.11.116] (HELO hel.zones.apache.org) (140.211.11.116) by apache.org (qpsmtpd/0.29) with ESMTP; Fri, 30 Sep 2011 06:04:08 +0000 Received: from hel.zones.apache.org (hel.zones.apache.org [140.211.11.116]) by hel.zones.apache.org (Postfix) with ESMTP id 57E782A1EC8 for ; Fri, 30 Sep 2011 06:03:48 +0000 (UTC) Date: Fri, 30 Sep 2011 06:03:48 +0000 (UTC) From: "jiraposter@reviews.apache.org (Commented) (JIRA)" To: issues@hbase.apache.org Message-ID: <1163323434.10543.1317362628362.JavaMail.tomcat@hel.zones.apache.org> In-Reply-To: <1768782839.5069.1317239685696.JavaMail.tomcat@hel.zones.apache.org> Subject: [jira] [Commented] (HBASE-4507) Create checkAndPut variant that exposes timestamp / UUID MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 7bit X-JIRA-FingerPrint: 30527f35849b9dde25b450d4833f0394 [ https://issues.apache.org/jira/browse/HBASE-4507?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13117904#comment-13117904 ] jiraposter@reviews.apache.org commented on HBASE-4507: ------------------------------------------------------ bq. On 2011-09-29 22:18:31, Ted Yu wrote: bq. > src/main/java/org/apache/hadoop/hbase/regionserver/HRegion.java, line 1948 bq. > bq. > bq. > Since expectedTimestampOfLatestVersion would only be used for use case from HBASE04497, I think we just need a reliable way of enforcing this 1 ms advance. bq. > Maybe spinlocking till EnvironmentEdgeManager.currentTimeMillis() returns now+1 ? bq. bq. Jonathan Gray wrote: bq. Why do we need to wait until currentTimeMillis() rolls? bq. bq. This is pretty ugly but I think we'll need to do something for HBASE-4497 and this will work (as I'm understanding it). bq. bq. But if we didn't do the +1, wouldn't the only time this would be an issue be if RS1 was hosting R1, it then got unassigned and reassigned BACK to RS1 again, and RS1 updates META with the new location of R1 in the same millisecond that it did the original update to META the last time it opened R1. That seems overwhelmingly impossible :) I'd be okay without the +1 business, but at the least, let's make sure it's documented in the top-level API javadoc (i think it is) I'm thinking that we should never need it but in case we do...... Two regionservers would have to be trying to update meta at the same time AND somehow the host that was carrying .META. had its clock go backwards -- e.g. .META. moved to a server whose clock was behind -- and then the update of location by one of the regionservers would have to arrive at EXACTLY the millisecond the original edit had AND the update that is going in would have to be the same value as is already there. I think its impossible but Ming postulated it so for peace of mind, we'll make sure every edit IF the value being updated has same coordinates for sure has its on timestamp... we'll +1 it if they happen to land in same millisecond (Yes its up in the javadoc that each edit has for sure unique timestamp). Ted, you +1 or you have a better idea for the +1'ing (The +1'ing has a unit test!) - Michael ----------------------------------------------------------- This is an automatically generated e-mail. To reply, visit: https://reviews.apache.org/r/2118/#review2185 ----------------------------------------------------------- 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