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

Marcus Eriksson updated CASSANDRA-14002:
----------------------------------------
    Status: Patch Available  (was: Open)

Patch for this 
[here|https://github.com/krummas/cassandra/commits/marcuse/nosharepairs] - it 
replaces the SHA-256 with Murmur3.

Murmur3 is only 128 bit though, so the patch instead hashes every value twice 
using 2 different murmur3 instances with different seeds to get the same number 
of bits as SHA-256. The approach used is similar to what guava does in its 
ConcatenatedHashFunction.

In my tests with semi-wide partitions (~100KB mean partition size) this reduces 
the time spent building merkle trees with at least 50%.

https://builds.apache.org/view/A-D/view/Cassandra/job/Cassandra-devbranch-dtest/422/
https://circleci.com/gh/krummas/cassandra/173

cc [~mkjellman]

> Don't use SHA256 when building merkle trees
> -------------------------------------------
>
>                 Key: CASSANDRA-14002
>                 URL: https://issues.apache.org/jira/browse/CASSANDRA-14002
>             Project: Cassandra
>          Issue Type: Bug
>            Reporter: Marcus Eriksson
>            Assignee: Marcus Eriksson
>             Fix For: 4.x
>
>
> We should avoid using SHA-2 when building merkle trees as we don't need a 
> cryptographic hash function for this.



--
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