This repository was archived by the owner on Feb 26, 2024. It is now read-only.

Description
Issue
I want to deploy a smart contract in a free gas private network with Truffle. Although Besu seems to work as expected, Truffle returns the following error if the deploying account has zero balance: Upfront cost exceeds account balance error.
Steps to Reproduce
I've found this error with many configurations (IBFT2, QBFT, different Besu versions), but here I'll describe the simplest way to reproduce it:
- Create a free gas network using Quorum-dev-quickstart: npx quorum-dev-quickstart@latest --clientType besu --orchestrate false --quorumKeyManager false --privacy false --monitoring none --blockscout false
- Run the network: docker compose up -d
- Deploy any smart contract. To test it, you can use this project.
Expected Behavior
Get information about the deployed contracts and their addresses.
Actual Results
Truffle returns the following error: Upfront cost exceeds account balance.
Environment
- Operating System: Ubuntu
- Ethereum client: Besu. Although I tested with many configurations, the default one with quorum-dev-quickstart uses version 23.4.1 and QBFT as a consensus algorithm.
- Truffle version (
truffle version): 5.11.3
- node version (
node --version): 18.17.1
- npm version (
npm --version): 9.6.7