Bug #112808 | Please build MySQL with the hypergraph optimizer enabled but configured off | ||
---|---|---|---|
Submitted: | 24 Oct 2023 6:44 | Modified: | 4 Nov 2023 9:44 |
Reporter: | Simon Mudd (OCA) | Email Updates: | |
Status: | Verified | Impact on me: | |
Category: | MySQL Server: Optimizer | Severity: | S4 (Feature request) |
Version: | 8.0 | OS: | Any |
Assigned to: | CPU Architecture: | Any | |
Tags: | flexibility, hypergraph, improvements, new features, optimiser |
[24 Oct 2023 6:44]
Simon Mudd
[24 Oct 2023 7:06]
Simon Mudd
To be clear I'd like to see the build options have: SET(WITH_HYPERGRAPH_OPTIMIZER_DEFAULT ON) but maintain (the default usage) so optimizer_switch='….hypergraph_optimizer=off,….' is maintained for now. e.g. MySQL behaviour does not change by default, but I can experiment with the optimizer.
[24 Oct 2023 9:44]
MySQL Verification Team
Hi Mr. Mudd, Thank you for your feature request report. We have analysed both your report, source code and building system. We agree that this is a perfect feature request. Verified as reported for 8.0 and 8.1.
[4 Nov 2023 9:44]
Simon Mudd
Until there is a patch to do this you can now do it indirectly rebuilding RHEL8/9 rpms with this built in using this: https://github.com/sjmudd/mysql-rpm-builder and using docker $ git clone https://github.com/sjmudd/mysql-rpm-builder.git $ cd mysql-rpm-rebuilder $ docker run --rm -it --network=host --hostname=mysql-builder -v $PWD:/data oraclelinux:8 /data/build -a 8.2.0.hyp Which will: 1. setup the container for building 2. pull down the 8.2.0 src rpm from Oracle 3. rebuild it with the hypergraph functionality enabled. I've not actually done this for 8.0 but the same patch or a very similar one would be expected to work. However, this is a "hack", having the option built-in by default (but disable by default is fine) would be really good.
[6 Nov 2023 11:13]
MySQL Verification Team
Thank you, Mr. Mudd, Your suggestion has been forwarded to the relevant Development team.