Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Pass aliases from unwind to project. #5045

Merged
merged 1 commit into from
Dec 12, 2022

Conversation

xtcyclist
Copy link
Contributor

@xtcyclist xtcyclist commented Dec 12, 2022

What type of PR is this?

  • bug
  • feature
  • enhancement

What problem(s) does this PR solve?

Issue(s) number:

Fix #5022

Description:

Consider a clause segment like "unwind a as b with *". The project operator generated to implement "with *" shall carry on all aliases from its previous "unwind" clause, consisting of the aliases that the unwind passes on as well as the alises it generated (e.g., the b in this example).

In the current implementation, only the unwindCtx->alias (e.g., the b in this example) is added into the project. With only this alias passed, there would be missing columns in the project's output variable, which in turn would prevent the argument operator, if any, to find its needed columns for its input variable.

Argument will NULL input variable crashses the graphd.

Detailed analysis of the crash bug has been posted in the above issue.

How do you solve it?

Added aliasesAvailable and aliasesGenerated into the project as well, for the project after wind.

Special notes for your reviewer, ex. impact of this fix, design document, etc:

Checklist:

Tests:

  • Unit test(positive and negative cases)
  • Function test
  • Performance test
  • TCK

Affects:

  • Documentation affected (Please add the label if documentation needs to be modified.)
  • Incompatibility (If it breaks the compatibility, please describe it and add the label.)
  • If it's needed to cherry-pick (If cherry-pick to some branches is required, please label the destination version(s).)
  • Performance impacted: Consumes more CPU/Memory

Release notes:

Please confirm whether to be reflected in release notes and how to describe:

ex. Fixed the bug .....

@xtcyclist xtcyclist marked this pull request as draft December 12, 2022 04:52
@xtcyclist xtcyclist added the ready-for-testing PR: ready for the CI test label Dec 12, 2022
Copy link
Contributor

@yixinglu yixinglu left a comment

Choose a reason for hiding this comment

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

well done!

@xtcyclist xtcyclist merged commit 573f7f4 into vesoft-inc:master Dec 12, 2022
@xtcyclist xtcyclist deleted the fix_argument_crash branch December 12, 2022 09:57
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
ready for review ready-for-testing PR: ready for the CI test
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Graphd crashed executing match query(10)
3 participants