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

Forge script stuck when running anvil with fixed block time #7844

Open
2 tasks done
Tracked by #8269
Thegaram opened this issue May 3, 2024 · 1 comment
Open
2 tasks done
Tracked by #8269

Forge script stuck when running anvil with fixed block time #7844

Thegaram opened this issue May 3, 2024 · 1 comment
Labels
C-anvil Command: anvil Cmd-forge-script Command: forge script T-bug Type: bug T-to-investigate Type: to investigate
Milestone

Comments

@Thegaram
Copy link

Thegaram commented May 3, 2024

Component

Anvil

Have you ensured that all of these are up to date?

  • Foundry
  • Foundryup

What version of Foundry are you on?

forge 0.2.0 (d495216 2024-05-03T00:21:54.426103000Z)

What command(s) is the bug in?

No response

Operating System

macOS (Apple Silicon)

Describe the bug

Not sure if this is an issue with anvil or forge script.

I have a forge script that sends about 60 transactions. It works well with anvil, but it's stuck indefinitely with anvil --block-time 3.

[⠑] Compiling...
No files changed, compilation skipped
Script ran successfully.

## Setting up 1 EVM.

==========================

Chain 111111

Estimated gas price: 0.158191454 gwei

Estimated total gas used for script: 44606349

Estimated amount required: 0.007056343205941446 ETH

==========================
##
Sending transactions [0 - 56].
⠒ [00:00:00] [###############################################################################################################################>---------------------------------------------------------------------] 37/57 txes (0.1s)##
Waiting for receipts.
⠐ [00:00:07] [##############################################################################################################>--------------------------------------------------------------------------------] 33/57 receipts (160.9s)

On the anvil console output I see one block with a bunch of transactions, the next block with 1 transaction, then all subsequent blocks have 0 transactions. I also see non-stop eth_getTransactionReceipt logs.

It works if I run forge script with --batch-size 10, but it's stuck with the default setting.

@Thegaram Thegaram added the T-bug Type: bug label May 3, 2024
@zerosnacks zerosnacks added C-anvil Command: anvil Cmd-forge-script Command: forge script labels Jun 27, 2024
@zerosnacks zerosnacks added the T-to-investigate Type: to investigate label Jul 15, 2024
@zerosnacks zerosnacks added this to the v1.0.0 milestone Jul 26, 2024
@gititGoro
Copy link

The --slow option is the solution. The scripts try to spam the chain with as many TXs at once. From the docs

--slow
    Makes sure a transaction is sent, only after its previous one has been confirmed and succeeded.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
C-anvil Command: anvil Cmd-forge-script Command: forge script T-bug Type: bug T-to-investigate Type: to investigate
Projects
None yet
Development

No branches or pull requests

3 participants