autopkgtest: Invalid DATETIME test fails with mysql >= 8.0.24
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
Ruby Mysql2 |
Fix Released
|
Unknown
|
|||
ruby-mysql2 (Ubuntu) |
Fix Released
|
Undecided
|
Paride Legovini | ||
Focal |
Fix Committed
|
Undecided
|
Unassigned | ||
Hirsute |
Won't Fix
|
Undecided
|
Unassigned |
Bug Description
[Impact]
The test suite is failing when running against MySQL >= 8.0.24 with:
-------
Failures:
1) Mysql2::Result row data type mapping should raise an error given an invalid DATETIME
Failure/Error:
expect { @client.
expected Mysql2::Error with "Invalid date in field 'bad_datetime': 1972-00-27 00:00:00" but nothing was raised
# ./spec/
2) Mysql2::Statement row data type mapping should raise an error given an invalid DATETIME
Failure/Error:
expect { @client.
expected Mysql2::Error with "Invalid date in field 'bad_datetime': 1972-00-27 00:00:00" but nothing was raised
# ./spec/
-------
This regression was introduced by the following uploads:
mysql-8.0 (8.0.25-
mysql-8.0 (8.0.25-
According to the MySQL release notes (https:/
Using CAST() on a DATE or DATETIME value in an INSERT statement
raised a warning for "0000-00-00" and "2000-02-31", but not for
"2000-01-00" or "2000-00-01". Now a warning is shown in each of
these cases also.
but the ruby-mysql2 tests rely on the old behavior.
This is preventing Focal and Hirsute SRUs from migrating when they trigger a ruby-mysql2 autopkgtest run.
[Test Plan]
Once the autopkgtest pass the fix can be considered verified.
[Where problems could occur]
The SRU only touches test code, so this upload won't change the behavior of the package in any user visible way.
As this is a test fix I'm tagging this bug as block-proposed.
[Development Fix]
Already fixed by the security team by disabling the bad test.
I reported the bug upstream, so it's likely that one of the next upstream releases will ship with a fix, and we'll then be able to drop the delta.
This is not a bug in Debian *yet* because Debian still ships mysql-8.0 8.0.23, the latest version with the old behavior.
[Stable Fix]
What it's being proposed here it the same fix uploaded to the devel release (Impish) by the security team, with no changes.
Related branches
- Utkarsh Gupta (community): Approve
- Canonical Server MOTU reviewers: Pending requested
-
Diff: 55 lines (+33/-0)3 files modifieddebian/changelog (+7/-0)
debian/patches/series (+1/-0)
debian/patches/skip-more-tests.patch (+25/-0)
- Utkarsh Gupta (community): Approve
- Canonical Server MOTU reviewers: Pending requested
-
Diff: 55 lines (+33/-0)3 files modifieddebian/changelog (+7/-0)
debian/patches/series (+1/-0)
debian/patches/skip-more-tests.patch (+25/-0)
Changed in ruby-mysql2 (Ubuntu): | |
status: | New → Triaged |
Changed in ruby-mysql2 (Ubuntu Focal): | |
status: | New → Triaged |
Changed in ruby-mysql2 (Ubuntu Hirsute): | |
status: | New → Triaged |
affects: | mysql-server → ruby-mysql2 |
Changed in ruby-mysql2 (Ubuntu Focal): | |
assignee: | nobody → Paride Legovini (paride) |
Changed in ruby-mysql2 (Ubuntu Hirsute): | |
assignee: | nobody → Paride Legovini (paride) |
description: | updated |
description: | updated |
description: | updated |
Changed in ruby-mysql2 (Ubuntu Focal): | |
status: | Triaged → In Progress |
Changed in ruby-mysql2 (Ubuntu Hirsute): | |
status: | Triaged → In Progress |
Changed in ruby-mysql2: | |
status: | Unknown → New |
Changed in ruby-mysql2 (Ubuntu): | |
assignee: | nobody → Paride Legovini (paride) |
Changed in ruby-mysql2 (Ubuntu Focal): | |
assignee: | Paride Legovini (paride) → nobody |
Changed in ruby-mysql2 (Ubuntu Hirsute): | |
assignee: | Paride Legovini (paride) → nobody |
Changed in ruby-mysql2: | |
status: | New → Fix Released |
This regression was introduced by the following upload:
mysql-8.0 (8.0.25- 0ubuntu0. 20.04.1) focal-security;
which was not subject to the stricter SRU migration checks and was then copied into focal-updates.