@Override
  public boolean equals(Object o) {
    if (!(o instanceof DiskWriteAttributesImpl)) {
      return false;
    }

    DiskWriteAttributesImpl other = (DiskWriteAttributesImpl) o;
    if (other.isSynchronous() != isSynchronous()) {
      return false;
    }
    boolean result =
        other.isRollOplogs() == isRollOplogs() && other.getMaxOplogSize() == getMaxOplogSize();
    if (!isSynchronous()) {
      result = result && other.getTimeInterval() == getTimeInterval()
          && other.getBytesThreshold() == getBytesThreshold();
    }
    return result;
  }
Two <code>DiskWriteAttributes</code> are equal if the both specify the synchronous writes, or
they both specify asynchronous writes with the same time interval and bytes threshold.
geode-core/src/main/java/org/apache/geode/internal/cache/DiskWriteAttributesImpl.java