You are viewing a plain text version of this content. The canonical link for it is here.
Posted to notifications@accumulo.apache.org by "Josh Elser (JIRA)" <ji...@apache.org> on 2015/03/26 22:50:54 UTC

[jira] [Updated] (ACCUMULO-3174) Avoid mutation copy on remote replica

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

Josh Elser updated ACCUMULO-3174:
---------------------------------
    Assignee:     (was: Josh Elser)

> Avoid mutation copy on remote replica
> -------------------------------------
>
>                 Key: ACCUMULO-3174
>                 URL: https://issues.apache.org/jira/browse/ACCUMULO-3174
>             Project: Accumulo
>          Issue Type: Improvement
>          Components: replication
>            Reporter: Josh Elser
>             Fix For: 1.7.0
>
>
> To ensure that all replicas see mutations applied in the same order as the source, we need to preserve the timestamp on the received mutations to replicate (either user-assigned or server-assigned).
> The way that ServerMutation implements the server-assigned timestamp is done so as to not modify the serialized bytes (for efficiencies sake). The problem arises when the ServerMutation is cast back to a "regular" Mutation, the timestamp that the system assigned, which was tracked outside of the serialized bytes, is lost and a new server-assigned timestamp is used.
> The naive way to circumvent this is to copy the ServerMutation into a new Mutation, checking for a system-assigned timestamp and set that on the updates for each Mutation. This has a big downside as the amount of required heap nearly doubled (assuming that the mutations are the majority of memory used).



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)