-
Notifications
You must be signed in to change notification settings - Fork 1k
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
Use strictMode during deploy #2849
Conversation
Does not this change need a fork? How about setting it efficent after xxx height? |
@superboyiii could you test it on mainnet? |
I will |
Can we include this one in 3.6.0 release ? |
@superboyiii could you test it with #2810 ? I would like to merge these two ones. |
Sure, done |
We need fork height in #2810, otherwise, it will break everything! |
Tested on mainnet, seems the storge differs a lot by this PR. |
Something is wrong. Either with a patch, or with a test. Script checking is "strict" in NeoGo and we're stateroot-compatible with 3.5.0 C# node for mainnet. This PR is very much different from #2810. |
I will double check again. But how could it be stateroot-compatible with 3.5.0 C# node? It's already changed the code of native contract - ContractManagement, the state root should be changed from genesis block. I mean the storge of genesis block will be differed. |
You can either rebase this PR to 3.5.0 and try it this way (it'll work), or collect state change data for the current master and current master + this PR. NeoGo 0.101.1 is 3.5.0-compatible, it doesn't have current 3.5.0..master changes from C# node, but it has a logic similar to "strict" mode and it's stateroot-compatible (because "strictness" doesn't require genesis block changes). |
OK, find the problem. My local based master was pull including #2841, however I pull this branch several days ago when #2841 has not been merged yet. So the difference should be caused by #2841 |
This check is good and was present here since #1729, but it was accidently removed from the reference implementation (see the discussion in neo-project/neo#2848). The removal of this check from the C# node leaded to the T5 testnet state diff since 1670095 heigh which causes inability to process new blocks since 2272533 height (see #3049). This check was added back to the C# node in neo-project/neo#2849, but it is planned to be the part of the upcoming 3.6.0 C# node release. We need to keep our testnet healthy, thus, strict contract script check will be temporary removed from the node code and is planned to be added back to be a part of the next 3.6.0-compatible release. Close #3049.
This check is good and was present here since #1729, but it was accidently removed from the reference implementation (see the discussion in neo-project/neo#2848). The removal of this check from the C# node leaded to the T5 testnet state diff since 1670095 heigh which causes inability to process new blocks since 2272533 height (see #3049). This check was added back to the C# node in neo-project/neo#2849, but it is planned to be the part of the upcoming 3.6.0 C# node release. We need to keep our testnet healthy, thus, strict contract script check will be temporary removed from the node code and is planned to be added back to be a part of the next 3.6.0-compatible release. Close #3049. Signed-off-by: Anna Shaleva <shaleva.ann@nspcc.ru>
This check is good and was present here since #1729, but it was accidently removed from the reference implementation (see the discussion in neo-project/neo#2848). The removal of this check from the C# node leaded to the T5 testnet state diff since 1670095 heigh which causes inability to process new blocks since 2272533 height (see #3049). This check was added back to the C# node in neo-project/neo#2849, but it is planned to be the part of the upcoming 3.6.0 C# node release. We need to keep our testnet healthy, thus, strict contract script check will be temporary removed from the node code and is planned to be added back to be a part of the next 3.6.0-compatible release. Close #3049. Signed-off-by: Anna Shaleva <shaleva.ann@nspcc.ru>
This check is good and was present here since #1729, but it was accidently removed from the reference implementation (see the discussion in neo-project/neo#2848). The removal of this check from the C# node leaded to the T5 testnet state diff since 1670095 heigh which causes inability to process new blocks since 2272533 height (see #3049). This check was added back to the C# node in neo-project/neo#2849, but it is planned to be the part of the upcoming 3.6.0 C# node release. We need to keep our testnet healthy, thus, strict contract script check will be temporary removed from the node code and is planned to be added back to be a part of the next 3.6.0-compatible release. Close #3049. Signed-off-by: Anna Shaleva <shaleva.ann@nspcc.ru>
Great question. I thought that everyone won't care too much about the hardfork. |
Close #2848