|
@@ -97,7 +97,8 @@ public class CrossClustersQueryIT extends AbstractMultiClustersTestCase {
|
|
|
EsqlExecutionInfo executionInfo = resp.getExecutionInfo();
|
|
|
assertNotNull(executionInfo);
|
|
|
assertThat(executionInfo.isCrossClusterSearch(), is(true));
|
|
|
- assertThat(executionInfo.overallTook().millis(), greaterThanOrEqualTo(0L));
|
|
|
+ long overallTookMillis = executionInfo.overallTook().millis();
|
|
|
+ assertThat(overallTookMillis, greaterThanOrEqualTo(0L));
|
|
|
assertThat(executionInfo.includeCCSMetadata(), equalTo(responseExpectMeta));
|
|
|
|
|
|
assertThat(executionInfo.clusterAliases(), equalTo(Set.of(REMOTE_CLUSTER, LOCAL_CLUSTER)));
|
|
@@ -106,6 +107,7 @@ public class CrossClustersQueryIT extends AbstractMultiClustersTestCase {
|
|
|
assertThat(remoteCluster.getIndexExpression(), equalTo("logs-*"));
|
|
|
assertThat(remoteCluster.getStatus(), equalTo(EsqlExecutionInfo.Cluster.Status.SUCCESSFUL));
|
|
|
assertThat(remoteCluster.getTook().millis(), greaterThanOrEqualTo(0L));
|
|
|
+ assertThat(remoteCluster.getTook().millis(), lessThanOrEqualTo(overallTookMillis));
|
|
|
assertThat(remoteCluster.getTotalShards(), equalTo(remoteNumShards));
|
|
|
assertThat(remoteCluster.getSuccessfulShards(), equalTo(remoteNumShards));
|
|
|
assertThat(remoteCluster.getSkippedShards(), equalTo(0));
|
|
@@ -115,6 +117,7 @@ public class CrossClustersQueryIT extends AbstractMultiClustersTestCase {
|
|
|
assertThat(localCluster.getIndexExpression(), equalTo("logs-*"));
|
|
|
assertThat(localCluster.getStatus(), equalTo(EsqlExecutionInfo.Cluster.Status.SUCCESSFUL));
|
|
|
assertThat(localCluster.getTook().millis(), greaterThanOrEqualTo(0L));
|
|
|
+ assertThat(localCluster.getTook().millis(), lessThanOrEqualTo(overallTookMillis));
|
|
|
assertThat(localCluster.getTotalShards(), equalTo(localNumShards));
|
|
|
assertThat(localCluster.getSuccessfulShards(), equalTo(localNumShards));
|
|
|
assertThat(localCluster.getSkippedShards(), equalTo(0));
|
|
@@ -133,7 +136,8 @@ public class CrossClustersQueryIT extends AbstractMultiClustersTestCase {
|
|
|
EsqlExecutionInfo executionInfo = resp.getExecutionInfo();
|
|
|
assertNotNull(executionInfo);
|
|
|
assertThat(executionInfo.isCrossClusterSearch(), is(true));
|
|
|
- assertThat(executionInfo.overallTook().millis(), greaterThanOrEqualTo(0L));
|
|
|
+ long overallTookMillis = executionInfo.overallTook().millis();
|
|
|
+ assertThat(overallTookMillis, greaterThanOrEqualTo(0L));
|
|
|
assertThat(executionInfo.includeCCSMetadata(), equalTo(responseExpectMeta));
|
|
|
|
|
|
assertThat(executionInfo.clusterAliases(), equalTo(Set.of(REMOTE_CLUSTER, LOCAL_CLUSTER)));
|
|
@@ -142,6 +146,7 @@ public class CrossClustersQueryIT extends AbstractMultiClustersTestCase {
|
|
|
assertThat(remoteCluster.getIndexExpression(), equalTo("logs-*"));
|
|
|
assertThat(remoteCluster.getStatus(), equalTo(EsqlExecutionInfo.Cluster.Status.SUCCESSFUL));
|
|
|
assertThat(remoteCluster.getTook().millis(), greaterThanOrEqualTo(0L));
|
|
|
+ assertThat(remoteCluster.getTook().millis(), lessThanOrEqualTo(overallTookMillis));
|
|
|
assertThat(remoteCluster.getTotalShards(), equalTo(remoteNumShards));
|
|
|
assertThat(remoteCluster.getSuccessfulShards(), equalTo(remoteNumShards));
|
|
|
assertThat(remoteCluster.getSkippedShards(), equalTo(0));
|
|
@@ -151,6 +156,7 @@ public class CrossClustersQueryIT extends AbstractMultiClustersTestCase {
|
|
|
assertThat(localCluster.getIndexExpression(), equalTo("logs-*"));
|
|
|
assertThat(localCluster.getStatus(), equalTo(EsqlExecutionInfo.Cluster.Status.SUCCESSFUL));
|
|
|
assertThat(localCluster.getTook().millis(), greaterThanOrEqualTo(0L));
|
|
|
+ assertThat(localCluster.getTook().millis(), lessThanOrEqualTo(overallTookMillis));
|
|
|
assertThat(localCluster.getTotalShards(), equalTo(localNumShards));
|
|
|
assertThat(localCluster.getSuccessfulShards(), equalTo(localNumShards));
|
|
|
assertThat(localCluster.getSkippedShards(), equalTo(0));
|
|
@@ -180,7 +186,8 @@ public class CrossClustersQueryIT extends AbstractMultiClustersTestCase {
|
|
|
|
|
|
assertNotNull(executionInfo);
|
|
|
assertThat(executionInfo.isCrossClusterSearch(), is(true));
|
|
|
- assertThat(executionInfo.overallTook().millis(), greaterThanOrEqualTo(0L));
|
|
|
+ long overallTookMillis = executionInfo.overallTook().millis();
|
|
|
+ assertThat(overallTookMillis, greaterThanOrEqualTo(0L));
|
|
|
assertThat(executionInfo.includeCCSMetadata(), equalTo(responseExpectMeta));
|
|
|
|
|
|
assertThat(executionInfo.clusterAliases(), equalTo(Set.of(REMOTE_CLUSTER, LOCAL_CLUSTER)));
|
|
@@ -189,6 +196,7 @@ public class CrossClustersQueryIT extends AbstractMultiClustersTestCase {
|
|
|
assertThat(remoteCluster.getIndexExpression(), equalTo("no_such_index"));
|
|
|
assertThat(remoteCluster.getStatus(), equalTo(EsqlExecutionInfo.Cluster.Status.SKIPPED));
|
|
|
assertThat(remoteCluster.getTook().millis(), greaterThanOrEqualTo(0L));
|
|
|
+ assertThat(remoteCluster.getTook().millis(), lessThanOrEqualTo(overallTookMillis));
|
|
|
assertThat(remoteCluster.getTotalShards(), equalTo(0)); // 0 since no matching index, thus no shards to search
|
|
|
assertThat(remoteCluster.getSuccessfulShards(), equalTo(0));
|
|
|
assertThat(remoteCluster.getSkippedShards(), equalTo(0));
|
|
@@ -198,6 +206,7 @@ public class CrossClustersQueryIT extends AbstractMultiClustersTestCase {
|
|
|
assertThat(localCluster.getIndexExpression(), equalTo("logs-*"));
|
|
|
assertThat(localCluster.getStatus(), equalTo(EsqlExecutionInfo.Cluster.Status.SUCCESSFUL));
|
|
|
assertThat(localCluster.getTook().millis(), greaterThanOrEqualTo(0L));
|
|
|
+ assertThat(localCluster.getTook().millis(), lessThanOrEqualTo(overallTookMillis));
|
|
|
assertThat(localCluster.getTotalShards(), equalTo(localNumShards));
|
|
|
assertThat(localCluster.getSuccessfulShards(), equalTo(localNumShards));
|
|
|
assertThat(localCluster.getSkippedShards(), equalTo(0));
|
|
@@ -219,7 +228,8 @@ public class CrossClustersQueryIT extends AbstractMultiClustersTestCase {
|
|
|
EsqlExecutionInfo executionInfo = resp.getExecutionInfo();
|
|
|
assertNotNull(executionInfo);
|
|
|
assertThat(executionInfo.isCrossClusterSearch(), is(true));
|
|
|
- assertThat(executionInfo.overallTook().millis(), greaterThanOrEqualTo(0L));
|
|
|
+ long overallTookMillis = executionInfo.overallTook().millis();
|
|
|
+ assertThat(overallTookMillis, greaterThanOrEqualTo(0L));
|
|
|
assertThat(executionInfo.includeCCSMetadata(), equalTo(responseExpectMeta));
|
|
|
|
|
|
assertThat(executionInfo.clusterAliases(), equalTo(Set.of(REMOTE_CLUSTER, LOCAL_CLUSTER)));
|
|
@@ -228,6 +238,7 @@ public class CrossClustersQueryIT extends AbstractMultiClustersTestCase {
|
|
|
assertThat(remoteCluster.getIndexExpression(), equalTo("logs-*"));
|
|
|
assertThat(remoteCluster.getStatus(), equalTo(EsqlExecutionInfo.Cluster.Status.SUCCESSFUL));
|
|
|
assertThat(remoteCluster.getTook().millis(), greaterThanOrEqualTo(0L));
|
|
|
+ assertThat(remoteCluster.getTook().millis(), lessThanOrEqualTo(overallTookMillis));
|
|
|
assertThat(remoteCluster.getTotalShards(), equalTo(remoteNumShards));
|
|
|
assertThat(remoteCluster.getSuccessfulShards(), equalTo(remoteNumShards));
|
|
|
assertThat(remoteCluster.getSkippedShards(), equalTo(0));
|
|
@@ -235,8 +246,9 @@ public class CrossClustersQueryIT extends AbstractMultiClustersTestCase {
|
|
|
|
|
|
EsqlExecutionInfo.Cluster localCluster = executionInfo.getCluster(LOCAL_CLUSTER);
|
|
|
assertThat(localCluster.getIndexExpression(), equalTo("no_such_index"));
|
|
|
- assertThat(localCluster.getStatus(), equalTo(EsqlExecutionInfo.Cluster.Status.SUCCESSFUL));
|
|
|
+ assertThat(localCluster.getStatus(), equalTo(EsqlExecutionInfo.Cluster.Status.SKIPPED));
|
|
|
assertThat(localCluster.getTook().millis(), greaterThanOrEqualTo(0L));
|
|
|
+ assertThat(localCluster.getTook().millis(), lessThanOrEqualTo(overallTookMillis));
|
|
|
assertThat(localCluster.getTotalShards(), equalTo(0));
|
|
|
assertThat(localCluster.getSuccessfulShards(), equalTo(0));
|
|
|
assertThat(localCluster.getSkippedShards(), equalTo(0));
|
|
@@ -258,7 +270,8 @@ public class CrossClustersQueryIT extends AbstractMultiClustersTestCase {
|
|
|
EsqlExecutionInfo executionInfo = resp.getExecutionInfo();
|
|
|
assertNotNull(executionInfo);
|
|
|
assertThat(executionInfo.isCrossClusterSearch(), is(true));
|
|
|
- assertThat(executionInfo.overallTook().millis(), greaterThanOrEqualTo(0L));
|
|
|
+ long overallTookMillis = executionInfo.overallTook().millis();
|
|
|
+ assertThat(overallTookMillis, greaterThanOrEqualTo(0L));
|
|
|
assertThat(executionInfo.includeCCSMetadata(), equalTo(responseExpectMeta));
|
|
|
|
|
|
assertThat(executionInfo.clusterAliases(), equalTo(Set.of(REMOTE_CLUSTER, LOCAL_CLUSTER)));
|
|
@@ -267,6 +280,7 @@ public class CrossClustersQueryIT extends AbstractMultiClustersTestCase {
|
|
|
assertThat(remoteCluster.getIndexExpression(), equalTo("no_such_index1,no_such_index2"));
|
|
|
assertThat(remoteCluster.getStatus(), equalTo(EsqlExecutionInfo.Cluster.Status.SKIPPED));
|
|
|
assertThat(remoteCluster.getTook().millis(), greaterThanOrEqualTo(0L));
|
|
|
+ assertThat(remoteCluster.getTook().millis(), lessThanOrEqualTo(overallTookMillis));
|
|
|
assertThat(remoteCluster.getTotalShards(), equalTo(0));
|
|
|
assertThat(remoteCluster.getSuccessfulShards(), equalTo(0));
|
|
|
assertThat(remoteCluster.getSkippedShards(), equalTo(0));
|
|
@@ -276,6 +290,7 @@ public class CrossClustersQueryIT extends AbstractMultiClustersTestCase {
|
|
|
assertThat(localCluster.getIndexExpression(), equalTo("no_such_index*,logs-1"));
|
|
|
assertThat(localCluster.getStatus(), equalTo(EsqlExecutionInfo.Cluster.Status.SUCCESSFUL));
|
|
|
assertThat(localCluster.getTook().millis(), greaterThanOrEqualTo(0L));
|
|
|
+ assertThat(localCluster.getTook().millis(), lessThanOrEqualTo(overallTookMillis));
|
|
|
assertThat(localCluster.getTotalShards(), equalTo(localNumShards));
|
|
|
assertThat(localCluster.getSuccessfulShards(), equalTo(localNumShards));
|
|
|
assertThat(localCluster.getSkippedShards(), equalTo(0));
|
|
@@ -291,7 +306,8 @@ public class CrossClustersQueryIT extends AbstractMultiClustersTestCase {
|
|
|
|
|
|
assertNotNull(executionInfo);
|
|
|
assertThat(executionInfo.isCrossClusterSearch(), is(true));
|
|
|
- assertThat(executionInfo.overallTook().millis(), greaterThanOrEqualTo(0L));
|
|
|
+ long overallTookMillis = executionInfo.overallTook().millis();
|
|
|
+ assertThat(overallTookMillis, greaterThanOrEqualTo(0L));
|
|
|
assertThat(executionInfo.includeCCSMetadata(), equalTo(responseExpectMeta));
|
|
|
|
|
|
assertThat(executionInfo.clusterAliases(), equalTo(Set.of(REMOTE_CLUSTER, LOCAL_CLUSTER)));
|
|
@@ -300,6 +316,7 @@ public class CrossClustersQueryIT extends AbstractMultiClustersTestCase {
|
|
|
assertThat(remoteCluster.getIndexExpression(), equalTo("no_such_index*"));
|
|
|
assertThat(remoteCluster.getStatus(), equalTo(EsqlExecutionInfo.Cluster.Status.SKIPPED));
|
|
|
assertThat(remoteCluster.getTook().millis(), greaterThanOrEqualTo(0L));
|
|
|
+ assertThat(remoteCluster.getTook().millis(), lessThanOrEqualTo(overallTookMillis));
|
|
|
assertThat(remoteCluster.getTotalShards(), equalTo(0));
|
|
|
assertThat(remoteCluster.getSuccessfulShards(), equalTo(0));
|
|
|
assertThat(remoteCluster.getSkippedShards(), equalTo(0));
|
|
@@ -309,6 +326,7 @@ public class CrossClustersQueryIT extends AbstractMultiClustersTestCase {
|
|
|
assertThat(localCluster.getIndexExpression(), equalTo("logs-*"));
|
|
|
assertThat(localCluster.getStatus(), equalTo(EsqlExecutionInfo.Cluster.Status.SUCCESSFUL));
|
|
|
assertThat(localCluster.getTook().millis(), greaterThanOrEqualTo(0L));
|
|
|
+ assertThat(localCluster.getTook().millis(), lessThanOrEqualTo(overallTookMillis));
|
|
|
assertThat(localCluster.getTotalShards(), equalTo(localNumShards));
|
|
|
assertThat(localCluster.getSuccessfulShards(), equalTo(localNumShards));
|
|
|
assertThat(localCluster.getSkippedShards(), equalTo(0));
|
|
@@ -414,20 +432,20 @@ public class CrossClustersQueryIT extends AbstractMultiClustersTestCase {
|
|
|
assertThat(remoteCluster.getStatus(), equalTo(EsqlExecutionInfo.Cluster.Status.SUCCESSFUL));
|
|
|
assertThat(remoteCluster.getTook().millis(), greaterThanOrEqualTo(0L));
|
|
|
assertThat(remoteCluster.getTook().millis(), lessThanOrEqualTo(overallTookMillis));
|
|
|
- assertNull(remoteCluster.getTotalShards());
|
|
|
- assertNull(remoteCluster.getSuccessfulShards());
|
|
|
- assertNull(remoteCluster.getSkippedShards());
|
|
|
- assertNull(remoteCluster.getFailedShards());
|
|
|
+ assertThat(remoteCluster.getTotalShards(), equalTo(0));
|
|
|
+ assertThat(remoteCluster.getSuccessfulShards(), equalTo(0));
|
|
|
+ assertThat(remoteCluster.getSkippedShards(), equalTo(0));
|
|
|
+ assertThat(remoteCluster.getFailedShards(), equalTo(0));
|
|
|
|
|
|
EsqlExecutionInfo.Cluster localCluster = executionInfo.getCluster(LOCAL_CLUSTER);
|
|
|
assertThat(localCluster.getIndexExpression(), equalTo("logs*"));
|
|
|
assertThat(localCluster.getStatus(), equalTo(EsqlExecutionInfo.Cluster.Status.SUCCESSFUL));
|
|
|
assertThat(localCluster.getTook().millis(), greaterThanOrEqualTo(0L));
|
|
|
assertThat(localCluster.getTook().millis(), lessThanOrEqualTo(overallTookMillis));
|
|
|
- assertNull(localCluster.getTotalShards());
|
|
|
- assertNull(localCluster.getSuccessfulShards());
|
|
|
- assertNull(localCluster.getSkippedShards());
|
|
|
- assertNull(localCluster.getFailedShards());
|
|
|
+ assertThat(remoteCluster.getTotalShards(), equalTo(0));
|
|
|
+ assertThat(remoteCluster.getSuccessfulShards(), equalTo(0));
|
|
|
+ assertThat(remoteCluster.getSkippedShards(), equalTo(0));
|
|
|
+ assertThat(remoteCluster.getFailedShards(), equalTo(0));
|
|
|
}
|
|
|
|
|
|
try (EsqlQueryResponse resp = runQuery("FROM logs*,cluster-a:nomatch* | LIMIT 0", requestIncludeMeta)) {
|
|
@@ -442,7 +460,8 @@ public class CrossClustersQueryIT extends AbstractMultiClustersTestCase {
|
|
|
EsqlExecutionInfo.Cluster remoteCluster = executionInfo.getCluster(REMOTE_CLUSTER);
|
|
|
assertThat(remoteCluster.getIndexExpression(), equalTo("nomatch*"));
|
|
|
assertThat(remoteCluster.getStatus(), equalTo(EsqlExecutionInfo.Cluster.Status.SKIPPED));
|
|
|
- assertThat(remoteCluster.getTook().millis(), equalTo(0L));
|
|
|
+ assertThat(remoteCluster.getTook().millis(), greaterThanOrEqualTo(0L));
|
|
|
+ assertThat(remoteCluster.getTook().millis(), lessThanOrEqualTo(overallTookMillis));
|
|
|
assertThat(remoteCluster.getTotalShards(), equalTo(0));
|
|
|
assertThat(remoteCluster.getSuccessfulShards(), equalTo(0));
|
|
|
assertThat(remoteCluster.getSkippedShards(), equalTo(0));
|
|
@@ -453,10 +472,10 @@ public class CrossClustersQueryIT extends AbstractMultiClustersTestCase {
|
|
|
assertThat(localCluster.getStatus(), equalTo(EsqlExecutionInfo.Cluster.Status.SUCCESSFUL));
|
|
|
assertThat(localCluster.getTook().millis(), greaterThanOrEqualTo(0L));
|
|
|
assertThat(localCluster.getTook().millis(), lessThanOrEqualTo(overallTookMillis));
|
|
|
- assertNull(localCluster.getTotalShards());
|
|
|
- assertNull(localCluster.getSuccessfulShards());
|
|
|
- assertNull(localCluster.getSkippedShards());
|
|
|
- assertNull(localCluster.getFailedShards());
|
|
|
+ assertThat(localCluster.getTotalShards(), equalTo(0));
|
|
|
+ assertThat(localCluster.getSuccessfulShards(), equalTo(0));
|
|
|
+ assertThat(localCluster.getSkippedShards(), equalTo(0));
|
|
|
+ assertThat(localCluster.getFailedShards(), equalTo(0));
|
|
|
}
|
|
|
|
|
|
try (EsqlQueryResponse resp = runQuery("FROM nomatch*,cluster-a:* | LIMIT 0", requestIncludeMeta)) {
|
|
@@ -473,17 +492,20 @@ public class CrossClustersQueryIT extends AbstractMultiClustersTestCase {
|
|
|
assertThat(remoteCluster.getStatus(), equalTo(EsqlExecutionInfo.Cluster.Status.SUCCESSFUL));
|
|
|
assertThat(remoteCluster.getTook().millis(), greaterThanOrEqualTo(0L));
|
|
|
assertThat(remoteCluster.getTook().millis(), lessThanOrEqualTo(overallTookMillis));
|
|
|
- assertNull(remoteCluster.getTotalShards());
|
|
|
- assertNull(remoteCluster.getSuccessfulShards());
|
|
|
- assertNull(remoteCluster.getSkippedShards());
|
|
|
- assertNull(remoteCluster.getFailedShards());
|
|
|
+ assertThat(remoteCluster.getTotalShards(), equalTo(0));
|
|
|
+ assertThat(remoteCluster.getSuccessfulShards(), equalTo(0));
|
|
|
+ assertThat(remoteCluster.getSkippedShards(), equalTo(0));
|
|
|
+ assertThat(remoteCluster.getFailedShards(), equalTo(0));
|
|
|
|
|
|
EsqlExecutionInfo.Cluster localCluster = executionInfo.getCluster(LOCAL_CLUSTER);
|
|
|
assertThat(localCluster.getIndexExpression(), equalTo("nomatch*"));
|
|
|
- // TODO: in https://github.com/elastic/elasticsearch/issues/112886, this will be changed to be SKIPPED
|
|
|
- assertThat(localCluster.getStatus(), equalTo(EsqlExecutionInfo.Cluster.Status.SUCCESSFUL));
|
|
|
+ assertThat(localCluster.getStatus(), equalTo(EsqlExecutionInfo.Cluster.Status.SKIPPED));
|
|
|
assertThat(localCluster.getTook().millis(), greaterThanOrEqualTo(0L));
|
|
|
assertThat(localCluster.getTook().millis(), lessThanOrEqualTo(overallTookMillis));
|
|
|
+ assertThat(remoteCluster.getTotalShards(), equalTo(0));
|
|
|
+ assertThat(remoteCluster.getSuccessfulShards(), equalTo(0));
|
|
|
+ assertThat(remoteCluster.getSkippedShards(), equalTo(0));
|
|
|
+ assertThat(remoteCluster.getFailedShards(), equalTo(0));
|
|
|
}
|
|
|
}
|
|
|
|