@Override
	public boolean equals(Object o) {
		if (this == o) {
			return true;
		}
		if (o == null || getClass() != o.getClass()) {
			return false;
		}
		org.apache.flink.streaming.connectors.elasticsearch.ElasticsearchUpsertTableSinkBase that = (org.apache.flink.streaming.connectors.elasticsearch.ElasticsearchUpsertTableSinkBase) o;
		return Objects.equals(isAppendOnly, that.isAppendOnly) &&
			Objects.equals(schema, that.schema) &&
			Objects.equals(hosts, that.hosts) &&
			Objects.equals(index, that.index) &&
			Objects.equals(docType, that.docType) &&
			Objects.equals(keyDelimiter, that.keyDelimiter) &&
			Objects.equals(keyNullLiteral, that.keyNullLiteral) &&
			Objects.equals(serializationSchema, that.serializationSchema) &&
			Objects.equals(contentType, that.contentType) &&
			Objects.equals(failureHandler, that.failureHandler) &&
			Objects.equals(sinkOptions, that.sinkOptions);
	}
Key field indices determined by the query.
elasticsearch5-xh/elasticsearch5-xh-sink/src/main/java/org/apache/flink/streaming/connectors/elasticsearch/ElasticsearchUpsertTableSinkBase.java