  
  %% @doc Gets the number of keys in the interval (Begin, End]. In the special
  %%      case of Begin==End, the whole key range as specified by n/0 is returned.
-@@ -153,9 +153,9 @@ get_split_key(Begin, End, {Num, Denom}) ->
+@@ -179,9 +179,9 @@ get_random_in_interval2('[', L, R, ']') ->
  -spec get_replica_keys(key()) -> [key()].
  get_replica_keys(Key) ->
      [Key,

From 6a4a28b903f7dd0abe43c21d8c19d536580d68a3 Mon Sep 17 00:00:00 2001
From: Nico Kruber <kruber@zib.de>
Date: Tue, 29 Jan 2013 12:31:35 +0100
Subject: [PATCH] rt_chord: reduce key size to 16 bits for better debugging

---

 %%Simple routingtable
 %-define(RT, rt_simple).
diff --git a/src/rt_chord.erl b/src/rt_chord.erl
index a3260df..cb32c19 100644
--- a/src/rt_chord.erl
+++ b/src/rt_chord.erl
@@ -64,7 +64,7 @@ hash_key(Key) -> hash_key_(Key).
 hash_key_(Key) when not is_binary(Key) ->
     hash_key_(client_key_to_binary(Key));
 hash_key_(Key) ->
-    <<N:128>> = ?CRYPTO_MD5(Key),
+    <<N:16,_:112>> = ?CRYPTO_MD5(Key),
     N.
 
 %% @doc Generates a random node id, i.e. a random 128-bit number, based on the
@@ -117,14 +117,14 @@ get_size(RT) ->
 
 %% @doc Keep a key in the address space. See n/0.
 -spec normalize(non_neg_integer()) -> key_t().
