Skip to content

fix: add configurable proxy timeout for source network fetches - #184

Merged
EtienneWallet merged 3 commits into
developfrom
feat/timeout_config_var
Mar 12, 2026
Merged

fix: add configurable proxy timeout for source network fetches#184
EtienneWallet merged 3 commits into
developfrom
feat/timeout_config_var

Conversation

@EtienneWallet

Copy link
Copy Markdown
Contributor

Summary

Fixes timeouts when cloning smart contract addresses with large storage from mainnet. The default ProxyNetworkProvider timeout of 5 seconds is insufficient for fetching large account storage on gateway.multiversx.com.

Changes

  • Add PROXY_TIMEOUT config parameter with network-specific values:
    • Default: 10 seconds
    • Mainnet: 30 seconds (large contract storage)
    • Chain simulator: 60 seconds (local, can be generous)
  • Create _build_source_proxy() helper to apply timeout to source network fetches
  • Update MyProxyNetworkProvider to use configured timeout for local proxy
  • Timeout now applies to: account cloning, storage fetching, ESDT module lookups

Testing

  • All 268 unit tests pass
  • All lint/format/security checks pass (bandit, flake8, ruff, pylint)
  • Manual testing: clone operations from mainnet no longer timeout with "Read timed out. (read timeout=5)"

EtienneWallet and others added 3 commits March 12, 2026 09:45
When cloning smart contract addresses from mainnet, storage fetch times out with 'Read timed out. (read timeout=5)' on gateway.multiversx.com/address/.../keys. The default ProxyNetworkProvider timeout of 5 seconds is too short for large contract storage.

- Add PROXY_TIMEOUT config parameter (default 10s, mainnet 30s, chain simulator 60s)
- Create _build_source_proxy() helper to apply timeout to source network fetches
- Update MyProxyNetworkProvider to use configured timeout for local proxy
- Timeout now applies to: account cloning, storage fetching, ESDT module lookups
@EtienneWallet
EtienneWallet merged commit 626dca2 into develop Mar 12, 2026
@EtienneWallet
EtienneWallet deleted the feat/timeout_config_var branch March 12, 2026 08:47
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant