Running snowflake proxy as systemd service. Binary is built with GO 1.19 from commit 1bc54948 .
Started today. After 3 hourly Traffic relayed summary lines process did write
mux: ending readLoop dispatch error io: read/write on closed pipe
Is this something to worry about?
No related message found in normal log (from cmd line option -log).
Keep in mind: time stamp on stdout is local time whilst timestamp in -log is UTC.
Vort
October 25, 2022, 6:29pm
2
Looks like error is produced by this line:
return
case errors.Is(err, io.ErrShortBuffer), errors.Is(err, packetio.ErrTimeout):
m.log.Errorf("mux: failed to read from packetio.Buffer %s", err.Error())
continue
case err != nil:
m.log.Errorf("mux: ending readLoop packetio.Buffer error %s", err.Error())
return
}
if err = m.dispatch(buf[:n]); err != nil {
m.log.Errorf("mux: ending readLoop dispatch error %s", err.Error())
return
}
}
}
func (m *Mux) dispatch(buf []byte) error {
var endpoint *Endpoint
m.lock.Lock()
for e, f := range m.endpoints {
@Vort Thank you. I’m neither familiar with GO nor webRTC.
As far as I can see, the code snippet shown belongs to pion, which is a GO based library to deal with webRTC streams. The message I’ve stumbled across is from pion.
What does this mean? Is it some kind of misuse in snowflake or might this just be triggered from external, e.g. by unexpected closing of IP connection?
In the latter case I can just ignore it.
But else? Bug in pion or in snowflake?
Vort
October 26, 2022, 11:49am
4
For me, chances looks equal for all 3 reasons.
Maybe developers know (or want to know) more.