erigon-pulse/cmd
Mark Holt b05ffc909d
Fixes for Bor Block Production Synchronization (#9162)
This PR contains 3 fixes for interaction between the Bor mining loop and
the TX pool which where causing the regular creation of blocks with zero
transactions.

* Mining/Tx pool block synchronization
The synchronization of the tx pool between the sync loop and the mining
loop has been changed so that both are triggered by the same event and
synchronized via a sync.Cond rather than a polling loop with a hard
coded loop limit. This means that mining now waits for the pool to be
updated from the previous block before it starts the mining process.
* Txpool Startup consolidated into its MainLoop
Previously the tx pool start process was dynamically triggered at
various points in the code. This has all now been moved to the start of
the main loop. This is necessary to avoid a timing hole which can leave
the mining loop hanging waiting for a previously block broadcast which
it missed due to its delay start.
* Mining listens for block broadcast to avoid duplicate mining
operations
The mining loop for bor has a recommit timer in case blocks re not
produced on time. However in the case of sprint transitions where the
seal publication is delayed this can lead to duplicate block production.
This is suppressed by introducing a `waiting` state which is exited upon
the block being broadcast from the sealing operation.
2024-01-10 17:12:15 +00:00
..
abigen Diag session routing (#8232) 2023-09-25 16:24:17 +01:00
bootnode Added db loggers to all db callers and fixed flag settings (#9099) 2023-12-31 17:10:08 +07:00
capcli dvovk/updsync (#9134) 2024-01-08 10:43:04 +01:00
caplin Caplin: Fixed crash in OnAttestation (#9159) 2024-01-08 17:13:25 +01:00
caplin-regression Caplin: Fixed crash in OnAttestation (#9159) 2024-01-08 17:13:25 +01:00
devnet Fixes for Bor Block Production Synchronization (#9162) 2024-01-10 17:12:15 +00:00
downloader downloader: verify fixempty (#9161) 2024-01-09 08:25:12 +07:00
erigon [caplin/sentinel] config reorganizations (#8844) 2023-11-28 22:45:58 -06:00
erigoncustom erigon backup: v0 of sub-command (#7396) 2023-04-27 10:42:12 +07:00
evm chore(cmd/evm):fix link jump in cmd/evm/README.md (#9114) 2024-01-03 18:59:45 +07:00
hack E2 snapshot uploading (#9056) 2023-12-27 22:05:09 +00:00
integration bor: move to polygon directory (#9174) 2024-01-09 19:20:42 +01:00
observer Added db loggers to all db callers and fixed flag settings (#9099) 2023-12-31 17:10:08 +07:00
p2psim E2 snapshot uploading (#9056) 2023-12-27 22:05:09 +00:00
pics EthereumExecutionService in MockSentry (#8373) 2023-10-05 18:30:19 +02:00
prometheus grafana board: fix cpu chart (#8733) 2023-11-15 15:00:25 +07:00
release go.mod: minimal go version 1.20 (#8495) 2023-10-17 06:52:28 +07:00
rlpdump rename (#1978) 2021-05-20 19:25:53 +01:00
rpcdaemon Fixes for Bor Block Production Synchronization (#9162) 2024-01-10 17:12:15 +00:00
rpctest Add create access list test (#9062) 2023-12-23 21:38:47 +07:00
sentinel Add blocksByRange & blocksByRoot P2P rpc handlers (#8885) 2023-12-23 14:32:00 +01:00
sentry p2p: silkworm sentry (#8527) 2023-11-02 08:35:13 +07:00
silkworm_api E2 snapshot uploading (#9056) 2023-12-27 22:05:09 +00:00
snapshots docs: fix typos (#9173) 2024-01-09 15:34:47 +00:00
state bor: BorConfig setup fix (#9145) 2024-01-05 20:03:19 +07:00
tooling E2 snapshot uploading (#9056) 2023-12-27 22:05:09 +00:00
txpool Fixes for Bor Block Production Synchronization (#9162) 2024-01-10 17:12:15 +00:00
utils Make Caplin work with Otterscan (#9115) 2024-01-02 23:29:00 +01:00
verkle Adds flags to enable/disable backfilling and enable full historical beacon node (#8813) 2023-11-22 13:24:35 +01:00