expectTaskKilled().times(2);
control.replay();
final IJobUpdate update =
setInstanceCount(makeJobUpdate(makeInstanceConfig(0, 1, OLD_CONFIG)), 2);
insertInitialTasks(update);
changeState(JOB, 0, ASSIGNED, STARTING, RUNNING);
changeState(JOB, 1, ASSIGNED, STARTING, RUNNING);
clock.advance(WATCH_TIMEOUT);
ImmutableMultimap.Builder<Integer, JobUpdateAction> actions = ImmutableMultimap.builder();
// Instance 0 is updated
updater.start(update, USER);
actions.putAll(0, INSTANCE_UPDATING);
assertState(ROLLING_FORWARD, actions.build());
storage.write(new NoResult.Quiet() {
@Override
protected void execute(Storage.MutableStoreProvider storeProvider) {
JobUpdateStore.Mutable store = storeProvider.getJobUpdateStore();
store.deleteAllUpdatesAndEvents();
JobUpdate builder = update.newBuilder();
builder.getInstructions().getSettings().setUpdateGroupSize(0);
for (ILock lock : lockManager.getLocks()) {
lockManager.releaseLock(lock);
}
saveJobUpdate(store, IJobUpdate.build(builder), ROLLING_FORWARD);