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: add MariaDB 5.5.58 #4221

Closed
wants to merge 1 commit into
base: master
from

Conversation

Projects
None yet
8 participants
@lucize
Contributor

lucize commented Apr 1, 2017

Light modified version from https://github.com/m-creations/openwrt/tree/master/feeds/packages/utils/mariadb
Added lite option

Maintainer: me
Compile/Run tested: x86_64,sunxi,mips LEDE r4807-bd24d53
Compile test: mipsel

Signed-off-by: Lucian Cristian <lucian.cristian@gmail.com

@lucize lucize changed the title from add MariaDB 5.5.54 to utils/database: add MariaDB 5.5.54 Apr 1, 2017

PKG_SOURCE:=$(PKG_NAME)-galera-$(PKG_VERSION).tar.gz
PKG_SOURCE_URL:=\
https://downloads.mariadb.org/interstitial/$(PKG_NAME)-galera-$(PKG_VERSION)/source \
PKG_VERSION:=5.5.54
PKG_RELEASE:=1
PKG_SOURCE:=$(PKG_NAME)-galera-$(PKG_VERSION).tar.gz

This comment has been minimized.

@diizzyy

diizzyy Apr 1, 2017

Contributor

$(PKG_NAME)-$(PKG_VERSION).tar.gz

This comment has been minimized.

@lucize

lucize Apr 1, 2017

Contributor

galera is the correct way to do it because non galera source will not have option for clusters

@diizzyy

This comment has been minimized.

Contributor

diizzyy commented Apr 1, 2017

Please rename your port if you intent it to use the galera sources, given the limited interest/resources I don't think it's something will be used or maintained by general users.

@diizzyy

This comment has been minimized.

Contributor

diizzyy commented Apr 1, 2017

This also changes licensing which probably isn't desirably as far as I can tell.
https://mariadb.com/kb/en/mariadb/mariadb-galera-cluster-known-limitations/+license/
This should probably go into a private repo, if it's accepted it should be renamed.

@lucize

This comment has been minimized.

Contributor

lucize commented Apr 1, 2017

the size of galera package is only about 200kb more and compile time just about the same (i5-3.4ghz), does it make sense not to offer that option? the innodb is the problem with the newer versions, not galera.

about the license here:
https://mariadb.com/kb/en/mariadb/licensing-faq/
it is saying MariaDB is distributed under the GPL license, version 2. or this is only for the package without galera ?

@lucize lucize force-pushed the lucize:mariadb55 branch from 6dccc01 to 546b3c2 Apr 1, 2017

@lucize

This comment has been minimized.

@lucize lucize force-pushed the lucize:mariadb55 branch from 3c08478 to 93a7180 Apr 18, 2017

@lucize

This comment has been minimized.

Contributor

lucize commented Apr 18, 2017

update to 5.5.55
removed Galera

MariaDB [(none)]> status;
--------------
mysql  Ver 15.1 Distrib 5.5.55-MariaDB, for Linux (x86_64) using readline 5.1

Connection id:          2
Current database:
Current user:           root@localhost
SSL:                    Not in use
Current pager:          stdout
Using outfile:          ''
Using delimiter:        ;
Server:                 MariaDB
Server version:         5.5.55-MariaDB Source distribution
Protocol version:       10
Connection:             Localhost via UNIX socket
Server characterset:    utf8
Db     characterset:    utf8
Client characterset:    utf8
Conn.  characterset:    utf8
UNIX socket:            /tmp/mysql.sock
Uptime:                 14 min 52 sec

@lucize lucize changed the title from utils/database: add MariaDB 5.5.54 to utils/database: add MariaDB 5.5.55 Apr 18, 2017

@eliz82

This comment has been minimized.

eliz82 commented May 14, 2017

so when this will be merged to the master branch?

i'm still wating ... #3936 (comment)

@lucize

This comment has been minimized.

Contributor

lucize commented May 14, 2017

sorry I don't have commit access..
@hnyman is something I need to change on this ?

