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

mariadb: 10.3.22 -> 10.4.12 #86900

Merged
merged 9 commits into from May 14, 2020
Merged

mariadb: 10.3.22 -> 10.4.12 #86900

merged 9 commits into from May 14, 2020

Conversation

@Izorkin
Copy link
Contributor

Izorkin commented May 5, 2020

Motivation for this change

Upgrade MariaDB server to 10.4.12

cc @thoughtpolice @flokli @aanderse @dasJ

Things done
  • Tested using sandboxing (nix.useSandbox on NixOS, or option sandbox in nix.conf on non-NixOS linux)
  • Built on platform(s)
    • NixOS
    • macOS
    • other Linux distributions
  • Tested via one or more NixOS test(s) if existing and applicable for the change (look inside nixos/tests)
  • Tested compilation of all pkgs that depend on this change using nix-shell -p nixpkgs-review --run "nixpkgs-review wip"
  • Tested execution of all binary files (usually in ./result/bin/)
  • Determined the impact on package closure size (by running nix path-info -S before and after)
  • Ensured that relevant documentation is up to date
  • Fits CONTRIBUTING.md.
Copy link
Contributor

aanderse left a comment

Thank you for doing this @Izorkin!

@Izorkin Izorkin force-pushed the Izorkin:mariadb-update branch from 4b9ec8f to d8f2dff May 5, 2020
Copy link
Contributor

flokli left a comment

LGTM, but haven't tested it - especially the migration part, so would love to get some more feedback from people using this.

@flokli
flokli approved these changes May 5, 2020
@Izorkin
Copy link
Contributor Author

Izorkin commented May 7, 2020

@GrahamcOfBorg test mariadb-galera-mariabackup

@Izorkin
Copy link
Contributor Author

Izorkin commented May 7, 2020

@GrahamcOfBorg test mysql-replication

@Izorkin Izorkin marked this pull request as draft May 7, 2020
@Izorkin
Copy link
Contributor Author

Izorkin commented May 7, 2020

@Izorkin Izorkin force-pushed the Izorkin:mariadb-update branch 2 times, most recently from bc59a9c to 861daa3 May 7, 2020
@Izorkin Izorkin marked this pull request as ready for review May 7, 2020
@Izorkin Izorkin requested review from aanderse and flokli May 7, 2020
@Izorkin Izorkin force-pushed the Izorkin:mariadb-update branch 2 times, most recently from cc7c88f to a3c26a6 May 7, 2020
@Izorkin
Copy link
Contributor Author

Izorkin commented May 8, 2020

@GrahamcOfBorg test mariadb-galera-mariabackup
@GrahamcOfBorg test mariadb-galera-rsync
@GrahamcOfBorg test mysql
@GrahamcOfBorg test mysql-autobackup
@GrahamcOfBorg test mysql-backup
@GrahamcOfBorg test mysql-replication

@aanderse
Copy link
Contributor

aanderse commented May 9, 2020

Test is failing on arm because TokuDB is unsupported plugin it looks like.

@flokli I'll upgrade a box or two this weekend to test this out, but we should be looking to merge early enough that our unstable users can catch any issues before 20.09.

Thank you very much for your hard work @Izorkin!

@flokli
Copy link
Contributor

flokli commented May 9, 2020

it seems ha_tokudb.so isn't part of the mysql output path:

[ERROR] mysqld: Can't open shared library '/nix/store/al7j8gzl8qjhh6fdiwjdh7bqyrrm911r-mariadb-server-10.4.12/lib/mysql/plugin/ha_tokudb.so' (errno: 22, cannot open shared object file: No such file or directory)

However, this is already the case on master (aarch64 and i686).

We might want to figure out why it's not available on these arches, and possibly update the test to only test tokudb where it's available, but this can be done in a follow-up PR.

Copy link
Contributor

aanderse left a comment

I upgraded a machine to this package, ran mysql_upgrade, and then tested some connections and programs out... everything worked fine 👍

Thanks again @Izorkin 🎉

@Izorkin Izorkin force-pushed the Izorkin:mariadb-update branch from a3c26a6 to 2bd967f May 10, 2020
pkgs/top-level/all-packages.nix Outdated Show resolved Hide resolved
@Izorkin Izorkin force-pushed the Izorkin:mariadb-update branch 2 times, most recently from c128f0f to e733611 May 10, 2020
@Izorkin Izorkin force-pushed the Izorkin:mariadb-update branch from e733611 to 1dc6494 May 12, 2020
Copy link
Contributor

flokli left a comment

A minor nitpick, otherwise should be fine for me now! Thanks for your work!

