Skip to content

ESQL - Add field function pushing node reduce plan tests#138529

Merged
carlosdelest merged 24 commits intoelastic:mainfrom
carlosdelest:non-issue/esql-function-loaders-pushdown-testing
Dec 12, 2025
Merged

ESQL - Add field function pushing node reduce plan tests#138529
carlosdelest merged 24 commits intoelastic:mainfrom
carlosdelest:non-issue/esql-function-loaders-pushdown-testing

Conversation

@carlosdelest
Copy link
Copy Markdown
Member

@carlosdelest carlosdelest commented Nov 24, 2025

Relates to #137679

Adds tests around pushing down functions on node_reduce tests.

@carlosdelest carlosdelest changed the title ESQL - Add field function pushing node reduce tests ESQL - Add field function pushing node reduce plan tests Nov 24, 2025
@carlosdelest carlosdelest added >test Issues or PRs that are addressing/adding tests :Analytics/ES|QL AKA ESQL :Search Relevance/ES|QL Search functionality in ES|QL labels Nov 24, 2025

@ClassRule
public static ElasticsearchCluster cluster = Clusters.testCluster(spec -> spec.plugin("inference-service-test"));
public static ElasticsearchCluster cluster = Clusters.testCluster();
Copy link
Copy Markdown
Member Author

Choose a reason for hiding this comment

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

No inference needed, simplifying

Map.of("data", List.of(expectedLoaders)), assertDataNodeSig);
}

private void test(
Copy link
Copy Markdown
Member Author

Choose a reason for hiding this comment

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

Reorganized the tests so we can check directly:

  • The expected columns
  • The expected field loaders per driver - we can check the field loaders for data and node_reduce drivers independently.

@carlosdelest carlosdelest removed the :Analytics/ES|QL AKA ESQL label Nov 27, 2025
@carlosdelest carlosdelest marked this pull request as ready for review November 27, 2025 12:26
@carlosdelest carlosdelest requested a review from nik9000 November 27, 2025 12:26
@elasticsearchmachine elasticsearchmachine added the Team:Search Relevance Meta label for the Search Relevance team in Elasticsearch label Nov 27, 2025
@elasticsearchmachine
Copy link
Copy Markdown
Collaborator

Pinging @elastic/es-search-relevance (Team:Search Relevance)

// Pushed down function
matchesMap().entry("test:column_at_a_time:Utf8CodePointsFromOrds.Singleton", 1),
// Field
matchesMap().entry("test:row_stride:BytesRefsFromOrds.Singleton", 1)
Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

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

👍

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

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

I'm not entirely sure we should push here - but that's complex! Either way, we push now and testing that is good.

…on-loaders-pushdown-testing

# Conflicts:
#	x-pack/plugin/esql/src/test/java/org/elasticsearch/xpack/esql/optimizer/LocalLogicalPlanOptimizerTests.java
…aders-pushdown-testing' into non-issue/esql-function-loaders-pushdown-testing
@carlosdelest carlosdelest enabled auto-merge (squash) December 10, 2025 07:05
@carlosdelest
Copy link
Copy Markdown
Member Author

@elasticmachine run Elasticsearch Serverless Checks

carlosdelest and others added 5 commits December 11, 2025 14:04
…on-loaders-pushdown-testing

# Conflicts:
#	x-pack/plugin/esql/qa/server/single-node/src/javaRestTest/java/org/elasticsearch/xpack/esql/qa/single_node/PushExpressionToLoadIT.java
…aders-pushdown-testing' into non-issue/esql-function-loaders-pushdown-testing
@carlosdelest carlosdelest merged commit 81f3f73 into elastic:main Dec 12, 2025
34 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

:Search Relevance/ES|QL Search functionality in ES|QL Team:Search Relevance Meta label for the Search Relevance team in Elasticsearch >test Issues or PRs that are addressing/adding tests v9.3.0

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants