ChainSafe / ChainSafe/gossamer
CRITICAL runtime error at block production: `Timestamp must be updated once in the block`
- Dominant language
- Go
- Stars
- 454
- Forks
- 144
- PR merge metrics
- No merged PRs in 30d
Description
## Issue summary
- While running 3 gossamer nodes all of them connected to each other after 11 blocks produced I saw the following CRITICAL error:
```
CRITICAL target=runtime message=panicked at 'Timestamp must be updated once in the block', /usr/local/cargo/git/checkouts/substrate-7e08433d4c370a21/b0e994c/frame/timestamp/src/lib.rs:179:13 imports.go:L140:ext_logging_log_version_1 pkg=runtime module=go-wasmer
WARN failed to handle slot 278392650: cannot finalise block: running runtime function: Failed to call the `BlockBuilder_finalize_block` exported function. epoch_handler.go:L140 pkg=babe
```
## Other information and links
- I've followed this instructions to ran the 3 gossamer nodes and used the `westend-local` spec
https://github.com/ChainSafe/gossamer#multi-node-development-network
- Related issue already closed: https://github.com/ChainSafe/gossamer/issues/1702
Contributor guide
Research direction
Reproduce the failure using the linked three-node development setup with the westend-local spec. Start with the timestamp panic in substrate's timestamp/src/lib.rs and the Go call sites imports.go:L140 and epoch_handler.go:L140, then verify that block finalization completes without the panic during block production.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- go, wasm
- Domain
- blockchain, distributed-systems
- Issue type
- Bug
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 25/100