nixos/doc/manual/release-notes/rl-2009.xml Outdated Show resolved Hide resolved
@Izorkin Izorkin force-pushed the Izorkin:mariadb-update branch from 1dc6494 to c692536 May 12, 2020
@Izorkin
Copy link
Contributor Author

Izorkin commented May 12, 2020

@GrahamcOfBorg test mariadb-galera-mariabackup
@GrahamcOfBorg test mariadb-galera-rsync
@GrahamcOfBorg test mysql
@GrahamcOfBorg test mysql-autobackup
@GrahamcOfBorg test mysql-backup
@GrahamcOfBorg test mysql-replication

@Izorkin Izorkin force-pushed the Izorkin:mariadb-update branch from 0514a3a to 9bebb71 May 12, 2020
@Izorkin
Copy link
Contributor Author

Izorkin commented May 12, 2020

@GrahamcOfBorg test mariadb-galera-mariabackup
@GrahamcOfBorg test mariadb-galera-rsync
@GrahamcOfBorg test mysql
@GrahamcOfBorg test mysql-autobackup
@GrahamcOfBorg test mysql-backup
@GrahamcOfBorg test mysql-replication

Copy link
Contributor

flokli left a comment

Why is this now built with another protobuf? I'm missing the explanation here.

@Izorkin
Copy link
Contributor Author

Izorkin commented May 13, 2020

With protobuf 3.8 mysql 5.7 anf 8.0 error build:

In file included from /build/mysql-5.7.27/rapid/plugin/x/ngs/include/ngs/protocol/message.h:24,
                 from /build/mysql-5.7.27/rapid/plugin/x/ngs/include/ngs/protocol_encoder.h:23,
                 from /build/mysql-5.7.27/rapid/plugin/x/ngs/include/ngs/client_session.h:24,
                 from /build/mysql-5.7.27/rapid/plugin/x/src/xpl_session.h:25,
                 from /build/mysql-5.7.27/rapid/plugin/x/src/xpl_plugin.cc:23:
/build/mysql-5.7.27/rapid/plugin/x/ngs/include/ngs_common/protocol_protobuf.h:32:10: fatal error: google/protobuf/wire_format_lite_inl.h: No such file or directory
   32 | #include <google/protobuf/wire_format_lite_inl.h>
      |          ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
compilation terminated.
make[2]: *** [rapid/plugin/x/CMakeFiles/mysqlx.dir/build.make:203: rapid/plugin/x/CMakeFiles/mysqlx.dir/src/xpl_plugin.cc.o] Error 1
make[2]: *** Waiting for unfinished jobs....

@flokli
Copy link
Contributor

flokli commented May 14, 2020

Please name the last commit message like this:

mysql57, mysql80: build with protobuf 3.7

They fail to build with protobuf 3.8:

In file included from /build/mysql-5.7.27/rapid/plugin/x/ngs/include/ngs/protocol/message.h:24,
                 from /build/mysql-5.7.27/rapid/plugin/x/ngs/include/ngs/protocol_encoder.h:23,
                 from /build/mysql-5.7.27/rapid/plugin/x/ngs/include/ngs/client_session.h:24,
                 from /build/mysql-5.7.27/rapid/plugin/x/src/xpl_session.h:25,
                 from /build/mysql-5.7.27/rapid/plugin/x/src/xpl_plugin.cc:23:
/build/mysql-5.7.27/rapid/plugin/x/ngs/include/ngs_common/protocol_protobuf.h:32:10: fatal error: google/protobuf/wire_format_lite_inl.h: No such file or directory
   32 | #include <google/protobuf/wire_format_lite_inl.h>
      |          ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
compilation terminated.
make[2]: *** [rapid/plugin/x/CMakeFiles/mysqlx.dir/build.make:203: rapid/plugin/x/CMakeFiles/mysqlx.dir/src/xpl_plugin.cc.o] Error 1
make[2]: *** Waiting for unfinished jobs....
Izorkin added 9 commits May 5, 2020
MariaDB 10.4 introduces a number of changes to the authentication
process, intended to make things easier and more intuitive.
MariaDB 10.4 introduces a number of changes to the authentication
process, intended to make things easier and more intuitive.
MariaDB 10.4 introduces a number of changes to the authentication
process, intended to make things easier and more intuitive.
They fail to build with protobuf 3.8:

In file included from /build/mysql-5.7.27/rapid/plugin/x/ngs/include/ngs/protocol/message.h:24,
                 from /build/mysql-5.7.27/rapid/plugin/x/ngs/include/ngs/protocol_encoder.h:23,
                 from /build/mysql-5.7.27/rapid/plugin/x/ngs/include/ngs/client_session.h:24,
                 from /build/mysql-5.7.27/rapid/plugin/x/src/xpl_session.h:25,
                 from /build/mysql-5.7.27/rapid/plugin/x/src/xpl_plugin.cc:23:
