private boolean compare(T data, T anotherData) {
    if (data instanceof byte[] && anotherData instanceof byte[]) {
      return Arrays.equals((byte[]) data, (byte[]) anotherData);
    } else if (data instanceof short[] && anotherData instanceof short[]) {
      return Arrays.equals((short[]) data, (short[]) anotherData);
    } else if (data instanceof int[] && anotherData instanceof int[]) {
      return Arrays.equals((int[]) data, (int[]) anotherData);
    } else if (data instanceof long[] && anotherData instanceof long[]) {
      return Arrays.equals((long[]) data, (long[]) anotherData);
    } else if (data instanceof char[] && anotherData instanceof char[]) {
      return Arrays.equals((char[]) data, (char[]) anotherData);
    } else if (data instanceof float[] && anotherData instanceof float[]) {
      return Arrays.equals((float[]) data, (float[]) anotherData);
    } else if (data instanceof double[] && anotherData instanceof double[]) {
      return Arrays.equals((double[]) data, (double[]) anotherData);
    } else if (data instanceof boolean[] && anotherData instanceof boolean[]) {
      return Arrays.equals((boolean[]) data, (boolean[]) anotherData);
    } else if (data instanceof Object[] && anotherData instanceof Object[]) {
      return Arrays.equals((Object[]) data, (Object[]) anotherData);
    } else {
      return Objects.equals(data, anotherData);
    }
  }
Do the requests which have been added, and then comparing their return values. If all the
values are equal, one value will be returned. Otherwise an {@link SQLException} will be thrown.

@return the return value of one request, as all requests return the same one.
@throws SQLException if any error happens during requesting.
@throws InconsistentDataException if the return values of requests are not equal.
integration-test/src/main/java/org/apache/iotdb/itbase/runtime/RequestDelegate.java