hbase-issues mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Enis Soztutar (JIRA)" <j...@apache.org>
Subject [jira] [Commented] (HBASE-9905) Enable using seqId as timestamp
Date Wed, 06 Nov 2013 22:58:17 GMT

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

Enis Soztutar commented on HBASE-9905:

Some offline discussion with Sergey, we probably need a couple of "modes" per table for "timestamp
mode" : 
  - mode_seqid           : The server supplies seqId to the cells. If ts is set for puts,
the server will throw IllegelArgumentException. 
  - mode_server_ts     : The server supplies ts to the cells from the wall clock. If ts is
set for puts, the server will throw IllegelArgumentException. 
  - mode_client_ts       : The client always supplies the timestamps (from clock or from ts
oracle). The server throws exception if the cell does not have timestamp
  - mode_mixed          : Will operate similarly to current semantics. Will be deprecated.

mode_server_ts is a special case for mode_mixed, and may not be needed. 

> 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
>             Fix For: 0.98.0
> 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

View raw message