github.com/ydb-platform/ydb-go-sdk/v3@v3.89.2/internal/conn/errors.go (about) 1 package conn 2 3 import ( 4 grpcCodes "google.golang.org/grpc/codes" 5 6 "github.com/ydb-platform/ydb-go-sdk/v3/internal/xerrors" 7 ) 8 9 func IsBadConn(err error, goodConnCodes ...grpcCodes.Code) bool { 10 if !xerrors.IsTransportError(err) { 11 return false 12 } 13 14 if xerrors.IsTransportError(err, 15 append( 16 goodConnCodes, 17 grpcCodes.ResourceExhausted, 18 grpcCodes.OutOfRange, 19 grpcCodes.OK, 20 // grpcCodes.Canceled, 21 // grpcCodes.Unknown, 22 // grpcCodes.InvalidArgument, 23 // grpcCodes.DeadlineExceeded, 24 // grpcCodes.NotFound, 25 // grpcCodes.AlreadyExists, 26 // grpcCodes.PermissionDenied, 27 // grpcCodes.FailedPrecondition, 28 // grpcCodes.Aborted, 29 // grpcCodes.OutOfRange, 30 // grpcCodes.Unimplemented, 31 // grpcCodes.Internal, 32 // grpcCodes.DataLoss, 33 // grpcCodes.Unauthenticated, 34 )..., 35 ) { 36 return false 37 } 38 39 return true 40 }