diff --git a/src/refit/replica/order/REFITOrderStage.java b/src/refit/replica/order/REFITOrderStage.java
index 8937e503cbcdae05cf1a3379d250c86db5984f87..964ee6353f69d1c4266f9b5451f2bb5cdea01218 100644
--- a/src/refit/replica/order/REFITOrderStage.java
+++ b/src/refit/replica/order/REFITOrderStage.java
@@ -301,7 +301,7 @@ public class REFITOrderStage extends REFITStage {
 		if (REFITLogger.LOG_ORDER)
 			REFITLogger.logOrder(this, "initialize protocol instances from " + initInstancesStartID + " to " + (initInstancesEndID - 1));
 
-		activeSlotLimit = (REFITConfig.USE_SPINNING_LEADER) ? newWindowStartID + REFITConfig.ACTIVE_PROPOSALS : initInstancesEndID;
+		activeSlotLimit = Math.max(activeSlotLimit, (REFITConfig.USE_SPINNING_LEADER) ? newestCheckpointSeqNr + REFITConfig.ACTIVE_PROPOSALS : initInstancesEndID);
 		// Initialize new protocol instances
 		for (long instanceID = initInstancesStartID; instanceID < initInstancesEndID; instanceID++) {
 			REFITOrderStageSlot slot = slots[(int) (instanceID % slots.length)];