Explorar o código

fix: more accurate panic message on mapreduce (#2311)

Kevin Wan %!s(int64=2) %!d(string=hai) anos
pai
achega
d978563523
Modificáronse 1 ficheiros con 2 adicións e 0 borrados
  1. 2 0
      core/mr/mapreduce.go

+ 2 - 0
core/mr/mapreduce.go

@@ -212,6 +212,8 @@ func mapReduceWithPanicChan(source <-chan interface{}, panicChan *onceChan, mapp
 		cancel(context.DeadlineExceeded)
 		return nil, context.DeadlineExceeded
 	case v := <-panicChan.channel:
+		// drain output here, otherwise for loop panic in defer
+		drain(output)
 		panic(v)
 	case v, ok := <-output:
 		if err := retErr.Load(); err != nil {