private static void syncField(
      Types.NestedField newField,
      Types.NestedField oldField,
      UpdateSchema us,
      String fieldPrefix,
      Collection<Add> adds) {
    if (oldField == null && newField == null) {
      return;
    }
    if (oldField == null) {
      addColumnInternal(newField, fieldPrefix, adds);
      return;
    }
    if (newField == null) {
      deleteColumnInternal(oldField.name(), us, fieldPrefix);
      return;
    }

    if (Objects.equals(newField, oldField)) {
      return;
    }
    updateField(newField, oldField, us, fieldPrefix, adds);
  }
Apply the pending changes to the original schema and returns the result.

<p>This does not result in a permanent update.

@return the result Schema when all pending updates are applied
amoro-format-iceberg/src/main/java/org/apache/amoro/op/KeyedSchemaUpdate.java