[ https://issues.apache.org/jira/browse/HBASE-9905?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13966766#comment-13966766 ]
Billie Rinaldi commented on HBASE-9905: --------------------------------------- Accumulo has two timestamp types, logical and milliseconds. Logical time uses a one-up counter to set the timestamps. Milliseconds time uses the server time, but it also ensures that it assigns monotonically non-decreasing timestamps within each tablet. The last timestamp for the tablet is stored in the tablet's metadata, and the tserver assigns new timestamps as the maximum of servertime and lasttime+1 (or sometimes lasttime). See [TabletTime|https://git-wip-us.apache.org/repos/asf?p=accumulo.git;a=blob;f=server/base/src/main/java/org/apache/accumulo/server/tablets/TabletTime.java;hb=HEAD]. > Enable using seqId as timestamp > -------------------------------- > > Key: HBASE-9905 > URL: https://issues.apache.org/jira/browse/HBASE-9905 > Project: HBase > Issue Type: New Feature > Reporter: Enis Soztutar > > This has been discussed previously, and Lars H. was mentioning an idea from > the client to declare whether timestamps are used or not explicitly. > The problem is that, for data models not using timestamps, we are still > relying on clocks to order the updates. Clock skew, same milisecond puts > after deletes, etc can cause unexpected behavior and data not being visible. > We should have a table descriptor / family property, which would declare that > the data model does not use timestamps. Then we can populate this dimension > with the seqId, so that global ordering of edits are not effected by wall > clock. > For example, META will use this. > Once we have something like this, we can think of making it default for new > tables, so that the unknowing user will not shoot herself in the foot. -- This message was sent by Atlassian JIRA (v6.2#6252)