diff options
author | Lee Hinman <lee@writequit.org> | 2016-09-08 07:43:55 -0600 |
---|---|---|
committer | Lee Hinman <lee@writequit.org> | 2016-09-08 07:43:55 -0600 |
commit | b41888966584fac1717131dbee165aa638535bea (patch) | |
tree | 9033f7bbd99acab40788edfce4ced461ed2aa17e /core/src/test/java/org/elasticsearch/versioning | |
parent | 8e7dfae7d1b44b45027622afff77251f034eb587 (diff) |
Revert "Remove FORCE version_type"
This reverts commit b4cc3cd35dea2e3059142c6bd7e2eb13ca8944ac.
Diffstat (limited to 'core/src/test/java/org/elasticsearch/versioning')
-rw-r--r-- | core/src/test/java/org/elasticsearch/versioning/SimpleVersioningIT.java | 30 |
1 files changed, 30 insertions, 0 deletions
diff --git a/core/src/test/java/org/elasticsearch/versioning/SimpleVersioningIT.java b/core/src/test/java/org/elasticsearch/versioning/SimpleVersioningIT.java index b80c5bd8e2..67e7d528e5 100644 --- a/core/src/test/java/org/elasticsearch/versioning/SimpleVersioningIT.java +++ b/core/src/test/java/org/elasticsearch/versioning/SimpleVersioningIT.java @@ -72,6 +72,36 @@ public class SimpleVersioningIT extends ESIntegTestCase { assertThat(indexResponse.getVersion(), equalTo(18L)); } + public void testForce() throws Exception { + createIndex("test"); + ensureGreen("test"); // we are testing force here which doesn't work if we are recovering at the same time - zzzzz... + IndexResponse indexResponse = client().prepareIndex("test", "type", "1").setSource("field1", "value1_1").setVersion(12).setVersionType(VersionType.FORCE).get(); + assertThat(indexResponse.getVersion(), equalTo(12L)); + + indexResponse = client().prepareIndex("test", "type", "1").setSource("field1", "value1_2").setVersion(12).setVersionType(VersionType.FORCE).get(); + assertThat(indexResponse.getVersion(), equalTo(12L)); + + indexResponse = client().prepareIndex("test", "type", "1").setSource("field1", "value1_2").setVersion(14).setVersionType(VersionType.FORCE).get(); + assertThat(indexResponse.getVersion(), equalTo(14L)); + + indexResponse = client().prepareIndex("test", "type", "1").setSource("field1", "value1_1").setVersion(13).setVersionType(VersionType.FORCE).get(); + assertThat(indexResponse.getVersion(), equalTo(13L)); + + client().admin().indices().prepareRefresh().execute().actionGet(); + if (randomBoolean()) { + refresh(); + } + for (int i = 0; i < 10; i++) { + assertThat(client().prepareGet("test", "type", "1").get().getVersion(), equalTo(13L)); + } + + // deleting with a lower version works. + long v = randomIntBetween(12, 14); + DeleteResponse deleteResponse = client().prepareDelete("test", "type", "1").setVersion(v).setVersionType(VersionType.FORCE).get(); + assertEquals(DocWriteResponse.Result.DELETED, deleteResponse.getResult()); + assertThat(deleteResponse.getVersion(), equalTo(v)); + } + public void testExternalGTE() throws Exception { createIndex("test"); |