git: a025389152de - main - databases/mysql80-server: add patch for malloc-lib
- Go to: [ bottom of page ] [ top of archives ] [ this month ]
Date: Fri, 07 Jan 2022 12:13:23 UTC
The branch main has been updated by joneum:
URL: https://cgit.FreeBSD.org/ports/commit/?id=a025389152de64d806e403a680dc053ae41ade77
commit a025389152de64d806e403a680dc053ae41ade77
Author: Jochen Neumeister <joneum@FreeBSD.org>
AuthorDate: 2022-01-07 12:10:00 +0000
Commit: Jochen Neumeister <joneum@FreeBSD.org>
CommitDate: 2022-01-07 12:13:17 +0000
databases/mysql80-server: add patch for malloc-lib
forked from mysql57-server: https://svnweb.freebsd.org/changeset/ports/548590
Log:
MySQL 5.7 mysqld_safe allows malloc-lib files only in certain locations.
google-perftools port puts libtcmalloc_minimal.so inside /usr/local/lib
To use tcmalloc memory allocator we need mysqld_safe to load libraries from /usr/local/lib
More information about why to use tcmalloc instead of jemalloc here:
https://forums.freebsd.org/threads/freebsd-12-x-and-mysql-5-7-and-importing-file-with-lots-of-small-lines-exhaust-ram-and-swap.72733/
PR: 259816
Sponsored by: Netzkommune GmbH
---
.../files/patch-scripts_mysqld__safe.txt | 19 +++++++++++++++++++
1 file changed, 19 insertions(+)
diff --git a/databases/mysql80-server/files/patch-scripts_mysqld__safe.txt b/databases/mysql80-server/files/patch-scripts_mysqld__safe.txt
new file mode 100644
index 000000000000..7da369b97b60
--- /dev/null
+++ b/databases/mysql80-server/files/patch-scripts_mysqld__safe.txt
@@ -0,0 +1,19 @@
+--- scripts/mysqld_safe.sh.orig 2022-01-07 11:33:53.643546000 +0100
++++ scripts/mysqld_safe.sh 2022-01-07 11:37:41.505101000 +0100
+@@ -360,7 +360,7 @@ mysqld_ld_preload_text() {
+ # running mysqld. See ld.so for details.
+ set_malloc_lib() {
+ # This list is kept intentionally simple.
+- malloc_dirs="/usr/lib /usr/lib64 /usr/lib/i386-linux-gnu /usr/lib/x86_64-linux-gnu"
++ malloc_dirs="/usr/lib /usr/lib64 /usr/lib/i386-linux-gnu /usr/lib/x86_64-linux-gnu /usr/local/lib"
+ malloc_lib="$1"
+
+ # Allow --malloc-lib='' to override other settings
+@@ -379,6 +379,7 @@ set_malloc_lib() {
+ /usr/lib64) ;;
+ /usr/lib/i386-linux-gnu) ;;
+ /usr/lib/x86_64-linux-gnu) ;;
++ /usr/local/lib) ;;
+ *)
+ log_error "--malloc-lib must be located in one of the directories: $malloc_dirs"
+ exit 1