Skip to content
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

cannot publish inter protocol bundles over 1M due to max_tx_bytes tendermint config #7501

Closed
dckc opened this issue Apr 25, 2023 · 3 comments · Fixed by #7542
Closed

cannot publish inter protocol bundles over 1M due to max_tx_bytes tendermint config #7501

dckc opened this issue Apr 25, 2023 · 3 comments · Fixed by #7542
Assignees
Labels
bug Something isn't working cosmic-swingset package: cosmic-swingset Inter-protocol Overarching Inter Protocol vaults_triage DO NOT USE
Milestone

Comments

@dckc
Copy link
Member

dckc commented Apr 25, 2023

Describe the bug

publishing bundles over 1M conflicts with max_tx_bytes = 1048576 tendermint config setting.

To Reproduce

Steps to reproduce the behavior:

  1. bundle vaultFactory as json (see details below)
  2. make sure you have > 3450 IST
  3. run a local node, state-sync'ed to devet (agoricdev-17)
  4. try agd tx swingset install-bundle ...
  5. get error code 21

Expected behavior

bundle is published on chain

Maybe we have to use a higher tx_max_bytes when we start the network?

Platform Environment

# agd version --long
version: 0.32.2
commit: 088b0abf2

Additional context

closely related:

#6454 (comment)

Note that publishing the 836K mintHolder bundle works.

Screenshots / Terminal Sessions

bundle:

packages/inter-protocol# yarn bundle-source --cache-json bundles src/vaultFactory/vaultFactory.js vaultFactory
yarn run v1.22.19
$ /usr/local/src/agoric-sdk/node_modules/.bin/bundle-source --cache-json bundles src/vaultFactory/vaultFactory.js vaultFactory
bundles add: vaultFactory from src/vaultFactory/vaultFactory.js
bundles bundled 189 files in bundle-vaultFactory.json at 2023-04-25T15:18:01.125Z
Done in 2.63s.

packages/inter-protocol# ls -sh bundles/bundle-vaultFactory.json
1.7M bundles/bundle-vaultFactory.json
.

Try to submit without enough IST:

packages/inter-protocol# agd tx swingset install-bundle @./bundles/bundle-vaultFactory.json --keyring-backend=test --from test-acct --chain-id=agoricdev-17 --yes --gas=auto
Error: rpc error: code = Unknown desc = rpc error: code = Unknown desc = controller refused message admission: 427850000uist is smaller than 3424800000uist: insufficient funds: mempool is full [/usr/local/src/agoric-sdk/golang/cosmos/ante/vm_admission.go:58] With gas wanted: '0' and gas used: '1762055' : unknown request

Submit and get code 21:

packages/inter-protocol# agd tx swingset install-bundle @./bundles/bundle-vaultFactory.json --keyring-backend=test --from test-acct --chain-id=agoricdev-17 --yes --gas=auto
gas estimate: 52670047
code: 21
codespace: sdk
...
txhash: A5E2439B577E803E552E0F1CC0FCD640F3231A399A76B56D4427BA7CBADCD1D1

cc @arirubinstein @michaelfig @ivanlei

@dckc dckc added bug Something isn't working cosmic-swingset package: cosmic-swingset Inter-protocol Overarching Inter Protocol labels Apr 25, 2023
@ivanlei ivanlei added the vaults_triage DO NOT USE label Apr 27, 2023
@ivanlei ivanlei added this to the Vaults EVP milestone Apr 27, 2023
@michaelfig
Copy link
Member

There's only one use in agoric-cli/src/publish.js, and we don't need to change it since nothing known relies on it yet.

@JimLarson JimLarson self-assigned this Apr 27, 2023
@JimLarson
Copy link
Contributor

Per our discussions, I've implemented an option to compress the bundle within the MsgInstallBundle.

@migueldingli1997
Copy link

migueldingli1997 commented Dec 21, 2023

I've run into the request body too large error when installing a bundle and I'm using --compress. Not sure if it's due to the same reason described above or in #6454

+ agd tx swingset install-bundle --compress @/root/.agoric/cache/b1-87ebdf9be77f33521967261b02f32bc524d392ccd9bdc493aa57be8c3c0de6d63a66ae09e42c8abe14b9654ca0f8b706d2854beb1b58fd77715db57851e4c851.json --from user1 --keyring-backend=test --gas=auto --chain-id=agoriclocal -bblock --yes -o json
Error: RPC error -32600 - Invalid Request: error reading request body: http: request body too large

For a bit more context, I'm based on the https://github.com/Agoric/dapp-game-places template and just edited the contract a bit.

(Update 22/12/2023 - refer to #8621 (comment) for follow-up)

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug Something isn't working cosmic-swingset package: cosmic-swingset Inter-protocol Overarching Inter Protocol vaults_triage DO NOT USE
Projects
None yet
Development

Successfully merging a pull request may close this issue.

5 participants