-
Notifications
You must be signed in to change notification settings - Fork 1.2k
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
Add Developer mode #3699
Comments
i have been using the following testnet.json:
Running the node on commit 31af4d5 with
As we can see there are two WARN logs about failing to canonicalize block 1 with hash Sending a raw transaction:
does not actually mine the transaction. Trace logs from the node about the
There are still 0 Transactions in the db and we are still on block 1. Although I am not even sure about that, because the regular info prints latest block is 0:
|
Tagging @manylov because he has been trying to run a local node with |
You're on block 0 (genesis) because it failed to canonicalize the first block as it wrote in the logs (the logs are not super helpful here I guess), but it's not fatal as we can always retry later. This is from the live sync component (blockchain tree)
This makes sense since the new block has not been canonicalized yet, so nothing is written to the database, although OTOH it does not make sense as you obviously want a new block to be sealed instantly. Looping in @mattsse / @Rjected here as I think they know more about the auto-seal engine and might have ideas for what's wrong here, although I think you should probably make a bug report describing how the current auto-seal engine is broken as it is somewhat unrelated to this issue which is just UX |
What's happening here is because we no longer run the pipeline for short ranges, we never emit a reth/crates/consensus/auto-seal/src/task.rs Lines 239 to 253 in 467f6f9
|
Ah, so what is the proper course of action here?
If the autoseal is working for local test node I can take on the rest of the work of adding the |
It's basically this:
We need to listen for the block being added in some other way since the pipeline is not going to run |
Describe the feature
Introduction
The
--dev
flag in Geth client introduces a simple option to run a local single-node test network with no external connections. It uses zero gas fees, a custom genesis block and Clique proof-of-authority with the local node as a single trusted signer. It is often convenient for developers to work in an environment where changes to client or application software can be deployed and tested rapidly and without putting real-world users or assets at risk.Current state
The auto-seal crate is "a [Consensus] implementation for local testing purposes that automatically seals blocks." It was developed for the hive tests, but as far as I know it does not work as a standalone local testnet (at least I could not get it to mine new transactions).
Additional context
Geth documentation of the
--dev
flag: https://geth.ethereum.org/docs/developers/dapp-developer/dev-modeReth auto-seal crate used by the
--auto-miner
flag: https://github.com/paradigmxyz/reth/tree/3910babb913e17debd2479c385a48799d7fa6157/crates/consensus/auto-sealThe text was updated successfully, but these errors were encountered: