[
https://issues.apache.org/jira/browse/CASSANDRA-15228?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16920747#comment-16920747
]
Benedict edited comment on CASSANDRA-15228 at 9/2/19 10:10 AM:
---------------------------------------------------------------
\[This comment refers to prior goal of avoiding writing the sync markers]\
It had been a long time since I looked at the commit log code, and taking a
look now, this has obviously become tightly interwoven with other extended
behaviours (encryption and compression) that I would prefer not to unpick
anytime soon. This isn't the simplifying change I had hoped it would be. I
think it would be preferable to defer any refactoring until we can address
CASSANDRA-9834.
We can instead, at any time during 4.0 (or later if we choose) modify the
replayer to simply ignore the lack of a final sync marker, and to attempt to
replay the contents in-between, to restore earlier persistence behaviour
without any user-visible file format changes.
was (Author: benedict):
It had been a long time since I looked at the commit log code, and taking a
look now, this has obviously become tightly interwoven with other extended
behaviours (encryption and compression) that I would prefer not to unpick
anytime soon. This isn't the simplifying change I had hoped it would be. I
think it would be preferable to defer any refactoring until we can address
CASSANDRA-9834.
We can instead, at any time during 4.0 (or later if we choose) modify the
replayer to simply ignore the lack of a final sync marker, and to attempt to
replay the contents in-between, to restore earlier persistence behaviour
without any user-visible file format changes.
> CommitLogReplayer should replay past final sync marker
> ------------------------------------------------------
>
> Key: CASSANDRA-15228
> URL: https://issues.apache.org/jira/browse/CASSANDRA-15228
> Project: Cassandra
> Issue Type: Bug
> Components: Local/Commit Log
> Reporter: Benedict
> Priority: Normal
> Fix For: 4.0.x
>
>
> Under default commit log configuration, the sync markers have no purpose,
> only serving to reduce persistence by preventing replay of any mutations
> serialised between syncs. Refactoring the commit log to prevent this would
> be painful, given their utility for encrypted and compressed segments, so we
> should instead ignore the lack of a final sync marker when replaying a raw
> commit log segment, and attempt to replay any mutations we encounter after
> the last sync marker.
--
This message was sent by Atlassian Jira
(v8.3.2#803003)
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]