Skip to content

bug: submessages broken when using WithMessageHandlerΒ #1735

@reecepbcups

Description

@reecepbcups

Bug

Submessages do not work via contract since v0.43.

Juno's Uni testnet has had this with

  • 0.43 + wasmvm 1.4
  • 0.45 + wasmvm 1.5 (upgraded to today).

This did not happen on 0.42.

Codebase: Juno v18.0.0-alpha.3

Terp network has also had this issue (reported in the cosmwasm discord)

Full Error 0.43

Error: rpc error: code = Unknown desc = rpc error: code = Unknown desc = failed to execute message; message index: 0: dispatch: submessages: unknown message from the contract [CosmWasm/[email protected]/x/wasm/keeper/keeper.go:1247] With gas wanted: '100000000' and gas used: '115661' : unknown request
9:36AM ERR failure when running app err="rpc error: code = Unknown desc = rpc error: code = Unknown desc = failed to execute message; message index: 0: dispatch: submessages: unknown message from the contract [CosmWasm/[email protected]/x/wasm/keeper/keeper.go:1247] With gas wanted: '100000000' and gas used: '115661' : unknown request"

Full error 0.45

Error: rpc error: code = Unknown desc = rpc error: code = Unknown desc = failed to execute message; message index: 0: dispatch: submessages: unknown message from the contract [CosmWasm/[email protected]/x/wasm/keeper/keeper.go:1247] With gas wanted: '100000000' and gas used: '117137' : unknown request
12:06AM ERR failure when running app err="rpc error: code = Unknown desc = rpc error: code = Unknown desc = failed to execute message; message index: 0: dispatch: submessages: unknown message from the contract [CosmWasm/[email protected]/x/wasm/keeper/keeper.go:1247] With gas wanted: '100000000' and gas used: '117137' : unknown request"

Reproduce:

(credit to mr_t of Ark protocol for this)

- Compile https://github.com/CosmWasm/cw-nfts/tree/main/contracts/cw721-base  (code id 3743 on Uni testnet)

# create contract instance
junod tx wasm instantiate 3743 '{"name":"Reece #00001", "symbol":"juno-reece-test-#00001", "minter":"juno15twk6xu5rnrrlnf7c5zy92gvykcs4h5ucxzzqq"}' --from validator --label 'JUNO Ark Test #00001' --admin juno15twk6xu5rnrrlnf7c5zy92gvykcs4h5ucxzzqq --gas-prices 0.0045ujunox --gas auto --gas-adjustment 1.5 -b sync --yes --node https://uni-rpc.reece.sh:443 --chain-id uni-6 --output json

# mint token
junod tx wasm execute juno1jvx62zqj3wucmwuxa9e8uuawv9ljgzg22uhjzw7mze2x9tamcz8qhrq7xt '{"mint": {"token_id":"00000", "owner":"juno15twk6xu5rnrrlnf7c5zy92gvykcs4h5ucxzzqq" }}' --from validator --gas-prices 0.0045ujunox --gas auto --gas-adjustment 1.5 -b sync --chain-id uni-6 --node https://uni-rpc.reece.sh:443 --yes --output json

# use a sub message from any contract
junod tx wasm execute juno1jvx62zqj3wucmwuxa9e8uuawv9ljgzg22uhjzw7mze2x9tamcz8qhrq7xt '{"send_nft": { "contract": "juno16u3qcynv998c6yt9kpr32anm55prsusmvp0exlk6u45lp5rk3rhqjzmdfp", "token_id": "00000", "msg": "b2s=" }}' --from validator --gas-prices 0.0045ujunox --gas auto --gas-adjustment 1.3 -b sync --yes --output json --chain-id uni-6 --node https://uni-rpc.reece.sh:443

Reported to affect their testnet contracts by:

  • James O
  • Mr T
  • Whalelphant

Request

add a e2e with submessage execution along with the patch

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions