[ https://issues.apache.org/jira/browse/HBASE-9905?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14314162#comment-14314162 ]
Andrey Stepachev commented on HBASE-9905: ----------------------------------------- We can allow user to specify which seqId to use for TTL operations and advance this marker. Marker can be stored in meta or file descriptor. With HBASE-12035 it is possible to store it in meta column family 'table' introduced. That allows to use CAS operations for example. If we look more general we can introduce table attribute (stored in meta) named TTL override which can be applied to all types of tables (or column families independently if that will not complicate code a lot). This attribute allows user to override ttl value to which cells compared, if this attribute is present timestamp will be checked against this value and cells with less and equal will be removed. That can be useful even for regular tables, when user wants to fix ttl for some time. Sure, for user specified seqId usage of this field would be mandatory and default value will be Long.MIN. > 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.3.4#6332)