Description
Problem
TBD
Solution
When i create a new smart contract via sendRawTransaction, I want to be able to directly deploy the contract via a normal Ethereum Transaction, without needing the Json RPC internally to use HFS, and custom logic, due the. 6kb restrition.
The max size has been raised to 128kb, enabling to deploy smart contract directly ( max 24kb + Call params).
We need to add a new logic behind a feature flag, activated by default, that directly pings smart contract deployment to the consensus node, If deactivated, the HFS logic will still be triggered
Acceptance Criteria
-
When i deploy a smart contract, lower than the max SC Size 24kb, via JSON RPC relay, that has the JUMBO_TX_ENABLED= true, the code should succesfully call the consensus node, and succeed, if total transaction size is 128kb
-
When i deploy a smart contract, lower than the max sc Size 24kb, via JSON RPC relay, that has the JUMBO_TX_ENABLED= true, the code should not call the consensus node, if total transaction size is >128kb, showing a validation error
-
When i deploy a smart contract, bigger than the max SC Size 24kb, via JSON RPC relay, that has the JUMBO_TX_ENABLED= true, the code should not call the consensus node, and fail, showing a validation error
-
When i deploy a smart contract, smaller than the max SC Size 24kb, via JSON RPC relay, that has the JUMBO_TX_ENABLED= false, the code should not call the consensus node durectly, using the HFS logic, and succeed.
-
When i deploy a smart contract, bugger than the max SC Size 24kb, via JSON RPC relay, that has the JUMBO_TX_ENABLED= false, the code should not call the consensus node directly, failing
#Implementation Details
- Add a new precheck for th 24kb size ( EIp-170)
- We need sync with Services, to see their implementation staus
Alternatives
No response