Bitcoin full node and query server

Mar 10, 2025

View in context in the libbitcoin Slack #general mirror.

evoskuil18:58
I ran the collision check and it turns out to not be so bad. Just needed to excluded that as a potential major issue. The hash combiner is only used for points, as all other values are single natural hashes. I ran this and the commented out algorithm:
INLINE constexpr size_t hash_combine(size_t left, size_t right,
    size_t) NOEXCEPT
{
    ////constexpr auto prime1 = possible_narrow_cast<size_t>(0x9e3779b97f4a7c15_u64);
    ////constexpr auto prime2 = possible_narrow_cast<size_t>(0x517cc1b727220a95_u64);

    ////auto first = left;
    ////first ^= shift_right(first, 23);
    ////first *= prime1;
    ////first ^= shift_right(first, 19);

    ////auto second = right;
    ////second ^= shift_right(second, 13);
    ////second *= prime2;
    ////second ^= shift_right(second, 31);

    ////first ^= second;
    ////first += seed;
    ////first ^= shift_right(first, 17);
    ////first *= prime1;
    ////first ^= shift_right(first, 29);

    ////return first;
    return left ^ shift_left(right, one);
}