-
Notifications
You must be signed in to change notification settings - Fork 3.8k
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
Rollback ABCI use for cross module communication #9070
Comments
The simple way that @AmauryM and I had looked at may be reusing |
From my perspective I think we could consider this nice-to-have for 0.43. Maybe we can just put in code comments to indicate this isn't a pattern others should imitate for now. |
Do we have any ETA for ADR-033? |
Let's check in on this on next Friday's architecture call. It'd be great to get ADR33 intermodule wiring finalized so other chains can start making use of the new way of doing inter module rpc, etc. |
closing as we will begin working on adr33 soon, finally :). Modules using the query router to get information will be a way for modules to communicate if needed. There isnt an inherent issue with this. |
Summary
The "Write back account changes after tracking delegation/undelegation for vesting accounts" #8865 Pull Request introduced a heavy weight machinery to communicate x/auth with x/bank.
Problem Definition
x/auth can't import keeper x/bank - that cause circular dependency. In the pull request, author used ABCI and App gRPC Query Server to get information from x/auth. This causes few potential problems:
This is only used for migration, but adding it to
master
already signals an example and could lead to reuse this in other places by other developers.Proposal
Standard way to communicate between modules is to use keepers. As noted above, we can't do it in a direct way. What we could do, however, is to:
A new way of solving this would be ADR-33 (which is not done yet for master)
References:
For Admin Use
The text was updated successfully, but these errors were encountered: