Skip to content

Conversation

@idegtiarenko
Copy link
Contributor

No description provided.

@idegtiarenko idegtiarenko added >non-issue Team:Analytics Meta label for analytical engine team (ESQL/Aggs/Geo) :Analytics/ES|QL AKA ESQL v9.3.0 labels Oct 31, 2025
final String clusterAlias = entry.getKey();
final String indexExpr = Strings.arrayToCommaDelimitedString(entry.getValue().indices());
executionInfo.swapCluster(clusterAlias, (k, v) -> {
assert v == null : "No cluster for " + clusterAlias + " should have been added to ExecutionInfo yet";
Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Now this is called in a loop since we might encounter several main index expression (for example in fork or in view).
This should concatenate all of their expressions in the same cluster entry.

cc @craigtaverner, @smalyshev

result,
(entry, r, l) -> preAnalyzeMainIndices(entry.getKey(), entry.getValue(), preAnalysis, executionInfo, r, requestFilter, l),
listener
);
Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This is going to be hidden behind crossProjectModeDecider.crossProjectEnabled() == false check.

For CPS case we are going to perform resolution somewhat differently.
Completeness and correctness of resolution would be handled by FC completely, the EsqlExecutionInfo#clusterInfo will be populated from the FC resolvedTo data structure added by #136632.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

:Analytics/ES|QL AKA ESQL >non-issue Team:Analytics Meta label for analytical engine team (ESQL/Aggs/Geo) v9.3.0

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant