[
https://issues.apache.org/jira/browse/ACCUMULO-3174?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Christopher Tubbs resolved ACCUMULO-3174.
-----------------------------------------
Resolution: Not A Bug
Closing this old stale issue that is not a bug. If there is more to be done
here, please open a new issue or PR at https://github.com/apache/accumulo
> 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
> Priority: Major
>
> 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
(v8.3.4#803005)