@Override
    public void fail(Throwable t) {
        currentExecutions.values().forEach(e -> e.fail(t));
    }
@Test
    void testFail() throws Exception {
        final SpeculativeExecutionVertex ev = createSpeculativeExecutionVertex();
        final Execution e1 = ev.getCurrentExecutionAttempt();
        final Execution e2 = ev.createNewSpeculativeExecution(System.currentTimeMillis());

        ev.fail(new Exception("Forced test failure."));
        assertThat(internalFailuresListener.getFailedTasks())
                .containsExactly(e1.getAttemptId(), e2.getAttemptId());
    }