diff options
author | Jon Bratseth <bratseth@oath.com> | 2018-03-01 10:23:13 +0100 |
---|---|---|
committer | Jon Bratseth <bratseth@oath.com> | 2018-03-01 10:23:13 +0100 |
commit | 60752add2a2bc93a0ca7377b51abe2a2584f1fd0 (patch) | |
tree | e897dd468ca8b0e2158705fc59b9e5afeaedfccc /container-disc/src | |
parent | b6433667f3d1c881bc1a1cbc5bc46cecbddd3671 (diff) |
Increase random die time from 3 to 10 minutes
- Increase random die time from 3 to 10 minutes
- Log warning if waiting to die is interrupted.
Diffstat (limited to 'container-disc/src')
-rw-r--r-- | container-disc/src/main/java/com/yahoo/container/jdisc/component/Deconstructor.java | 11 |
1 files changed, 9 insertions, 2 deletions
diff --git a/container-disc/src/main/java/com/yahoo/container/jdisc/component/Deconstructor.java b/container-disc/src/main/java/com/yahoo/container/jdisc/component/Deconstructor.java index 8dc3a81db12..f5a8f598a94 100644 --- a/container-disc/src/main/java/com/yahoo/container/jdisc/component/Deconstructor.java +++ b/container-disc/src/main/java/com/yahoo/container/jdisc/component/Deconstructor.java @@ -20,6 +20,7 @@ import static java.util.logging.Level.WARNING; * @author gv */ public class Deconstructor implements ComponentDeconstructor { + private static final Logger log = Logger.getLogger(Deconstructor.class.getName()); private final ScheduledExecutorService executor = @@ -52,6 +53,7 @@ public class Deconstructor implements ComponentDeconstructor { } private static class DestructComponentTask implements Runnable { + private final AbstractComponent component; DestructComponentTask(AbstractComponent component) { @@ -69,10 +71,15 @@ public class Deconstructor implements ComponentDeconstructor { } catch (Error e) { try { - Thread.sleep((long) (new Random(System.nanoTime()).nextDouble() * 180 * 1000)); - } catch (InterruptedException exception) { } + // Randomize restart over 10 minutes to avoid simultaneous cluster restarts + Thread.sleep((long) (new Random(System.nanoTime()).nextDouble() * 1000 * 60 * 10)); + } + catch (InterruptedException exception) { + log.log(WARNING, "Randomized wait before dying disrupted. Dying now."); + } com.yahoo.protect.Process.logAndDie("Error when deconstructing " + component, e); } } } + } |