You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@phoenix.apache.org by "Mark Christiaens (JIRA)" <ji...@apache.org> on 2017/08/24 07:46:00 UTC
[jira] [Created] (PHOENIX-4119) Upsert uses timestamp of server
holding table metadata
Mark Christiaens created PHOENIX-4119:
-----------------------------------------
Summary: Upsert uses timestamp of server holding table metadata
Key: PHOENIX-4119
URL: https://issues.apache.org/jira/browse/PHOENIX-4119
Project: Phoenix
Issue Type: Bug
Affects Versions: 4.8.0
Reporter: Mark Christiaens
When doing an upsert, I noticed that the resulting put-command to HBase uses a timestamp obtained from the server managing the corresponding table's metadata (cfr. https://issues.apache.org/jira/browse/PHOENIX-1674?focusedCommentId=14349982&page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#comment-14349982).
Now, if the row that is updated resides on a second server, that second server could have some clock skew. After the upsert, if you fetch that updated row without specifying an explicit query timestamp, then you might not see the effects of the upsert until the second server's clock has caught up with the first server's clock.
I think that the desired behavior is that the puts performed occur with a timestamp derived from the region server where their rows are stored. (Of course, that still leaves the problem of region migration from one server to the next but it's a step in the right direction).
--
This message was sent by Atlassian JIRA
(v6.4.14#64029)