SKALED-1745 Fixed version of corrent fork in checkOutExternalGas #1782
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Changes:
1 Transaction::checkOutExternalGas() now operates on current Ethereum fork, instead of Constantinople (base gas for 1 byte of data changed from 68 gas/b to 16 gas/b)
2 All changes are activated after correctForkInPowPatchTimestamp. This is true both for external gas check and for eth_estimateGas call.
3 Transaction::checkOutExternalGas() is called one additional time after consensus (needed to be sure that patch activates smoothly). This make possible little decrease of block processing performance (but unlikely).
Testing:
JsonRpcSuite/simplePoWTransaction tests that PoW transaction with incorrect amount of gas fails before patch timestamp and works after it
UPD: This is 2nd PR - after fixing functional tests
UPD2: For some reason, on this version fails functional test load_js/cat_cycle. It works on 3.18.0-develop.22, but fails on this branch. During test, skaled doesn't crash or exit, but transactions sending script at first works for some time, but then fails with "cannot connect" error.