Skip to contentSkip to conversation

Set of patches to add MariaDB galera cluster

PATCH New Sylvain Raybaud 3 participants 17 messages Jul 3, 2015 – Jul 9, 2015

lore
Share & tools
lore
#0 lore raw

cover Set of patches to add MariaDB galera cluster

Add MariaDB Galera Cluster as an alternative implementation of MySQL, inside package/mysql. Also add galera which is needed for running a cluster and check on which galera depends. Introduce a few other minor modifications to busybox.config and libaio.mk necessary to make this work.

Sylvain Raybaud (7):
Add package check: unit test library
Add rule to build host-libaio
Add package galera: wsrep provider for mysql and mariadb Add PKG_CONFIG_* variables to help cmake find host-packages Add fancy options to busybox sleep, like float arguments Move mysql patches to version specific subdirectory Propose mariadb galera cluster as an alternative to standard mysql
implementation, inside msyql package

 package/Config.in                                  |   2 +
 package/busybox/busybox.config                     |   4 +-
 package/check/Config.in                            |   7 +
 package/check/check.hash                           |   2 +
 package/check/check.mk                             |  20 ++
 package/galera/Config.in                           |   9 +
 ...lera-01-fix_sconstruct_for-crosscompiling.patch |  52 +++++
 package/galera/galera.hash                         |   2 +
 package/galera/galera.mk                           |  63 ++++++
 package/libaio/libaio.mk                           |   1 +
 .../mariadb-galera-01-fix_xtradb_cmakelist.patch   |  27 +++
 .../mariadb-galera-02-fix_innodb_cmakelist.patch   | 251 +++++++++++++++++++++
 package/mysql/{ => 5.1}/0000-ac_cache_check.patch  |   0
 .../{ => 5.1}/0001-configure-ps-cache-check.patch  |   0
 .../{ => 5.1}/0002-use-new-readline-iface.patch    |   0
 .../0003-ac_stack_direction-is-unset.patch         |   0
 .../0004-Fix-gen_lex_hash-execution.patch          |   0
 .../0005-bison_3_breaks_mysql_server_build.patch   |   0
 .../{ => 5.1}/0006-no-force-static-build.patch     |   0
 package/mysql/Config.in                            |  43 +++-
 package/mysql/mariadb-galera-cluster.cnf           | 204 +++++++++++++++++
 package/mysql/mysql.hash                           |   2 +
 package/mysql/mysql.mk                             | 216 +++++++++++++++---
 package/pkg-cmake.mk                               |   2 +
 24 files changed, 869 insertions(+), 38 deletions(-)
 create mode 100644 package/check/Config.in
 create mode 100644 package/check/check.hash
 create mode 100644 package/check/check.mk
 create mode 100644 package/galera/Config.in
 create mode 100644 package/galera/galera-01-fix_sconstruct_for-crosscompiling.patch
 create mode 100644 package/galera/galera.hash
 create mode 100644 package/galera/galera.mk
 create mode 100644 package/mysql/10.0.17/mariadb-galera-01-fix_xtradb_cmakelist.patch
 create mode 100644 package/mysql/10.0.17/mariadb-galera-02-fix_innodb_cmakelist.patch
 rename package/mysql/{ => 5.1}/0000-ac_cache_check.patch (100%)
 rename package/mysql/{ => 5.1}/0001-configure-ps-cache-check.patch (100%)
 rename package/mysql/{ => 5.1}/0002-use-new-readline-iface.patch (100%)
 rename package/mysql/{ => 5.1}/0003-ac_stack_direction-is-unset.patch (100%)
 rename package/mysql/{ => 5.1}/0004-Fix-gen_lex_hash-execution.patch (100%)
 rename package/mysql/{ => 5.1}/0005-bison_3_breaks_mysql_server_build.patch (100%)
 rename package/mysql/{ => 5.1}/0006-no-force-static-build.patch (100%)
 create mode 100644 package/mysql/mariadb-galera-cluster.cnf
Signature · 1 line
1.9.1
#1 lore raw

PATCH 1/7 Add package check: unit test library

---
 package/Config.in        |  1 +
 package/check/Config.in  |  7 +++++++
 package/check/check.hash |  2 ++
 package/check/check.mk   | 20 ++++++++++++++++++++
 4 files changed, 30 insertions(+)
 create mode 100644 package/check/Config.in
 create mode 100644 package/check/check.hash
 create mode 100644 package/check/check.mk
package/Config.in +1 -0
index 13a7e74..72ec372 100644
@@ -1014,6 +1014,7 @@ menu "Other"
 	source "package/atf/Config.in"
 	source "package/bdwgc/Config.in"
 	source "package/boost/Config.in"
+	source "package/check/Config.in"
 	source "package/clapack/Config.in"
 	source "package/classpath/Config.in"
 	source "package/cppcms/Config.in"
