Skip to content

feat: Add AND/OR aggregation feature to TableEvolutionFuzzer#15528

Closed
juwentus1234 wants to merge 1 commit intofacebookincubator:mainfrom
juwentus1234:export-D87204100
Closed

feat: Add AND/OR aggregation feature to TableEvolutionFuzzer#15528
juwentus1234 wants to merge 1 commit intofacebookincubator:mainfrom
juwentus1234:export-D87204100

Conversation

@juwentus1234
Copy link
Contributor

Summary:
Add support for bool_and and bool_or aggregation functions in the TableEvolutionFuzzer's aggregation pushdown testing.

Changes

Extended the aggregation pushdown configuration generator to support boolean aggregation functions in addition to the existing numeric aggregation functions:

  • Split supportedAggs into two separate lists:

    • supportedNumericAggs: {min, max} for numeric columns (INTEGER, BIGINT, REAL, DOUBLE, etc.)
    • supportedBooleanAggs: {bool_and, bool_or} for boolean columns
  • Updated column collection logic to separately track numeric and boolean columns that are eligible for aggregation

  • Modified aggregation selection to independently try both numeric and boolean aggregations with 50% probability each, allowing for more diverse test coverage

This change enables more comprehensive testing of aggregation pushdown functionality by including boolean aggregate functions, ensuring better coverage of different data types and aggregation scenarios.

Differential Revision: D87204100

@netlify
Copy link

netlify bot commented Nov 17, 2025

Deploy Preview for meta-velox canceled.

Name Link
🔨 Latest commit 4a34b15
🔍 Latest deploy log https://app.netlify.com/projects/meta-velox/deploys/691cc53517bceb00087798d1

@meta-cla meta-cla bot added the CLA Signed This label is managed by the Facebook bot. Authors need to sign the CLA before a PR can be reviewed. label Nov 17, 2025
@meta-codesync
Copy link

meta-codesync bot commented Nov 17, 2025

@juwentus1234 has exported this pull request. If you are a Meta employee, you can view the originating Diff in D87204100.

@juwentus1234 juwentus1234 requested a review from Yuhta November 17, 2025 22:07
juwentus1234 added a commit to juwentus1234/velox that referenced this pull request Nov 18, 2025
…EvolutionFuzzer (facebookincubator#15528)

Summary:

Add support for bool_and, bool_or aggregation and bitwise_and_agg, bitwise_or_agg, bitwise_xor_agg functions in the TableEvolutionFuzzer's aggregation pushdown testing.

## Changes

Extended the aggregation pushdown configuration generator to support boolean aggregation functions and bitwise aggregation functions in addition to the existing numeric aggregation functions:

- Split `supportedAggs` into two separate lists:
  - `supportedNumericAggs`: {min, max} for numeric columns (INTEGER, BIGINT, REAL, DOUBLE, etc.)
  - `supportedBooleanAggs`: {bool_and, bool_or} for boolean columns
  - `supportedIntegerAggs`: {bitwise_and_agg, bitwise_or_agg, bitwise_xor_agg} for integer columns

- Updated column collection logic to separately track numeric and boolean columns that are eligible for aggregation

- Modified aggregation selection to independently try both numeric and boolean aggregations with 50% probability each, allowing for more diverse test coverage

This change enables more comprehensive testing of aggregation pushdown functionality by including boolean aggregate functions, ensuring better coverage of different data types and aggregation scenarios.

Differential Revision: D87204100
Copy link
Contributor

@Yuhta Yuhta left a comment

Choose a reason for hiding this comment

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

LGTM except one nit

…EvolutionFuzzer (facebookincubator#15528)

Summary:

Add support for bool_and, bool_or aggregation and bitwise_and_agg, bitwise_or_agg, bitwise_xor_agg functions in the TableEvolutionFuzzer's aggregation pushdown testing.

## Changes

Extended the aggregation pushdown configuration generator to support boolean aggregation functions and bitwise aggregation functions in addition to the existing numeric aggregation functions:

- Split `supportedAggs` into two separate lists:
  - `supportedNumericAggs`: {min, max} for numeric columns (INTEGER, BIGINT, REAL, DOUBLE, etc.)
  - `supportedBooleanAggs`: {bool_and, bool_or} for boolean columns
  - `supportedIntegerAggs`: {bitwise_and_agg, bitwise_or_agg, bitwise_xor_agg} for integer columns

- Updated column collection logic to separately track numeric and boolean columns that are eligible for aggregation

- Modified aggregation selection to independently try both numeric and boolean aggregations with 50% probability each, allowing for more diverse test coverage

This change enables more comprehensive testing of aggregation pushdown functionality by including boolean aggregate functions, ensuring better coverage of different data types and aggregation scenarios.

Reviewed By: Yuhta

Differential Revision: D87204100
@meta-codesync
Copy link

meta-codesync bot commented Nov 18, 2025

This pull request has been merged in b26ce23.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

CLA Signed This label is managed by the Facebook bot. Authors need to sign the CLA before a PR can be reviewed. fb-exported Merged meta-exported

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants