openethereum / parity-ethereum

The fast, light, and robust client for Ethereum-like networks.
Other
6.82k stars 1.69k forks source link

Thread 'event.loop0' panicked at 'Propagating verifier thread panic on shutdown #11787

Open max-block opened 4 years ago

max-block commented 4 years ago

Openethereum has crashed with such logs:

  26: <unknown>
  27: <unknown>
  28: start_thread
  29: __clone

Thread 'event.loop0' panicked at 'Propagating verifier thread panic on shutdown: Any', /home/runner/work/openethereum/openethereum/ethcore/verification/src/queue/mod.rs:743

This is a bug. Please report it at:

    https://github.com/openethereum/openethereum/issues/new

Sorry, I can't show more logs, I runned it in tmux.

After restart I've got: DB has been previously marked as corrupted, attempting repair

adria0 commented 4 years ago

Seems that this function panics:

https://github.com/openethereum/openethereum/blob/698e696a3a5a624a61e2907363e6934d06005173/ethcore/verification/src/queue/mod.rs#L291

And this cached in the .join

https://github.com/openethereum/openethereum/blob/698e696a3a5a624a61e2907363e6934d06005173/ethcore/verification/src/queue/mod.rs#L743

Maybe we need just to error! instead of panicking at this level.

ordian commented 4 years ago

The expect after join is just propagating the panic of the verifier thread, this is the Fail-Fast strategy, I don't think this should be changed. I don't know why the verifier thread panicked, could be a db corruption

DB has been previously marked as corrupted, attempting repair