package/check/Config.in new file +7 -0
new file mode 100644
index 0000000..8e7e3bc
@@ -0,0 +1,7 @@
+config BR2_PACKAGE_HOST_CHECK
+	bool "host check"
+	select BR2_PACKAGE_LIBTOOL
+	select BR2_PACKAGE_PKGCONF
+	help
+	  Unit testing framework for C
+	  http://check.sourceforge.net/
package/check/check.hash new file +2 -0
new file mode 100644
index 0000000..7d7e19b
@@ -0,0 +1,2 @@
+# Hash from: http://downloads.sourceforge.net/project/check/check/check-0.9.14.tar.gz
+sha1	4b79e2d485d014ddb438e322b64235347d57b0ff	check-0.9.14.tar.gz
package/check/check.mk new file +20 -0
new file mode 100644
index 0000000..3c2021c
@@ -0,0 +1,20 @@
+################################################################################
+#
+# check
+#
+################################################################################
+
+CHECK_VERSION = 0.9.14
+CHECK_SOURCE = check-$(CHECK_VERSION).tar.gz
+CHECK_SITE = http://downloads.sourceforge.net/project/check/check/$(CHECK_VERSION)/
+
+CHECK_DEPENDENCIES = libtool pkgconf
+
+CHECK_INSTALL_STAGING = YES
+CHECK_INSTALL_TARGET = NO
+
+CHECK_LICENSE =  LGPLv2.1
+CHECK_LICENSE_FILES = COPYING.LESSER
+
+$(eval $(autotools-package))
+$(eval $(host-autotools-package))
Signature · 1 line
1.9.1
#2 lore raw

PATCH 1/7 Add package check: unit test library

Sylvian, All,

On 2015-07-03 15:11 +0200, Sylvain Raybaud spake thusly:

Quoted 1 line

[--SNIP--]

package/check/Config.in line 2

Quoted 8 lines
package/check/Config.in new file +2 -0
new file mode 100644
index 0000000..8e7e3bc
@@ -0,0 +1,7 @@
+config BR2_PACKAGE_HOST_CHECK
+	bool "host check"

No, this is not 'host check', this is just 'check'.

This location is not about the host packages, but about the target packages.

Besides, nothing in your series depends on host-check.

[--SNIP--]

package/check/check.hash line 1

Quoted 7 lines
package/check/check.hash new file +1 -0
new file mode 100644
index 0000000..7d7e19b
@@ -0,0 +1,2 @@
+# Hash from: http://downloads.sourceforge.net/project/check/check/check-0.9.14.tar.gz

Correct URL is:

    http://sourceforge.net/projects/check/files/check/0.9.14/

package/check/check.hash line 2

Quoted 1 line
package/check/check.hash new file +1 -0
+sha1	4b79e2d485d014ddb438e322b64235347d57b0ff	check-0.9.14.tar.gz

Manually checked the hash to be OK.

Quoted 7 lines
package/check/check.mk new file +1 -0
new file mode 100644
index 0000000..3c2021c
@@ -0,0 +1,20 @@
+################################################################################

package/check/check.mk line 11

Quoted 10 lines
package/check/check.mk new file +10 -0
+#
+# check
+#
+################################################################################
+
+CHECK_VERSION = 0.9.14
+CHECK_SOURCE = check-$(CHECK_VERSION).tar.gz
+CHECK_SITE = http://downloads.sourceforge.net/project/check/check/$(CHECK_VERSION)/
+
+CHECK_DEPENDENCIES = libtool pkgconf

This is probably host-pkgconf instead of pkgconf.

package/check/check.mk line 14

Quoted 2 lines
package/check/check.mk new file +2 -0
+CHECK_INSTALL_STAGING = YES
+CHECK_INSTALL_TARGET = NO

Why don't you install on the target? check installs a shared library by default, so you really want to install in the target.

Otherwise, explain why you don't.

package/check/check.mk line 16

Quoted 1 line
package/check/check.mk new file +1 -0
+CHECK_LICENSE =  LGPLv2.1

This is "or any later version", so:

CHECK_LICENSE = LGPLv2.1+

package/check/check.mk line 20

Quoted 4 lines
package/check/check.mk new file +4 -0
+CHECK_LICENSE_FILES = COPYING.LESSER
+
+$(eval $(autotools-package))
+$(eval $(host-autotools-package))

As said above, nothing in this series depends on host-check, so why are you adding a host variant?

