-
Notifications
You must be signed in to change notification settings - Fork 148
Description
Currently we need to import era1/era files, or even the rlp block files first and then separately start the client.
Pretty much other clients can do this, with a flag where it can consume blocks from files before starting the client.
The ideal flow would be to check if era/era1/rlp files are there i.e those flags are passed or not.
If yes then load the blocks from there, and then start the client.
Maybe also add a debug flag to signal if the chain segment that we are loading is finalized or not.
This whole things creates a simple workflow where users can just pass the flag where the era1/era/rlp files are and then not to worry again about if the import completed, and we need to start the client actually now, it would do that on it's own.
Another added benefit that comes from this feature would be easier testing in hive. Now in hive the chain segment that is imported is not fully finalized, rather a part of the chain segment is finalized and rest of the chain segment is not. This would iron out the issues with nimbus-eth1 and hive therefore, since just after the import we get one fCU call determining the head and finalized. But stopping the client after the import we don't know which is the head the finalized.