mirror of
https://github.com/etcd-io/etcd.git
synced 2024-09-27 06:25:44 +00:00
integration: submit keys concurrently with watcher streaming
Tests for races between producer and consumer on watcher
This commit is contained in:
parent
9b5313a97c
commit
9aea99cd6e
@ -369,17 +369,20 @@ func TestV3WatchFromCurrentRevision(t *testing.T) {
|
||||
t.Fatalf("#%d: wAPI.Watch error: %v", i, err)
|
||||
}
|
||||
|
||||
go func() {
|
||||
for _, k := range tt.putKeys {
|
||||
kvc := pb.NewKVClient(clus.RandConn())
|
||||
req := &pb.PutRequest{Key: []byte(k), Value: []byte("bar")}
|
||||
if _, err := kvc.Put(context.TODO(), req); err != nil {
|
||||
t.Fatalf("#%d: couldn't put key (%v)", i, err)
|
||||
}
|
||||
}
|
||||
}()
|
||||
|
||||
if err := wStream.Send(tt.watchRequest); err != nil {
|
||||
t.Fatalf("#%d: wStream.Send error: %v", i, err)
|
||||
}
|
||||
|
||||
kvc := pb.NewKVClient(clus.RandConn())
|
||||
for _, k := range tt.putKeys {
|
||||
if _, err := kvc.Put(context.TODO(), &pb.PutRequest{Key: []byte(k), Value: []byte("bar")}); err != nil {
|
||||
t.Fatalf("#%d: couldn't put key (%v)", i, err)
|
||||
}
|
||||
}
|
||||
|
||||
var createdWatchId int64
|
||||
for j, wresp := range tt.wresps {
|
||||
resp, err := wStream.Recv()
|
||||
|
Loading…
x
Reference in New Issue
Block a user