mirror of
https://github.com/zeromicro/go-zero.git
synced 2026-05-14 02:10:00 +08:00
fix: etcd discovery mechanism on grpc with idle manager (#4589)
This commit is contained in:
@@ -38,9 +38,24 @@ func (b *discovBuilder) Build(target resolver.Target, cc resolver.ClientConn, _
|
||||
sub.AddListener(update)
|
||||
update()
|
||||
|
||||
return &nopResolver{cc: cc, closeFunc: func() { sub.Close() }}, nil
|
||||
return &discovResolver{
|
||||
cc: cc,
|
||||
sub: sub,
|
||||
}, nil
|
||||
}
|
||||
|
||||
func (b *discovBuilder) Scheme() string {
|
||||
return DiscovScheme
|
||||
}
|
||||
|
||||
type discovResolver struct {
|
||||
cc resolver.ClientConn
|
||||
sub *discov.Subscriber
|
||||
}
|
||||
|
||||
func (r *discovResolver) Close() {
|
||||
r.sub.Close()
|
||||
}
|
||||
|
||||
func (r *discovResolver) ResolveNow(_ resolver.ResolveNowOptions) {
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user