Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 265407 - Ebuild request: dev-db/xtrabackup
Summary: Ebuild request: dev-db/xtrabackup
Status: RESOLVED FIXED
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: New packages (show other bugs)
Hardware: All Linux
: High enhancement with 1 vote (vote)
Assignee: Default Assignee for New Packages
URL: http://www.mysqlperformanceblog.com/2...
Whiteboard:
Keywords: EBUILD
Depends on:
Blocks:
 
Reported: 2009-04-08 07:54 UTC by Lori
Modified: 2016-08-03 12:09 UTC (History)
9 users (show)

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


Attachments
ebuild for xtrabackup 1.0 (xtrabackup-1.0.ebuild,1.05 KB, text/plain)
2010-02-08 18:05 UTC, Andy Blyler
Details
Bump dev-db/xtrabackup to 1.2.15 (xtrabackup-1.2.15.ebuild,1.89 KB, text/plain)
2010-06-10 11:12 UTC, Vladimir Tsisaruk
Details
xtrabackup-bin-1.6.ebuild (xtrabackup-bin-1.6.ebuild,896 bytes, text/plain)
2011-05-03 17:39 UTC, Steffen Weber
Details
Updated dev-db/xtrabackup 2.0.0 ebuild (xtrabackup-2.0.0.ebuild,895 bytes, text/plain)
2012-04-30 12:16 UTC, Matthias Saou
Details
percona-xtrabackup-2.0.1.ebuild (percona-xtrabackup-2.0.1.ebuild,2.01 KB, text/plain)
2012-08-01 14:12 UTC, Tomáš Mózes
Details
percona-xtrabackup-2.0.6.ebuild (percona-xtrabackup-2.0.6.ebuild,2.80 KB, text/plain)
2013-05-02 09:03 UTC, Tomáš Mózes
Details
percona-xtrabackup-2.0.6.ebuild (percona-xtrabackup-2.0.6.ebuild,2.83 KB, text/plain)
2013-05-02 09:05 UTC, Tomáš Mózes
Details
percona-xtrabackup-2.1.3.ebuild (percona-xtrabackup-2.1.3.ebuild,2.85 KB, text/plain)
2013-06-14 14:29 UTC, Tomáš Mózes
Details
percona-xtrabackup-2.1.3.ebuild (percona-xtrabackup-2.1.3.ebuild,2.30 KB, text/plain)
2013-06-14 15:04 UTC, Tomáš Mózes
Details
percona-xtrabackup-2.0.7.ebuild (percona-xtrabackup-2.0.7.ebuild,2.83 KB, text/plain)
2013-06-14 15:05 UTC, Tomáš Mózes
Details
percona-xtrabackup-2.4.3.ebuild (percona-xtrabackup-2.4.3.ebuild,917 bytes, text/plain)
2016-06-09 10:34 UTC, Tomáš Mózes
Details
percona-xtrabackup-2.4.3.ebuild (percona-xtrabackup-2.4.3.ebuild,918 bytes, text/plain)
2016-06-10 12:49 UTC, Tomáš Mózes
Details
percona-xtrabackup-2.4.3.ebuild (percona-xtrabackup-2.4.3.ebuild,950 bytes, text/plain)
2016-06-10 13:45 UTC, Tomáš Mózes
Details
percona-xtrabackup-2.4.3.ebuild (percona-xtrabackup-2.4.3.ebuild,1.08 KB, text/plain)
2016-06-13 08:12 UTC, manwe
Details
percona-xtrabackup-2.4.3.ebuild (percona-xtrabackup-2.4.3.ebuild,1.15 KB, text/plain)
2016-06-24 17:17 UTC, Tomáš Mózes
Details

