Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 360731 - dev-db/percona-server: new package request and proposal
Summary: dev-db/percona-server: new package request and proposal
Status: RESOLVED FIXED
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: New packages (show other bugs)
Hardware: All Linux
: Normal normal with 3 votes (vote)
Assignee: Gentoo Linux MySQL bugs team
URL: http://www.percona.com
Whiteboard:
Keywords: InOverlay
Depends on:
Blocks:
 
Reported: 2011-03-27 07:53 UTC by Thomas Stein
Modified: 2014-07-30 00:17 UTC (History)
11 users (show)

See Also:
Package list:
Runtime testing required: ---


Attachments
percona-server 5.1 ebuild (percona-server-5.1.55_p126.ebuild,11.29 KB, text/plain)
2011-03-27 07:55 UTC, Thomas Stein
Details
percona-server 5.5 ebuild (percona-server-5.5.8_beta20.ebuild,9.94 KB, text/plain)
2011-03-27 07:55 UTC, Thomas Stein
Details
percona-server-5.5.10-rc1 ebuild (percona-server-5.5.10_rc1.ebuild,9.88 KB, text/plain)
2011-04-05 10:07 UTC, Thomas Stein
Details
percona 5.5.10-rc1 ebuild (percona-server-5.5.10_rc1.ebuild,10.05 KB, text/plain)
2011-04-07 20:25 UTC, Thomas Stein
Details
percona-server-5.1.56_p127.ebuild (percona-server-5.1.56_p127.ebuild,11.36 KB, text/plain)
2011-04-20 13:52 UTC, Thomas Stein
Details
Percona-Server-5.5.11-rel20.2 ebuild (percona-server-5.5.11-r202.ebuild,10.05 KB, text/plain)
2011-04-29 06:37 UTC, Thomas Stein
Details
percona-server-5.1.57_p128 ebuild (percona-server-5.1.57_p128.ebuild,11.38 KB, application/octet-stream)
2011-06-10 06:41 UTC, Thomas Stein
Details
percona-server-5.5.12 rel-20.3 ebuild (percona-server-5.5.12-r203.ebuild,10.05 KB, application/octet-stream)
2011-06-10 19:38 UTC, Thomas Stein
Details
percona-server-5.5.13 rel-20.4 ebuild (percona-server-5.5.13-r204.ebuild,10.05 KB, text/plain)
2011-07-02 20:01 UTC, Thomas Stein
Details
percona-server-5.1.58_p129 ebuild (percona-server-5.1.58_p129.ebuild,11.38 KB, text/plain)
2011-08-15 13:52 UTC, Thomas Stein
Details
percona-server-5.5.14 rel-20.5 ebuild (percona-server-5.5.14-r205.ebuild,10.05 KB, text/plain)
2011-08-15 13:52 UTC, Thomas Stein
Details
percona-server-5.5.15 rel-21.0 ebuild (percona-server-5.5.15-r210.ebuild,10.05 KB, text/plain)
2011-09-05 15:00 UTC, Thomas Stein
Details
percona-server-5.5.15_p210158.ebuild (percona-server-5.5.15_p210158.ebuild,5.71 KB, text/plain)
2011-09-15 12:16 UTC, Manuel Mausz
Details
percona-server-5.5.15_p210158.ebuild (percona-server-5.5.15_p210158.ebuild,6.51 KB, text/plain)
2011-09-21 19:00 UTC, Manuel Mausz
Details
emerge --config failure (file_360731.txt,1.54 KB, text/plain)
2012-07-20 16:14 UTC, Steve Dibb
Details
mysql_install_db.log (file_360731.txt,223 bytes, text/plain)
2012-07-20 16:15 UTC, Steve Dibb
Details
percona-server-5.5.25_p271.ebuild (file_360731.txt,6.74 KB, text/plain)
2012-07-20 21:59 UTC, Steve Dibb
Details
build.log with USE="embedded" (build.tar.gz,43.84 KB, text/plain)
2013-05-10 16:49 UTC, Jakub Caban
Details

Note You need to log in before you can comment on or make changes to this bug.
Description Thomas Stein 2011-03-27 07:53:21 UTC
Percona is providing high performance mysql server. Would be nice that would be in portage.

