Use RPC Client's Waiter functionality for auto-deploy procedure #444
Labels
enhancement
Improving existing functionality
I4
No visible changes
S2
Regular significance
U4
Nothing urgent
Is your feature request related to a problem? Please describe.
Current auto-deploy scheme sends notary requests with contracts deploy/update code and doesn't wait until main/fallback are accepted to chain. There are
for ; ; prm.monitor.waitForNextBlock(ctx)
loops that are used to track the consequenses of the contract deploy/update.Describe the solution you'd like
I consider that we can safely get rid of
for ; ; prm.monitor.waitForNextBlock(ctx)
loops, create cancellable context, subscribe for Management's Deploy/Update notifications and use waiter.Wait to wait for either main or fallback. Cancellable context may be used to cancel waiter in case if contract update happens earlier on behalf of some other notary request. I think that with Waiter this code will be clearer. There's a prototype, but it can be improved as described above: 34b1944f7bdfb4f8c8fe8831499d57483ee9ff52.The same approach can be applied to the simple GAS transfer transactions that increase notary balance for auto-deploy procedure participants.
The text was updated successfully, but these errors were encountered: