[MDEV-12455] RocksDB is not in MariaDB 10.2.5 generic tar.gz Created: 2017-04-06 Updated: 2017-09-09 Resolved: 2017-04-06 |
|
| Status: | Closed |
| Project: | MariaDB Server |
| Component/s: | Storage Engine - RocksDB |
| Affects Version/s: | 10.2.5 |
| Fix Version/s: | N/A |
| Type: | Bug | Priority: | Major |
| Reporter: | Oli Sennhauser | Assignee: | Unassigned |
| Resolution: | Not a Bug | Votes: | 0 |
| Labels: | None | ||
| Description |
|
I installed brand new MariaDB 10.2.5 from generic binary tar ball and cannot find RocksDB:
|
| Comments |
| Comment by Sergei Golubchik [ 2017-04-06 ] | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
RocksDB requires a sufficiently recent compiler and generic linux tarballs with the old glibc are built on a very old linux. Use mariadb-10.2.5-linux-systemd-x86_64.tar.gz (for systems with systemd) tarball. But I agree this should be explained somewhere more prominently. Any suggestions where we could've put this info so that you wouldn't have to download wrong tarball? | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| Comment by Oli Sennhauser [ 2017-04-06 ] | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
Hello serg OK. Got it and will try it out. Some thoughts: 1.) I do not see why a generic tar ball is dependent on systemd and thus why it must be mentioned in the file name at all. This was one of the reasons I did not choose it. | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| Comment by Oli Sennhauser [ 2017-04-06 ] | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
Tried it out and it does not work on Ubuntu 16.04:
Tried to work around:
So the generic binary tar ball is not really generic but RH. Shall I open another bug for this? | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| Comment by Oli Sennhauser [ 2017-04-06 ] | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
After downloading the 3rd mariadb package I still do not succed:
I am not amused. | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| Comment by Sergei Golubchik [ 2017-04-06 ] | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
yes, I've checked that RocksDB is not present in "glibc_214" tarball, that's why I didn't suggest it. Frankly, I don't understand why trusty tarball doesn't run on xenial. We need to look into it. Yes, please, open a new bug report for it. | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| Comment by Andrii Nikitin (Inactive) [ 2017-09-09 ] | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
To solve the problem conceptually - I would wish that mariadb-plugin-rocksdb didn't depend on mariadb-server (it does at least on yakkety where I tried it). Then it would be possible to install platform-specific plugin-rocksdb and load it into "generic tarball". (Leaving problem of matched version to user). Btw the same workaround is possible for those platforms where tar-bundled libgalera has unresolved dependencies - just install system "galera" package and use it inside "generic tarball". To move it further - if different versions of mariadb-plugin-rocksdb could co-exist on one machine without artificial dependencies - then it would be possible to use different versions of tarball at the same time with platform-specific plugins. As workaround - one may try to extract ha_rocksdb.so from corresponding plugin package and try to load it into "generic tar". | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| Comment by Vladislav Vaintroub [ 2017-09-09 ] | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
Storage engine plugins depend very much on mysqld. Therefore mysqld executable exports a lot of symbols, so that plugin could use them. for rocksdb those are for example below (disclaimer : taken from examining ha_rocksdb.dll dependencies from mysqld.exe on Windows)
| ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| Comment by Vladislav Vaintroub [ 2017-09-09 ] | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
but it is true that plugins have no link dependency on Linux, because Linux linker allows unresolved symbols, and cannot link shared libraries to exes anyway. |