-
Magnus Blåudd authored
Add new cmake configuration variable -DWITH_NDBCLUSTER=[ON|OFF] which controls building of MySQL Cluster. The difference between MySQL Cluster and MySQL Server are: - custom server suffix "-cluster", indicating that the MySQL Server has been built for MySQL Cluster. - the ndbcluster plugin which makes it possible for MySQL Server to use the distributed NDB Cluster storage engine. - the NDB Cluster storage engine binaries and tools - the package names starts with mysql-cluster and contains the cluster version In earlier versions the MySQL Server which was part of MySQL Cluster had a modified version string including "ndb-X.Y.Z" which indicated the version of NDB. This has now been removed and instead the custom server suffix "-cluster" is used. For legacy "ease of use" reasons, also allow WITH_NDBCLUSTER_STORAGE_ENGINE and WITH_PLUGIN_NDBCLUSTER to be aliases for WITH_NDBCLUSTER unless the latter has been specified by user. The WITHOUT_NDBCLUSTER is not supported anymore, instead use WTTH_NDBCLUSTER=OFF. Furthermore, neither WITH_MAX, WITH_ALL or any other options previously supported to include the ndbcluster plugin will have any effect on whether or not MySQL Cluster is built. From now on MySQL Cluster uses version as defined in top level VERSION file and same as the MySQL Server as default. It's possible to set a specific version using the MYSQL_CLUSTER_VERSION_MAJOR, MYSQL_CLUSTER_VERSION_MINOR, MYSQL_CLUSTER_VERSION_PATCH and MYSQL_CLUSTER_VERSION_EXTRA in the VERSION file. However setting these values are optional and should only be used in case the default need to be overridden. Setting only MYSQL_CLUSTER_VERSION_EXTRA is useful when creating a MySQL Cluster version which is for example DMR while the contained MySQL Server is already gone GA. Remove the now obsolete storage/ndb/VERSION and instead require the variable MYSQL_CLUSTER_VERSION to be defined. Hardcode the NDB_SHARED_LIB_VERSION directly in the CMakeLists.txt file, having it in VERSION is an automake remnant. Remove unused MYSQL_RPM_VERSION, it's left over from when MySQL Cluster was using a hacked rpm spec file. Remove conditional logic which generated an unused mysql-cluster-X.Y.Z.spec file. Everything is built from mysql.spec Remove WITH_NDB_DEFAULT_PLUGIN_DETECT which is redundant now when we either build MySQL Cluster or MySQL Server. Add new variable VERSION_SRC to control the version of the source tarball used in rpm packages. Change mtr.pl to detect MySQL Cluster by looking for "-cluster" in MySQL Server version string The version string of MySQL tools now look like: $ mysqld --version mysqld Ver 8.0.13-cluster-debug for Linux on x86_64 (Source distribution) Where the old was: $ mysqld --version mysqld Ver 5.7.22-ndb-7.5.5-debug for Linux on x86_64 (Source distribution) The version string of NDB tools now look like: $ ndb_mgm --version MySQL distrib mysql-8.0.13 ndb-8.0.13-dmr-debug, for Linux (x86_64) Where the old was: $ ndb_mgm --version MySQL distrib mysql-5.7.22 ndb-7.5.5-dmr-debug, for Linux (x86_64) Output from version variables found in the MySQL Server: mysql> SELECT VERSION(); VERSION() 8.0.13-cluster-debug mysql> SELECT @@ndb_version_string; @@ndb_version_string ndb-8.0.13-dmr Add test checking that MySQL version string contains -cluster and that the NDB and MySQL version number matches.
Magnus Blåudd authoredAdd new cmake configuration variable -DWITH_NDBCLUSTER=[ON|OFF] which controls building of MySQL Cluster. The difference between MySQL Cluster and MySQL Server are: - custom server suffix "-cluster", indicating that the MySQL Server has been built for MySQL Cluster. - the ndbcluster plugin which makes it possible for MySQL Server to use the distributed NDB Cluster storage engine. - the NDB Cluster storage engine binaries and tools - the package names starts with mysql-cluster and contains the cluster version In earlier versions the MySQL Server which was part of MySQL Cluster had a modified version string including "ndb-X.Y.Z" which indicated the version of NDB. This has now been removed and instead the custom server suffix "-cluster" is used. For legacy "ease of use" reasons, also allow WITH_NDBCLUSTER_STORAGE_ENGINE and WITH_PLUGIN_NDBCLUSTER to be aliases for WITH_NDBCLUSTER unless the latter has been specified by user. The WITHOUT_NDBCLUSTER is not supported anymore, instead use WTTH_NDBCLUSTER=OFF. Furthermore, neither WITH_MAX, WITH_ALL or any other options previously supported to include the ndbcluster plugin will have any effect on whether or not MySQL Cluster is built. From now on MySQL Cluster uses version as defined in top level VERSION file and same as the MySQL Server as default. It's possible to set a specific version using the MYSQL_CLUSTER_VERSION_MAJOR, MYSQL_CLUSTER_VERSION_MINOR, MYSQL_CLUSTER_VERSION_PATCH and MYSQL_CLUSTER_VERSION_EXTRA in the VERSION file. However setting these values are optional and should only be used in case the default need to be overridden. Setting only MYSQL_CLUSTER_VERSION_EXTRA is useful when creating a MySQL Cluster version which is for example DMR while the contained MySQL Server is already gone GA. Remove the now obsolete storage/ndb/VERSION and instead require the variable MYSQL_CLUSTER_VERSION to be defined. Hardcode the NDB_SHARED_LIB_VERSION directly in the CMakeLists.txt file, having it in VERSION is an automake remnant. Remove unused MYSQL_RPM_VERSION, it's left over from when MySQL Cluster was using a hacked rpm spec file. Remove conditional logic which generated an unused mysql-cluster-X.Y.Z.spec file. Everything is built from mysql.spec Remove WITH_NDB_DEFAULT_PLUGIN_DETECT which is redundant now when we either build MySQL Cluster or MySQL Server. Add new variable VERSION_SRC to control the version of the source tarball used in rpm packages. Change mtr.pl to detect MySQL Cluster by looking for "-cluster" in MySQL Server version string The version string of MySQL tools now look like: $ mysqld --version mysqld Ver 8.0.13-cluster-debug for Linux on x86_64 (Source distribution) Where the old was: $ mysqld --version mysqld Ver 5.7.22-ndb-7.5.5-debug for Linux on x86_64 (Source distribution) The version string of NDB tools now look like: $ ndb_mgm --version MySQL distrib mysql-8.0.13 ndb-8.0.13-dmr-debug, for Linux (x86_64) Where the old was: $ ndb_mgm --version MySQL distrib mysql-5.7.22 ndb-7.5.5-dmr-debug, for Linux (x86_64) Output from version variables found in the MySQL Server: mysql> SELECT VERSION(); VERSION() 8.0.13-cluster-debug mysql> SELECT @@ndb_version_string; @@ndb_version_string ndb-8.0.13-dmr Add test checking that MySQL version string contains -cluster and that the NDB and MySQL version number matches.
Loading