@VisibleForTesting
  boolean shouldFanoutStartpoint() {
    JobConfig jobConfig = new JobConfig(config);
    boolean startpointEnabled = jobConfig.getStartpointEnabled();

    return isApplicationMasterHighAvailabilityEnabled() ?
        startpointEnabled && isMetadataChangedAcrossAttempts() : startpointEnabled;
  }
We only fanout startpoint if and only if
 1. Startpoint is enabled
 2. If AM HA is enabled, fanout only if startpoint enabled and job coordinator metadata changed

@return true if it satisfies above conditions, false otherwise
samza-core/src/main/java/org/apache/samza/clustermanager/ClusterBasedJobCoordinator.java