Signature · 6 lines
.-----------------.--------------------.------------------.--------------------.
|  Yann E. MORIN  | Real-Time Embedded | /"\ ASCII RIBBON | Erics' conspiracy: |
| +33 662 376 056 | Software  Designer | \ / CAMPAIGN     |  ___               |
| +33 223 225 172 `------------.-------:  X  AGAINST      |  \e/  There is no  |
| http://ymorin.is-a-geek.org/ | _/*\_ | / \ HTML MAIL    |   v   conspiracy.  |
'------------------------------^-------^------------------^--------------------'
#3 lore raw

PATCH 1/7 Add package check: unit test library

Dear Yann E. MORIN,

Quoted 8 lines · Yann E. MORIN

package/check/Config.in line 2

Quoted 5 lines
package/check/Config.in new file +2 -0
@@ -0,0 +1,7 @@
+config BR2_PACKAGE_HOST_CHECK
+	bool "host check"

No, this is not 'host check', this is just 'check'.

Quoted 4 lines

This location is not about the host packages, but about the target packages.

Besides, nothing in your series depends on host-check.

See PATCH 3: there is check in GALERA_DEPENDENCIES, and there is a host-galera package with no explicit HOST_GALERA_DEPENDENCIES. So host-check is automatically part of HOST_GALERA_DEPENDENCIES.

However, I definitely agree that we don't need a Config.in menu for host check, only for the target variant of it.

Thomas

Signature · 3 lines
Thomas Petazzoni, CTO, Free Electrons
Embedded Linux, Kernel and Android engineering
http://free-electrons.com
#4 lore raw

PATCH 1/7 Add package check: unit test library

Thomas, All,

On 2015-07-04 11:08 +0200, Thomas Petazzoni spake thusly:

Quoted 9 lines · Yann E. MORIN
Quoted 8 lines

package/check/Config.in line 2

Quoted 5 lines
package/check/Config.in new file +2 -0
@@ -0,0 +1,7 @@
+config BR2_PACKAGE_HOST_CHECK
+	bool "host check"

No, this is not 'host check', this is just 'check'.

Quoted 8 lines
Quoted 4 lines

This location is not about the host packages, but about the target packages.

Besides, nothing in your series depends on host-check.

See PATCH 3: there is check in GALERA_DEPENDENCIES, and there is a host-galera package with no explicit HOST_GALERA_DEPENDENCIES. So host-check is automatically part of HOST_GALERA_DEPENDENCIES.

Ah, right. I saw the dependency on check, but did not think about the automatically-inherited host dependency.

Regards,
Yann E. MORIN.

Signature · 6 lines
.-----------------.--------------------.------------------.--------------------.
|  Yann E. MORIN  | Real-Time Embedded | /"\ ASCII RIBBON | Erics' conspiracy: |
| +33 662 376 056 | Software  Designer | \ / CAMPAIGN     |  ___               |
| +33 223 225 172 `------------.-------:  X  AGAINST      |  \e/  There is no  |
| http://ymorin.is-a-geek.org/ | _/*\_ | / \ HTML MAIL    |   v   conspiracy.  |
'------------------------------^-------^------------------^--------------------'
#5 lore raw

PATCH 1/7 Add package check: unit test library

In reply to Yann E. MORIN

-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

Yann, all,

Quoted 6 lines · Yann E. MORIN
Quoted 6 lines
package/check/check.hash +0 -0
Quoted 5 lines

new file mode 100644 index 0000000..7d7e19b --- /dev/null +++ b/package/check/check.hash @@ -0,0 +1,2 @@ +# Hash from:
http://downloads.sourceforge.net/project/check/check/check-0.9.14.tar.gz

Correct URL is:

Quoted 1 line

http://sourceforge.net/projects/check/files/check/0.9.14/

The hash is actually locally computed, so I guess it's just:
# Locally computed:

Quoted 7 lines
Quoted 2 lines
Quoted 2 lines
package/check/check.mk +0 -0

[..] +CHECK_INSTALL_STAGING = YES +CHECK_INSTALL_TARGET = NO

Why don't you install on the target? check installs a shared library by default, so you really want to install in the target.

Otherwise, explain why you don't.

Ah, right. Since check is used to build binaries specifically for testing in my use case (galera), I thought I'd save some space by not installing on target. But you're right, it's a bad idea and I'll remove these lines.

Cheers,

- --
Sylvain Raybaud
www.green-communications.fr
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1

iQIcBAEBAgAGBQJVnm5kAAoJEEkkwl4JtJ9y66QP/2eT5UYOlpYXfN/UEo405082 SZ/QDNJv4m8FKLzuBNnRE5XQVIcHiNUmLJWqNrGbjeG+VnY+fbnAkZt3uPVSUY8O u36Gs4H+3S1E7Pj6GQ0bQwz9Z4qTvIJuLTXdswtAv77Qv4uNjk5juJKrULUl8/j+ ssoBImlHY0nQVyP8xKOPlCNcrBWy8DfKQqKNkqLTvvIsqKE8gFNOsJPog9HrL56T XRjTTK5VpXc6MuXWhd82AGTcng5S/3OBBJYN/8lTexNRdCF9y0haSyUR2MjDtb0y LXyTm0fieaLwHfSqSUn+F/8YFN7P9wNZaWQcIlvznWFLZvhHNxUITuI1fWbNbAKY ftIhq3RsZr2SFSj358i9GhSg50wGtWQ4HjwyZocG1nLPm2+SM+MtF7lbVQQtVc7U jgXX6QxCd3UcgCCcOmN/XQV8H+mf96b9H76ArsG2W/TZYxBKArPnyNFmFIqMsH8G Irih1lYrcDqpkmFripWtcdFnPjUAxUG1U01WnwGDKrvH3KE5b/YBDHfeorHjTYDs nD4MYFnrqfOt+rpmt4np3BIXkUuTOYbQlfsB8IKdBQZF33O6U50jA+psiGJRmgkc Z/awGe+L35kD7F1KV7fjyG5SeBFC9I8W4b1nTrG3Ww98k6Lsp4Osc+Rs48X5793l 4YLfcTO8MmMhSrXCLg7a
=DQZa
-----END PGP SIGNATURE-----