Note You need to log in before you can comment on or make changes to this bug.
Description Lori 2009-04-08 07:54:25 UTC
So far the most widely used tool to make hot backups of MySQL has been mysqldump. However, it has several important limitation, and people at Percona have started work on an alternative. It reached version 0.5, and while it is not considered stable yet, it's quite usable. It would be nice to have a Gentoo ebuild for it. Thanks!
Comment 1 Thomas Seifert 2009-10-14 11:12:35 UTC
I'd love to see this too.
Recent versions got more and more stable and its soo useful for hot backups!
Comment 2 Thomas Seifert 2010-01-10 13:57:05 UTC
Xtrabackup v1.0 has been released http://www.mysqlperformanceblog.com/2009/12/09/xtrabackup-1-0/
Comment 3 Andy Blyler 2010-02-08 18:05:50 UTC
Created attachment 218923 [details]
ebuild for xtrabackup 1.0
Comment 4 Vladimir Tsisaruk 2010-06-10 11:12:06 UTC
Created attachment 234843 [details]
Bump dev-db/xtrabackup to 1.2.15

Ebuild for dev-db/xtrabackup-1.2.15
Tested on x86 and amd64
Just copy and change name for a new release
Comment 5 Vladimir Tsisaruk 2010-06-10 11:16:36 UTC
This ebuild was added to repo:
http://github.com/GiDiS/gentoo-php-rewrite
Comment 6 Steffen Weber 2011-05-03 17:39:30 UTC
Created attachment 271995 [details]
xtrabackup-bin-1.6.ebuild

I have adjusted the ebuild for XtraBackup 1.6: added dependency on dev-libs/libaio and fixed dobin/dosymlink.
Comment 7 Matthias Saou 2012-04-30 12:16:38 UTC
Created attachment 310493 [details]
Updated dev-db/xtrabackup 2.0.0 ebuild

This is yet another update to the ebuild for the latest available version. The download locations have changed, and some of the included files too.
Comment 8 Travis Hansen 2012-05-15 06:00:44 UTC
I've added an updated ebuild to my overlay here (dev-db/percona-xtrabackup-bin):

http://anon-git.one-gear.com/?p=chaos.git;a=summary

It properly supports the different arches, and has some cleaned up deps.  Additionally I have dev-db/percona-server-bin in there including the latest cluster build in case anyone is interested.

Thanks!
Comment 9 Tomáš Mózes 2012-08-01 14:11:30 UTC
Here is an ebuild for Percona Xtrabackup 2.0.1 that is built from the source.
Comment 10 Tomáš Mózes 2012-08-01 14:12:06 UTC
Created attachment 319980 [details]
percona-xtrabackup-2.0.1.ebuild
Comment 11 David Sparks 2012-08-07 18:49:05 UTC
percona-xtrabackup-2.0.1.ebuild still needs a tweak, as it downloads a webpage not the package source:

gzip: /var/tmp/portage/dev-db/xtrabackup-2.0.1/distdir/xtrabackup-2.0.1.tar.gz: not in gzip format


db5 xtrabackup # head /var/tmp/portage/dev-db/xtrabackup-2.0.1/distdir/xtrabackup-2.0.1.tar.gz 
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML+RDFa 1.0//EN"
  "http://www.w3.org/MarkUp/DTD/xhtml-rdfa-1.dtd">
