[MDEV-5140] TokuDB is compiled by default (and compilation fails on x86_64 OpenSuse 12.3) Created: 2013-10-15  Updated: 2014-07-29  Resolved: 2014-07-29

Status: Closed
Project: MariaDB Server
Component/s: None
Affects Version/s: 5.5.33a
Fix Version/s: 5.5.38

Type: Bug Priority: Minor
Reporter: Vilho Raatikka Assignee: Sergei Golubchik
Resolution: Fixed Votes: 0
Labels: tokudb, upstream
Environment:

OpenSuse 12.3 on
Linux linux-yxkl.site 3.7.10-1.16-desktop #1 SMP PREEMPT Fri May 31 20:21:23 UTC 2013 (97c14ba) x86_64 x86_64 x86_64 GNU/Linux



 Description   

The following sequence fails due TokuDB compile error. TokuDB, however, wasn't meant to be included in the build.

make clean
cmake . -DCMAKE_BUILD_TYPE:STRING=Debug -DMYSQL_DATADIR:PATH=/home/jdoe/src/bazaar/maria/5.5/ -DWITHOUT_PBXT_STORAGE_ENGINE:BOOL=ON -DWITH_INNOBASE_STORAGE_ENGINE:BOOL=OFF -DWITH_PARTITION_STORAGE_ENGINE:BOOL=OFF -DWITH_PIC:BOOL=ON 
-DWITH_QUERY_CACHE_INFO:BOOL=ON 
-DWITH_SSL:STRING=yes -DWITH_VALGRIND:BOOL=ON -DWITH_EMBEDDED_SERVER:BOOL=ON -DCMAKE_INSTALL_PREFIX=/home/jdoe/bin/mariadb-5.5/
 
make

results:

[ 64%] Built target locktree_static
[ 64%] Generating tokufractaltree_static_depends.cc
Scanning dependencies of target tokufractaltree_static
[ 64%] Building CXX object storage/tokudb/ft-index/src/CMakeFiles/tokufractaltree_static.dir/tokufractaltree_static_depends.cc.o
Linking CXX static library libtokufractaltree_static.a
/usr/bin/ar: creating /home/jdoe/src/bazaar/maria/5.5/storage/tokudb/ft-index/src/libtokufractaltree_static.a
[ 64%] Built target tokufractaltree_static
Scanning dependencies of target tokudb
[ 64%] Building CXX object storage/tokudb/CMakeFiles/tokudb.dir/ha_tokudb.cc.o
/home/jdoe/src/bazaar/maria/5.5/storage/tokudb/ha_tokudb.cc: In member function ‘int ha_tokudb::initialize_share(const char*, int)’:
/home/jdoe/src/bazaar/maria/5.5/storage/tokudb/ha_tokudb.cc:1753:16: error: ‘struct TABLE’ has no member named ‘part_info’
/home/jdoe/src/bazaar/maria/5.5/storage/tokudb/ha_tokudb.cc: In member function ‘virtual int ha_tokudb::create(const char*, TABLE*, HA_CREATE_INFO*)’:
/home/jdoe/src/bazaar/maria/5.5/storage/tokudb/ha_tokudb.cc:7018:15: error: ‘struct TABLE’ has no member named ‘part_info’
In file included from /home/jdoe/src/bazaar/maria/5.5/storage/tokudb/ha_tokudb.cc:8393:0:
/home/jdoe/src/bazaar/maria/5.5/storage/tokudb/hatoku_hton.cc: At global scope:
/home/jdoe/src/bazaar/maria/5.5/storage/tokudb/hatoku_hton.cc:1879:13: warning: ‘void tokudb_handle_fatal_signal(handlerton*, THD*, int)’ defined but not used [-Wunused-function]
make[2]: *** [storage/tokudb/CMakeFiles/tokudb.dir/ha_tokudb.cc.o] Error 1
make[1]: *** [storage/tokudb/CMakeFiles/tokudb.dir/all] Error 2
make: *** [all] Error 2



 Comments   
Comment by Sergei Golubchik [ 2013-10-15 ]

The bug is that TokuDB doesn't compile without partitioning. It doesn't always correctly #ifdef the code that depends on partitioning.

It's not a bug that it is compiled by default, if you want to disable TokuDB, you need to do that explicitly.

Generated at Thu Feb 08 07:01:59 UTC 2024 using Jira 8.20.16#820016-sha1:9d11dbea5f4be3d4cc21f03a88dd11d8c8687422.