-
Notifications
You must be signed in to change notification settings - Fork 4
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
Rust-generated contract causes consensus failure #6
Comments
Update: this belongs in a different repo. Thought this was an ewasm-studio bug at first but actually it is worse. |
I reproduced this problem following the steps described above. It is deploying a contract with empty bytecode: http://ewasm.ethereum.org/explorer/account/0x807A7C82D2800a78B2F3b180F1D85a1e77E18E82 If you convert the Data in the transaction to wast you see something like this:
This is the code which causes a difference between hera en wagon. I'm not sure why this test case is not failing for wagon: https://github.com/ewasm/tests/blob/wasm-tests/src/GeneralStateTestsFiller/stEWASMTests/createFromTransactionReturnZeroBytesFiller.yml#L38-L48 |
The test case is passing when I run it with go-ethereum+wagon, however there is something that chaught my attention:
|
@gballet i don't have much more info but here's a log from the same thing happening at block 110066.
|
@jakelang I re-synced and didn't have the issue. Could you please make sure that you have the latest version of wagon ? My last fix got merged today. |
This is a block that got mined with wagon on a full sync: http://ewasm.ethereum.org/explorer/account/0x9AfA52330797885BC7f6Df7b7d87835995d0f4f1 so either I'm mining the wrong chain, or your config is somewhat wrong. Any suggestion? |
@hugo-dc has identified the issue, the metering command line is wrong. I'm closing this issue, and will update the README. |
* added tests for new abi encoding features (#4) * added tests from bytes32[][] and string[] * added offset to other types * formatting * Abi/dynamic types (#5) * Revert "Abi/dynamic types (#5)" (#6) This reverts commit dabca31. * Abi/dynamic types (#7) * some cleanup * Apply suggestions from code review apply suggestions Co-Authored-By: vedhavyas <[email protected]> * added better formatting (#8) * review chnages * better comments
* internal/build: implement signify's signing func * Add signify to the ci utility * fix output file format * Add unit test for signify * holiman's + travis' feedback * internal/build: verify signify's output * crypto: move signify to common dir * use go-minisign to verify binaries * more holiman feedback * crypto, ci: support minisign output * only accept one-line trusted comments * configurable untrusted comments * code cleanup in tests * revert to use ed25519 from the stdlib * bug: fix for empty untrusted comments * write timestamp as comment if trusted comment isn't present * rename line checker to commentHasManyLines * crypto: added signify fuzzer (#6) * crypto: added signify fuzzer * stuff * crypto: updated signify fuzzer to fuzz comments * crypto: repro signify crashes * rebased fuzzer on build-signify branch * hide fuzzer behind gofuzz build flag * extract key data inside a single function * don't treat \r as a newline * travis: fix signing command line * do not use an external binary in tests * crypto: move signify to crypto/signify * travis: fix formatting issue * ci: fix linter build after package move Co-authored-by: Marius van der Wijden <[email protected]>
Repro
ewasm-studio will send a notification saying that the program terminated, and will then prompt the user to sign the TX via metamask. It will send the TX as usual and yield the receipt. Wagon will then fail to sync.
TX fields
Wei:
100000000000000000
Code: https://pastebin.com/yPQGkDPp
Message
ExitStatus: Program terminated with exit(1)
The text was updated successfully, but these errors were encountered: