[
https://issues.apache.org/jira/browse/HBASE-6265?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13404459#comment-13404459
]
Lars George commented on HBASE-6265:
------------------------------------
What are your thoughts on applying this to anything >= 0.92? This can affect
anyone using coprocessors and asking for a timestamp in a prePut(). Seems
severe enough. Let me know and apply to all heads in branches accordingly.
> 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
> Fix For: 0.96.0
>
> Attachments: HBASE-6265.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:
https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira