Skip to content

Conversation

@xinyual
Copy link
Contributor

@xinyual xinyual commented Oct 20, 2025

Description

Add appendpipe command.
Appendpipe appends the result of the subpipeline to the search results. Unlike a subsearch, the subpipeline is not run first. The subpipeline is run when the search reaches the appendpipe command.

Related Issues

Resolves #[Issue number to be closed when this PR is merged]

Check List

  • New functionality includes testing.
  • New functionality has been documented.
  • New functionality has javadoc added.
  • New functionality has a user manual doc added.
  • New PPL command checklist all confirmed.
  • API changes companion pull request created.
  • Commits are signed per the DCO using --signoff or -s.
  • Public documentation issue/PR created.

By submitting this pull request, I confirm that my contribution is made under the terms of the Apache 2.0 license.
For more information on following Developer Certificate of Origin and signing off your commits, please check here.

Signed-off-by: xinyual <xinyual@amazon.com>
Signed-off-by: xinyual <xinyual@amazon.com>
Signed-off-by: xinyual <xinyual@amazon.com>
Signed-off-by: xinyual <xinyual@amazon.com>
Signed-off-by: xinyual <xinyual@amazon.com>
Signed-off-by: xinyual <xinyual@amazon.com>
Signed-off-by: xinyual <xinyual@amazon.com>
Signed-off-by: xinyual <xinyual@amazon.com>
Signed-off-by: xinyual <xinyual@amazon.com>
Signed-off-by: xinyual <xinyual@amazon.com>
@xinyual xinyual changed the title Addappend pipe [WIP]: support appendpipecommand in PPL Oct 20, 2025
Signed-off-by: xinyual <xinyual@amazon.com>
Signed-off-by: xinyual <xinyual@amazon.com>
Signed-off-by: xinyual <xinyual@amazon.com>
Signed-off-by: xinyual <xinyual@amazon.com>
Signed-off-by: xinyual <xinyual@amazon.com>
Signed-off-by: xinyual <xinyual@amazon.com>
Signed-off-by: xinyual <xinyual@amazon.com>
Signed-off-by: xinyual <xinyual@amazon.com>
Signed-off-by: xinyual <xinyual@amazon.com>
Signed-off-by: xinyual <xinyual@amazon.com>
Signed-off-by: xinyual <xinyual@amazon.com>
@xinyual xinyual marked this pull request as ready for review October 23, 2025 05:28
@yuancu yuancu added the enhancement New feature or request label Oct 31, 2025
@yuancu yuancu changed the title [WIP]: support appendpipecommand in PPL Support appendpipecommand in PPL Oct 31, 2025
Copy link
Collaborator

@yuancu yuancu left a comment

Choose a reason for hiding this comment

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

Review in progress

Swiddis
Swiddis previously approved these changes Oct 31, 2025
Signed-off-by: xinyual <xinyual@amazon.com>
yuancu
yuancu previously approved these changes Nov 5, 2025
Copy link
Collaborator

@yuancu yuancu left a comment

Choose a reason for hiding this comment

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

LGTM

@xinyual
Copy link
Contributor Author

xinyual commented Nov 5, 2025

@Swiddis could you please approve again?

while (childNode.getChild() != null
&& !childNode.getChild().isEmpty()
&& !(childNode.getChild().getFirst() instanceof Values)) {
childNode = (UnresolvedPlan) childNode.getChild().getFirst();
Copy link
Collaborator

Choose a reason for hiding this comment

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

Will there be more than 1 children in the subquery? Maybe adding assertion and throw exception to avoid this case if we don't support.

Signed-off-by: xinyual <xinyual@amazon.com>
Signed-off-by: xinyual <xinyual@amazon.com>
@yuancu yuancu merged commit 3a3c8c8 into opensearch-project:main Nov 12, 2025
55 of 56 checks passed
opensearch-trigger-bot bot pushed a commit that referenced this pull request Nov 12, 2025
* add demos

Signed-off-by: xinyual <xinyual@amazon.com>

* add missing column

Signed-off-by: xinyual <xinyual@amazon.com>

* add appendpipe poc

Signed-off-by: xinyual <xinyual@amazon.com>

* slighty change syntax

Signed-off-by: xinyual <xinyual@amazon.com>

* add unresolved plan

Signed-off-by: xinyual <xinyual@amazon.com>

* add IT

Signed-off-by: xinyual <xinyual@amazon.com>

* add tests

Signed-off-by: xinyual <xinyual@amazon.com>

* remove useless ut

Signed-off-by: xinyual <xinyual@amazon.com>

* fix conflict

Signed-off-by: xinyual <xinyual@amazon.com>

* remove useless code

Signed-off-by: xinyual <xinyual@amazon.com>

* remove useless code

Signed-off-by: xinyual <xinyual@amazon.com>

* remove useless code

Signed-off-by: xinyual <xinyual@amazon.com>

* apply spotless

Signed-off-by: xinyual <xinyual@amazon.com>

* remove useless chaneg

Signed-off-by: xinyual <xinyual@amazon.com>

* add explain IT

Signed-off-by: xinyual <xinyual@amazon.com>

* fix IT

Signed-off-by: xinyual <xinyual@amazon.com>

* apply spotless

Signed-off-by: xinyual <xinyual@amazon.com>

* add doc

Signed-off-by: xinyual <xinyual@amazon.com>

* optimize doc

Signed-off-by: xinyual <xinyual@amazon.com>

* add UT

Signed-off-by: xinyual <xinyual@amazon.com>

* fix IT due to performance change

Signed-off-by: xinyual <xinyual@amazon.com>

* add multiply children check

Signed-off-by: xinyual <xinyual@amazon.com>

---------

Signed-off-by: xinyual <xinyual@amazon.com>
(cherry picked from commit 3a3c8c8)
Signed-off-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
LantaoJin pushed a commit that referenced this pull request Nov 12, 2025
* Support `appendpipe`command in PPL (#4602)

* add demos

Signed-off-by: xinyual <xinyual@amazon.com>

* add missing column

Signed-off-by: xinyual <xinyual@amazon.com>

* add appendpipe poc

Signed-off-by: xinyual <xinyual@amazon.com>

* slighty change syntax

Signed-off-by: xinyual <xinyual@amazon.com>

* add unresolved plan

Signed-off-by: xinyual <xinyual@amazon.com>

* add IT

Signed-off-by: xinyual <xinyual@amazon.com>

* add tests

Signed-off-by: xinyual <xinyual@amazon.com>

* remove useless ut

Signed-off-by: xinyual <xinyual@amazon.com>

* fix conflict

Signed-off-by: xinyual <xinyual@amazon.com>

* remove useless code

Signed-off-by: xinyual <xinyual@amazon.com>

* remove useless code

Signed-off-by: xinyual <xinyual@amazon.com>

* remove useless code

Signed-off-by: xinyual <xinyual@amazon.com>

* apply spotless

Signed-off-by: xinyual <xinyual@amazon.com>

* remove useless chaneg

Signed-off-by: xinyual <xinyual@amazon.com>

* add explain IT

Signed-off-by: xinyual <xinyual@amazon.com>

* fix IT

Signed-off-by: xinyual <xinyual@amazon.com>

* apply spotless

Signed-off-by: xinyual <xinyual@amazon.com>

* add doc

Signed-off-by: xinyual <xinyual@amazon.com>

* optimize doc

Signed-off-by: xinyual <xinyual@amazon.com>

* add UT

Signed-off-by: xinyual <xinyual@amazon.com>

* fix IT due to performance change

Signed-off-by: xinyual <xinyual@amazon.com>

* add multiply children check

Signed-off-by: xinyual <xinyual@amazon.com>

---------

Signed-off-by: xinyual <xinyual@amazon.com>

* avoid to use get first

Signed-off-by: xinyual <xinyual@amazon.com>

---------

Signed-off-by: xinyual <xinyual@amazon.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

backport 2.19-dev enhancement New feature or request

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants