-
Notifications
You must be signed in to change notification settings - Fork 53
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: canary fails on go-waku nodes due to libp2p upgrade #1768
Comments
go-waku node is advertising the following addresses:
I wonder if the problem is related to the addresses containing |
Just to clarify. An upgrade in go-waku (which uses go-libp2p) makes nwaku nodes to have problems when parsing multi addresses? |
@richard-ramos indeed seems Does this help to understand the issue better somehow? |
Yes, it happened once go-libp2p was upgraded. (I had not see those If current version is less restrictive, we probably need upgrade nwaku's nim-libp2p version. I did notice that if i returned Thank you, @diegomrsantos! |
@diegomrsantos do you know in which commit/PR was this change done? |
@richard-ramos this one vacp2p/nim-libp2p@0221aff |
I see. nwaku is using a version containing that change and fails. I ended up tracking the issue to these lines: If we replace them by: let f = subProto.getField(1, addressInfo.address)
if f.isOk() and f.get() == false:
return err(ProtoError.RequiredFieldMissing) then It works correctly, however, I do not know if this is the right way to fix this problem? |
We could also use the code below to not add empty addresses: if f.isOk():
if f.get():
record.addresses &= addressInfo
else:
return err(ProtoError.RequiredFieldMissing) But in both versions, we silently ignore Result errors. What do you think @Menduist? |
@diegomrsantos we should be consistent between peer record & identify decoding (fail if all parsing failed, otherwise succeed) |
I see the underlying issue has been closed. Do we consider this issue fixed if the submodule is updated on nwaku side? cc @diegomrsantos |
@jm-clius could it be tested to see if it's enough to fix the issue in nwaku? |
My comment didn't saved for some reason.... I could not reproduce with latest master. |
Thanks @SionoiS |
Problem
Recent the was and upgrade of
go-libp2p
upgrade ingo-waku
:Which appears to have broken compatibility with `wakucanary:
Which according to @richard-ramos is most probably due to multiaddress parsing incomapatibility:
Impact
All
go-waku.test
fleet canaries are red due to this issue:https://canary.infra.status.im/service/156/
Making them useless.
To reproduce
If you can reproduce the behavior, steps to reproduce:
make wakucanary
Expected behavior
It works.
The text was updated successfully, but these errors were encountered: