Don't close when tree is loading, fix peer conditions
This commit is contained in:
parent
f442b21969
commit
1e1f71d700
@ -337,11 +337,13 @@ func (s *space) BuildTree(ctx context.Context, id string, opts BuildTreeOpts) (t
|
|||||||
PeerGetter: s.peerManager,
|
PeerGetter: s.peerManager,
|
||||||
BuildObjectTree: treeBuilder,
|
BuildObjectTree: treeBuilder,
|
||||||
}
|
}
|
||||||
if t, err = synctree.BuildSyncTreeOrGetRemote(ctx, id, deps); err != nil {
|
|
||||||
return nil, err
|
|
||||||
}
|
|
||||||
s.treesUsed.Add(1)
|
s.treesUsed.Add(1)
|
||||||
log.Debug("incrementing counter", zap.String("id", id), zap.Int32("trees", s.treesUsed.Load()), zap.String("spaceId", s.id))
|
log.Debug("incrementing counter", zap.String("id", id), zap.Int32("trees", s.treesUsed.Load()), zap.String("spaceId", s.id))
|
||||||
|
if t, err = synctree.BuildSyncTreeOrGetRemote(ctx, id, deps); err != nil {
|
||||||
|
s.treesUsed.Add(-1)
|
||||||
|
log.Debug("decrementing counter, load failed", zap.String("id", id), zap.Int32("trees", s.treesUsed.Load()), zap.String("spaceId", s.id), zap.Error(err))
|
||||||
|
return nil, err
|
||||||
|
}
|
||||||
return
|
return
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@ -63,14 +63,14 @@ func (p *peer) NewStream(ctx context.Context, rpc string, enc drpc.Encoding) (dr
|
|||||||
}
|
}
|
||||||
|
|
||||||
func (p *peer) Read(b []byte) (n int, err error) {
|
func (p *peer) Read(b []byte) (n int, err error) {
|
||||||
if n, err = p.sc.Read(b); err != nil {
|
if n, err = p.sc.Read(b); err == nil {
|
||||||
p.UpdateLastUsage()
|
p.UpdateLastUsage()
|
||||||
}
|
}
|
||||||
return
|
return
|
||||||
}
|
}
|
||||||
|
|
||||||
func (p *peer) Write(b []byte) (n int, err error) {
|
func (p *peer) Write(b []byte) (n int, err error) {
|
||||||
if n, err = p.sc.Write(b); err != nil {
|
if n, err = p.sc.Write(b); err == nil {
|
||||||
p.UpdateLastUsage()
|
p.UpdateLastUsage()
|
||||||
}
|
}
|
||||||
return
|
return
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user