@@ -1,6 +1,8 @@
|
||||
package codes
|
||||
|
||||
import (
|
||||
"context"
|
||||
|
||||
"google.golang.org/grpc/codes"
|
||||
"google.golang.org/grpc/status"
|
||||
)
|
||||
@@ -10,6 +12,17 @@ func Acceptable(err error) bool {
|
||||
switch status.Code(err) {
|
||||
case codes.DeadlineExceeded, codes.Internal, codes.Unavailable, codes.DataLoss:
|
||||
return false
|
||||
case codes.Unknown:
|
||||
return acceptableUnknown(err)
|
||||
default:
|
||||
return true
|
||||
}
|
||||
}
|
||||
|
||||
func acceptableUnknown(err error) bool {
|
||||
switch err {
|
||||
case context.DeadlineExceeded:
|
||||
return false
|
||||
default:
|
||||
return true
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user