You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@hbase.apache.org by "Lars Hofhansl (JIRA)" <ji...@apache.org> on 2012/10/12 07:39:01 UTC

[jira] [Closed] (HBASE-6265) Calling getTimestamp() on a KV in cp.prePut() causes KV not to be flushed

     [ https://issues.apache.org/jira/browse/HBASE-6265?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Lars Hofhansl closed HBASE-6265.
--------------------------------

    
> Calling getTimestamp() on a KV in cp.prePut() causes KV not to be flushed
> -------------------------------------------------------------------------
>
>                 Key: HBASE-6265
>                 URL: https://issues.apache.org/jira/browse/HBASE-6265
>             Project: HBase
>          Issue Type: Bug
>          Components: regionserver
>    Affects Versions: 0.92.0, 0.94.0, 0.96.0
>            Reporter: Lars George
>            Assignee: Lars George
>            Priority: Critical
>             Fix For: 0.92.2, 0.94.1, 0.96.0
>
>         Attachments: HBASE-6265-0.92.patch, HBASE-6265-0.94.patch, HBASE-6265.patch, HBASE-6265-v2.patch, HBASE-6265-v3.patch
>
>
> There is an issue when you call getTimestamp() on any KV handed into a Coprocessor's prePut(). It initializes the internal "timestampCache" variable. 
> When you then pass it to the normal processing, the region server sets the time to the server time in case you have left it unset from the client side (updateLatestStamp() call). 
> The TimeRangeTracker then calls getTimestamp() later on to see if it has to include the KV, but instead of getting the proper time it sees the cached timestamp from the prePut() call.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira