anchor.diff:          [{Key, {_Value, false, 0, _Version}}] ->
               ?ETS:delete(DB, Key),
               {DB, ok};
  -        [{Key, _Value}] ->
  -            {DB, locks_set};
  -        [] ->
  -            {DB, undef}
  +        [{Key, _Value}] -> {DB, locks_set};
  +        [] -> {DB, undef}
       end.
   
   %% @doc reads the version of a key
  
positive.code:             {DB, ok};
          [{Key, {_Value, _WriteLock, _ReadLock, _Version}}] ->
              {DB, failed};
          [] ->
              {DB, failed}
      end.
  
  %% @doc unsets a read lock on a key
  
negative.code:     ?ETS:insert(DB, Data),
      DB.
  
  %% @doc returns all keys (and removes them from the db) which belong
  %%      to a new node with id HisKey
  split_data(DB, MyKey, HisKey) ->
      F = fun (KV = {Key, _}, HisList) ->
                  case util:is_between(HisKey, Key, MyKey) of
                      true -> HisList;
                      false -> [KV | HisList]
                  end
          end,
      HisList = ?ETS:foldl(F, [], DB),
  