mirror of
https://github.com/etcd-io/etcd.git
synced 2024-09-27 06:25:44 +00:00
clientv3/leasing: fix racey waitSession
Signed-off-by: Gyuho Lee <gyuhox@gmail.com>
This commit is contained in:
parent
bdc508cadf
commit
3193f3c9ab
@ -445,8 +445,11 @@ func (lkv *leasingKV) revokeLeaseKvs(ctx context.Context, kvs []*mvccpb.KeyValue
|
||||
}
|
||||
|
||||
func (lkv *leasingKV) waitSession(ctx context.Context) error {
|
||||
lkv.leases.mu.RLock()
|
||||
sessionc := lkv.sessionc
|
||||
lkv.leases.mu.RUnlock()
|
||||
select {
|
||||
case <-lkv.sessionc:
|
||||
case <-sessionc:
|
||||
return nil
|
||||
case <-lkv.ctx.Done():
|
||||
return lkv.ctx.Err()
|
||||
|
Loading…
x
Reference in New Issue
Block a user