anchor.diff:  has_postcommit_hooks(Bucket) ->
       lists:flatten(proplists:get_all_values(postcommit, riak_core_bucket:get_bucket(Bucket))) /= [].
   
  +client_reply(Reply, #state{client = Client, req_id = ReqId}) ->
  +    Client ! {ReqId, Reply}.
   
   %% ===================================================================
   %% EUnit tests
  
positive.code:         true ->
              {next_state,waiting_vnode_w,NewStateData};
          false ->
              update_stats(StateData),
              Client ! {ReqId, {error,too_many_fails}},
              {stop,normal,NewStateData}
      end;
  waiting_vnode_w(timeout, StateData=#state{client=Client,req_id=ReqId}) ->
      update_stats(StateData),
      Client ! {ReqId, {error,timeout}},
      {stop,normal,StateData}.
  
  waiting_vnode_dw({w, _Idx, ReqId},
            StateData=#state{req_id=ReqId}) ->
      {next_state,waiting_vnode_dw,StateData};
  waiting_vnode_dw({dw, Idx, ReqId},
                   StateData=#state{dw=DW, client=Client, replied_dw=Replied0}) ->
      Replied = [Idx|Replied0],
      case length(Replied) >= DW of
          true ->
              Client ! {ReqId, ok},
              update_stats(StateData),
              {stop,normal,StateData};
          false ->
  
negative.code: 
      if
          W =:= error ->
              client_reply({error, {w_val_violation, W0}}, StateData0),
              {stop, normal, none};
          DW =:= error ->
              client_reply({error, {dw_val_violation, DW0}}, StateData0),
              {stop, normal, none};
          (W > N) or (DW > N) ->
              client_reply({error, {n_val_violation, N}}, StateData0),
              {stop, normal, none};
          true ->
              AllowMult = proplists:get_value(allow_mult,BucketProps),
  