code: func (ssc *defaultStatefulSetControl) updateStatefulSetStatus(
  	set *apps.StatefulSet,
  	status *apps.StatefulSetStatus) error {
  
  	// complete any in progress rolling update if necessary
  	completeRollingUpdate(set, status)
  
  	// if the status is not inconsistent do not perform an update
  	if !inconsistentStatus(set, status) {
  		return nil
  	}
  
  	// copy set and update its status
  	set = set.DeepCopy()
  	if err := ssc.statusUpdater.UpdateStatefulSetStatus(set, status); err != nil {
  		return err
  	}
  
  	return nil
  }
docs: // updateStatefulSetStatus updates set's Status to be equal to status. If status indicates a complete update, it is
  // mutated to indicate completion. If status is semantically equivalent to set's Status no update is performed. If the
  // returned error is nil, the update is successful.