Comment 12 David Sparks 2012-08-07 18:59:25 UTC
Please ignore comment #11, I didn't realize that the package name was changed to "percona-xtrabackup".
Comment 13 Tomáš Mózes 2012-12-13 10:04:51 UTC
(In reply to comment #10)
> Created attachment 319980 [details]
> percona-xtrabackup-2.0.1.ebuild

Rename percona-xtrabackup-2.0.1.ebuild to percona-xtrabackup-2.0.4.ebuild for Xtrabackup 2.0.4.
Comment 14 Tomáš Mózes 2013-03-01 13:20:44 UTC
(In reply to comment #10)
> Created attachment 319980 [details]
> percona-xtrabackup-2.0.1.ebuild

Rename percona-xtrabackup-2.0.1.ebuild to percona-xtrabackup-2.0.5.ebuild for Xtrabackup 2.0.5.
Comment 15 Tomáš Mózes 2013-05-02 08:28:18 UTC
(In reply to comment #10)
> Created attachment 319980 [details]
> percona-xtrabackup-2.0.1.ebuild

Rename percona-xtrabackup-2.0.1.ebuild to percona-xtrabackup-2.0.6.ebuild for Xtrabackup 2.0.6.
Comment 16 Tomáš Mózes 2013-05-02 09:03:54 UTC
Created attachment 347120 [details]
percona-xtrabackup-2.0.6.ebuild

Updated ebuild (added MySQL5.0 /MySQL 5.6)
Comment 17 Tomáš Mózes 2013-05-02 09:05:21 UTC
Created attachment 347122 [details]
percona-xtrabackup-2.0.6.ebuild

Added dependency on automake for MySQL 5.0.
Comment 18 Tomáš Mózes 2013-06-14 14:29:36 UTC
Created attachment 350938 [details]
percona-xtrabackup-2.1.3.ebuild

Added dependency on dev-perl/DBD-mysql.
Comment 19 Tomáš Mózes 2013-06-14 15:04:39 UTC
Created attachment 350940 [details]
percona-xtrabackup-2.1.3.ebuild

Percona removed support for MySQL 5.0/MySQL 5.1 (innodb builtin).
Comment 20 Tomáš Mózes 2013-06-14 15:05:13 UTC
Created attachment 350942 [details]
percona-xtrabackup-2.0.7.ebuild

Latest version from 2.0, can be used for MySQL 5.0/MySQL 5.1.
Comment 21 Brian Evans (RETIRED) gentoo-dev 2013-06-14 17:15:01 UTC
(In reply to Tomas Mozes from comment #18)
> Created attachment 350938 [details]
> percona-xtrabackup-2.1.3.ebuild
> 
> Added dependency on dev-perl/DBD-mysql.

Here are some suggestions:
Replace pkg_setup() with
REQUIRED_USE="^^ ( mysql50 mysql51 mysql51plugin mysql55 mysql56 percona51 percona55 )"
and put the USE descriptions in metadata.xml.

You also need RDEPEND as EAPI 4 does not set it implicitly.
RDEPEND="dev-libs/libaio
        dev-perl/DBD-mysql
        percona51? ( dev-vcs/bzr )
        percona55? ( dev-vcs/bzr )"
DEPEND="${RDEPEND}
        dev-util/cmake
        mysql50? ( sys-devel/automake:1.10 )
        mysql51? ( sys-devel/automake:1.10 )
        mysql51plugin? ( sys-devel/automake:1.10 )
        percona51? ( sys-devel/automake:1.10 )"

BTW, you list MariaDB 5.1, 5.2, 5.3 and 10.0.   Where did MariaDB 5.5 go?

On top of all of this, the current build script from upstream does not seem fit well with Gentoo.

It builds a custom downloaded, sometimes from bzr, MySQL/Percona server for the purpose of building a plugin and the xtrabackup binary.

The plugin should be proposed as a patch for the server build itself.
Then, this binary should try to interpret the binary only build procedure.

Although, this may not be possible since the binary looks to need the server sources as well!  Not sure the best way to handle it since the server sources are not normally available.

Possibly the only way that I can see to get this to work in Gentoo, is to have xtrabackup as an add-on to the server build process.
Comment 22 Brian Evans (RETIRED) gentoo-dev 2014-02-20 20:52:50 UTC
dev-db/xtrabackup-bin is already in the tree.

@mysql-bugs
With the attachment to the server build that this build would entail, do we want to carry the source version as well?
Comment 23 Christian Ruppert (idl0r) gentoo-dev 2014-02-21 21:24:18 UTC
I would like to add a ebuild for the source version as well but the auto-download stuff is a no-go. Also, the last time when I tried it it required some patches to MySQL. For now I'd just use the pre-built binary package.
Comment 24 Tomáš Mózes 2016-06-09 10:34:40 UTC
Created attachment 436970 [details]
percona-xtrabackup-2.4.3.ebuild

The building is now self-contained, nothing additional should be downloaded from the network.

First draft, needs to further check the boost requirement of the specific version.

Any testing is appreciated.
Comment 25 Tomáš Mózes 2016-06-10 12:49:56 UTC
Created attachment 437056 [details]
percona-xtrabackup-2.4.3.ebuild

Rebuild on libgcrypt slot change.
Comment 26 Tomáš Mózes 2016-06-10 13:45:15 UTC
Created attachment 437058 [details]
percona-xtrabackup-2.4.3.ebuild

Cannot be installed along with xtrabackup-bin.
Comment 27 manwe 2016-06-13 08:12:13 UTC
Created attachment 437344 [details]
percona-xtrabackup-2.4.3.ebuild

My $0.02 from #585366. Ebuild that does not depend on boost but downloads sources instead. They are needed only for compilation.

Locking into specific boost version will be hell to maintain. And I'm guessing by the time upstream fixes compatibility with 1.60/1.61 we will have newer, incompatible version.
Comment 28 Tomáš Mózes 2016-06-16 08:01:54 UTC
(In reply to manwe from comment #27)
> Created attachment 437344 [details]
> percona-xtrabackup-2.4.3.ebuild
> 
> My $0.02 from #585366. Ebuild that does not depend on boost but downloads
> sources instead. They are needed only for compilation.
> 
> Locking into specific boost version will be hell to maintain. And I'm
> guessing by the time upstream fixes compatibility with 1.60/1.61 we will
> have newer, incompatible version.

Thanks. It really seems Boost 1.59 is a hard requirement for now and probably will be for some time:
http://forums.mysql.com/read.php?117,645928,645982#msg-645982

I suppose we could add a USE flag to trigger system/downloaded boost, what do you think?
Comment 29 manwe 2016-06-16 08:25:32 UTC
That's an option, good idea. But IMO by default it should be non-system. Downgrading boost to 1.59 might force rebuild on many packages and lock other that some day will depend on boost >=1.60.
Comment 30 manwe 2016-06-16 08:31:05 UTC
By the way, I'm already using this package, compiled with my ebuild, and I can confirm it works nicely with Percona XtraDB Cluster (maybe some day cluster will also find its way into portage tree).
Comment 31 Tomáš Mózes 2016-06-24 15:26:14 UTC
I too can confirm it's working with MariaDB 10.0. I tried to run a consistency check and it passed just fine.

I'll try to merge our ebuilds together, hopefully we can add it to portage then.
Comment 32 Tomáš Mózes 2016-06-24 17:17:26 UTC
Created attachment 438678 [details]
percona-xtrabackup-2.4.3.ebuild

Selectable system boost, which is on by default (the Gentoo way).
Comment 33 manwe 2016-06-24 17:21:05 UTC
I'm on my cellphone right now, but looks like you forgot about tar --extract.
Comment 34 Tomáš Mózes 2016-06-24 17:27:27 UTC
(In reply to manwe from comment #33)
> I'm on my cellphone right now, but looks like you forgot about tar --extract.

The SRC_URI files are automatically unpacked.
Comment 35 Tomáš Mózes 2016-08-02 11:36:06 UTC
https://github.com/gentoo/gentoo/pull/1998

@manwe, would you like to co-maintain?
Comment 36 manwe 2016-08-02 12:49:44 UTC
Sure, will do my best.
Comment 37 Patrice Clement gentoo-dev 2016-08-03 12:01:31 UTC
commit 9f553b1a4dffb76fc3fd8b1f67498559b666d091 (HEAD -> master, origin/master, origin/HEAD)
Author:     Tomas Mozes <hydrapolic@gmail.com>
AuthorDate: Tue Aug 2 13:32:58 2016 +0200
Commit:     Patrice Clement <monsieurp@gentoo.org>
CommitDate: Wed Aug 3 14:00:28 2016 +0200

dev-db/percona-xtrabackup: New package.

Percona XtraBackup is an online non-blocking backup tool for MySQL,
MariaDB and Percona Server.

Gentoo-Bug: https://bugs.gentoo.org/265407

Package-Manager: portage-2.3.0
Closes: https://github.com/gentoo/gentoo/pull/1998

Signed-off-by: Patrice Clement <monsieurp@gentoo.org>

dev-db/percona-xtrabackup/Manifest                 |  2 +
dev-db/percona-xtrabackup/metadata.xml             | 19 ++++++++
.../percona-xtrabackup-2.4.4.ebuild                | 52 ++++++++++++++++++++++
3 files changed, 73 insertions(+)
create mode 100644 dev-db/percona-xtrabackup/Manifest
create mode 100644 dev-db/percona-xtrabackup/metadata.xml
create mode 100644 dev-db/percona-xtrabackup/percona-xtrabackup-2.4.4.ebuild

Commited, thanks!
Comment 38 Tomáš Mózes 2016-08-03 12:09:53 UTC
Thank you Patrice.