You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
// 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.
The text was updated successfully, but these errors were encountered:
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
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.
The text was updated successfully, but these errors were encountered: