mirror of
https://github.com/etcd-io/etcd.git
synced 2024-09-27 06:25:44 +00:00
rafthttp: make "ActiveSince" non-blocking on write lock
"ActiveSince" is read-only, and should be able to call concurrently, as long as there is no routine holding write lock (send, send snapshot). e.g. "ActiveSince" is used around etcd server "processInternalRaftRequestOnce", should be non-blocking Signed-off-by: Gyuho Lee <gyuhox@gmail.com>
This commit is contained in:
parent
d6b46ac969
commit
fbe6767570
@ -338,8 +338,8 @@ func (t *Transport) UpdatePeer(id types.ID, us []string) {
|
||||
}
|
||||
|
||||
func (t *Transport) ActiveSince(id types.ID) time.Time {
|
||||
t.mu.Lock()
|
||||
defer t.mu.Unlock()
|
||||
t.mu.RLock()
|
||||
defer t.mu.RUnlock()
|
||||
if p, ok := t.peers[id]; ok {
|
||||
return p.activeSince()
|
||||
}
|
||||
|
Loading…
x
Reference in New Issue
Block a user