Skip to content
This repository was archived by the owner on Mar 23, 2024. It is now read-only.
This repository was archived by the owner on Mar 23, 2024. It is now read-only.

Restarting SignCTRL on self-shutdown while simd is running #24

@freshfab

Description

@freshfab

Description

Restarting SignCTRL (which shut itself down beforehand) on a height, that differs from its last_rank exactly {threshold}+1 or more, while simd is still running, causes the validator to double-sign.

How To Reproduce

  1. Set up a blockchain with two validators (val-1 with 70% of the total voting power to keep the chain running at all times, and val-2 with 30% to experiment with).
  2. Set up SignCTRL for val-2, i.e. have two SignCTRL instances run it. Rank one of the instances 1st, and the other 2nd.
  3. Start the chain by starting both validators. Use simd start on val-1 and signctrl start; sleep 0.5s; simd start on both instances of val-2.
  4. Isolate val-2's first instance (rank 1) from the network, such that val-2's second instance (rank 2) is promoted to rank 1.
  5. Restart SignCTRL again via signctrl start.

Workaround

Before starting SignCTRL back up again, stop simd first. From there, you can start SignCTRL first, and simd right after.

This is also briefly addressed in the FAQ, with the question My SignCTRL node has shut down and my validator is listening for a new connection. What do I do?.

Metadata

Metadata

Assignees

No one assigned

    Labels

    bugSomething isn't working

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions