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

Issue 951 #1508

Merged
merged 1 commit into from
May 4, 2023
Merged

Issue 951 #1508

merged 1 commit into from
May 4, 2023

Conversation

andyfengHKU
Copy link
Contributor

This PR partially solves #951 to avoid flattening when multiple aggregate function presents.

The idea is that when evaluating an aggregate function, we input not only the aggregate vector but also other unFlat state to obtain a correct multiplicity.

E.g.

MATCH (a), (b) RETURN COUNT(a), COUNT(b);

During aggregating, COUNT(a) will take vector "a" and also the state of vector "b" to figure the actual count.

At implementation level, we use AggregateInput (which wraps aggregate vector and unFlat data chunks) to replace AggregateVector

@codecov
Copy link

codecov bot commented May 4, 2023

Codecov Report

Patch coverage: 98.18% and project coverage change: +0.38 🎉

Comparison is base (7f9d84c) 91.87% compared to head (2f98f2c) 92.26%.

❗ Current head 2f98f2c differs from pull request most recent head f3b1f2a. Consider uploading reports for the commit f3b1f2a to get more accurate results

Additional details and impacted files
@@            Coverage Diff             @@
##           master    #1508      +/-   ##
==========================================
+ Coverage   91.87%   92.26%   +0.38%     
==========================================
  Files         677      677              
  Lines       24396    24356      -40     
==========================================
+ Hits        22415    22472      +57     
+ Misses       1981     1884      -97     
Impacted Files Coverage Δ
.../logical_plan/logical_operator/logical_aggregate.h 100.00% <ø> (ø)
src/include/processor/mapper/plan_mapper.h 100.00% <ø> (ø)
...rc/processor/operator/aggregate/base_aggregate.cpp 93.10% <95.00%> (-6.90%) ⬇️
src/processor/mapper/map_aggregate.cpp 98.43% <96.42%> (-1.57%) ⬇️
src/include/processor/data_pos.h 100.00% <100.00%> (ø)
...rocessor/operator/aggregate/aggregate_hash_table.h 77.77% <100.00%> (ø)
...ude/processor/operator/aggregate/aggregate_input.h 100.00% <100.00%> (ø)
...lude/processor/operator/aggregate/base_aggregate.h 75.00% <100.00%> (-5.00%) ⬇️
...processor/operator/aggregate/base_aggregate_scan.h 100.00% <100.00%> (ø)
...lude/processor/operator/aggregate/hash_aggregate.h 100.00% <100.00%> (ø)
... and 9 more

... and 59 files with indirect coverage changes

☔ View full report in Codecov by Sentry.
📢 Do you have feedback about the report comment? Let us know in this issue.

src/include/processor/data_pos.h Outdated Show resolved Hide resolved
src/include/processor/data_pos.h Outdated Show resolved Hide resolved
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants