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

Debug potential unregister peer failure #2043

Closed
appetrosyan opened this issue Mar 31, 2022 · 3 comments
Closed

Debug potential unregister peer failure #2043

appetrosyan opened this issue Mar 31, 2022 · 3 comments
Assignees
Labels
Bug Something isn't working iroha2-dev The re-implementation of a BFT hyperledger in RUST

Comments

@appetrosyan
Copy link
Contributor

appetrosyan commented Mar 31, 2022

MWE

Install Iroha 2 java SDK.

docker compose up

run
https://gist.github.com/arndey/98c5b2bb300c13304beba53eca9e2882

Reproducibility outside docker

Reproducible.

@appetrosyan appetrosyan added the iroha2-dev The re-implementation of a BFT hyperledger in RUST label Mar 31, 2022
@appetrosyan appetrosyan self-assigned this Mar 31, 2022
@appetrosyan
Copy link
Contributor Author

The problem is that the peer being unregistered is not aware that it is being unregistered, and is still trying to connect to the peers that it is part of.

@appetrosyan appetrosyan added the Bug Something isn't working label May 4, 2022
@appetrosyan appetrosyan removed their assignment Jun 6, 2022
@QuentinI QuentinI self-assigned this Jun 8, 2022
@QuentinI
Copy link
Contributor

If you wait after unregistering, it does become unavailable, it just doesn't have time to execute the transaction in attached example.

What we really have problems with is peer registration, since I can neither re-register peer after unregistering it, neither register a new peer. #2060 is also kind-of-invalid, since the new peer added there isn't configured to trust any of the others, so it refuses to connect when they try to, which sounds like expected behaviour. Unfortunately, if you add other peer's to new peer's configuration, it joins the network, but fails to sync blocks.

As far as I understand there are two, maybe three issues here - something I/O related that makes reconnecting peer after unregistering and re-registering it fail and some problems with block sync, which prevents new peers from syncing by failing validation. There may be is a third problem connected to actors, but I think while they aren't failing gracefully, that's not the root cause here, so I'm currently concentrating on the other two.

@QuentinI
Copy link
Contributor

Closing this one, since the unregister peer is verified to work.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Bug Something isn't working iroha2-dev The re-implementation of a BFT hyperledger in RUST
Projects
None yet
Development

No branches or pull requests

2 participants