@zyxmon

This comment has been minimized.

Contributor

zyxmon commented May 14, 2017

@lucize - thanks for mariadb. I have made test packages (5.5.56) for entware
http://forums.zyxmon.org/viewtopic.php?f=5&t=5538 (Russian)

@lucize lucize force-pushed the lucize:mariadb55 branch from 985dfd0 to d42b4f7 May 14, 2017

@lucize lucize changed the title from utils/database: add MariaDB 5.5.55 to utils/database: add MariaDB 5.5.56 May 14, 2017

@eliz82

This comment has been minimized.

eliz82 commented May 15, 2017

@zyxmon thanks, i like what i see in the screen shot.
but i see the path to the build is "mipsel". i use entware 3x on a Netgear R7800 with Voxel firmware https://www.snbforums.com/threads/custom-firmware-build-for-r7800-v-1-0-2-30sf.38366/
will this build also work on ARM7 cpu?

@zyxmon

This comment has been minimized.

Contributor

zyxmon commented May 15, 2017

@eliz82 - you can ask @SVoxel to build test packages here - https://github.com/SVoxel/Entware-ng-3x/issues
I have uploaded Makefile for entware here - http://entware-3x.zyxmon.org/binaries/mipsel/test/mariadb/mariadb.tar.gz
Some changes will be made to my.cnf and probably to Makefile and patches.

@lucize

This comment has been minimized.

Contributor

lucize commented May 15, 2017

The my.cnf file is not optimised for small systems, it can be optimised, anyway it won't start without editing it

@hauke

This comment has been minimized.

Member

hauke commented Jun 5, 2017

The MariaDB 5.5 was initially released in 2012 and is probably end of life soon.
I would NACK adding version 5.5 to the package feed and would encourage you to send a pull request for a recent version like 10.2.

@lucize

This comment has been minimized.

Contributor

lucize commented Jun 5, 2017

Trust me, I tried the 10.x,but there are some crosscomplile problems with innodb and I couldn't figure it out (mariadb mailing list wasn't good for help on it).
5.5 is rhel main version, I think it won't be eol for anytime soon
I'll try to use tokudb engine from 10+ ,maybe it will compile

@lucize

This comment has been minimized.

Contributor

lucize commented Jun 9, 2017

https://mariadb.com/kb/en/mariadb/mariadb-maintenance-policy/ so we have until 11 Apr 2020, better to have this in repo instead of the older mysql version

Regards!

@champtar champtar closed this Aug 18, 2017

@champtar champtar reopened this Aug 18, 2017

@lucize lucize force-pushed the lucize:mariadb55 branch from d88ce9a to be095c1 Sep 1, 2017

@lucize lucize changed the title from utils/database: add MariaDB 5.5.56 to mariadb: add MariaDB 5.5.57 Sep 1, 2017

@lucize lucize force-pushed the lucize:mariadb55 branch from 289da78 to 4d828be Sep 1, 2017

@lucize

This comment has been minimized.

Contributor

lucize commented Oct 17, 2017

Why don't you just try and see? Just saying..

@p3x-robot

This comment has been minimized.

p3x-robot commented Oct 17, 2017

building...

@p3x-robot

This comment has been minimized.

p3x-robot commented Oct 17, 2017

i added your patch @speadup, building with lite first, ARM and MIPSEL, then I test with full blown as well.

exciting 💯

@p3x-robot

This comment has been minimized.

p3x-robot commented Oct 17, 2017

It is here the patches:
https://github.com/patrikx3/lede-mariadb/tree/master/mariadb/patches

I removed the 003-fix-innodb-without-charset-cjk.patch.txt but it doesn't build:

