func applyDeleteRange(txnID int64, kv mvcc.KV, req *etcdserverpb.DeleteRangeRequest) (*etcdserverpb.DeleteRangeResponse, error) { resp := &etcdserverpb.DeleteRangeResponse{} resp.Header = &etcdserverpb.ResponseHeader{} var ( n int64 rev int64 err error ) if isGteRange(req.RangeEnd) { req.RangeEnd = []byte{} } if txnID != noTxn { n, rev, err = kv.TxnDeleteRange(txnID, req.Key, req.RangeEnd) if err != nil { return nil, err } } else { n, rev = kv.DeleteRange(req.Key, req.RangeEnd) } resp.Deleted = n resp.Header.Revision = rev return resp, nil }