Skip to content

Conversation

@Jackie-Jiang
Copy link
Contributor

@Jackie-Jiang Jackie-Jiang commented Jun 9, 2022

Subtask of #8850

  • Support DISTINCT on multiple columns (including MV).
  • The behavior is the same as group-by on multiple columns, where we return all the value combinations if there are multiple MV columns

E.g. If a row has colA (MV): [0, 1], colB (MV): [2, 3], colC (SV): 4, SELECT DISTINCT colA, colB, colC will get 4 combinations from this row: [0, 2, 4], [0, 3, 4], [1, 2, 4], [1, 3, 4]

Release-Notes

Support DISTINCT on multiple MV columns. The behavior is the same as group-by on multiple columns (return all the value combinations if there are multiple MV columns).

@Jackie-Jiang Jackie-Jiang added feature release-notes Referenced by PRs that need attention when compiling the next release notes labels Jun 9, 2022
@codecov-commenter
Copy link

codecov-commenter commented Jun 9, 2022

Codecov Report

Merging #8873 (77e2f5e) into master (6984719) will increase coverage by 0.03%.
The diff coverage is 68.37%.

@@             Coverage Diff              @@
##             master    #8873      +/-   ##
============================================
+ Coverage     69.71%   69.75%   +0.03%     
+ Complexity     4993     4600     -393     
============================================
  Files          1804     1805       +1     
  Lines         93883    94073     +190     
  Branches      13981    14039      +58     
============================================
+ Hits          65453    65623     +170     
- Misses        23884    23889       +5     
- Partials       4546     4561      +15     
Flag Coverage Δ
integration1 26.34% <18.37%> (+0.05%) ⬆️
integration2 24.81% <18.37%> (-0.09%) ⬇️
unittests1 66.49% <63.67%> (+0.05%) ⬆️
unittests2 15.42% <0.00%> (-0.07%) ⬇️

Flags with carried forward coverage won't be shown. Click here to find out more.

Impacted Files Coverage Δ
...y/distinct/raw/RawMultiColumnDistinctExecutor.java 52.04% <43.37%> (-36.85%) ⬇️
...not/core/query/distinct/DistinctExecutorUtils.java 73.80% <73.80%> (ø)
...ictionaryBasedMultiColumnDistinctOnlyExecutor.java 87.09% <84.61%> (+0.43%) ⬆️
...ionaryBasedMultiColumnDistinctOrderByExecutor.java 98.14% <96.77%> (+0.71%) ⬆️
...t/core/query/distinct/DistinctExecutorFactory.java 88.09% <100.00%> (+0.59%) ⬆️
...ller/helix/core/minion/TaskTypeMetricsUpdater.java 80.00% <0.00%> (-20.00%) ⬇️
...onaryBasedSingleColumnDistinctOrderByExecutor.java 56.66% <0.00%> (-20.00%) ⬇️
...nction/DistinctCountBitmapAggregationFunction.java 47.66% <0.00%> (-11.40%) ⬇️
...ntroller/helix/core/minion/TaskMetricsEmitter.java 86.04% <0.00%> (-4.66%) ⬇️
...r/validation/RealtimeSegmentValidationManager.java 76.05% <0.00%> (-2.82%) ⬇️
... and 30 more

Continue to review full report at Codecov.

Legend - Click here to learn more
Δ = absolute <relative> (impact), ø = not affected, ? = missing data
Powered by Codecov. Last update 6984719...77e2f5e. Read the comment docs.

@xiangfu0
Copy link
Contributor

xiangfu0 commented Jun 9, 2022

Please put examples for release notes of the multi-value behavior.

@Jackie-Jiang Jackie-Jiang merged commit 6c7c5df into apache:master Jun 10, 2022
@Jackie-Jiang Jackie-Jiang deleted the distinct_mv branch June 10, 2022 17:41
dongxiaoman pushed a commit to dongxiaoman/incubator-pinot that referenced this pull request Jun 13, 2022
- Support DISTINCT on multiple columns (including MV).
- The behavior is the same as group-by on multiple columns, where we return all the value combinations if there are multiple MV columns
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

feature release-notes Referenced by PRs that need attention when compiling the next release notes

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants