Spring ElasticSearch 的数据保存方法增加计数(不正确),即使是更新

Spring Data for ElasticSearch save method increments count (incorrect) even for update

我遇到了一个问题,每当我使用 save 对文档进行更新时,计数一直递增 1,而计数应该保持不变。如果我用 save 创建一个文档,那么计数会增加 2。我设置错了吗? 这是我对 ElasticSearch 索引的设置:

{
    "aliases": {
      "case": {}
    },
    "mappings": {
      "_doc": {
        "dynamic": false,
        "properties": {
          "created": {
            "index": true,
            "type": "date"
          },
          "modified": {
            "index": true,
            "type": "date"
          },
          "type": {
                "index": true,
                "type": "keyword", "normalizer": "lower_case_normalizer"
          },
          "states": {
            "type": "nested",
            "properties": {
              "from": {
                "index": true,
                "type": "keyword", "normalizer": "lower_case_normalizer"
              },
              "to": {
                "index": true,
                "type": "keyword", "normalizer": "lower_case_normalizer"
              },
              "event": {
                "index": true,
                "type": "keyword", "normalizer": "lower_case_normalizer"
              }
            }
          }
        }
      }
    },
    "settings": {
      "index": {
        "number_of_shards": 3,
        "number_of_replicas": 2
      },
      "analysis": {
        "normalizer": {
          "lower_case_normalizer": {
              "type": "custom",
              "char_filter": [],
              "filter": ["lowercase", "asciifolding"]
          }
        }
      }
    }
  }

这是我将文档插入 ES 的方式:

public Case createCase(final Case case) throws UnableToGenerateUUIDException {

    final UUID caseId = uuidService.getNowTimeUUID();
    final Instant now = Instant.now();
    case.setCreated(now);
    case.setModified(now);
    case.setId(caseId.toString());

    return caseRepository.save(case);
}

这是我使用的 Chrome 扩展的错误,而不是 Spring 数据的错误。我为这个错误道歉。我已经验证 Spring 数据中的 count() 反映了正确的数字。