#6 lore raw

PATCH 2/7 Add rule to build host-libaio

In reply to Sylvain Raybaud
---
 package/libaio/libaio.mk | 1 +
 1 file changed, 1 insertion(+)
package/libaio/libaio.mk +1 -0
index 53ad7eb..55e2cc7 100644
@@ -24,3 +24,4 @@ define LIBAIO_INSTALL_TARGET_CMDS
 endef
 
 $(eval $(generic-package))
+$(eval $(host-generic-package))
Signature · 1 line
1.9.1
#7 lore raw

PATCH 2/7 Add rule to build host-libaio

Sylvain, All,

On 2015-07-03 15:11 +0200, Sylvain Raybaud spake thusly:

Quoted 10 lines
---
 package/libaio/libaio.mk | 1 +
 1 file changed, 1 insertion(+)
package/libaio/libaio.mk +0 -0
index 53ad7eb..55e2cc7 100644

package/libaio/libaio.mk define LIBAIO_INSTALL_TARGET_CMDS · line 27

Quoted 4 lines
package/libaio/libaio.mk +1 -0
@@ -24,3 +24,4 @@ define LIBAIO_INSTALL_TARGET_CMDS
 endef
 
 $(eval $(generic-package))
+$(eval $(host-generic-package))

You need to explain in the commit log why you need the host variant.

Regards,
Yann E. MORIN.

