Skip to content

Commit faa15eb

Browse files
authored
Add profile details (#123388)
1 parent 72678e8 commit faa15eb

File tree

10 files changed

+25
-10
lines changed

10 files changed

+25
-10
lines changed

x-pack/plugin/esql/compute/src/main/java/org/elasticsearch/compute/lucene/LuceneOperator.java

Lines changed: 10 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -34,6 +34,7 @@
3434

3535
import java.io.IOException;
3636
import java.io.UncheckedIOException;
37+
import java.util.Collection;
3738
import java.util.Collections;
3839
import java.util.HashSet;
3940
import java.util.List;
@@ -231,12 +232,20 @@ int position() {
231232
public String toString() {
232233
StringBuilder sb = new StringBuilder();
233234
sb.append(this.getClass().getSimpleName()).append("[");
234-
sb.append("maxPageSize = ").append(maxPageSize);
235+
sb.append("shards = ").append(sortedUnion(processedShards, sliceQueue.remainingShardsIdentifiers()));
236+
sb.append(", maxPageSize = ").append(maxPageSize);
235237
describe(sb);
236238
sb.append("]");
237239
return sb.toString();
238240
}
239241

242+
private static Set<String> sortedUnion(Collection<String> a, Collection<String> b) {
243+
var result = new TreeSet<String>();
244+
result.addAll(a);
245+
result.addAll(b);
246+
return result;
247+
}
248+
240249
protected abstract void describe(StringBuilder sb);
241250

242251
@Override

x-pack/plugin/esql/compute/src/main/java/org/elasticsearch/compute/lucene/LuceneSliceQueue.java

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -15,6 +15,7 @@
1515

1616
import java.util.ArrayList;
1717
import java.util.Arrays;
18+
import java.util.Collection;
1819
import java.util.Collections;
1920
import java.util.List;
2021
import java.util.Queue;
@@ -45,8 +46,8 @@ public int totalSlices() {
4546
return totalSlices;
4647
}
4748

48-
public Iterable<LuceneSlice> getSlices() {
49-
return slices;
49+
public Collection<String> remainingShardsIdentifiers() {
50+
return slices.stream().map(slice -> slice.shardContext().shardIdentifier()).toList();
5051
}
5152

5253
public static LuceneSliceQueue create(

x-pack/plugin/esql/compute/src/main/java/org/elasticsearch/compute/lucene/LuceneTopNSourceOperator.java

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -50,6 +50,7 @@
5050
* Source operator that builds Pages out of the output of a TopFieldCollector (aka TopN)
5151
*/
5252
public final class LuceneTopNSourceOperator extends LuceneOperator {
53+
5354
public static class Factory extends LuceneOperator.Factory {
5455
private final int maxPageSize;
5556
private final List<SortBuilder<?>> sorts;

x-pack/plugin/esql/compute/src/test/java/org/elasticsearch/compute/lucene/LuceneCountOperatorTests.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -95,7 +95,7 @@ private LuceneCountOperator.Factory simple(DataPartitioning dataPartitioning, in
9595

9696
@Override
9797
protected Matcher<String> expectedToStringOfSimple() {
98-
return matchesRegex("LuceneCountOperator\\[maxPageSize = \\d+, remainingDocs=100]");
98+
return matchesRegex("LuceneCountOperator\\[shards = \\[test], maxPageSize = \\d+, remainingDocs=100]");
9999
}
100100

101101
@Override

x-pack/plugin/esql/compute/src/test/java/org/elasticsearch/compute/lucene/LuceneMaxOperatorTestCase.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -195,7 +195,7 @@ private void testMax(Supplier<DriverContext> contexts, int size, int limit) {
195195

196196
@Override
197197
protected final Matcher<String> expectedToStringOfSimple() {
198-
return matchesRegex("LuceneMinMaxOperator\\[maxPageSize = \\d+, remainingDocs=100]");
198+
return matchesRegex("LuceneMinMaxOperator\\[shards = \\[test\\], maxPageSize = \\d+, remainingDocs=100]");
199199
}
200200

201201
@Override

x-pack/plugin/esql/compute/src/test/java/org/elasticsearch/compute/lucene/LuceneMinOperatorTestCase.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -195,7 +195,7 @@ private void testMin(Supplier<DriverContext> contexts, int size, int limit) {
195195

196196
@Override
197197
protected final Matcher<String> expectedToStringOfSimple() {
198-
return matchesRegex("LuceneMinMaxOperator\\[maxPageSize = \\d+, remainingDocs=100]");
198+
return matchesRegex("LuceneMinMaxOperator\\[shards = \\[test], maxPageSize = \\d+, remainingDocs=100]");
199199
}
200200

201201
@Override

x-pack/plugin/esql/compute/src/test/java/org/elasticsearch/compute/lucene/LuceneSourceOperatorTests.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -99,7 +99,7 @@ private LuceneSourceOperator.Factory simple(DataPartitioning dataPartitioning, i
9999

100100
@Override
101101
protected Matcher<String> expectedToStringOfSimple() {
102-
return matchesRegex("LuceneSourceOperator\\[maxPageSize = \\d+, remainingDocs = \\d+]");
102+
return matchesRegex("LuceneSourceOperator\\[shards = \\[test], maxPageSize = \\d+, remainingDocs = \\d+]");
103103
}
104104

105105
@Override

x-pack/plugin/esql/compute/src/test/java/org/elasticsearch/compute/lucene/LuceneTopNSourceOperatorScoringTests.java

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -109,7 +109,9 @@ public Optional<SortAndFormats> buildSort(List<SortBuilder<?>> sorts) {
109109

110110
@Override
111111
protected Matcher<String> expectedToStringOfSimple() {
112-
return matchesRegex("LuceneTopNSourceOperator\\[maxPageSize = \\d+, limit = 100, scoreMode = COMPLETE, sorts = \\[\\{.+}]]");
112+
return matchesRegex(
113+
"LuceneTopNSourceOperator\\[shards = \\[test], maxPageSize = \\d+, limit = 100, scoreMode = COMPLETE, sorts = \\[\\{.+}]]"
114+
);
113115
}
114116

115117
@Override

x-pack/plugin/esql/compute/src/test/java/org/elasticsearch/compute/lucene/LuceneTopNSourceOperatorTests.java

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -115,7 +115,9 @@ public Optional<SortAndFormats> buildSort(List<SortBuilder<?>> sorts) {
115115
@Override
116116
protected Matcher<String> expectedToStringOfSimple() {
117117
var s = scoring ? "COMPLETE" : "TOP_DOCS";
118-
return matchesRegex("LuceneTopNSourceOperator\\[maxPageSize = \\d+, limit = 100, scoreMode = " + s + ", sorts = \\[\\{.+}]]");
118+
return matchesRegex(
119+
"LuceneTopNSourceOperator\\[shards = \\[test], maxPageSize = \\d+, limit = 100, scoreMode = " + s + ", sorts = \\[\\{.+}]]"
120+
);
119121
}
120122

121123
@Override

x-pack/plugin/esql/src/internalClusterTest/java/org/elasticsearch/xpack/esql/action/EsqlActionTaskIT.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -107,7 +107,7 @@ public void testTaskContents() throws Exception {
107107
String taskDescription = status.taskDescription();
108108
for (OperatorStatus o : status.activeOperators()) {
109109
logger.info("status {}", o);
110-
if (o.operator().startsWith("LuceneSourceOperator[maxPageSize = " + pageSize())) {
110+
if (o.operator().startsWith("LuceneSourceOperator[")) {
111111
assertThat(taskDescription, equalTo("data"));
112112
LuceneSourceOperator.Status oStatus = (LuceneSourceOperator.Status) o.status();
113113
assertThat(oStatus.processedSlices(), lessThanOrEqualTo(oStatus.totalSlices()));

0 commit comments

Comments
 (0)