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

[2/2] Parameter match on SqlTypeFamily #1603

Merged
merged 2 commits into from
Oct 2, 2024
Merged

[2/2] Parameter match on SqlTypeFamily #1603

merged 2 commits into from
Oct 2, 2024

Conversation

RCHowell
Copy link
Member

@RCHowell RCHowell commented Oct 1, 2024

Relevant Issues

#1585
#1598

Description

This PR is Part 2 of 2. It introduces the internal concept of a "SqlTypeFamily" which is internal-only and aids us in accurate typing.

Why are we doing this? Accurate SQL typing requires knowing the exact types of input arguments i.e. what is the precision and scale of the argument decimals. SQL defines this by "enumerating" all permutations and defining a static function for each permutation. In practice, this would mean defining at least 38^2 functions for each function that has a decimal argument.

This implementation is how we get around that. The SqlType family enables defining operators on "acceptable" types and checking if we can coerce to the preferred type when there are multiple choices (postgres style).

Other Information

License Information

By submitting this pull request, I confirm that my contribution is made under the terms of the Apache 2.0 license.

Copy link

github-actions bot commented Oct 1, 2024

CROSS-ENGINE-REPORT ❌

BASE (LEGACY-V0.14.8) TARGET (EVAL-E568730) +/-
% Passing 89.67% 94.22% 4.55% ✅
Passing 5287 5555 268 ✅
Failing 609 52 -557 ✅
Ignored 0 289 289 🔶
Total Tests 5896 5896 0 ✅

Testing Details

  • Base Commit: v0.14.8
  • Base Engine: LEGACY
  • Target Commit: e568730
  • Target Engine: EVAL

Result Details

  • ❌ REGRESSION DETECTED. See Now Failing/Ignored Tests. ❌
  • Passing in both: 2642
  • Failing in both: 18
  • Ignored in both: 0
  • PASSING in BASE but now FAILING in TARGET: 1
  • PASSING in BASE but now IGNORED in TARGET: 111
  • FAILING in BASE but now PASSING in TARGET: 179
  • IGNORED in BASE but now PASSING in TARGET: 0

Now FAILING Tests ❌

The following 1 test(s) were previously PASSING in BASE but are now FAILING in TARGET:

Click here to see
  1. data type mismatch in logical expression, compileOption: PERMISSIVE

Now IGNORED Tests ❌

The complete list can be found in GitHub CI summary, either from Step Summary or in the Artifact.

Now Passing Tests

179 test(s) were previously failing in BASE (LEGACY-V0.14.8) but now pass in TARGET (EVAL-E568730). Before merging, confirm they are intended to pass.

The complete list can be found in GitHub CI summary, either from Step Summary or in the Artifact.

CROSS-COMMIT-REPORT ✅

BASE (EVAL-DA22CF8) TARGET (EVAL-E568730) +/-
% Passing 94.18% 94.22% 0.03% ✅
Passing 5553 5555 2 ✅
Failing 54 52 -2 ✅
Ignored 289 289 0 ✅
Total Tests 5896 5896 0 ✅

Testing Details

  • Base Commit: da22cf8
  • Base Engine: EVAL
  • Target Commit: e568730
  • Target Engine: EVAL

Result Details

  • Passing in both: 5553
  • Failing in both: 52
  • Ignored in both: 289
  • PASSING in BASE but now FAILING in TARGET: 0
  • PASSING in BASE but now IGNORED in TARGET: 0
  • FAILING in BASE but now PASSING in TARGET: 2
  • IGNORED in BASE but now PASSING in TARGET: 0

Now Passing Tests

The following 2 test(s) were previously FAILING in BASE but are now PASSING in TARGET. Before merging, confirm they are intended to pass:

Click here to see
  1. MYSQL_SELECT_29, compileOption: PERMISSIVE
  2. MYSQL_SELECT_29, compileOption: STRICT

@RCHowell RCHowell merged commit bb2947f into v1 Oct 2, 2024
14 checks passed
@RCHowell
Copy link
Member Author

RCHowell commented Oct 2, 2024

Merging for 1.0.0-rc1 with follow-up tracked in #1604

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.

1 participant