mirror of https://github.com/k3s-io/k3s
Don't store name twice in proxy
parent
d6bb688997
commit
450ccde521
|
@ -31,7 +31,6 @@ import (
|
|||
)
|
||||
|
||||
type serviceInfo struct {
|
||||
name string
|
||||
port int
|
||||
protocol string
|
||||
socket proxySocket
|
||||
|
@ -325,14 +324,14 @@ func (proxier *Proxier) StopProxy(service string) error {
|
|||
if !found {
|
||||
return fmt.Errorf("unknown service: %s", service)
|
||||
}
|
||||
return proxier.stopProxyInternal(info)
|
||||
return proxier.stopProxyInternal(service, info)
|
||||
}
|
||||
|
||||
func (proxier *Proxier) stopProxyInternal(info *serviceInfo) error {
|
||||
func (proxier *Proxier) stopProxyInternal(service string, info *serviceInfo) error {
|
||||
if !info.setActive(false) {
|
||||
return nil
|
||||
}
|
||||
glog.Infof("Removing service: %s", info.name)
|
||||
glog.Infof("Removing service: %s", service)
|
||||
return info.socket.Close()
|
||||
}
|
||||
|
||||
|
@ -346,7 +345,6 @@ func (proxier *Proxier) getServiceInfo(service string) (*serviceInfo, bool) {
|
|||
func (proxier *Proxier) setServiceInfo(service string, info *serviceInfo) {
|
||||
proxier.mu.Lock()
|
||||
defer proxier.mu.Unlock()
|
||||
info.name = service
|
||||
proxier.serviceMap[service] = info
|
||||
}
|
||||
|
||||
|
@ -407,9 +405,9 @@ func (proxier *Proxier) OnUpdate(services []api.Service) {
|
|||
continue
|
||||
}
|
||||
if exists && info.port != service.Port {
|
||||
err := proxier.stopProxyInternal(info)
|
||||
err := proxier.stopProxyInternal(service.ID, info)
|
||||
if err != nil {
|
||||
glog.Errorf("error stopping %s: %v", info.name, err)
|
||||
glog.Errorf("error stopping %s: %v", service.ID, err)
|
||||
}
|
||||
}
|
||||
glog.Infof("Adding a new service %s on %s port %d", service.ID, service.Protocol, service.Port)
|
||||
|
@ -431,9 +429,9 @@ func (proxier *Proxier) OnUpdate(services []api.Service) {
|
|||
defer proxier.mu.Unlock()
|
||||
for name, info := range proxier.serviceMap {
|
||||
if !activeServices.Has(name) {
|
||||
err := proxier.stopProxyInternal(info)
|
||||
err := proxier.stopProxyInternal(name, info)
|
||||
if err != nil {
|
||||
glog.Errorf("error stopping %s: %v", info.name, err)
|
||||
glog.Errorf("error stopping %s: %v", name, err)
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
Loading…
Reference in New Issue