anchor.diff:                          case clocksi_iupdate(TxId, Key, Type,
                                                {Op, OpParam}) of
                               ok -> ok;
  -                            {error, _Reason} ->
  +                            {error, Reason} ->
  +                                lager:error("Update failed. Reason : ~p",[Reason]),
                                   error
                           end
                   end, Updates),
       case lists:member(error, Results) of
  -        true -> {error, read_failed}; %% TODO: Capture the reason for error
  +        true -> {error, update_failed}; %% TODO: Capture the reason for error
           false -> ok
       end.
   
  
positive.code:                    Updates),
      SingleKey = case Operations of
                      [_O] -> %% Single key update
                          case Clock of 
                              ignore -> true;
                              _ -> false
                          end;
                      [_H|_T] -> false
                  end,
      case SingleKey of 
          true ->  %% if single key, execute the fast path
              [{update, {K, T, Op}}] = Operations,
              case append(K, T, Op) of
  
negative.code:         true ->
              %% Set all entries in snapshot as GST
              ST = dict:map(fun(_,_) -> GST end, VST),
              %% ST doesnot contain entry for local dc, hence explicitly
              %% add it in snapshot time
              SnapshotTime = vectorclock:set_clock_of_dc(DcId, GST, ST),
              clocksi_execute_tx(SnapshotTime, Args, no_update_clock);
  