Open zhaowenlan1779 opened 5 months ago
See title. All is good since it returns Accept, but DecodeProcessProposalTxs is failing with error
DecodeProcessProposalTxs
Msg Type: types.MsgProposedOperations, Error: github.com/cosmos/cosmos-sdk/x/auth/tx.NewTxConfigWithOptions.DefaultTxDecoder.func1 github.com/cosmos/cosmos-sdk@v0.50.5/x/auth/tx/decoder.go:23 github.com/dydxprotocol/v4-chain/protocol/app/process.DecodeProposedOperationsTx github.com/dydxprotocol/v4-chain/protocol/app/process/proposed_operations.go:27 github.com/dydxprotocol/v4-chain/protocol/app/process.DecodeProcessProposalTxs github.com/dydxprotocol/v4-chain/protocol/app/process/transactions.go:103 github.com/dydxprotocol/v4-chain/protocol/app.(*App).createProposalHandlers.FullNodeProcessProposalHandler.func2 github.com/dydxprotocol/v4-chain/protocol/app/process/full_node_process_proposal.go:42 github.com/cosmos/cosmos-sdk/baseapp.(*BaseApp).ProcessProposal github.com/cosmos/cosmos-sdk@v0.50.5/baseapp/abci.go:547 github.com/cosmos/cosmos-sdk/server.cometABCIWrapper.ProcessProposal github.com/cosmos/cosmos-sdk@v0.50.5/server/cmt_abci.go:40 github.com/cometbft/cometbft/abci/client.(*unsyncLocalClient).ProcessProposal github.com/cometbft/cometbft@v0.38.6/abci/client/unsync_local_client.go:125 github.com/cometbft/cometbft/proxy.(*appConnConsensus).ProcessProposal github.com/cometbft/cometbft@v0.38.6/proxy/app_conn.go:89 github.com/cometbft/cometbft/state.(*BlockExecutor).ProcessProposal github.com/cometbft/cometbft@v0.38.6/state/execution.go:166 github.com/cometbft/cometbft/consensus.(*State).defaultDoPrevote github.com/cometbft/cometbft@v0.38.6/consensus/state.go:1408 github.com/cometbft/cometbft/consensus.(*State).enterPrevote github.com/cometbft/cometbft@v0.38.6/consensus/state.go:1340 github.com/cometbft/cometbft/consensus.(*State).handleCompleteProposal github.com/cometbft/cometbft@v0.38.6/consensus/state.go:2111 github.com/cometbft/cometbft/consensus.(*State).handleMsg github.com/cometbft/cometbft@v0.38.6/consensus/state.go:909 github.com/cometbft/cometbft/consensus.(*State).receiveRoutine github.com/cometbft/cometbft@v0.38.6/consensus/state.go:835 expected 2 wire type, got 0: tx parse error: Decoding tx bytes failed
This is apparently because DefaultMarketPriceDecoder (used by non-validating full nodes) always return 0 for GetTxOffset, which results in ProcessProposal attempting to parse the vote extension as a tx.
DefaultMarketPriceDecoder
GetTxOffset
GH-40 `FullNodeProcessProposalHandler` fails to decode txs
See title. All is good since it returns Accept, but
DecodeProcessProposalTxs
is failing with errorThis is apparently because
DefaultMarketPriceDecoder
(used by non-validating full nodes) always return 0 forGetTxOffset
, which results in ProcessProposal attempting to parse the vote extension as a tx.