[MDEV-11059] don't build the server with jemalloc Created: 2016-10-14  Updated: 2018-12-28  Resolved: 2017-03-29

Status: Closed
Project: MariaDB Server
Component/s: Packaging
Fix Version/s: 10.2.5

Type: Task Priority: Major
Reporter: Sergei Golubchik Assignee: Sergei Golubchik
Resolution: Fixed Votes: 0
Labels: 10.2-ga

Issue Links:
Relates
relates to MDEV-18012 Supplied jemalloc results in immediat... Closed

 Description   

We haven't seen any noticeable speed improvements from building the server with jemalloc. And we did have user complains about inability to use other memory allocators with MariaDB. But TokuDB (and, possibly, RockDB) need jemalloc for a good performance.

A solution could be:

  • do not build with jemalloc
  • add malloc-liib=jemalloc to tokudb.cnf and manually add a jemalloc dependency to TokuDB packages
  • something similar should be done for systemd too
  • as TokuDB will now introduce an additional dependency that the server itself does not need, it will go into a separate rpm/deb package

This way

  • the server will not be built with jemalloc, won't require or run with it
  • when a TokuDB package is installed, it will automatically bring in jemalloc as a dependency and will make the server use it — just as before
  • the user can always override it and use another memory allocator, if desired


 Comments   
Comment by Elena Stepanova [ 2017-01-24 ]

If we want to do it, we probably need to do it before GA.

Comment by Sergei Golubchik [ 2017-03-29 ]

Done: TokuDB is in a separate rpm package (in deb it already was). Server isn't linked with jemalloc.
But TokuDB is still linked with jemalloc, I didn't use malloc-liib=jemalloc approach, because it doesn't work very well with systemd.

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