anchor.diff:              {reply, {{Partition, node()}, []}, State};
           [H|T] ->
               {reply, {{Partition, node()}, [H|T]}, State};
  +        {error, Reason}->
  +            {reply, {error, Reason}, State}
  +    end;
  +
  +%% @doc Threshold read command: Returns the operations logged for Key from a specified op_id-based threshold
  +%%	Input:  Key of the object to read
  +%%		From: the oldest op_id to return
  +%%	Output: {vnode_id, Operations} | {error, Reason}
  +handle_command({threshold_read, Key, From}, _Sender, #state{partition=Partition, log=Log}=State) ->
  +    case dets:lookup(Log, Key) of
  +        [] ->
  +            {reply, {{Partition, node()}, []}, State};
  +        [H|T] ->
  +	    Operations =  [H|T],
  +	    Operations2 = threshold_prune(Operations, From),
  +            {reply, {{Partition, node()}, Operations2}, State};
           {error, Reason}->
               {reply, {error, Reason}, State}
       end;
  
positive.code: start_vnode(I) ->
      riak_core_vnode_master:get_vnode_pid(I, ?MODULE).
  
  %% @doc Sends a `read' syncrhonous command to the Log in `Node' 
  read(Node, Key) ->
      riak_core_vnode_master:sync_command(Node, {read, Key}, ?LOGGINGMASTER).
  
negative.code:          dappend/4,
           append_list/2,
           read/2,
  	 threshold_read/3,
           append/3]).
  
  -export([init/1,
  