Skip to content

Features for incident analysis #24720

@holiman

Description

@holiman

Here are some features which would be good to have, going towards the merge:

  • GetBlockReceiptsRLP. Currently, we have no way to obtain the raw rlp receipt-blobs which make up the receiptsRoot for a block.
  • Automatically trace new bad blocks to filesystem (memory=disabled, storage=disabled).
  • Ability to do geth db get(put/delete?) via RPC layer
  • Ability to change the gcMode via RPC. Right now, it's either archive=mode or 2-hours-processing-mode. When the node nears an upcoming fork, it would be nice to set it to flush e.g. after 5m processing, or 512 blocks, and later be able to set it back to a mode which is less disk-heavy.
  • Ability to "drop the network"/ "go offline from p2p/discovery" via RPC (keep rpc up though

Decided to skip:

  • debug.flushState(). Somehow, it would be nice to be able to flush the state for a certain block. As it is now, we have 128*14 seconds, or about 30m to investigate (e..g get a trace) from a progressing "good" node before a state is forgotten. After that point, we can do reexec, but the reexec never flushes state to disk, so operating on an old state might mean half an hour reexec performed again on every call.

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions