diff --git a/x-pack/plugin/logsdb/qa/rolling-upgrade/src/javaRestTest/java/org/elasticsearch/upgrades/MatchOnlyTextRollingUpgradeIT.java b/x-pack/plugin/logsdb/qa/rolling-upgrade/src/javaRestTest/java/org/elasticsearch/upgrades/MatchOnlyTextRollingUpgradeIT.java index ab1f7e2e4480f..42138462f1397 100644 --- a/x-pack/plugin/logsdb/qa/rolling-upgrade/src/javaRestTest/java/org/elasticsearch/upgrades/MatchOnlyTextRollingUpgradeIT.java +++ b/x-pack/plugin/logsdb/qa/rolling-upgrade/src/javaRestTest/java/org/elasticsearch/upgrades/MatchOnlyTextRollingUpgradeIT.java @@ -118,8 +118,8 @@ public void testIndexing() throws Exception { // when/then - run some queries and verify results ensureGreen(DATA_STREAM); search(DATA_STREAM); + phraseSearch(DATA_STREAM); query(DATA_STREAM); - } else if (isMixedCluster()) { // when bulkIndex(NUM_REQUESTS, NUM_DOCS_PER_REQUEST); @@ -127,13 +127,14 @@ public void testIndexing() throws Exception { // when/then ensureGreen(DATA_STREAM); search(DATA_STREAM); + phraseSearch(DATA_STREAM); query(DATA_STREAM); - } else if (isUpgradedCluster()) { // when/then ensureGreen(DATA_STREAM); bulkIndex(NUM_REQUESTS, NUM_DOCS_PER_REQUEST); search(DATA_STREAM); + phraseSearch(DATA_STREAM); query(DATA_STREAM); // when/then continued - force merge all shard segments into one @@ -244,6 +245,25 @@ void search(String dataStreamName) throws Exception { assertThat(totalCount, greaterThanOrEqualTo(NUM_REQUESTS * NUM_DOCS_PER_REQUEST)); } + private void phraseSearch(String dataStreamName) throws Exception { + var searchRequest = new Request("POST", "/" + dataStreamName + "/_search"); + searchRequest.addParameter("pretty", "true"); + searchRequest.setJsonEntity(""" + { + "query": { + "match_phrase": { + "message": "$smallestMessage" + } + } + } + """.replace("$smallestMessage", smallestMessage)); + var response = client().performRequest(searchRequest); + assertOK(response); + var responseBody = entityAsMap(response); + logger.info("{}", responseBody); + assertThat(ObjectPath.evaluate(responseBody, "hits.total.value"), greaterThanOrEqualTo(1)); + } + private void query(String dataStreamName) throws Exception { var queryRequest = new Request("POST", "/_query"); queryRequest.addParameter("pretty", "true"); diff --git a/x-pack/plugin/logsdb/qa/rolling-upgrade/src/javaRestTest/java/org/elasticsearch/upgrades/TextRollingUpgradeIT.java b/x-pack/plugin/logsdb/qa/rolling-upgrade/src/javaRestTest/java/org/elasticsearch/upgrades/TextRollingUpgradeIT.java index 0f0995d4550ce..a2bbd4471bab1 100644 --- a/x-pack/plugin/logsdb/qa/rolling-upgrade/src/javaRestTest/java/org/elasticsearch/upgrades/TextRollingUpgradeIT.java +++ b/x-pack/plugin/logsdb/qa/rolling-upgrade/src/javaRestTest/java/org/elasticsearch/upgrades/TextRollingUpgradeIT.java @@ -88,7 +88,6 @@ public TextRollingUpgradeIT(@Name("upgradedNodes") int upgradedNodes) { } public void testIndexing() throws Exception { - if (isOldCluster()) { // given - enable logsdb and create a template startTrial(); @@ -111,8 +110,8 @@ public void testIndexing() throws Exception { // when/then - run some queries and verify results ensureGreen(DATA_STREAM); search(DATA_STREAM); + phraseSearch(DATA_STREAM); query(DATA_STREAM); - } else if (isMixedCluster()) { // when bulkIndex(NUM_REQUESTS, NUM_DOCS_PER_REQUEST); @@ -120,13 +119,14 @@ public void testIndexing() throws Exception { // when/then ensureGreen(DATA_STREAM); search(DATA_STREAM); + phraseSearch(DATA_STREAM); query(DATA_STREAM); - } else if (isUpgradedCluster()) { // when/then ensureGreen(DATA_STREAM); bulkIndex(NUM_REQUESTS, NUM_DOCS_PER_REQUEST); search(DATA_STREAM); + phraseSearch(DATA_STREAM); query(DATA_STREAM); // when/then continued - force merge all shard segments into one @@ -232,7 +232,7 @@ private void recordSmallestMessage(final String message) { } } - void search(String dataStreamName) throws Exception { + private void search(String dataStreamName) throws Exception { var searchRequest = new Request("POST", "/" + dataStreamName + "/_search"); searchRequest.addParameter("pretty", "true"); searchRequest.setJsonEntity(""" @@ -249,6 +249,25 @@ void search(String dataStreamName) throws Exception { assertThat(totalCount, greaterThanOrEqualTo(NUM_REQUESTS * NUM_DOCS_PER_REQUEST)); } + private void phraseSearch(String dataStreamName) throws Exception { + var searchRequest = new Request("POST", "/" + dataStreamName + "/_search"); + searchRequest.addParameter("pretty", "true"); + searchRequest.setJsonEntity(""" + { + "query": { + "match_phrase": { + "message": "$smallestMessage" + } + } + } + """.replace("$smallestMessage", smallestMessage)); + var response = client().performRequest(searchRequest); + assertOK(response); + var responseBody = entityAsMap(response); + logger.info("{}", responseBody); + assertThat(ObjectPath.evaluate(responseBody, "hits.total.value"), greaterThanOrEqualTo(1)); + } + private void query(String dataStreamName) throws Exception { var queryRequest = new Request("POST", "/_query"); queryRequest.addParameter("pretty", "true");