Skip to content
New issue

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

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

Already on GitHub? # to your account

Improve robustness of full groupby checking #1469

Merged
merged 9 commits into from
Mar 26, 2021
Merged

Conversation

jpwhite4
Copy link
Member

This pull request combines two tightly coupled changes. The underlying issue is
that the ETLv2 code had a deficient check for the correct grouping in aggregate
queries and the etlv1 code autogenerated incorrect grouping configuration.

This change improves the robustness of the ETLv2 groupby check and fixes the
incorrect grouping configuration.

The old ETLv2 code had a php-based check for valid SQL. This didn't handle all
the possible valid cases and allowed an invalid case through. The change
removes this code and instead sets the SQL mode ONLY_FULL_GROUP_BY to get the
SQL server to do the check. Note that not the error is now handled at a
different point in the processing pipeline.

The etlv1 code now uses sql formula in the group by if an sql formula is
defined and the column name in the source table is identical to the column name
in the destination table.

Then there are the changes to the definition files so that correct sql queries are gernerated.

This pull request combines two tightly coupled changes. The underlying issue is
that the ETLv2 code had a deficient check for the correct grouping in aggregate
queries and the etlv1 code autogenerated incorrect grouping configuration.

This change improves the robustness of the ETLv2 groupby check and fixes the
incorrect grouping configuration.

The old ETLv2 code had a php-based check for valid SQL. This didn't handle all
the possible valid cases and allowed an invalid case through. The change
removes this code and instead sets the SQL mode ONLY_FULL_GROUP_BY to get the
SQL server to do the check. Note that not the error is now handled at a
different point in the processing pipeline.

The etlv1 code now uses sql formula in the group by if an sql formula is
defined and the column name in the source table is identical to the column name
in the destination table.
Co-authored-by: Ryan Rathsam <build@shippable.com>
@jpwhite4 jpwhite4 added this to the 9.5.0 milestone Feb 24, 2021
@jpwhite4 jpwhite4 added the bug Bugfixes label Feb 24, 2021
@jpwhite4 jpwhite4 merged commit 50d31d7 into ubccr:xdmod9.5 Mar 26, 2021
@jpwhite4 jpwhite4 deleted the grouping branch March 26, 2021 19:31
# for free to join this conversation on GitHub. Already have an account? # to comment
Labels
bug Bugfixes
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants