[NFC] Update System Uft8mb4 check to handle for the fact that MySQL8 … #22221
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
…outputs utf8mb3 when the charset has been set to utf8 as utf8mb3 is the underlyling charset for utf8
Overview
This fixes the following test failure
api_v3_SystemTest::testSystemUTFMB8Conversion Failed asserting that 'CREATE TABLE
civicrm_contact(\n....) ENGINE=InnoDB AUTO_INCREMENT=3 DEFAULT CHARSET=utf8mb3 COLLATE=utf8_unicode_ci ROW_FORMAT=DYNAMIC' ends with "DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci ROW_FORMAT=DYNAMIC".
Before
api_v3_SystemTest::testSystemUTFMB8Conversion fails on MySQL8
After
api_v3_SystemTest::testSystemUTFMB8Conversion passed on MySQL8
Technical Details
As per https://dev.mysql.com/doc/refman/8.0/en/charset-unicode-utf8mb3.html mysql 8 onwards is now outputting utf8mb3 when it used to output utf8 as the default charsets for tables
Comments
ping @eileenmcnaughton @totten @demeritcowboy