/build/mysql-5.7.27/rapid/plugin/x/ngs/include/ngs_common/protocol_protobuf.h:32:10: fatal error: google/protobuf/wire_format_lite_inl.h: No such file or directory
   32 | #include <google/protobuf/wire_format_lite_inl.h>
      |          ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
compilation terminated.
make[2]: *** [rapid/plugin/x/CMakeFiles/mysqlx.dir/build.make:203: rapid/plugin/x/CMakeFiles/mysqlx.dir/src/xpl_plugin.cc.o] Error 1
make[2]: *** Waiting for unfinished jobs....
@Izorkin Izorkin force-pushed the Izorkin:mariadb-update branch from 9bebb71 to dde9810 May 14, 2020
@Izorkin
Copy link
Contributor Author

Izorkin commented May 14, 2020

Updated and rebased.

@flokli
Copy link
Contributor

flokli commented May 14, 2020

Built all mysql/mariadb attributes I could find, and ran the mysql, mysql-replication and mysql-autobackup tests.

@flokli flokli merged commit 3d60859 into NixOS:master May 14, 2020
16 of 17 checks passed
16 of 17 checks passed
mariadb, mariadb-galera, mariadb-galera.passthru.tests, mariadb.passthru.tests, mysql57, mysql57.passthru.tests, mysql80, mysql80.passthru.tests on x86_64-darwin
Details
mariadb, mariadb-galera, mariadb-galera.passthru.tests, mariadb.passthru.tests, mysql57, mysql57.passthru.tests, mysql80, mysql80.passthru.tests on aarch64-linux Failure
Details
Evaluation Performance Report Evaluator Performance Report
Details
grahamcofborg-eval ^.^!
Details
grahamcofborg-eval-check-maintainers matching changed paths to changed attrs...
Details
grahamcofborg-eval-check-meta config.nix: checkMeta = true
Details
grahamcofborg-eval-darwin nix-instantiate --arg nixpkgs { outPath=./.; revCount=999999; shortRev="dde9810"; rev="dde9810bd895e3016200c7ec915b41e03c07db99"; } ./pkgs/t
Details
grahamcofborg-eval-lib-tests nix-build --arg pkgs import ./. {} ./lib/tests/release.nix
Details
grahamcofborg-eval-nixos nix-instantiate --arg nixpkgs { outPath=./.; revCount=999999; shortRev="dde9810"; rev="dde9810bd895e3016200c7ec915b41e03c07db99"; } ./nixos/
Details
grahamcofborg-eval-nixos-manual nix-instantiate --arg nixpkgs { outPath=./.; revCount=999999; shortRev="dde9810"; rev="dde9810bd895e3016200c7ec915b41e03c07db99"; } ./nixos/
Details
grahamcofborg-eval-nixos-options nix-instantiate --arg nixpkgs { outPath=./.; revCount=999999; shortRev="dde9810"; rev="dde9810bd895e3016200c7ec915b41e03c07db99"; } ./nixos/
Details
grahamcofborg-eval-nixpkgs-manual nix-instantiate --arg nixpkgs { outPath=./.; revCount=999999; shortRev="dde9810"; rev="dde9810bd895e3016200c7ec915b41e03c07db99"; } ./pkgs/t
Details
grahamcofborg-eval-nixpkgs-tarball nix-instantiate --arg nixpkgs { outPath=./.; revCount=999999; shortRev="dde9810"; rev="dde9810bd895e3016200c7ec915b41e03c07db99"; } ./pkgs/t
Details
grahamcofborg-eval-nixpkgs-unstable-jobset nix-instantiate --arg nixpkgs { outPath=./.; revCount=999999; shortRev="dde9810"; rev="dde9810bd895e3016200c7ec915b41e03c07db99"; } ./pkgs/t
Details
grahamcofborg-eval-package-list nix-env -qa --json --file .
Details
grahamcofborg-eval-package-list-no-aliases nix-env -qa --json --file . --arg config { allowAliases = false; }
Details
mariadb, mariadb-galera, mariadb-galera.passthru.tests, mariadb.passthru.tests, mysql57, mysql57.passthru.tests, mysql80, mysql80.passthru.tests on x86_64-linux Success
Details
@Izorkin Izorkin deleted the Izorkin:mariadb-update branch May 14, 2020
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Linked issues

Successfully merging this pull request may close these issues.

None yet

3 participants
You can’t perform that action at this time.