Reproducible: Always
Comment 1 Thomas Stein 2011-03-27 07:55:09 UTC
Created attachment 267357 [details]
percona-server 5.1 ebuild

This is a percona-server 5.1 ebuild. Works nice so far on my system. If you wanna use this for example for php you have to adjust virtual/mysql.
Comment 2 Thomas Stein 2011-03-27 07:55:50 UTC
Created attachment 267359 [details]
percona-server 5.5 ebuild
Comment 3 Jorge Manuel B. S. Vicetto (RETIRED) Gentoo Infrastructure gentoo-dev 2011-03-27 14:00:17 UTC
We already provide the percona patches for mysql-5.1 in the mysql ebuilds and on mariadb (they're included on mariadb by upstream). We'll have to check the patches for 5.5 when 5.5.10 gets to a stable state in the overlay.

Why should we have an ebuild just for this?
Comment 4 Thomas Stein 2011-03-27 17:29:56 UTC
Well. Percona is the original. Having this not in portage is like having the song "love will tear us apart" only from nouvelle vague not from joy division. Beside of that i'm not quite sure mariadb is always on par with percona. I'm also not sure everything is included in the xtradb patchset. 

cheers
t.
Comment 5 Thomas Stein 2011-04-05 10:07:37 UTC
Created attachment 268571 [details]
percona-server-5.5.10-rc1 ebuild

Updated ebuild.
Comment 6 Thomas Stein 2011-04-07 20:25:54 UTC
Created attachment 268931 [details]
percona 5.5.10-rc1 ebuild

Minor fixes.
Comment 7 Thomas Stein 2011-04-20 13:52:18 UTC
Created attachment 270655 [details]
percona-server-5.1.56_p127.ebuild

Updated Percona-Server 5.1 Ebuild.
Comment 8 Thomas Stein 2011-04-29 06:37:58 UTC
Created attachment 271539 [details]
Percona-Server-5.5.11-rel20.2 ebuild

Percona-Server-5.5.11-rel20.2 Stable has been released.
Comment 9 Travis Hansen 2011-05-18 05:49:28 UTC
This perhaps may shed some light on other differences beside just the xtradb patches...

http://www.percona.com/software/percona-server/feature-comparison/
Comment 10 Travis Hansen 2011-06-10 05:27:12 UTC
If anyone is interested I also have created a 'bin' package for their binary releases that can be installed side-by-side with mysql.
Comment 11 Thomas Stein 2011-06-10 06:41:35 UTC
Created attachment 276455 [details]
percona-server-5.1.57_p128 ebuild

Version Bump.
Comment 12 Thomas Stein 2011-06-10 19:38:58 UTC
Created attachment 276575 [details]
percona-server-5.5.12 rel-20.3 ebuild

Updated ebuild.
Comment 13 Thomas Stein 2011-07-02 20:01:04 UTC
Created attachment 278883 [details]
percona-server-5.5.13 rel-20.4 ebuild

Version bump to 5.5.13.
Comment 14 Thomas Stein 2011-08-15 13:52:04 UTC
Created attachment 283425 [details]
percona-server-5.1.58_p129 ebuild

version bump.
Comment 15 Thomas Stein 2011-08-15 13:52:45 UTC
Created attachment 283427 [details]
percona-server-5.5.14 rel-20.5 ebuild

version bump.
Comment 16 Thomas Stein 2011-09-05 15:00:59 UTC
Created attachment 285645 [details]
percona-server-5.5.15 rel-21.0 ebuild

5.5 Stable Release 5.5.15-21.0
Comment 17 Manuel Mausz 2011-09-15 12:16:35 UTC
Created attachment 286545 [details]
percona-server-5.5.15_p210158.ebuild

Hi there,

I've created a smaller ebuild for Percona Server. It uses the existing eclasses instead of copying all functions. There are a few assumptions inside mysql-v2.eclass it trys to work around by modifing/removing these assumptions afterwards. I've marked these with FIXME inside the ebuild.
Additional this ebuild supports testing (simply copied from mysql-5.5.14 ebuild)
Comment 18 Manuel Mausz 2011-09-21 19:00:37 UTC
Created attachment 287347 [details]
percona-server-5.5.15_p210158.ebuild

minor fixes for my ebuild:
- define MYSQL_VERSION_EXTRA to be in sync with the version string of percona-server
- set CMAKE_BUILD_TYPE to a known build type of mysql. otherwise mysql will report it's a debug build although it isn't. this should be fixed in mysql-cmake.ebuild (too)
Comment 19 Manuel Mausz 2011-09-21 19:05:34 UTC
oh, and I added dev-libs/libaio as (runtime) dependency
Comment 20 Steve Dibb 2012-07-20 16:13:21 UTC
(In reply to comment #18)
> Created attachment 287347 [details]
> percona-server-5.5.15_p210158.ebuild

Manual, I'm having some problems with this ebuild.

The package builds fine, but emerge --config is breaking because it can't find mysql_install_db

The mysql-v2 eclass says it's in ${EROOT}/usr/bin, but it's location is actually /usr/share/mysql/scripts/mysql_install_db

Any ideas?
Comment 21 Steve Dibb 2012-07-20 16:14:20 UTC
Created attachment 318750 [details]
emerge --config failure
Comment 22 Steve Dibb 2012-07-20 16:15:42 UTC
Created attachment 318752 [details]
mysql_install_db.log
Comment 23 Steve Dibb 2012-07-20 21:59:35 UTC
Created attachment 318764 [details]
percona-server-5.5.25_p271.ebuild

New ebuild for Percona-Server-5.5.25a-rel27.1.tar.gz
Comment 24 kfm 2012-12-18 21:10:16 UTC
(In reply to comment #3)
> We already provide the percona patches for mysql-5.1 in the mysql ebuilds
> and on mariadb (they're included on mariadb by upstream). We'll have to
> check the patches for 5.5 when 5.5.10 gets to a stable state in the overlay.
> 
> Why should we have an ebuild just for this?

This is worth a read:

http://openlife.cc/blogs/2012/august/state-mysql-forks

MariaDB is diverging further from vanilla, which may not considered by all to be a benefit. From my point of view, these are plus points:

  * Better able to follow upstream MySQL (good stuff is happening in 5.6)
  * Being less divergent from vanilla equates to being safer to migrate to
  * It is upstream for XtraDB, which solves a lot of InnoDB scalability problems
  * Clear focus on issues of raw performance, scalability and high availability

That's not to say that the MariaDB guys aren't doing some fine work. However, some of the things that they focus on are not necessarily the things that would keep me awake at night. For instance, improvements in the query optimizer are all well and good but, when you are scaling MySQL aggressively, one is generally more concerned with: reviewing intrinsically slow or complex queries and simplifying or replacing them, performing joins at application level, sharding, using memcache etc.

On the other hand, having MySQL deal with a high load and getting it to scale on good hardware is an ongoing battle. By mere virtue of the existence of XtraDB, along with utilities such as percona-toolkit, xtrabackup and tools.percona.com, Percona demonstrate that they are more in tune with the needs of the 'enterprise' user (for want of a better word).

Also, the general availability of XtraDB Cluster - a high availability clustering solution based on Galera - is a big deal. Some people are using that in production now. By contrast, the MariaDB equivalent in alpha.

TL;DR version: +1 for having it in portage.
Comment 25 Jeff (JD) Horelick (RETIRED) gentoo-dev 2013-04-25 20:35:27 UTC
+1 for seeing this in the tree. Percona Server seems like the happy medium between MySQL and MariaDB.
Comment 26 Jorge Manuel B. S. Vicetto (RETIRED) Gentoo Infrastructure gentoo-dev 2013-05-07 13:13:18 UTC
I've added percona-server to the mysql overlay[1].
Anyone interested, please test it and give us feedback.

 [1] - http://git.overlays.gentoo.org/gitweb/?p=proj/mysql.git;a=commit;h=fa7cd051011a9ef3c878433d4edbb4894805a4be
Comment 27 Jakub Caban 2013-05-07 14:58:30 UTC
(In reply to comment #26)
> I've added percona-server to the mysql overlay[1].
> Anyone interested, please test it and give us feedback.
> 
>  [1] -
> http://git.overlays.gentoo.org/gitweb/?p=proj/mysql.git;a=commit;
> h=fa7cd051011a9ef3c878433d4edbb4894805a4be

I'd love to give it a shot. But to do so there needs to be altered virtual/mysql allowing percona-server. I know I can make one in local overlay, but it needs to be done anyway and mysql overlay looks like good place for this to be.
Comment 28 Jorge Manuel B. S. Vicetto (RETIRED) Gentoo Infrastructure gentoo-dev 2013-05-07 15:21:16 UTC
(In reply to comment #27)
> 
> I'd love to give it a shot. But to do so there needs to be altered
> virtual/mysql allowing percona-server. I know I can make one in local
> overlay, but it needs to be done anyway and mysql overlay looks like good
> place for this to be.

Good point. Done for virtual/mysql-5.5.

15:18 < irker273> proj/mysql: jmbsvicetto virtual/mysql/: Add percona-server to the virtual for 5.5 release.
Comment 29 Travis Hansen 2013-05-07 15:39:40 UTC
I'd like to also mention http://www.percona.com/software/percona-xtradb-cluster as this is being looked into.  I've been using the binary builds for a couple years now with good success.  I believe however the xtradb-cluster can be installed as a separate package (ie plugin to what you've made) but haven't looked into the details.

Anyway, just wanted to bring it up as a talking point while things are getting looked at.
Comment 30 Jakub Caban 2013-05-10 16:46:54 UTC
Unfortunately merge fails for me with embedded USE flag. Will attach full build log.

Portage 2.2.0_alpha174 (default/linux/amd64/13.0/desktop/kde, gcc-4.7.2, glibc-2.17, 3.9.1-gentoo-r1 x86_64)
=================================================================
                         System Settings
=================================================================
System uname: Linux-3.9.1-gentoo-r1-x86_64-Intel-R-_Core-TM-_i7-2670QM_CPU_@_2.20GHz-with-gentoo-2.2
KiB Mem:     8141692 total,    313480 free
KiB Swap:    4194300 total,   3806748 free
Timestamp of tree: Fri, 10 May 2013 07:30:01 +0000
ld GNU ld (GNU Binutils) 2.23.1
ccache version 3.1.9 [enabled]
app-shells/bash:          4.2_p45
dev-java/java-config:     2.2.0
dev-lang/python:          2.7.4, 3.2.4
dev-util/ccache:          3.1.9
dev-util/cmake:           2.8.11_rc3::kde
dev-util/pkgconfig:       0.28
sys-apps/baselayout:      2.2
sys-apps/openrc:          0.11.8
sys-apps/sandbox:         2.6-r1
sys-devel/autoconf:       2.13, 2.69
sys-devel/automake:       1.11.6, 1.12.6, 1.13.1
sys-devel/binutils:       2.23.1
sys-devel/gcc:            4.7.2-r1
sys-devel/gcc-config:     1.8
sys-devel/libtool:        2.4.2
sys-devel/make:           3.82-r4
sys-kernel/linux-headers: 3.9 (virtual/os-headers)
sys-libs/glibc:           2.17
Repositories: gentoo kde mozilla proaudio qt x11 mysql my
ACCEPT_KEYWORDS="amd64 ~amd64"
ACCEPT_LICENSE="*"
CBUILD="x86_64-pc-linux-gnu"
CFLAGS="-march=native -O2 -pipe"
CHOST="x86_64-pc-linux-gnu"
CONFIG_PROTECT="/etc /usr/share/config /usr/share/gnupg/qualified.txt /usr/share/polkit-1/actions /usr/share/themes/oxygen-gtk/gtk-2.0 /usr/share/themes/oxygen-gtk/gtk-3.0"
CONFIG_PROTECT_MASK="/etc/ca-certificates.conf /etc/env.d /etc/fonts/fonts.conf /etc/gconf /etc/gentoo-release /etc/php/apache2-php5.4/ext-active/ /etc/php/apache2-php5.5/ext-active/ /etc/php/cgi-php5.4/ext-active/ /etc/php/cgi-php5.5/ext-active/ /etc/php/cli-php5.4/ext-active/ /etc/php/cli-php5.5/ext-active/ /etc/revdep-rebuild /etc/sandbox.d /etc/terminfo"
CXXFLAGS="-march=native -O2 -pipe"
DISTDIR="/usr/portage/distfiles"
FCFLAGS="-O2 -pipe"
FEATURES="assume-digests binpkg-logs ccache clean-logs compressdebug config-protect-if-modified distlocks ebuild-locks fixlafiles merge-sync news parallel-fetch parallel-install preserve-libs protect-owned sandbox sfperms strict unknown-features-warn unmerge-logs unmerge-orphans userfetch"
FFLAGS="-O2 -pipe"
GENTOO_MIRRORS="http://distfiles.gentoo.org"
LANG="en_US.UTF-8"
LDFLAGS="-Wl,-O1 -Wl,--as-needed -Wl,-O2"
MAKEOPTS="-j10"
PKGDIR="/usr/portage/packages"
PORTAGE_CONFIGROOT="/"
PORTAGE_RSYNC_OPTS="--recursive --links --safe-links --perms --times --compress --force --whole-file --delete --stats --human-readable --timeout=180 --exclude=/distfiles --exclude=/local --exclude=/packages"
PORTAGE_TMPDIR="/var/tmp"
PORTDIR="/usr/portage"
PORTDIR_OVERLAY="/var/lib/layman/kde /var/lib/layman/mozilla /var/lib/layman/pro-audio /var/lib/layman/qt /var/lib/layman/x11 /var/lib/layman/mysql /var/lib/layman/my"
SYNC="rsync://rsync.gentoo.org/gentoo-portage"
USE="3dnow 3dnowext X a52 aac acl acpi addressbook alsa amd64 attica avi bash-completion berkdb bluetooth bluray branding bzip2 c++0x c++11 cairo cdda cdio cdr cli consolekit cracklib crypt cups cxx dbus declarative dirac divx djvu dri dts dv dvd dvdr egl emboss encode eps exif fam fame ffmpeg firefox firmware flac fortran g3dvl gdbm gif git gles1 gles2 gpm iconv icu id3tag ipv6 jpeg kde kdenlive kdepim kipi kontact lcms libkms lm_sensors lzma mad mmx mmxext mng modules mp3 mp4 mpeg mudflap multilib mysql ncurses nls nptl nsplugin ogg opengl openmp optimized-qmake opus pam pango pch pcre pdf phonon php plasma png policykit ppds pulseaudio python3 qt3support qt4 readline rss samba scanner schroedinger sdl semantic-desktop session sftp spell sse sse2 sse2_4way ssl ssse3 ssse4 svg system-ffmpeg system-jpeg system-sqlite tcpd theora threads tidy tiff truetype udev udisks unicode upower usb v4l v4l2 vim-syntax vorbis wicd wifi wxwidgets x264 xcb xcomposite xinerama xml xscreensaver xv xvid xvmc zlib" ABI_X86="64" ALSA_CARDS="ali5451 als4000 atiixp atiixp-modem bt87x ca0106 cmipci emu10k1x ens1370 ens1371 es1938 es1968 fm801 hda-intel intel8x0 intel8x0m maestro3 trident usb-audio via82xx via82xx-modem ymfpci" ALSA_PCM_PLUGINS="adpcm alaw asym copy dmix dshare dsnoop empty extplug file hooks iec958 ioplug ladspa lfloat linear meter mmap_emul mulaw multi null plug rate route share shm softvol" APACHE2_MODULES="access_compat authn_core vhost_alias {authn_core authz_core socache_shmcb unixd actions alias auth_basic authn_alias authn_anon authn_dbm authn_default authn_file authz_dbm authz_default authz_groupfile authz_host authz_owner authz_user autoindex cache cgi cgid dav dav_fs dav_lock deflate dir disk_cache env expires ext_filter file_cache filter headers include info log_config logio mem_cache mime mime_magic negotiation rewrite setenvif speling status unique_id userdir usertrack vhost_alias}" CALLIGRA_FEATURES="kexi words flow plan sheets stage tables krita karbon braindump author" CAMERAS="ptp2" COLLECTD_PLUGINS="df interface irq load memory rrdtool swap syslog" ELIBC="glibc" GPSD_PROTOCOLS="ashtech aivdm earthmate evermore fv18 garmin garmintxt gpsclock itrax mtk3301 nmea ntrip navcom oceanserver oldstyle oncore rtcm104v2 rtcm104v3 sirf superstar2 timing tsip tripmate tnt ubx" INPUT_DEVICES="mouse keyboard synaptics evdev" KERNEL="linux" LCD_DEVICES="bayrad cfontz cfontz633 glk hd44780 lb216 lcdm001 mtxorb ncurses text" LIBREOFFICE_EXTENSIONS="presenter-console presenter-minimizer" LINGUAS="en" OFFICE_IMPLEMENTATION="libreoffice" PHP_TARGETS="php5-4 php5-5" PYTHON_SINGLE_TARGET="python2_7" PYTHON_TARGETS="python3_2 python2_7" RUBY_TARGETS="ruby18 ruby19" USERLAND="GNU" VIDEO_CARDS="nouveau" XTABLES_ADDONS="quota2 psd pknock lscan length2 ipv4options ipset ipp2p iface geoip fuzzy condition tee tarpit sysrq steal rawnat logmark ipmark dhcpmac delude chaos account"
USE_PYTHON="2.7 3.2"
Unset:  CPPFLAGS, CTARGET, EMERGE_DEFAULT_OPTS, INSTALL_MASK, LC_ALL, PORTAGE_BUNZIP2_COMMAND, PORTAGE_COMPRESS, PORTAGE_COMPRESS_FLAGS, PORTAGE_RSYNC_EXTRA_OPTS

=================================================================
                        Package Settings
=================================================================

dev-db/percona-server-5.5.30.2 was built with the following:
USE="community (consolekit) (multilib) pam (policykit) ssl -cluster -debug -embedded -extraengine -jemalloc -latin1 -max-idx-128 -minimal -perl -profiling (-selinux) -static -systemtap -tcmalloc -test" ABI_X86="64"
CFLAGS="-march=native -O2 -pipe -fno-strict-aliasing"
CXXFLAGS="-march=native -O2 -pipe -fno-strict-aliasing -felide-constructors -fno-rtti -fno-implicit-templates -fno-exceptions -fno-strict-aliasing"
Comment 31 Jakub Caban 2013-05-10 16:49:06 UTC
Created attachment 347946 [details]
build.log with USE="embedded"
Comment 32 Jorge Manuel B. S. Vicetto (RETIRED) Gentoo Infrastructure gentoo-dev 2013-05-10 16:53:00 UTC
(In reply to comment #31)
> Created attachment 347946 [details]
> build.log with USE="embedded"

Yes, that's a known issue. I did make a note about it on my commit[1].

 [1] - http://git.overlays.gentoo.org/gitweb/?p=proj/mysql.git;a=commit;h=fa7cd051011a9ef3c878433d4edbb4894805a4be
Comment 33 Jakub Caban 2013-05-10 17:01:01 UTC
Ah missed that. Unfortunately it's a big stopper for me. Will be glad to test whenever embedded works.
Comment 34 Andy Blyler 2013-08-21 13:23:11 UTC
I've created a percona-server-5.6.12.4 ebuild and put it in my fork of the gentoo mysql overlay at: https://github.com/ablyler/mysql-overlay
Comment 35 Jorge Manuel B. S. Vicetto (RETIRED) Gentoo Infrastructure gentoo-dev 2013-10-08 02:43:37 UTC
(In reply to Andy Blyler from comment #34)
> I've created a percona-server-5.6.12.4 ebuild and put it in my fork of the
> gentoo mysql overlay at: https://github.com/ablyler/mysql-overlay

Brian added ebuilds based on your work to the mysql overlay.
Comment 36 Brian Evans (RETIRED) gentoo-dev 2013-10-10 13:01:40 UTC
(In reply to Jakub Caban from comment #30)
> Unfortunately merge fails for me with embedded USE flag. Will attach full
> build log.
> 

Percona upstream is not supporting embedded.. https://bugs.launchpad.net/bugs/1236873

It will have to be put in package.use.mask
Comment 37 Brian Evans (RETIRED) gentoo-dev 2014-07-30 00:17:52 UTC
Percona Server is now in the tree.