The previous releases (8.0.35 and 8.2.0) resulted in me reporting fifteen bugs. Let's find out whether 8.0.36 and 8.3.0 will fare better on an M1 Mac.
Let's start with the build. Boost goes away as an external dependency in 8.3.0,
removing the need to specify Boost-related CMake options, good. The server continues
to build successfully with -DWITH_SYSTEM_LIBS=ON
but now started requiring
-DWITH_ZLIB=bundled
, because 8.3.0 made the system libraries option govern zlib
too, and the one in XCode is one patch level version too old. The Homebrew-installed
version is ignored.
8.0.36 Release configuration builds with a single potentially-fatal warning: bug
#113662 (NDB compilation error on macOS Release build). Finding this made me look,
why is NDB built at all, if I did not add -DWITH_NDB=ON
? This resulted in bug
#113661 (NDB storage engine built ignoring -DWITH_NDB=OFF (which is OFF by default
too)).
The most serious build-related issue I saw previously was incorrect query results if compiled with LLVM 15 and newer, reported as bug #113049 (MTR test json.array_index fails with a result difference) and bug #113046 (MTR tests for SELECT fail with ICP, MRR, possibly other flags). This issue has been fixed, although the bugs are still open (thus no release notes entries neither). As Tor Didriksen explained, they are open due to still remaining issues with recent MSVC compilers. But, LLVM works fine for me now and that's great.
The previous releases also required -ffp-contract=off
compilation flag workaround
to take care of some failures: bug #113047 (MTR test main.derived_limit fails with
small cost differences), bug #113048 (MTR test gis.gis_bugs_crashes fails with a
result difference). This has been mostly addressed, except that #113047 is fixed in
8.0.36 and 8.4.0 but not 8.3.0, so that failure still remains if the workaround is
dropped.
The previous releases could not be compiled with LLVM 17, and no changes occurred here, bug #113123 (Compilation fails with LLVM 17) still applies.
Moving on to tests in Release, Debug, and Debug+ASan+UBsan configurations. Looking better than the last time, this is what I had to report:
- https://bugs.mysql.com/bug.php?id=113665 (perfschema.relaylog fails with a result difference)
- https://bugs.mysql.com/bug.php?id=113702 (Test binlog.binlog_error_action fails under Sanitizer build)
- https://bugs.mysql.com/bug.php?id=113703 (Test innodb.ddl_kill fails under Sanitizer build)
- https://bugs.mysql.com/bug.php?id=113704 (Test main.log_backtrace fails under Sanitizer build)
- https://bugs.mysql.com/bug.php?id=113709 (StrXfrmTest.ChineseUTF8MB4 failing with an AddressSanitizer error)
- https://bugs.mysql.com/bug.php?id=113710 (Spec/HttpClientSecureTest.ensure/default_client_cipher_succeeds ASan error)
- https://bugs.mysql.com/bug.php?id=113722 (Test main.index_merge_innodb failing with a result difference)
- https://bugs.mysql.com/bug.php?id=113736 (Test main.qualify_hypergraph failing with a result difference)
So, to sum up, 10 bugs reported, 4 bugs confirmed fixed, 5 bugs (#113123, #113260, #113189, #113190, #113258) have no changes, and 1 bug (#113023) I did not test.
All in all, this looks OK. While no perfect clean testsuite results I was used to in some older releases, no miscompilation-like bugs neither, and that's fine.
No comments:
Post a Comment