Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

grpc overhead estimate seems high #14450

Closed
geetasg opened this issue Sep 12, 2022 · 3 comments
Closed

grpc overhead estimate seems high #14450

geetasg opened this issue Sep 12, 2022 · 3 comments

Comments

@geetasg
Copy link

geetasg commented Sep 12, 2022

What happened?

etcd 3.5 has following two variables

DefaultMaxRequestBytes = 1.5 * 1024 * 1024

DefaultMaxRequestBytes = 1.5 * 1024 * 1024

and

defaultMaxCallSendMsgSize = grpc.MaxCallSendMsgSize(2 * 1024 * 1024)

defaultMaxCallSendMsgSize = grpc.MaxCallSendMsgSize(2 * 1024 * 1024)

The comment says that the difference is to accommodate grpc overhead

code snip for quick ref:

    // client-side request send limit, gRPC default is math.MaxInt32
    // Make sure that "client-side send limit < server-side default send/recv limit"
    // Same value as "embed.DefaultMaxRequestBytes" plus gRPC overhead bytes
    defaultMaxCallSendMsgSize = grpc.MaxCallSendMsgSize(2 * 1024 * 1024)

This issue to request more insight on why the grpc overhead is estimated to be about 500K

What did you expect to happen?

We would like to find out why the estimate is the way it is and should it be lower.

How can we reproduce it (as minimally and precisely as possible)?

n/a - requesting info about the code.

Anything else we need to know?

No response

Etcd version (please run commands below)

$ etcd --version
# paste output here
etcd Version: 3.5.4
Git SHA: 029ebf740
Go Version: go1.16.15
Go OS/Arch: linux/amd64

$ etcdctl version
# paste output here
 etcdctl version
etcdctl version: 3.5.4
API version: 3.5

Etcd configuration (command line flags or environment variables)

paste your configuration here

Etcd debug information (please run commands blow, feel free to obfuscate the IP address or FQDN in the output)

$ etcdctl member list -w table
# paste output here

$ etcdctl --endpoints=<member list> endpoint status -w table
# paste output here

Relevant log output

No response

@ahrtr
Copy link
Member

ahrtr commented Sep 15, 2022

@geetasg Do you see any real issue in production or your development environment?

@spzala
Copy link
Member

spzala commented Sep 26, 2022

Please look at some context here - #9291 Thanks!

@serathius
Copy link
Member

Closing as part of migration of issues labeled as questions to GitHub discussions.
GitHub discussions makes it easier for the whole community to provide answered.

If you think your question is still relevant, feel free to ask at https://github.com/etcd-io/etcd/discussions

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Development

No branches or pull requests

4 participants