[ 20%] Building CXX object storage/innobase/CMakeFiles/innobase.dir/fil/fil0pagecompress.cc.o
/build/source/build_dir/target-arm_cortex-a9+vfpv3_musl-1.1.16_eabi/mariadb-10.2.9/storage/innobase/fil/fil0pagecompress.cc: In function 'byte* fil_compress_page(fil_space_t*, byte*, byte*, ulint, ulint, ulint, bool, ulint*)':
/build/source/build_dir/target-arm_cortex-a9+vfpv3_musl-1.1.16_eabi/mariadb-10.2.9/storage/innobase/fil/fil0pagecompress.cc:185:69: error: invalid conversion from 'ulint* {aka unsigned int*}' to 'lzo_uint* {aka long unsigned int*}' [-fpermissive]
    buf, len, out_buf+header_len, &write_size, out_buf+UNIV_PAGE_SIZE);
                                                                     ^
In file included from /build/source/build_dir/target-arm_cortex-a9+vfpv3_musl-1.1.16_eabi/mariadb-10.2.9/storage/innobase/fil/fil0pagecompress.cc:65:0:
/build/source/staging_dir/target-arm_cortex-a9+vfpv3_musl-1.1.16_eabi/usr/include/lzo/lzo1x.h:105:1: note:   initializing argument 4 of 'int lzo1x_1_15_compress(const unsigned char*, lzo_uint, unsigned char*, lzo_uint*, void*)'
 lzo1x_1_15_compress     ( const lzo_bytep src, lzo_uint  src_len,
 ^
/build/source/build_dir/target-arm_cortex-a9+vfpv3_musl-1.1.16_eabi/mariadb-10.2.9/storage/innobase/fil/fil0pagecompress.cc: In function 'void fil_decompress_page(byte*, byte*, ulong, ulint*, bool)':
/build/source/build_dir/target-arm_cortex-a9+vfpv3_musl-1.1.16_eabi/mariadb-10.2.9/storage/innobase/fil/fil0pagecompress.cc:527:52: error: invalid conversion from 'ulint* {aka unsigned int*}' to 'lzo_uint* {aka long unsigned int*}' [-fpermissive]
    actual_size,(unsigned char *)in_buf, &olen, NULL);
                                                    ^
