Skip to content

Enable specifying Grpc options like " MaxReceiveMessageSize" in WorkflowServiceCollectionExtensions #1163

@hsinghdeol-wpay

Description

@hsinghdeol-wpay

Currently dapr workflows fail with following error
2023-10-11T06:26:20.075785954Z Grpc.Core.RpcException: Status(StatusCode="ResourceExhausted", Detail="Received message exceeds the maximum configured message size.") 2023-10-11T06:26:20.075793354Z at Grpc.Net.Client.StreamExtensions.ReadMessageAsync[TResponse](Stream responseStream, GrpcCall call, Func2 deserializer, String grpcEncoding, Boolean singleMessage, CancellationToken cancellationToken)
2023-10-11T06:26:20.075801654Z at Grpc.Net.Client.Internal.HttpContentClientStreamReader2.MoveNextCore(CancellationToken cancellationToken) 2023-10-11T06:26:20.075833955Z at Microsoft.DurableTask.GrpcExtensions.ReadAllAsync[T](IAsyncStreamReader1 reader, CancellationToken cancellationToken)+MoveNext()
2023-10-11T06:26:20.075841955Z at Microsoft.DurableTask.GrpcExtensions.ReadAllAsync[T](IAsyncStreamReader1 reader, CancellationToken cancellationToken)+System.Threading.Tasks.Sources.IValueTaskSource<System.Boolean>.GetResult() 2023-10-11T06:26:20.075852855Z at Microsoft.DurableTask.Worker.Grpc.GrpcDurableTaskWorker.Processor.ProcessWorkItemsAsync(AsyncServerStreamingCall1 stream, CancellationToken cancellation)
2023-10-11T06:26:20.075860455Z at Microsoft.DurableTask.Worker.Grpc.GrpcDurableTaskWorker.Processor.ProcessWorkItemsAsync(AsyncServerStreamingCall1 stream, CancellationToken cancellation) 2023-10-11T06:26:20.075866755Z at Microsoft.DurableTask.Worker.Grpc.GrpcDurableTaskWorker.Processor.ExecuteAsync(String target, CancellationToken cancellation)
I found out that there is no way to override default limit of 4mb in the following file.

GrpcChannelOptions options = new() { HttpClient = client};

There should be way to override default GRPC options

Metadata

Metadata

Assignees

No one assigned

    Labels

    Type

    No type

    Projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions