You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@cassandra.apache.org by "Marcus Eriksson (JIRA)" <ji...@apache.org> on 2017/11/08 08:31:00 UTC

[jira] [Updated] (CASSANDRA-14002) Don't use SHA256 when building merkle trees

     [ 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-unsubscribe@cassandra.apache.org
For additional commands, e-mail: commits-help@cassandra.apache.org