In file included from /build/source/build_dir/target-arm_cortex-a9+vfpv3_musl-1.1.16_eabi/mariadb-10.2.9/storage/innobase/fil/fil0pagecompress.cc:65:0:
/build/source/staging_dir/target-arm_cortex-a9+vfpv3_musl-1.1.16_eabi/usr/include/lzo/lzo1x.h:56:1: note:   initializing argument 4 of 'int lzo1x_decompress(const unsigned char*, lzo_uint, unsigned char*, lzo_uint*, void*)'
 lzo1x_decompress        ( const lzo_bytep src, lzo_uint  src_len,
 ^
storage/innobase/CMakeFiles/innobase.dir/build.make:758: recipe for target 'storage/innobase/CMakeFiles/innobase.dir/fil/fil0pagecompress.cc.o' failed
make[5]: *** [storage/innobase/CMakeFiles/innobase.dir/fil/fil0pagecompress.cc.o] Error 1
make[5]: Leaving directory '/build/source/build_dir/target-arm_cortex-a9+vfpv3_musl-1.1.16_eabi/mariadb-10.2.9'
CMakeFiles/Makefile2:3669: recipe for target 'storage/innobase/CMakeFiles/innobase.dir/all' failed
make[4]: *** [storage/innobase/CMakeFiles/innobase.dir/all] Error 2
make[4]: Leaving directory '/build/source/build_dir/target-arm_cortex-a9+vfpv3_musl-1.1.16_eabi/mariadb-10.2.9'
Makefile:160: recipe for target 'all' failed
make[3]: *** [all] Error 2
make[3]: Leaving directory '/build/source/build_dir/target-arm_cortex-a9+vfpv3_musl-1.1.16_eabi/mariadb-10.2.9'
Makefile:313: recipe for target '/build/source/build_dir/target-arm_cortex-a9+vfpv3_musl-1.1.16_eabi/mariadb-10.2.9/.built' failed
make[2]: *** [/build/source/build_dir/target-arm_cortex-a9+vfpv3_musl-1.1.16_eabi/mariadb-10.2.9/.built] Error 2
make[2]: Leaving directory '/build/source/feeds/mariadb/mariadb'
package/Makefile:105: recipe for target 'package/feeds/mariadb/mariadb/compile' failed
make[1]: *** [package/feeds/mariadb/mariadb/compile] Error 2
make[1]: Leaving directory '/build/source'
/build/source/include/toplevel.mk:198: recipe for target 'package/feeds/mariadb/mariadb/compile' failed
make: *** [package/feeds/mariadb/mariadb/compile] Error 2
docker@e566db578484:/build/source$ 
@lucize

This comment has been minimized.

Contributor

lucize commented Oct 17, 2017

did you set none instead of complex to charsets ?

@p3x-robot

This comment has been minimized.

p3x-robot commented Oct 17, 2017

ok, i try with CMAKE_OPTIONS += -DWITH_EXTRA_CHARSETS=none ?

@p3x-robot

This comment has been minimized.

p3x-robot commented Oct 17, 2017

right now it is CMAKE_OPTIONS += -DWITH_EXTRA_CHARSETS=complex

i try with none charsets.

@p3x-robot

This comment has been minimized.

p3x-robot commented Oct 17, 2017

but which is working right now your packages you commited? it is working with the lite or the full?

@p3x-robot

This comment has been minimized.

p3x-robot commented Oct 17, 2017

DWITH_EXTRA_CHARSETS is only for LITE right? The full should work, isn't it?

@p3x-robot

This comment has been minimized.

p3x-robot commented Oct 17, 2017

for mipsel:
#error atomic ops for this platform are not implemented
for Redis 4, i swtichted to pthreads.

@lucize

This comment has been minimized.

Contributor

lucize commented Oct 17, 2017

@speadup I think it can be used without maria engine, the problem is at some ifdef, I opened a bug report at mariadb, https://jira.mariadb.org/browse/MDEV-14078

@lucize

This comment has been minimized.

Contributor

lucize commented Oct 17, 2017

@p3x-robot the package, as I submitted, should work for full and lite, but as I said earlier, it need to be timed down some more, I only compile tested the lite version on x86, didn't had time for other platforms

@p3x-robot

This comment has been minimized.

p3x-robot commented Oct 17, 2017

i see, i guess for ARM and MIPSEL/RAMIPS needs patches, since I only can test those.
I will try what I can come up.

@speadup

This comment has been minimized.

speadup commented Oct 17, 2017

@lucize That sounds good. I have tried to disable myisam engine, but that makes aria engine broken.
I have tried to disable myisammrg/heap/csv engine too, but size of .ipk is all most same.
maybe build some plugin DYNAMIC and into separate packages is a good idea. binary package users can make choises for them self.

@p3x-robot

This comment has been minimized.

p3x-robot commented Oct 17, 2017

@p3x-robot

This comment has been minimized.

@p3x-robot

This comment has been minimized.

p3x-robot commented Oct 17, 2017

i reverted to 5.5 and it only build with LITE on Linksys WRT and RAMIPS/MIPSEL D-Link DIR 860L B1...
At least it works and is awesome.

@lucize lucize force-pushed the lucize:mariadb55 branch from ff783ae to 57087be Nov 25, 2017

@lucize lucize changed the title from mariadb: add MariaDB 5.5.57 to mariadb: add MariaDB 5.5.58 Nov 25, 2017

mariadb: add MariaDB 5.5.58
Signed-off-by: Lucian Cristian <lucian.cristian@gmail.com>

@lucize lucize force-pushed the lucize:mariadb55 branch from 4d1f432 to f9ab61d Nov 25, 2017

@p3x-robot

This comment has been minimized.

p3x-robot commented Nov 25, 2017

byt the way, i think the linux defaults and LEDE should be the original /var/lib/mysql. Just a comment...

@p3x-robot

This comment has been minimized.

p3x-robot commented Nov 25, 2017

https://github.com/patrikx3/lede-mariadb
uses /var/lib/mysql ... I think it is not a good changing, since all LEDE uses like the original LINUX defaults in /var/lib/***

@p3x-robot

This comment has been minimized.

p3x-robot commented Feb 17, 2018

Ciao @lucize !

How are you?
I am testing the new OpenWRT master today and I get a weird error, do you know what it could be?

tmp/.config-package.in:36837:error: recursive dependency detected!
For a resolution refer to Documentation/kbuild/kconfig-language.txt
subsection "Kconfig recursive dependency limitations"
tmp/.config-package.in:36837:	symbol PACKAGE_libmariadb is selected by PACKAGE_mariadb-client
For a resolution refer to Documentation/kbuild/kconfig-language.txt
subsection "Kconfig recursive dependency limitations"
tmp/.config-package.in:94428:	symbol PACKAGE_mariadb-client is selected by PACKAGE_mariadb-client-extra
For a resolution refer to Documentation/kbuild/kconfig-language.txt
subsection "Kconfig recursive dependency limitations"
tmp/.config-package.in:94443:	symbol PACKAGE_mariadb-client-extra depends on PACKAGE_libmariadb
tmp/.config-package.in:37125:error: recursive dependency detected!
For a resolution refer to Documentation/kbuild/kconfig-language.txt
subsection "Kconfig recursive dependency limitations"
tmp/.config-package.in:37125:	symbol PACKAGE_libmysqlclient is selected by PACKAGE_libmysqlclient
tmp/.config-package.in:36837:error: recursive dependency detected!
For a resolution refer to Documentation/kbuild/kconfig-language.txt
subsection "Kconfig recursive dependency limitations"
tmp/.config-package.in:36837:	symbol PACKAGE_libmariadb is selected by PACKAGE_mariadb-client
For a resolution refer to Documentation/kbuild/kconfig-language.txt
subsection "Kconfig recursive dependency limitations"
tmp/.config-package.in:94428:	symbol PACKAGE_mariadb-client is selected by PACKAGE_mariadb-client-extra
For a resolution refer to Documentation/kbuild/kconfig-language.txt
subsection "Kconfig recursive dependency limitations"
tmp/.config-package.in:94443:	symbol PACKAGE_mariadb-client-extra depends on PACKAGE_libmariadb
tmp/.config-package.in:37125:error: recursive dependency detected!
For a resolution refer to Documentation/kbuild/kconfig-language.txt
subsection "Kconfig recursive dependency limitations"
tmp/.config-package.in:37125:	symbol PACKAGE_libmysqlclient is selected by PACKAGE_libmysqlclient
tmp/.config-package.in:36837:error: recursive dependency detected!
For a resolution refer to Documentation/kbuild/kconfig-language.txt
subsection "Kconfig recursive dependency limitations"
tmp/.config-package.in:36837:	symbol PACKAGE_libmariadb is selected by PACKAGE_mariadb-client
For a resolution refer to Documentation/kbuild/kconfig-language.txt
subsection "Kconfig recursive dependency limitations"
tmp/.config-package.in:94428:	symbol PACKAGE_mariadb-client is selected by PACKAGE_mariadb-client-extra
For a resolution refer to Documentation/kbuild/kconfig-language.txt
subsection "Kconfig recursive dependency limitations"
tmp/.config-package.in:94443:	symbol PACKAGE_mariadb-client-extra depends on PACKAGE_libmariadb
tmp/.config-package.in:37125:error: recursive dependency detected!
For a resolution refer to Documentation/kbuild/kconfig-language.txt
subsection "Kconfig recursive dependency limitations"
tmp/.config-package.in:37125:	symbol PACKAGE_libmysqlclient is selected by PACKAGE_libmysqlclient
@lucize

This comment has been minimized.

Contributor

lucize commented Apr 29, 2018

#5851 superseded this, closing

@lucize lucize closed this Apr 29, 2018

@lucize lucize deleted the lucize:mariadb55 branch Apr 29, 2018

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment