← Back to team overview

maria-developers team mailing list archive

TokuDB disabled in Debian and Ubuntu - help me get it working?

 

Hello Rick,

Last year I spent a lot of time packaging MariaDB 5.5 for Debian and
finally this year it has landed in Ubuntu 14.04 and Debian testing.
Unfortunately the Debian/Ubuntu version does not include TokuDB and I
need your help to get it there.

In 5.5.35 (I think) the TokuDB plugn was added to MariaDB but I had
issues getting it build 100% correctly and I eventually dropped it
(added build parameter -DWITHOUT_TOKUDB=true), as getting MariaDB in
Debian at all was a bigger priority than getting it there with every
possible plugin.

The root cause seems to be that when Debian and Ubuntu packages are
built in chroot environments (the build systems of Debian and Ubuntu
use pbuilder/sbuilder systems, see
https://en.wikipedia.org/wiki/Debian_build_toolchain#Isolated_build_environments)
the code that builds the plugin does not seem to correctly detect the
CPU features. It seems to read the values from the build machine and
not the inputted target values (in a cross-compile situation).


There are two related issues that needs a solution:


1) Currenlty the code that checks what the architecture is
(32-bit/64-bit) is the first lines of
https://bazaar.launchpad.net/~maria-captains/maria/10.0/view/head:/storage/tokudb/CMakeLists.txt.
This works well for real and virtual machhines, but it does not seem
to work in the pbuilder/sbuilder chroots, as CMAKE_SYSTEM_PROCESSOR
always shows the chroot host CPU, not the cross-compile target CPU.

Could you please investigate pbuilder/sbuilder and search for some
solution that works for reliable target CPU checking?


2) When building TokuDB in Ubuntu (amd64) sbuilder environments
something in crashes in the 'toku_os_get_processor_frequency'
function. For this too, could you investigate the sbuilde chroot
environment and figure out what goes on and how to fix it?

Issue 2 has a bug report with the (a bit messy) debugging history
documented: https://mariadb.atlassian.net/browse/MDEV-5618


Both of these issues requires learning a bit about sbuilder CPU
things, so I assume it is most efficient if the same persons looks
into both of these.


Thanks!


-- 
Check out our blog at http://seravo.fi/blog
and follow @ottokekalainen


Follow ups