jepsen-io / jepsen

A framework for distributed systems verification, with fault injection
6.78k stars 715 forks source link

Retry `teardown!`, if it throws exceptions. #458

Closed stevana closed 4 years ago

stevana commented 4 years ago

First go at solving #457

aphyr commented 4 years ago

As I mentioned in #457, I don't think this is the right place to address this issue. I understand adding it for symmetry with setup retries, but setup retries are explicitly present to work around issues in the database itself--e.g., when a vendor's product can't reliably form a cluster. Teardown has so far never been subject to that kind of issue, so I'm not sure if introducing a ::teardown-failed handler is actually worthwhile.

aphyr commented 4 years ago

(to be clear, I'm not super opposed to this patch--if it turns out that DB teardowns are fragile in the future, this would be a great thing to have!)