-
Type:
Patch request
-
Resolution: Unsupported version
-
Priority:
Trivial
-
None
-
Affects Version/s: None
-
Component/s: None
-
None
/var/log/message
Aug 27 00:00:09 ti13-wag101 zabbix_agent2: panic: send on closed channel
Aug 27 00:00:09 ti13-wag101 zabbix_agent2: goroutine 75404810 [running]:
Aug 27 00:00:10 ti13-wag101 zabbix_agent2: zabbix.com/plugins/vfs/fs.(*fsCaller).execute(0xc0001de000, {0xc00025e000, 0x21})
Aug 27 00:00:10 ti13-wag101 zabbix_agent2: /data/scripts/oss/zabbix/zabbix-6.0.0/src/go/plugins/vfs/fs/fscaller.go:77 +0xdc
Aug 27 00:00:10 ti13-wag101 zabbix_agent2: created by zabbix.com/plugins/vfs/fs.(*fsCaller).run
Aug 27 00:00:10 ti13-wag101 zabbix_agent2: /data/scripts/oss/zabbix/zabbix-6.0.0/src/go/plugins/vfs/fs/fscaller.go:46 +0xc5
Aug 27 00:00:10 ti13-wag101 systemd: zabbix_agent2.service: main process exited, code=exited, status=2/INVALIDARGUMENT
Aug 27 00:00:10 ti13-wag101 systemd: Unit zabbix_agent2.service entered failed state.
Aug 27 00:00:10 ti13-wag101 systemd: zabbix_agent2.service failed.
fix code:
func (f *fsCaller) execute(path string) { stats, err := f.fsFunc(path) if isStuck(path) { f.p.Debugf("mount '%s' has become available", path) stuckMux.Lock() stuckMounts[path] = false stuckMux.Unlock() return } select { case f.errChan <- err: if err != nil { return } case <-time.After(time.Millisecond * 10): return } select { case f.outChan <- stats: case <-time.After(time.Millisecond * 10): return } }