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

bug: panic issue to merge proto files #416

Open
SebastianElvis opened this issue Jan 16, 2025 · 0 comments
Open

bug: panic issue to merge proto files #416

SebastianElvis opened this issue Jan 16, 2025 · 0 comments

Comments

@SebastianElvis
Copy link
Member

SebastianElvis commented Jan 16, 2025

Summary

This is a follow-up issue, for the panic issue to merge proto files, we did a temporary fix https://github.com/babylonchain/babylon-private/pull/264 to unblock FP CI.

But disabling those checks is a hacky way and it could easily sneak into the prod. So we need to follow up and find out a better way to fix it.

Ref:

babylon/app/app.go

Lines 559 to 560 in 9fa494b

// FIXME (https://github.com/babylonlabs-io/babylon-private/issues/266): This is a temporary fix
protoFiles, _ := proto.MergedRegistry()

Problem Definition

The root cause is that proto.MergedRegistry() tries to get all protobuf descriptors and find their metadata from Cosmso SDK's gogoproto package. The descriptors are stored in a global variable in the google.golang.org/protobuf package. However, libp2p also injects descriptors into this package, and gogoproto cannot find the metadata of these descriptors injected by libp2p. If the program loads libp2p then this error will occur, otherwise it won't. That's why unit tests do not panic but op stack e2e panic.

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

No branches or pull requests

1 participant