EOSIO/eosio.contracts

Status on deprecating deferred transactions from EOSIO system contracts

DenisCarriere opened this issue ยท 20 comments

Is there any updates on the deprecation of deferred transactions from the EOSIO system contracts, in particular the eosio.msig contract.

Last edits were done 3 months ago, does this mean this is complete or is still under review?

https://github.com/EOSIO/eosio.contracts/tree/develop-deprecate-deferred-trx

There are more and more deferred transactions clogging the network and soon it will be near impossible to push an MSIG on EOS Mainnet.

Example of deferred transaction flooding the network.
https://eosq.app/tx/695382002edefa0ec9352e1c4af500f3d8b404af150d096d204c72a74abe808d

image

CC: @johndebord @arhag

it will be near impossible to push an MSIG on EOS Mainnet.

Yep. We've worked to get our eosDAC custodians (10 of 12) to sign an msig which we tried to execute today but it timed out. Kind of hard to run a DAC using msig if coordinating signatures ends up being a waste of time. We look forward to whatever solutions exist for this.

yes, the bug is , run endless loop in onerror function can avoid pay the defer tx bill.
it should be fixed

I also see this problem on other multisig/DAO transactions that require approval, for two DAO implementations that I'm managing. These are tricky to troubleshoot and it's essentially requires a full "re-do" of approvals.

Thank you for this report and for coordinating with PBE to raise the issues that the public networks are facing.

We are pushing for an out-of-band release of the work present on this branch: https://github.com/EOSIO/eosio.contracts/tree/develop-deprecate-deferred-trx once we have proper testing competed and documentation prepared.

At this time, the intent is to tag v1.8.3-inline-msig with the minimal change set on top of v1.8.3 and release a patch file. Future releases will include these changes as well.

If the plan changes I will communicate the changes here.

@b1bart perfect, will there be any ABI changes?

If there's no changes to the ABI, only a setcode action would be required to update the contract.

If so, can these changes be well documented in the release notes.

@DenisCarriere There will be some ABI changes necessary to respect the existence of waits in the authorizations. Those ABI changes do not affect the actions issued to operate the contract AFAIK but will affect the table data for things such as approvals.

We will seek to clearly outline these changes as part of the release notes that come with the patch.

dac.vigor.ai seeing many deferred transactions expiring, many msigs failing based on their dependence on deferred

Same as VIGOR, at KROWN DAC all of the msigs failing, all expiring upon execution at dac.krown.club

There seems to be a spike in the number of failing deferred transactions. This has been experienced by myself and other members of the Vigor DAC. To prevent this inconvenience and for security reasons a fix is much needed.

More than 50% of MSIG deferred transactions are expiring at the moment. DAC organizations are one of the bright spots on EOSIO , we need help ASAP!

https://dac.vigor.ai
Seeing many deferred transactions expiring, many msigs failing based on their dependence on deferred t.x
Recently Creat msig Proposal are most deferred expired!! and Today's msig are all deferred expired!
Need help msig on EOS Mainnet!

e.g)
image

Not being able to reliably execute msigs due to the deferred transaction expiring is impacting several of our projects we work with. Please look to have this update deployed ASAP to resolve the issues and get msigs working reliably again on all EOSIO chains.

Please patch this asap. this is a long standing issue that is affecting the growth of the ecosystem. Please put more focused attention towards this.

This has now become a major issue for DACs on EOS and affects some important functionality of the chain. On eosDAC, the custodians have been unable to make approved payments. This is potentially causing liability risks and forcing processes to be changed ad-hoc. Also, as it stands, the forthcoming DACFactory will not be able to function until this issue is resolved. Please patch asap.

All of the msigs are failing for KROWN DAC.
All expiring upon execution at dac.krown.club

From EOS Mainnet BPs telegram:

image

We are having msig issues too now. They were working before

We are having msig issues too now. They were working before

you can sign transaction offchain now, temporarily

cf commented

Please fix this ASAP, has interfered with some of our upcoming projects

I'm also having issues with this. I'm in the process of refactoring contracts around using unreliable deferred transactions and having a deferred transaction stuck there in the eosio.msig is a very awkward bottleneck.

This is very high priority for anyone using the supposed high security of msigs on eosio but if they don't work then it's pretty useless.

At the moment there are several DAC's using this software and are fairly well blocked from operation due to this issue.

More frequent updates on this would give us some confidence that this issue is actually being addressed as a high priority.