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

Hermes ports not getting detected #1861

Closed
5 tasks
dhogaivannan opened this issue Feb 9, 2022 · 20 comments · Fixed by #1882
Closed
5 tasks

Hermes ports not getting detected #1861

dhogaivannan opened this issue Feb 9, 2022 · 20 comments · Fixed by #1882
Assignees
Milestone

Comments

@dhogaivannan
Copy link

dhogaivannan commented Feb 9, 2022

Crate

ibc-rs (Hermes)

Summary of Bug

Creating channels between Band Protocol and another chain from it's oracle port for fetching prices, it throws could not resolve channel and port is invalid.

Version

hermes - release - v0.11.1

Steps to Reproduce

ibc-0 = Band Protocol (band-laozi-testnet4)
ibc-1 = Any chain with oracle port*

* = https://github.com/comdex-official/comdex/tree/oracle-liquidation (This binary and branch contains bandoracle port for fetching prices)

hermes create channel test-1 band-laozi-testnet4 --port-a bandoracle --port-b oracle

Logs:

WARN ThreadId(01) cannot resolve channel version for unknown port id 'oracle'
Error: channel error: could not resolve channel version because the port is invalid: oracle

Acceptance Criteria

Port from Band or Comdex getting detected for channel creation.


For Admin Use

  • Not duplicate issue
  • Appropriate labels applied
  • Appropriate milestone (priority) applied
  • Appropriate contributors tagged
  • Contributor assigned/self-assigned
@romac
Copy link
Member

romac commented Feb 9, 2022

Can you please try from this branch and see if it fixes the issue for you? #1825

@romac
Copy link
Member

romac commented Feb 9, 2022

Likely duplicate of #1837

@romac romac added the duplicate label Feb 9, 2022
@dhogaivannan
Copy link
Author

dhogaivannan commented Feb 10, 2022

ThreadId(04) send_tx{id=band-laozi-testnet4}:estimate_gas: failed to simulate tx. propagating error to caller: gRPC call failed with status: status: InvalidArgument, message: "failed to execute message; message index: 0: channel open init callback failed: got , expected bandchain-1: invalid ICS20 version: invalid request", details: [], metadata: MetadataMap { headers: {"content-type": "application/grpc"} }
Binary compiled from the branch mentioned, got this error instead now while creating channel

@dhogaivannan
Copy link
Author

@romac can you please help me out on this?

@romac
Copy link
Member

romac commented Feb 14, 2022

@dhogaivannan I am working on this in #1825

@romac romac self-assigned this Feb 14, 2022
@adizere adizere added this to the v0.12.0 milestone Feb 14, 2022
@cyborgshead
Copy link
Contributor

cyborgshead commented Feb 15, 2022

I'm confirming this issue on 0.11.1, 0.9.0 works fine (v0.44.3 / v1.2.2)

@romac
Copy link
Member

romac commented Feb 15, 2022

@dhogaivannan Can you please try with Hermes v0.11.1 by specifying the appropriate version using the --channel-version option of the hermes create channel command?

@romac
Copy link
Member

romac commented Feb 15, 2022

@litvintech Thanks for the heads-up! I have a few follow-up questions:

a) Are you using the --channel-version option?
b) Can you please paste the commands you are running on 0.11.1 and 0.9.0?
c) Does it work with 0.10.0?

@dhogaivannan
Copy link
Author

dhogaivannan commented Feb 16, 2022

@romac , yes sure, v0.11.1 official build or the branch 1797-ibc-v3? I'll go ahead with official branch for now and get back to you

From v0.11.1 with --channel-version , it throws WARN ThreadId(01) cannot resolve channel version for unknown port id 'oracle'

From v0.10.0 with --channel-version , it throws WARN ThreadId(01) cannot resolve channel version for unknown port id 'oracle'

From v0.9.0 , --channel-version didn't work, so it threw [band-laozi-testnet4] estimate_gas: failed to simulate tx with non-recoverable error: gRPC call failed with status: status: Unknown, message: "failed to execute message; message index: 0: channel open init callback failed: got , expected bandchain-1: invalid ICS20 version", details: [], metadata: MetadataMap { headers: {"content-type": "application/grpc", "x-cosmos-block-height": "3717954"} }

Commands used:

hermes create channel band-laozi-testnet4 test-1 --port-a oracle --port-b bandoracle --channel-version bandchain-1

@dhogaivannan
Copy link
Author

dhogaivannan commented Feb 16, 2022

Tried #1882 , threw the same error, channel version for unknown port id 'oracle', let me know if i tried it too early

@romac
Copy link
Member

romac commented Feb 16, 2022

Did you specify the version with --channel-version?

@dhogaivannan
Copy link
Author

@romac yes with channel version

@romac
Copy link
Member

romac commented Feb 16, 2022

Can you please post the full command and output?

@dhogaivannan
Copy link
Author

dhogaivannan commented Feb 16, 2022

Yes sure @romac , ran this command:
hermes create channel band-laozi-testnet4 test-1 --port-a oracle --port-b bandoracle --channel-version bandchain-1

Output after connection-handshake is finished (Client and connections are done)

2022-02-16T13:55:16.066381Z WARN ThreadId(01) cannot resolve channel version for unknown port id 'oracle'
and repeats in a loop

Full logs are attached here for more reference

@romac
Copy link
Member

romac commented Feb 17, 2022

The branch you are running might be outdated because that warning is no longer present in the branch romac/1861-non-standard-ports, can you please try to do a git pull and also set log_level = "trace" in the Hermes configuration file?

@romac
Copy link
Member

romac commented Feb 17, 2022

@dhogaivannan I think I have a proper fix for this issue, and will notify you when you can test again with the romac/1861-non-standard-ports branch.

@dhogaivannan
Copy link
Author

@romac , the latest pull from your branch works fine, thanks a lot for your help!

@dhogaivannan
Copy link
Author

@romac , while clearing packets with hermes tx raw packet-recv band-laozi-testnet4 test-1 bandoracle channel-0, it threw this error

failed to simulate tx. propagating error to caller: gRPC call failed with status: status: Unknown, message: "failed to execute message; message index: 1: timeout packet callback failed: cannot unmarshal packet data: proto: illegal wireType 6: unknown request", details: [], metadata: MetadataMap { headers: {"content-type": "application/grpc", "x-cosmos-block-height": "10634"} }
Error: link error: failed with underlying error: gRPC call failed with status: status: Unknown, message: "failed to execute message; message index: 1: timeout packet callback failed: cannot unmarshal packet data: proto: illegal wireType 6: unknown request", details: [], metadata: MetadataMap { headers: {"content-type": "application/grpc", "x-cosmos-block-height": "10634"} }

@romac
Copy link
Member

romac commented Feb 18, 2022

@dhogaivannan This does not seem to have anything to do with this issue. Can you please gather as much information as you can (trace logs, Hermes version, etc.) and open a new issue?

@dhogaivannan
Copy link
Author

Yeah sure, I'll close this issue now then, thanks for your support team!

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

Successfully merging a pull request may close this issue.

4 participants