From 7ff6e62c56ebd7668391c51e40f2539beecb0a98 Mon Sep 17 00:00:00 2001 From: Anthony Romano Date: Mon, 5 Jun 2017 15:19:01 -0700 Subject: [PATCH] namespace: prefix comparison range_end --- clientv3/namespace/kv.go | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/clientv3/namespace/kv.go b/clientv3/namespace/kv.go index f3e82d6b89a..dc013742b01 100644 --- a/clientv3/namespace/kv.go +++ b/clientv3/namespace/kv.go @@ -105,8 +105,11 @@ func (txn *txnPrefix) If(cs ...clientv3.Cmp) clientv3.Txn { newCmps := make([]clientv3.Cmp, len(cs)) for i := range cs { newCmps[i] = cs[i] - pfxKey, _ := txn.kv.prefixInterval(cs[i].KeyBytes(), nil) + pfxKey, endKey := txn.kv.prefixInterval(cs[i].KeyBytes(), cs[i].RangeEnd) newCmps[i].WithKeyBytes(pfxKey) + if len(cs[i].RangeEnd) != 0 { + newCmps[i].RangeEnd = endKey + } } txn.Txn = txn.Txn.If(newCmps...) return txn