Skip to content

enhance: support nullable group by keys #41313

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

Merged

Conversation

tedxu
Copy link
Contributor

@tedxu tedxu commented Apr 15, 2025

See #36264

@sre-ci-robot sre-ci-robot added the size/L Denotes a PR that changes 100-499 lines. label Apr 15, 2025
@sre-ci-robot
Copy link
Contributor

[APPROVALNOTIFIER] This PR is APPROVED

This pull-request has been approved by: tedxu

The full list of commands accepted by this bot can be found here.

The pull request process is described here

Needs approval from an approver in each of these files:

Approvers can indicate their approval by writing /approve in a comment
Approvers can cancel approval by writing /approve cancel in a comment

@mergify mergify bot added dco-passed DCO check passed. kind/enhancement Issues or changes related to enhancement labels Apr 15, 2025
Copy link
Contributor

mergify bot commented Apr 15, 2025

@tedxu go-sdk check failed, comment rerun go-sdk can trigger the job again.

Copy link
Contributor

mergify bot commented Apr 15, 2025

@tedxu E2e jenkins job failed, comment /run-cpu-e2e can trigger the job again.

Copy link
Contributor

mergify bot commented Apr 15, 2025

@tedxu cpp-unit-test check failed, comment rerun cpp-unit-test can trigger the job again.

Copy link

codecov bot commented Apr 15, 2025

Codecov Report

Attention: Patch coverage is 58.18182% with 23 lines in your changes missing coverage. Please review.

Project coverage is 80.57%. Comparing base (1d564a2) to head (ded4f63).
Report is 18 commits behind head on master.

Files with missing lines Patch % Lines
internal/core/src/segcore/ReduceUtils.cpp 45.71% 19 Missing ⚠️
.../src/exec/operator/groupby/SearchGroupByOperator.h 83.33% 2 Missing ⚠️
internal/core/src/segcore/SegmentInterface.cpp 50.00% 2 Missing ⚠️

❌ Your patch status has failed because the patch coverage (58.18%) is below the target coverage (80.00%). You can increase the patch coverage or adjust the target coverage.

Additional details and impacted files

Impacted file tree graph

@@            Coverage Diff             @@
##           master   #41313      +/-   ##
==========================================
- Coverage   80.58%   80.57%   -0.01%     
==========================================
  Files        1476     1476              
  Lines      209861   209902      +41     
==========================================
+ Hits       169111   169137      +26     
- Misses      34615    34635      +20     
+ Partials     6135     6130       -5     
Components Coverage Δ
Client 79.59% <ø> (ø)
Core 72.37% <58.18%> (+<0.01%) ⬆️
Go 81.99% <ø> (-0.01%) ⬇️
Files with missing lines Coverage Δ
internal/core/src/common/QueryResult.h 98.18% <100.00%> (ø)
internal/core/src/common/Types.h 19.04% <ø> (ø)
...rc/exec/operator/groupby/SearchGroupByOperator.cpp 98.87% <100.00%> (ø)
internal/proxy/search_util.go 82.63% <ø> (-0.16%) ⬇️
.../src/exec/operator/groupby/SearchGroupByOperator.h 85.07% <83.33%> (-0.64%) ⬇️
internal/core/src/segcore/SegmentInterface.cpp 72.16% <50.00%> (+0.26%) ⬆️
internal/core/src/segcore/ReduceUtils.cpp 49.29% <45.71%> (-1.69%) ⬇️

... and 32 files with indirect coverage changes

🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.

Signed-off-by: Ted Xu <[email protected]>
Copy link
Contributor

mergify bot commented Apr 16, 2025

@tedxu E2e jenkins job failed, comment /run-cpu-e2e can trigger the job again.

@tedxu
Copy link
Contributor Author

tedxu commented Apr 16, 2025

/run-cpu-e2e

Copy link
Contributor

mergify bot commented Apr 16, 2025

@tedxu E2e jenkins job failed, comment /run-cpu-e2e can trigger the job again.

@tedxu
Copy link
Contributor Author

tedxu commented Apr 16, 2025

/run-cpu-e2e

@mergify mergify bot added the ci-passed label Apr 16, 2025
Copy link
Contributor

@MrPresent-Han MrPresent-Han left a comment

Choose a reason for hiding this comment

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

lgtm

vector_iterators[vec_iter_idx++]->AddIterator(kw_iterator);
}
for (auto vector_iter : vector_iterators) {
for (const auto& vector_iter : vector_iterators) {
vector_iter->seal();
Copy link
Contributor

Choose a reason for hiding this comment

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

good refine for bad coding habit

std::string val =
std::get<std::string>(group_by_vals[idx].value());
*(field_data->mutable_data()->Add()) = val;
} else {
Copy link
Contributor

Choose a reason for hiding this comment

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

std::getstd::string(group_by_vals[idx]) will return a string&
so in this way, one copy constructor and one copy assignment operator is called
perf better:
*(field_data->mutable_data()->Add()) = std::move(std::getstd::string(group_by_vals[idx].value()));
only one move assignment operator is called

@MrPresent-Han
Copy link
Contributor

/lgtm

@sre-ci-robot sre-ci-robot merged commit d50781c into milvus-io:master Apr 18, 2025
18 of 20 checks passed
@tedxu tedxu deleted the enhance/support_group_by_null_key branch April 18, 2025 02:25
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
approved ci-passed dco-passed DCO check passed. kind/enhancement Issues or changes related to enhancement lgtm size/L Denotes a PR that changes 100-499 lines.
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants