Closed kigawas closed 2 years ago
@kigawas This seems to be related to the way the contract is compiled and not the node itself.
Can you make sure that you use the same Solidity pragma and solc version when compiling?
@kigawas This seems to be related to the way the contract is compiled and not the node itself.
Can you make sure that you use the same Solidity pragma and solc version when compiling?
It happened when there are some failed contract deployment transactions on one node. Looks like not really related with solidity or solc, but related with the way to dispose of failed transactions.
A probable way to reproduce is to create contract deployment transactions with wrong nonce.
@kigawas Thanks.
A probable way to reproduce is to create contract deployment transactions with wrong nonce.
If sending a transaction with the wrong nonce we should get either "nonce too low" errors or see transactions pending forever.
If you are sure you are compiling the contract correctly (with compatible solc version and pragma). Then can you make sure that the gas limit set on the deployment transaction is high enough? Thanks!
@kigawas Thanks.
A probable way to reproduce is to create contract deployment transactions with wrong nonce.
If sending a transaction with the wrong nonce we should get either "nonce too low" errors or see transactions pending forever.
If you are sure you are compiling the contract correctly (with compatible solc version and pragma). Then can you make sure that the gas limit set on the deployment transaction is high enough? Thanks!
I don't think it's related with gas limit. My contracts are very simple ones (Box or Migration stuff you can find everywhere).
Is there any chance you could post your genesis.json
for me?
Is there any chance you could post your
genesis.json
for me?
Nothing special. Just used quorum wizard to generate
I tested it with quick quick dev start and the contract, seems OK
closing this for now as unable to reproduce. Feel free to reopen.
Every time deploying a contract to Node A (port 22000), Node B (port 22001) was also trying to execute some previous deployment but failed with "contract creation code storage out of gas" error. But Node A still succeeded, so there's no actual harm.
Contract Code
Deployed with Remix IDE.
System information
Official docker container.
Two nodes with istanbul BFT.
Expected behaviour
Actual behaviour
Steps to reproduce the behaviour
It's very subtle. Not sure how to reproduce.
Backtrace
No backtrace, just logs.