[ 
https://issues.apache.org/jira/browse/CASSANDRA-13953?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16205694#comment-16205694
 ] 

Aleksey Yeschenko commented on CASSANDRA-13953:
-----------------------------------------------

Pushed a commit with the change 
[here|https://github.com/iamaleksey/cassandra/commits/13953-4.0]. Jenkins dtest 
run results to be available 
[here|https://builds.apache.org/view/A-D/view/Cassandra/job/Cassandra-devbranch-dtest/373/],
 and circle utests [here|https://circleci.com/gh/iamaleksey/cassandra/55].

Changes made:
1. Simplified {{MetadataSerializer.deserialize()}} method by splitting toc 
decoding logic into two loops and removing some nesting/branching in components 
decoding loop
2. Switched from MD5 to CRC32
3. Added checksums to size and overall toc, so that we don't allocate buffers 
too big because of corruption in either size or toc offsets.

In addition to that, removed {{MetadataSerializerTest.testMcReadNa()}}, as 
there is no expectation of compat between majors. Also added a few tests (ma 
read ma, mb read mb, mc read mc, and na read na) to cover roundrtip ser/deser. 
Also removed the exception for {{MetadataType.STATS}} not being compared. With 
all current formats under test we expect everything to come out equal.

> Switch to CRC32 for sstable metadata checksums
> ----------------------------------------------
>
>                 Key: CASSANDRA-13953
>                 URL: https://issues.apache.org/jira/browse/CASSANDRA-13953
>             Project: Cassandra
>          Issue Type: Bug
>            Reporter: Marcus Eriksson
>            Assignee: Aleksey Yeschenko
>             Fix For: 4.x
>
>
> We should switch to CRC32 for sstable metadata checksumming for consistency 
> with the rest of the code base. There are a few other cleanups that should be 
> done at the same time.



--
This message was sent by Atlassian JIRA
(v6.4.14#64029)

---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscr...@cassandra.apache.org
For additional commands, e-mail: commits-h...@cassandra.apache.org

Reply via email to