mirror of
https://github.com/etcd-io/etcd.git
synced 2024-09-27 06:25:44 +00:00
server: proper request cancellation for range
This commit is contained in:
@@ -15,6 +15,7 @@
|
||||
package mvcc
|
||||
|
||||
import (
|
||||
"context"
|
||||
"fmt"
|
||||
"os"
|
||||
"reflect"
|
||||
@@ -45,12 +46,12 @@ type (
|
||||
|
||||
var (
|
||||
normalRangeFunc = func(kv KV, key, end []byte, ro RangeOptions) (*RangeResult, error) {
|
||||
return kv.Range(key, end, ro)
|
||||
return kv.Range(context.TODO(), key, end, ro)
|
||||
}
|
||||
txnRangeFunc = func(kv KV, key, end []byte, ro RangeOptions) (*RangeResult, error) {
|
||||
txn := kv.Read(traceutil.TODO())
|
||||
defer txn.End()
|
||||
return txn.Range(key, end, ro)
|
||||
return txn.Range(context.TODO(), key, end, ro)
|
||||
}
|
||||
|
||||
normalPutFunc = func(kv KV, key, value []byte, lease lease.LeaseID) int64 {
|
||||
@@ -268,7 +269,7 @@ func testKVPutMultipleTimes(t *testing.T, f putFunc) {
|
||||
t.Errorf("#%d: rev = %d, want %d", i, rev, base+1)
|
||||
}
|
||||
|
||||
r, err := s.Range([]byte("foo"), nil, RangeOptions{})
|
||||
r, err := s.Range(context.TODO(), []byte("foo"), nil, RangeOptions{})
|
||||
if err != nil {
|
||||
t.Fatal(err)
|
||||
}
|
||||
@@ -372,7 +373,7 @@ func TestKVOperationInSequence(t *testing.T) {
|
||||
t.Errorf("#%d: put rev = %d, want %d", i, rev, base+1)
|
||||
}
|
||||
|
||||
r, err := s.Range([]byte("foo"), nil, RangeOptions{Rev: base + 1})
|
||||
r, err := s.Range(context.TODO(), []byte("foo"), nil, RangeOptions{Rev: base + 1})
|
||||
if err != nil {
|
||||
t.Fatal(err)
|
||||
}
|
||||
@@ -392,7 +393,7 @@ func TestKVOperationInSequence(t *testing.T) {
|
||||
t.Errorf("#%d: n = %d, rev = %d, want (%d, %d)", i, n, rev, 1, base+2)
|
||||
}
|
||||
|
||||
r, err = s.Range([]byte("foo"), nil, RangeOptions{Rev: base + 2})
|
||||
r, err = s.Range(context.TODO(), []byte("foo"), nil, RangeOptions{Rev: base + 2})
|
||||
if err != nil {
|
||||
t.Fatal(err)
|
||||
}
|
||||
@@ -450,7 +451,7 @@ func TestKVTxnNonBlockRange(t *testing.T) {
|
||||
donec := make(chan struct{})
|
||||
go func() {
|
||||
defer close(donec)
|
||||
s.Range([]byte("foo"), nil, RangeOptions{})
|
||||
s.Range(context.TODO(), []byte("foo"), nil, RangeOptions{})
|
||||
}()
|
||||
select {
|
||||
case <-donec:
|
||||
@@ -475,7 +476,7 @@ func TestKVTxnOperationInSequence(t *testing.T) {
|
||||
t.Errorf("#%d: put rev = %d, want %d", i, rev, base+1)
|
||||
}
|
||||
|
||||
r, err := txn.Range([]byte("foo"), nil, RangeOptions{Rev: base + 1})
|
||||
r, err := txn.Range(context.TODO(), []byte("foo"), nil, RangeOptions{Rev: base + 1})
|
||||
if err != nil {
|
||||
t.Fatal(err)
|
||||
}
|
||||
@@ -495,7 +496,7 @@ func TestKVTxnOperationInSequence(t *testing.T) {
|
||||
t.Errorf("#%d: n = %d, rev = %d, want (%d, %d)", i, n, rev, 1, base+1)
|
||||
}
|
||||
|
||||
r, err = txn.Range([]byte("foo"), nil, RangeOptions{Rev: base + 1})
|
||||
r, err = txn.Range(context.TODO(), []byte("foo"), nil, RangeOptions{Rev: base + 1})
|
||||
if err != nil {
|
||||
t.Errorf("#%d: range error (%v)", i, err)
|
||||
}
|
||||
@@ -554,7 +555,7 @@ func TestKVCompactReserveLastValue(t *testing.T) {
|
||||
if err != nil {
|
||||
t.Errorf("#%d: unexpect compact error %v", i, err)
|
||||
}
|
||||
r, err := s.Range([]byte("foo"), nil, RangeOptions{Rev: tt.rev + 1})
|
||||
r, err := s.Range(context.TODO(), []byte("foo"), nil, RangeOptions{Rev: tt.rev + 1})
|
||||
if err != nil {
|
||||
t.Errorf("#%d: unexpect range error %v", i, err)
|
||||
}
|
||||
@@ -641,7 +642,7 @@ func TestKVRestore(t *testing.T) {
|
||||
tt(s)
|
||||
var kvss [][]mvccpb.KeyValue
|
||||
for k := int64(0); k < 10; k++ {
|
||||
r, _ := s.Range([]byte("a"), []byte("z"), RangeOptions{Rev: k})
|
||||
r, _ := s.Range(context.TODO(), []byte("a"), []byte("z"), RangeOptions{Rev: k})
|
||||
kvss = append(kvss, r.KVs)
|
||||
}
|
||||
|
||||
@@ -659,7 +660,7 @@ func TestKVRestore(t *testing.T) {
|
||||
testutil.WaitSchedule()
|
||||
var nkvss [][]mvccpb.KeyValue
|
||||
for k := int64(0); k < 10; k++ {
|
||||
r, _ := ns.Range([]byte("a"), []byte("z"), RangeOptions{Rev: k})
|
||||
r, _ := ns.Range(context.TODO(), []byte("a"), []byte("z"), RangeOptions{Rev: k})
|
||||
nkvss = append(nkvss, r.KVs)
|
||||
}
|
||||
cleanup(ns, b, tmpPath)
|
||||
@@ -703,7 +704,7 @@ func TestKVSnapshot(t *testing.T) {
|
||||
|
||||
ns := NewStore(zap.NewExample(), b, &lease.FakeLessor{}, nil, StoreConfig{})
|
||||
defer ns.Close()
|
||||
r, err := ns.Range([]byte("a"), []byte("z"), RangeOptions{})
|
||||
r, err := ns.Range(context.TODO(), []byte("a"), []byte("z"), RangeOptions{})
|
||||
if err != nil {
|
||||
t.Errorf("unexpect range error (%v)", err)
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user