question-mark
Stuck on an issue?

Lightrun Answers was designed to reduce the constant googling that comes with debugging 3rd party libraries. It collects links to all the places you might be looking at while hunting down a tough bug.

And, if you’re still stuck at the end, we’re happy to hop on a call to see how we can help out.

Support requests larger than the default gRPC message length limit of 4 MB

See original GitHub issue

The Dot Net SDK does not support gRPC payloads beyond the default 4 MB.

Allow configuring the max send and receive message length for gRPC

You have to set these gRPC client options. The value provided is in bytes with a default of 4 MB.

grpc.max_send_message_length
grpc.max_receive_message_length

For reference see: https://github.com/dapr/python-sdk/pull/375 https://github.com/dapr/python-sdk/pull/458

EDIT: Actors still appear to be using HTTP. Please verify that the request size limit can be configured for Actors also.

Issue Analytics

  • State:open
  • Created a year ago
  • Comments:11 (8 by maintainers)

github_iconTop GitHub Comments

1reaction
kendallrodencommented, Nov 2, 2022

Thanks for creating this bernd!

0reactions
dale-personalcommented, Jan 26, 2023

@yash-nisar I have confirmed that this is still an issue. I have verified that the HTTP Max Request Size is set to 32 MB in the portal. The key here is that you need to send the request via the .net actor proxy

to reproduce this, create an IActor interface with the following method: Task<byte[]> Foo(byte[] data);

Implementation:

public class MyActor : Actor, IActor { public async Task<byte[]> Foo(byte[] data) { return await Task.FromResult(data); } }

deploy the actor service to an azure container app with dapr enabled. then invoke the actor method from the client with data larger than 4MB:

var proxy = ActorProxy.Create<IActor>(new ActorId(“foo”), nameof(IActor)) var data = new byte[5000000]; _ = proxy.Foo(data); // larger than 4MB fails

Read more comments on GitHub >

github_iconTop Results From Across the Web

By default, gRPC limits incoming messages to 4 MB . ...
gRPC uses per-message size limits to manage incoming and outgoing messages. By default, gRPC limits incoming messages to 4 MB. There is no...
Read more >
Release plan for Increasing grpc message limit from 4MB ...
For Java it defaults to the gRPC 4mb max. Our team is discussing a possible alignment, will get back to you with more...
Read more >
gRPC server complaining that message is larger than max ...
The header is 5 bytes long and in big endian. Wireshark is telling me that the gRPC message is malformed.
Read more >
gRPC: Configure data transmit size | by pointgoal
We will use rk-boot to configure data transmit size at server side. In grpc-go, there is no limit on sender side. The receiver...
Read more >
gRPC for .NET configuration
MaxReceiveMessageSize, 4 MB, The maximum message size in bytes that can be received by the server. If the server receives a message that...
Read more >

github_iconTop Related Medium Post

No results found

github_iconTop Related StackOverflow Question

No results found

github_iconTroubleshoot Live Code

Lightrun enables developers to add logs, metrics and snapshots to live code - no restarts or redeploys required.
Start Free

github_iconTop Related Reddit Thread

No results found

github_iconTop Related Hackernoon Post

No results found

github_iconTop Related Tweet

No results found

github_iconTop Related Dev.to Post

No results found

github_iconTop Related Hashnode Post

No results found