in reader/reader.go [195:213]
func (f *FileReader) sendToQueue(reporter *report.Reporter, data []byte, workerIndex int) {
end := false
for {
select {
case (*f.queues)[workerIndex] <- data:
end = true
case <-time.After(time.Second * 5):
reporter.Lock.Lock()
_, skip := reporter.FailedWorkers[workerIndex]
reporter.Lock.Unlock()
if skip {
end = true
}
}
if end {
return
}
}
}