Signature · 6 lines
.-----------------.--------------------.------------------.--------------------.
|  Yann E. MORIN  | Real-Time Embedded | /"\ ASCII RIBBON | Erics' conspiracy: |
| +33 662 376 056 | Software  Designer | \ / CAMPAIGN     |  ___               |
| +33 223 225 172 `------------.-------:  X  AGAINST      |  \e/  There is no  |
| http://ymorin.is-a-geek.org/ | _/*\_ | / \ HTML MAIL    |   v   conspiracy.  |
'------------------------------^-------^------------------^--------------------'
#8 lore raw

PATCH 3/7 Add package galera: wsrep provider for mysql and mariadb

In reply to Sylvain Raybaud
---
 package/Config.in                                  |  1 +
 package/galera/Config.in                           |  9 ++++
 ...lera-01-fix_sconstruct_for-crosscompiling.patch | 52 ++++++++++++++++++
 package/galera/galera.hash                         |  2 +
 package/galera/galera.mk                           | 63 ++++++++++++++++++++++
 5 files changed, 127 insertions(+)
 create mode 100644 package/galera/Config.in
 create mode 100644 package/galera/galera-01-fix_sconstruct_for-crosscompiling.patch
 create mode 100644 package/galera/galera.hash
 create mode 100644 package/galera/galera.mk
package/Config.in +1 -0
index 72ec372..b15d026 100644
@@ -740,6 +740,7 @@ menu "Database"
 	source "package/cppdb/Config.in"
 	source "package/gdbm/Config.in"
 	source "package/leveldb/Config.in"
+	source "package/galera/Config.in"
 	source "package/mysql/Config.in"
 	source "package/postgresql/Config.in"
 	source "package/redis/Config.in"
package/galera/Config.in new file +9 -0
new file mode 100644
index 0000000..4c50427
@@ -0,0 +1,9 @@
+config BR2_PACKAGE_GALERA
+	bool "galera"
+	select BR2_PACKAGE_BOOST
+	select BR2_PACKAGE_BOOST_PROGRAM_OPTIONS
+	select BR2_PACKAGE_OPENSSL
+	select BR2_PACKAGE_CHECK
+	help
+	  Galera WSREP provider
+	  http://galeracluster.com/
package/galera/galera-01-fix_sconstruct_for-crosscompiling.patch new file +52 -0

52 lines not on this page · raw message

package/galera/galera.hash new file +2 -0
new file mode 100644
index 0000000..d3872e1
@@ -0,0 +1,2 @@
+# From http://releases.galeracluster.com/source/galera-3-25.3.10.tar.gz
+sha1   03f69fa87dc14fa4d793e7afab601e285c570809	galera-3-25.3.10.tar.gz
package/galera/galera.mk new file +63 -0

63 lines not on this page · raw message

Signature · 1 line
1.9.1
#9 lore raw

PATCH 4/7 Add PKG_CONFIG_* variables to help cmake find host-packages

In reply to Sylvain Raybaud
---
 package/pkg-cmake.mk | 2 ++
 1 file changed, 2 insertions(+)
package/pkg-cmake.mk +2 -0
index f17a883..a757a2b 100644
@@ -111,6 +111,8 @@ define $(2)_CONFIGURE_CMDS
 	cd $$($$(PKG)_BUILDDIR) && \
 	rm -f CMakeCache.txt && \
 	PATH=$$(BR_PATH) \
+	PKG_CONFIG_PATH='$$(HOST_DIR)/usr/lib/pkgconfig' \
+	PKG_CONFIG_SYSROOT_DIR='$$(HOST_DIR)' \
 	$$(HOST_DIR)/usr/bin/cmake $$($$(PKG)_SRCDIR) \
 		-DCMAKE_INSTALL_SO_NO_EXE=0 \
 		-DCMAKE_FIND_ROOT_PATH="$$(HOST_DIR)" \
Signature · 1 line
1.9.1
#10 lore raw

PATCH 5/7 Add fancy options to busybox sleep, like float arguments

In reply to Sylvain Raybaud
---
 package/busybox/busybox.config | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)
package/busybox/busybox.config +2 -2
index 9d930d1..8d1d80a 100644
@@ -273,8 +273,8 @@ CONFIG_SHA256SUM=y
 CONFIG_SHA512SUM=y
 CONFIG_SHA3SUM=y
 CONFIG_SLEEP=y
-# CONFIG_FEATURE_FANCY_SLEEP is not set
-# CONFIG_FEATURE_FLOAT_SLEEP is not set
+CONFIG_FEATURE_FANCY_SLEEP=y
+CONFIG_FEATURE_FLOAT_SLEEP=y
 CONFIG_SORT=y
 CONFIG_FEATURE_SORT_BIG=y
 # CONFIG_SPLIT is not set
Signature · 1 line
1.9.1
#11 lore raw

PATCH 5/7 Add fancy options to busybox sleep, like float arguments

Dear Sylvain Raybaud,

Quoted 10 lines · Sylvain Raybaud
---
 package/busybox/busybox.config | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)
package/busybox/busybox.config +0 -0
index 9d930d1..8d1d80a 100644

package/busybox/busybox.config CONFIG_SHA256SUM=y · line 280

Quoted 10 lines
package/busybox/busybox.config +2 -2
@@ -273,8 +273,8 @@ CONFIG_SHA256SUM=y
 CONFIG_SHA512SUM=y
 CONFIG_SHA3SUM=y
 CONFIG_SLEEP=y
-# CONFIG_FEATURE_FANCY_SLEEP is not set
-# CONFIG_FEATURE_FLOAT_SLEEP is not set
+CONFIG_FEATURE_FANCY_SLEEP=y
+CONFIG_FEATURE_FLOAT_SLEEP=y
 CONFIG_SORT=y
 CONFIG_FEATURE_SORT_BIG=y
 # CONFIG_SPLIT is not set

Can you include in the commit information about the size different of the resulting Busybox binary before/after this patch?

Thanks a lot!

Thomas

Signature · 3 lines
Thomas Petazzoni, CTO, Free Electrons
Embedded Linux, Kernel and Android engineering
http://free-electrons.com
#12 lore raw

PATCH 5/7 Add fancy options to busybox sleep, like float arguments

-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

Thomas,

Quoted 22 lines · Thomas Petazzoni

Dear Sylvain Raybaud,

Quoted 6 lines · Sylvain Raybaud

Signed-off-by: Sylvain Raybaud <[email protected]> --- package/busybox/busybox.config | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-)

(quoted diff) +0 -0
Quoted 9 lines

b/package/busybox/busybox.config index 9d930d1..8d1d80a 100644 --- a/package/busybox/busybox.config +++ b/package/busybox/busybox.config @@ -273,8 +273,8 @@ CONFIG_SHA256SUM=y CONFIG_SHA512SUM=y CONFIG_SHA3SUM=y CONFIG_SLEEP=y -# CONFIG_FEATURE_FANCY_SLEEP is not set -# CONFIG_FEATURE_FLOAT_SLEEP is not set +CONFIG_FEATURE_FANCY_SLEEP=y +CONFIG_FEATURE_FLOAT_SLEEP=y CONFIG_SORT=y CONFIG_FEATURE_SORT_BIG=y # CONFIG_SPLIT is not set

Can you include in the commit information about the size different of the resulting Busybox binary before/after this patch?

Quoted 4 lines

Thanks a lot!

Thomas

It seems to add 2748 bytes on i386 and 492 bytes on arm. Should I mention the first only? both? Do you think 2748 is too heavy for considering this patch for inclusion?

Cheers,

Sylvain

- --
Sylvain Raybaud
www.green-communications.fr
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1

iQIcBAEBAgAGBQJVnmYgAAoJEEkkwl4JtJ9yOecP/3N/fwbgu/VaEK1er7NZ3qeC 70QfPJGJy5o6nL0WgO49xo6kKFzbsMv7s7o+Ee9ECh42JKKXjgz33Rkpl1E2rWzL Vt/GONiLhxNt5JhnuPsHqWHUO+ZeFfDaFcrcwCF81IYwW6pLAS85eQW+3Vot0Wbz I7LEPEd715voMlqdXAE+vDwVsLCUGqOJ5U+Rzfn3IGsJ4MhPpakQRkPPAfQ/LH+z hrxyR2PWLNFUBiumrV90lilZlbOVWYREE2ox/qQGzmvvd6OILHVJLfGyLYEq7s/N 3I9x4++ci2hX10OHybp7GXQqO0FZRFgxEubNAezx8Hi3jpcmhDUg9EUAQcZK/TA3 znfAEiMi59LXCFuW9SMBlBbig5NHEeBIR/sRRLPr4X+LC7JatyGjF9+J4dz9GPxc 8p49OJD5JOu3JIrRIzmvDm+6j7doytXXrwE+9+Bc1MYWsX4SMAT4a3k40OteIr/M GySCC8spupDKTe9hVb3ULvgfumYvKnJIbPQCQ252/Dc6hQ0n3D1Gr4q6axYCoRgx ZobAkaDNpLpL30cCJWWrrBo1sHGXa9XVsGYa1Bv6YOnvZYzzDRbKXggBcZi0i071 cUBBc3bin27pNmY1N65goBSJhHQBh3Ahq4jY5kq9zhleZ2vTNI4wn454ZVoGcrdA e8kTIiW/pb3zflQIVF41
=gNz5
-----END PGP SIGNATURE-----

#13 lore raw

PATCH 6/7 Move mysql patches to version specific subdirectory

In reply to Sylvain Raybaud
---
 package/mysql/{ => 5.1}/0000-ac_cache_check.patch                    | 0
 package/mysql/{ => 5.1}/0001-configure-ps-cache-check.patch          | 0
 package/mysql/{ => 5.1}/0002-use-new-readline-iface.patch            | 0
 package/mysql/{ => 5.1}/0003-ac_stack_direction-is-unset.patch       | 0
 package/mysql/{ => 5.1}/0004-Fix-gen_lex_hash-execution.patch        | 0
 package/mysql/{ => 5.1}/0005-bison_3_breaks_mysql_server_build.patch | 0
 package/mysql/{ => 5.1}/0006-no-force-static-build.patch             | 0
 7 files changed, 0 insertions(+), 0 deletions(-)
 rename package/mysql/{ => 5.1}/0000-ac_cache_check.patch (100%)
 rename package/mysql/{ => 5.1}/0001-configure-ps-cache-check.patch (100%)
 rename package/mysql/{ => 5.1}/0002-use-new-readline-iface.patch (100%)
 rename package/mysql/{ => 5.1}/0003-ac_stack_direction-is-unset.patch (100%)
 rename package/mysql/{ => 5.1}/0004-Fix-gen_lex_hash-execution.patch (100%)
 rename package/mysql/{ => 5.1}/0005-bison_3_breaks_mysql_server_build.patch (100%)
 rename package/mysql/{ => 5.1}/0006-no-force-static-build.patch (100%)
package/mysql/5.1/0000-ac_cache_check.patch renamed from package/mysql/0000-ac_cache_check.patch +0 -0
similarity index 100%
rename from package/mysql/0000-ac_cache_check.patch
rename to package/mysql/5.1/0000-ac_cache_check.patch
package/mysql/5.1/0001-configure-ps-cache-check.patch renamed from package/mysql/0001-configure-ps-cache-check.patch +0 -0
similarity index 100%
rename from package/mysql/0001-configure-ps-cache-check.patch
rename to package/mysql/5.1/0001-configure-ps-cache-check.patch
package/mysql/5.1/0002-use-new-readline-iface.patch renamed from package/mysql/0002-use-new-readline-iface.patch +0 -0
similarity index 100%
rename from package/mysql/0002-use-new-readline-iface.patch
rename to package/mysql/5.1/0002-use-new-readline-iface.patch
package/mysql/5.1/0003-ac_stack_direction-is-unset.patch renamed from package/mysql/0003-ac_stack_direction-is-unset.patch +0 -0
similarity index 100%
rename from package/mysql/0003-ac_stack_direction-is-unset.patch
rename to package/mysql/5.1/0003-ac_stack_direction-is-unset.patch
package/mysql/5.1/0004-Fix-gen_lex_hash-execution.patch renamed from package/mysql/0004-Fix-gen_lex_hash-execution.patch +0 -0
similarity index 100%
rename from package/mysql/0004-Fix-gen_lex_hash-execution.patch
rename to package/mysql/5.1/0004-Fix-gen_lex_hash-execution.patch
package/mysql/5.1/0005-bison_3_breaks_mysql_server_build.patch renamed from package/mysql/0005-bison_3_breaks_mysql_server_build.patch +0 -0
similarity index 100%
rename from package/mysql/0005-bison_3_breaks_mysql_server_build.patch
rename to package/mysql/5.1/0005-bison_3_breaks_mysql_server_build.patch
package/mysql/5.1/0006-no-force-static-build.patch renamed from package/mysql/0006-no-force-static-build.patch +0 -0
similarity index 100%
rename from package/mysql/0006-no-force-static-build.patch
rename to package/mysql/5.1/0006-no-force-static-build.patch
Signature · 1 line
1.9.1
#14 lore raw

PATCH 7/7 Propose mariadb galera cluster as an alternative to standard mysql implementation, inside msyql package

In reply to Sylvain Raybaud
---
 .../mariadb-galera-01-fix_xtradb_cmakelist.patch   |  27 +++
 .../mariadb-galera-02-fix_innodb_cmakelist.patch   | 251 +++++++++++++++++++++
 package/mysql/Config.in                            |  43 +++-
 package/mysql/mariadb-galera-cluster.cnf           | 204 +++++++++++++++++
 package/mysql/mysql.hash                           |   2 +
 package/mysql/mysql.mk                             | 216 +++++++++++++++---
 6 files changed, 707 insertions(+), 36 deletions(-)
 create mode 100644 package/mysql/10.0.17/mariadb-galera-01-fix_xtradb_cmakelist.patch
 create mode 100644 package/mysql/10.0.17/mariadb-galera-02-fix_innodb_cmakelist.patch
 create mode 100644 package/mysql/mariadb-galera-cluster.cnf
package/mysql/10.0.17/mariadb-galera-01-fix_xtradb_cmakelist.patch new file +27 -0
new file mode 100644
index 0000000..83eac77
@@ -0,0 +1,27 @@
+Do not perform test if the build is not requested anyway. The test may fail,
+preventing building the whole package.
+
+--- a/storage/xtradb/CMakeLists.txt	2014-10-30 16:24:33.160188627 +0100
++++ b/storage/xtradb/CMakeLists.txt	2014-10-30 16:25:09.060188829 +0100
+@@ -470,12 +470,13 @@
+   SET(WITH_INNOBASE_STORAGE_ENGINE TRUE)
+ ENDIF()
+ 
+-IF(XTRADB_OK)
+-  MYSQL_ADD_PLUGIN(xtradb ${INNOBASE_SOURCES} STORAGE_ENGINE
+-    DEFAULT
+-    RECOMPILE_FOR_EMBEDDED
+-    LINK_LIBRARIES ${ZLIB_LIBRARY} ${LINKER_SCRIPT})
+-ELSE()
+-  MESSAGE(FATAL_ERROR "Percona XtraDB is not supported on this platform")
++IF(NOT WITHOUT_XTRADB)
++  IF(XTRADB_OK)
++    MYSQL_ADD_PLUGIN(xtradb ${INNOBASE_SOURCES} STORAGE_ENGINE
++      DEFAULT
++      RECOMPILE_FOR_EMBEDDED
++      LINK_LIBRARIES ${ZLIB_LIBRARY} ${LINKER_SCRIPT})
++  ELSE()
++    MESSAGE(FATAL_ERROR "Percona XtraDB is not supported on this platform")
++  ENDIF()
+ ENDIF()
+-
package/mysql/10.0.17/mariadb-galera-02-fix_innodb_cmakelist.patch new file +251 -0

251 lines not on this page · raw message

package/mysql/Config.in +38 -5

60 lines not on this page · raw message

package/mysql/mariadb-galera-cluster.cnf new file +204 -0

204 lines not on this page · raw message

package/mysql/mysql.hash +2 -0
index 84f3361..d9f3574 100644
@@ -1,2 +1,4 @@
 # From https://downloads.mariadb.com/archives/mysql-5.1/mysql-5.1.73.tar.gz.md5
 md5	887f869bcc757957067b9198f707f32f	mysql-5.1.73.tar.gz
+# From: https://downloads.mariadb.org/interstitial/mariadb-galera-10.0.17/source/mariadb-galera-10.0.17.tar.gz
+sha1	 91b70d19fb687a58f0e40f50608071489743e54e	mariadb-galera-10.0.17.tar.gz
package/mysql/mysql.mk +185 -31

284 lines not on this page · raw message

Signature · 1 line
1.9.1
#15 lore raw

cover Set of patches to add MariaDB galera cluster

In reply to Sylvain Raybaud

Dear Sylvain Raybaud,

Quoted 9 lines · Sylvain Raybaud

Sylvain Raybaud (7):
Add package check: unit test library
Add rule to build host-libaio
Add package galera: wsrep provider for mysql and mariadb Add PKG_CONFIG_* variables to help cmake find host-packages Add fancy options to busybox sleep, like float arguments Move mysql patches to version specific subdirectory Propose mariadb galera cluster as an alternative to standard mysql
implementation, inside msyql package

For the commit title, we try to follow a convention of using:

<package>: <what happens>

So your commit titles should rather be something like:

check: new package
libaio: add host variant
galera: new package
pkg-cmake: add PKG_CONFIG_* variables to help cmake find host packages
busybox: adjust configuration to add fancy options to the sleep applet
mysql: move patches into a version-specific subdirectory
mysql: add mariadb variant

Thanks,

Thomas

Signature · 3 lines
Thomas Petazzoni, CTO, Free Electrons
Embedded Linux, Kernel and Android engineering
http://free-electrons.com
#16 lore raw

cover Set of patches to add MariaDB galera cluster

In reply to Sylvain Raybaud

-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

Hi

Thanks for your feedback. I'm working now on v2.

Cheers,

Sylvain

Quoted 52 lines · Sylvain Raybaud

Add MariaDB Galera Cluster as an alternative implementation of MySQL, inside package/mysql. Also add galera which is needed for running a cluster and check on which galera depends. Introduce a few other minor modifications to busybox.config and libaio.mk necessary to make this work.

Sylvain Raybaud (7): Add package check: unit test library Add rule to build host-libaio Add package galera: wsrep provider for mysql and mariadb Add PKG_CONFIG_* variables to help cmake find host-packages Add fancy options to busybox sleep, like float arguments Move mysql patches to version specific subdirectory Propose mariadb galera cluster as an alternative to standard mysql implementation, inside msyql package

package/Config.in                                  |   2 + 
package/busybox/busybox.config                     |   4 +- 
package/check/Config.in                            |   7 + 
package/check/check.hash                           |   2 + 
package/check/check.mk                             |  20 ++ 
package/galera/Config.in                           |   9 + 
...lera-01-fix_sconstruct_for-crosscompiling.patch |  52 +++++ 
package/galera/galera.hash                         |   2 + 
package/galera/galera.mk                           |  63 ++++++ 
package/libaio/libaio.mk                           |   1 + 
.../mariadb-galera-01-fix_xtradb_cmakelist.patch   |  27 +++ 
.../mariadb-galera-02-fix_innodb_cmakelist.patch   | 251
+++++++++++++++++++++ package/mysql/{ =>
5.1}/0000-ac_cache_check.patch  |   0 .../{ =>
5.1}/0001-configure-ps-cache-check.patch  |   0 .../{ =>
5.1}/0002-use-new-readline-iface.patch    |   0 
.../0003-ac_stack_direction-is-unset.patch         |   0 
.../0004-Fix-gen_lex_hash-execution.patch          |   0 
.../0005-bison_3_breaks_mysql_server_build.patch   |   0 .../{ =>

5.1}/0006-no-force-static-build.patch | 0
package/mysql/Config.in | 43 +++-
package/mysql/mariadb-galera-cluster.cnf | 204
+++++++++++++++++ package/mysql/mysql.hash
| 2 + package/mysql/mysql.mk | 216
+++++++++++++++--- package/pkg-cmake.mk
| 2 + 24 files changed, 869 insertions(+), 38 deletions(-) create
mode 100644 package/check/Config.in create mode 100644 package/check/check.hash create mode 100644 package/check/check.mk create mode 100644 package/galera/Config.in create mode 100644 package/galera/galera-01-fix_sconstruct_for-crosscompiling.patch create mode 100644 package/galera/galera.hash create mode 100644 package/galera/galera.mk create mode 100644 package/mysql/10.0.17/mariadb-galera-01-fix_xtradb_cmakelist.patch create mode 100644 package/mysql/10.0.17/mariadb-galera-02-fix_innodb_cmakelist.patch rename package/mysql/{ => 5.1}/0000-ac_cache_check.patch (100%) rename package/mysql/{ => 5.1}/0001-configure-ps-cache-check.patch (100%) rename package/mysql/{ =>

Quoted 9 lines

5.1}/0002-use-new-readline-iface.patch (100%) rename package/mysql/{ => 5.1}/0003-ac_stack_direction-is-unset.patch (100%) rename package/mysql/{ => 5.1}/0004-Fix-gen_lex_hash-execution.patch (100%) rename package/mysql/{ => 5.1}/0005-bison_3_breaks_mysql_server_build.patch (100%) rename package/mysql/{ => 5.1}/0006-no-force-static-build.patch (100%) create mode 100644 package/mysql/mariadb-galera-cluster.cnf

- --
Sylvain Raybaud
www.green-communications.fr
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1

iQIcBAEBAgAGBQJVnk//AAoJEEkkwl4JtJ9yY6QP/is7LgHwpoAIdASFBJYs+FRg e1EVRzB9NDBOitmWpAJCVIH8xmFMBKeq4TNsQTTXT0DE+95z9npwQ2uxmun+G5/I SXShmcN1CM4JU9mRNsSJ45O9x6zCIG/YeXplgePKdIutef6pekbYCkGXcIqqD5/t /WOHEmFIojuX+LjNuYih0fxKq4VQPrDudhbT/nxz0smFE+B0ci7RA6a4dJOhy4tx hAq0VIJhPUoOyeM2xMWcChNHz+6pMGB29CJfccsJ99wcC9FvjDhSHDqwDWs8TuGu YBuDLvrEzSsZ5dH8hO88eSN+eadPwHW1pJBTlxw3D6f1naknihdT4m5zf7Jo2Fic MV8NOWigxE7+rJSK0k5DmyzZe+5EU6/k+0k72ZV2LfUZX+RgCTYyP5TLULS3lhF5 YSKtVhHcXVCxN8zd8QyB9H+8lGp9XZL7ml8Q95ahoM3Xt2hfCw2mLJ1RMMOdP5Af Ilww0Bas0OGVc6jzRbaKE99HcBBamKCuGISBRSrjmPGSeoGFIEDZMZX0ocLu10zu jfengk7WjVPSDCh5laiYggXVkii7zbF9I3ydNgmgw/oY5km1xNhsNWQ2J/oPhw8j /xjDTqcTv9SyW1lmE+6nIsYCVN1fXWgYEPt5+OFWhQCHX91ynqHbeDx3WH1Ls4JR xDG2zFEXKrbEpVwigMe5
=so17
-----END PGP SIGNATURE-----