UPDATE: databases/mariadb 10.9.8 -> 11.4.4

This commit is contained in:
purplerain 2025-01-21 19:15:58 +00:00
parent 08e19bea27
commit 9b4bbf16fe
Signed by: purplerain
GPG key ID: F42C07F07E2E35B7
22 changed files with 1394 additions and 833 deletions

View file

@ -2,16 +2,19 @@ COMMENT-main= multithreaded SQL database (client)
COMMENT-server= multithreaded SQL database (server)
COMMENT-tests= multithreaded SQL database (regression test suite/benchmark)
VERSION= 10.9.8
VERSION= 11.4.4
DISTNAME= mariadb-${VERSION}
PKGNAME-main= mariadb-client-${VERSION}
REVISION-server= 1
EPOCH= 1
CATEGORIES= databases
SITES= https://downloads.mariadb.com/MariaDB/${DISTNAME}/source/ \
https://ftp.osuosl.org/pub/mariadb/${DISTNAME}/source/
https://ftp.osuosl.org/pub/mariadb/${DISTNAME}/source/ \
https://archive.mariadb.org/${DISTNAME}/source/
LIB_VERSION= 30
DISTFILES.fmt= fmt-11.0.2.zip
SITES.fmt= https://github.com/fmtlib/fmt/releases/download/11.0.2/
LIB_VERSION= 31
SHARED_LIBS= mysqlclient_r ${LIB_VERSION}.0 \
mysqlclient ${LIB_VERSION}.0 \
mariadb ${LIB_VERSION}.0
@ -38,12 +41,13 @@ SOCKET_DIR= /var/run/mysql
SUBST_VARS= SOCKET_DIR
MODULES= devel/cmake
BUILD_DEPENDS= devel/bison \
devel/fmt
BUILD_DEPENDS= devel/bison
LIB_DEPENDS-main= ${LIB_DEPENDS}
RUN_DEPENDS-server= ${BASE_PKGPATH},-main>=10.9v1,<10.10v1 \
databases/p5-DBD-MariaDB
RUN_DEPENDS-server= ${BASE_PKGPATH},-main>=11.4v1,<11.5v1 \
databases/p5-DBD-MariaDB \
misc/findutils \
sysutils/coreutils
LIB_DEPENDS-server= ${LIB_DEPENDS} \
archivers/bzip2 \
archivers/lz4 \
@ -54,7 +58,7 @@ LIB_DEPENDS-server= ${LIB_DEPENDS} \
devel/pcre2 \
net/curl \
textproc/libxml
RUN_DEPENDS-tests= ${BASE_PKGPATH},-main>=10.9v1,<10.10v1
RUN_DEPENDS-tests= ${BASE_PKGPATH},-main>=11.4v1,<11.5v1
LIB_DEPENDS-tests= ${LIB_DEPENDS} \
devel/pcre2
@ -78,6 +82,7 @@ CONFIGURE_ARGS+=-DCMAKE_INSTALL_PREFIX="${PREFIX}" \
-DCOMPILATION_COMMENT='SecBSD port: ${FULLPKGNAME-server}' \
-DPLUGIN_OQGRAPH=NO \
-DWITH_EXTERNAL_ZLIB=On \
-DWITH_LIBFMT=bundled \
-DWITH_PCRE=system \
-DWITH_SSL=system \
-DWITH_WSREP=On \
@ -127,6 +132,8 @@ PKG_ARGS+= -Drocksdb=0
.endif
pre-configure:
mkdir -p ${WRKBUILD}/extra/libfmt/src
cp -f ${DISTDIR}/fmt-11.0.2.zip ${WRKBUILD}/extra/libfmt/src
@${SUBST_CMD} ${WRKSRC}/cmake/mysql_version.cmake \
${WRKSRC}/libmariadb/mariadb_config/mariadb_config.c.in \
${WRKSRC}/scripts/mysql_config.sh

View file

@ -1,2 +1,4 @@
SHA256 (mariadb-10.9.8.tar.gz) = /Nxvc4gkd8IDEOeVoC90blSTSqeos2iQC9ReeKXa9u0=
SIZE (mariadb-10.9.8.tar.gz) = 99099072
SHA256 (fmt-11.0.2.zip) = QPxYvrzzjHWeEae9j9wWNQfSQj71BYu6fyYoDFucVGU=
SHA256 (mariadb-11.4.4.tar.gz) = lvvS5uk/t+izc+6nXYW2/qV8DhEaAgkMu+/tUlmdx3s=
SIZE (fmt-11.0.2.zip) = 1422604
SIZE (mariadb-11.4.4.tar.gz) = 111017581

View file

@ -1,7 +1,7 @@
Index: cmake/install_macros.cmake
--- cmake/install_macros.cmake.orig
+++ cmake/install_macros.cmake
@@ -175,6 +175,36 @@ IF(UNIX)
@@ -157,6 +157,36 @@ IF(UNIX)
ENDIF()
ENDMACRO()

View file

@ -1,21 +0,0 @@
MDEV-31963 cmake: fix libfmt usage
`fmt::detail::make_arg` does not accept temporaries, so the code snippet
checking system libfmt needs to be adjusted.
f4cec369a392c8a6056207012992ad4a5639965a
Index: cmake/libfmt.cmake
--- cmake/libfmt.cmake.orig
+++ cmake/libfmt.cmake
@@ -33,8 +33,9 @@ MACRO (CHECK_LIBFMT)
#include <fmt/format-inl.h>
#include <iostream>
int main() {
+ int answer= 42;
fmt::format_args::format_arg arg=
- fmt::detail::make_arg<fmt::format_context>(42);
+ fmt::detail::make_arg<fmt::format_context>(answer);
std::cout << fmt::vformat(\"The answer is {}.\",
fmt::format_args(&arg, 1));
}" HAVE_SYSTEM_LIBFMT)

View file

@ -1,12 +1,12 @@
Index: extra/mariabackup/xtrabackup.cc
--- extra/mariabackup/xtrabackup.cc.orig
+++ extra/mariabackup/xtrabackup.cc
@@ -7144,6 +7144,8 @@ static int get_exepath(char *buf, size_t size, const c
if (sysctl(mib, 4, buf, &size, NULL, 0) == 0) {
return 0;
@@ -1061,6 +1061,8 @@ static std::string filename_to_spacename(const void *f
if (f[i] == '\\')
f[i] = '/';
}
+#elif defined(__OpenBSD__)
+ return 0;
#endif
return my_realpath(buf, argv0, 0);
/* Remove extension, if exists */

View file

@ -1,7 +1,7 @@
Index: libmariadb/libmariadb/CMakeLists.txt
--- libmariadb/libmariadb/CMakeLists.txt.orig
+++ libmariadb/libmariadb/CMakeLists.txt
@@ -481,15 +481,6 @@ INCLUDE(${CC_SOURCE_DIR}/cmake/symlink.cmake)
@@ -487,15 +487,6 @@ INCLUDE(${CC_SOURCE_DIR}/cmake/symlink.cmake)
# of the config program. To make sure these programs can
# use mariadb client library we provide libmysql symlinks

View file

@ -1,7 +1,7 @@
Index: scripts/mysql_install_db.sh
--- scripts/mysql_install_db.sh.orig
+++ scripts/mysql_install_db.sh
@@ -30,8 +30,8 @@ args=""
@@ -29,8 +29,8 @@ args=""
defaults=""
defaults_group_suffix=""
mysqld_opt=""
@ -10,43 +10,9 @@ Index: scripts/mysql_install_db.sh
+user="_mysql"
+group="_mysql"
silent_startup="--silent-startup"
log_error=""
force=0
@@ -341,7 +341,6 @@ then
srcpkgdatadir="$srcdir/scripts"
buildpkgdatadir="$builddir/scripts"
plugindir="$builddir/plugin/auth_socket"
- pamtooldir="$builddir/plugin/auth_pam"
elif test -n "$basedir"
then
bindir="$basedir/bin" # only used in the help text
@@ -370,8 +369,7 @@ then
cannot_find_file fill_help_tables.sql @pkgdata_locations@
exit 1
fi
- plugindir=`find_in_dirs --dir auth_pam.so $basedir/lib*/plugin $basedir/lib*/mysql/plugin $basedir/lib/*/mariadb19/plugin`
- pamtooldir=$plugindir
+ plugindir=`find_in_dirs --dir auth_ed25519.so $basedir/lib*/plugin $basedir/lib*/mysql/plugin $basedir/lib/*/mariadb19/plugin`
# relative from where the script was run for a relocatable install
elif test -n "$dirname0" -a -x "$rel_mysqld" -a ! "$rel_mysqld" -ef "@sbindir@/mariadbd"
then
@@ -382,7 +380,6 @@ then
srcpkgdatadir="$basedir/@INSTALL_MYSQLSHAREDIR@"
buildpkgdatadir="$basedir/@INSTALL_MYSQLSHAREDIR@"
plugindir="$basedir/@INSTALL_PLUGINDIR@"
- pamtooldir=$plugindir
else
basedir="@prefix@"
bindir="@bindir@"
@@ -391,7 +388,6 @@ else
srcpkgdatadir="@pkgdatadir@"
buildpkgdatadir="@pkgdatadir@"
plugindir="@pkgplugindir@"
- pamtooldir="@pkgplugindir@"
fi
# Set up paths to SQL scripts required for bootstrap
@@ -490,13 +486,13 @@ do
@@ -482,13 +482,13 @@ do
then
if test -z "$group"
then
@ -63,33 +29,7 @@ Index: scripts/mysql_install_db.sh
echo "user. Check that you have the necessary permissions and try again."
exit 1
fi
@@ -505,25 +501,6 @@ done
if test -n "$user"
then
- if test -z "$srcdir" -a "$in_rpm" -eq 0
- then
- chown 0 "$pamtooldir/auth_pam_tool_dir/auth_pam_tool" && \
- chmod 04755 "$pamtooldir/auth_pam_tool_dir/auth_pam_tool"
- if test $? -ne 0
- then
- echo "Couldn't set an owner to '$pamtooldir/auth_pam_tool_dir/auth_pam_tool'."
- echo "It must be root, the PAM authentication plugin doesn't work otherwise.."
- echo
- fi
- chown $user "$pamtooldir/auth_pam_tool_dir" && \
- chmod 0700 "$pamtooldir/auth_pam_tool_dir"
- if test $? -ne 0
- then
- echo "Cannot change ownership of the '$pamtooldir/auth_pam_tool_dir' directory"
- echo "to the '$user' user. Check that you have the necessary permissions and try again."
- echo
- fi
- fi
args="$args --user=$user"
fi
@@ -641,10 +618,6 @@ fi
@@ -652,10 +652,6 @@ fi
# the screen.
if test "$cross_bootstrap" -eq 0 && test -z "$srcdir"
then
@ -100,13 +40,13 @@ Index: scripts/mysql_install_db.sh
if test "$auth_root_authentication_method" = normal
then
echo
@@ -676,10 +649,7 @@ then
@@ -687,10 +683,7 @@ then
then
echo
echo "You can start the MariaDB daemon with:"
- echo "cd '$basedir' ; $bindir/mariadb-safe --datadir='$ldata'"
- echo "cd '$basedir' ; $bindir/mariadbd-safe --datadir='$ldata'"
- echo
- echo "You can test the MariaDB daemon with mysql-test-run.pl"
- echo "You can test the MariaDB daemon with mariadb-test-run.pl"
- echo "cd '$basedir/@INSTALL_MYSQLTESTDIR@' ; perl mariadb-test-run.pl"
+ echo "/etc/rc.d/mysqld start"
fi

View file

@ -12,7 +12,7 @@ Index: scripts/mysqld_safe.sh
pid_file=
err_log=
err_log_base=
@@ -734,7 +734,7 @@ then
@@ -740,7 +740,7 @@ then
[ "$user" ] && chown $user $mysql_unix_port_dir
[ "$group" ] && chgrp $group $mysql_unix_port_dir
fi

View file

@ -1,56 +1,82 @@
Index: scripts/wsrep_sst_common.sh
--- scripts/wsrep_sst_common.sh.orig
+++ scripts/wsrep_sst_common.sh
@@ -23,6 +23,11 @@ trap 'exit 3' INT QUIT TERM
# Setting the path for some utilities on CentOS
export PATH="$PATH:/usr/sbin:/usr/bin:/sbin:/bin"
@@ -79,6 +79,16 @@ wsrep_log_info()
wsrep_log "[INFO] $*"
}
+find()
+{
+ gfind "$@"
+}
+
+du()
+{
+ gdu "$@"
+}
+
trim_string()
{
if [ -n "$BASH_VERSION" ]; then
@@ -1166,9 +1171,9 @@ is_local_ip()
# the domain name check:
if [ "${2:-0}" -eq 0 ]; then
# We consider all the names of a given host to be local addresses:
- [ "$1" = "$(hostname -s)" -o \
- "$1" = "$(hostname -f)" -o \
- "$1" = "$(hostname -d)" ] && return 0
+ [ "$1" = "$(hostname -s 2>/dev/null)" -o \
+ "$1" = "$(hostname -f 2>/dev/null)" -o \
+ "$1" = "$(hostname -d 2>/dev/null)" ] && return 0
fi
# If the address contains anything other than digits
# and separators, it is not a local address:
@@ -1199,14 +1204,17 @@ check_sockets_utils()
@@ -1212,6 +1222,7 @@ check_sockets_utils()
lsof_available=0
sockstat_available=0
ss_available=0
+ fstat_available=0
[ -n "$(commandex lsof)" ] && lsof_available=1
[ -n "$(commandex sockstat)" ] && sockstat_available=1
[ -n "$(commandex ss)" ] && ss_available=1
+ [ -n "$(commandex fstat)" ] && fstat_available=1
if [ $lsof_available -eq 0 -a \
$sockstat_available -eq 0 -a \
- $ss_available -eq 0 ]
+ $ss_available -eq 0 -a \
+ $fstat_available -eq 0 ]
then
wsrep_log_error "Neither lsof, nor sockstat or ss tool was found in" \
"the PATH. Make sure you have it installed."
@@ -1249,6 +1257,8 @@ check_port()
elif [ $ss_available -ne 0 ]; then
ss -nlpH "( sport = :$port )" 2>/dev/null | \
grep -q -E "users:\\(.*\\(\"($utils)[^[:space:]]*\"[^)]*,pid=$pid(,[^)]*)?\\)" && rc=0
+ elif [ $fstat_available -ne 0 ]; then
+ fstat -n 2>/dev/null | grep -q -E ".*$pid.*:$port\$" && rc=0
socket_utility="$(commandex ss)"
if [ -n "$socket_utility" ]; then
@@ -1236,23 +1247,30 @@ check_sockets_utils()
sockstat_opts='-46lq -P tcp -p'
fi
else
wsrep_log_error "Unknown sockets utility"
exit 2 # ENOENT
- socket_utility="$(commandex lsof)"
+ socket_utility="$(commandex fstat)"
if [ -n "$socket_utility" ]; then
- socket_uname='lsof'
- lsof_available=1
- lsof_opts='-Pnl'
- # Let's check that lsof has an option to bypass blocking:
- if $socket_utility -h 2>&1 | grep -qw -F -- '-b'; then
- lsof_available=2
- lsof_opts="$lsof_opts -b -w"
+ socket_uname='fstat'
+ fstat_available=1
+ fstat_opts='-n'
+ else
+ socket_utility="$(commandex lsof)"
+ if [ -n "$socket_utility" ]; then
+ socket_uname='lsof'
+ lsof_available=1
+ lsof_opts='-Pnl'
+ # Let's check that lsof has an option to bypass blocking:
+ if $socket_utility -h 2>&1 | grep -qw -F -- '-b'; then
+ lsof_available=2
+ lsof_opts="$lsof_opts -b -w"
+ else
+ lsof_opts="$lsof_opts -S 10"
+ fi
else
- lsof_opts="$lsof_opts -S 10"
+ wsrep_log_error "Neither lsof, nor sockstat, nor ss, nor fstat tool" \
+ "were found in the path. Make sure you have" \
+ "at least one of them installed."
+ exit 2 # ENOENT
fi
- else
- wsrep_log_error "Neither lsof, nor sockstat, nor ss tool" \
- "were found in the path. Make sure you have" \
- "at least one of them installed."
- exit 2 # ENOENT
fi
fi
fi
@@ -1302,6 +1320,8 @@ check_port()
$socket_utility $sockstat_opts "$port" 2>/dev/null | \
grep -q -E "^[^[:space:]]+[[:space:]]+($utils)[^[:space:]]*[[:space:]]+$pid([[:space:]].+)?[[:space:]]LISTEN([[:space:]]|\$)" && rc=0
fi
+ elif [ $fstat_available -ne 0 ]; then
+ $socket_utility $fstat_opts 2>/dev/null | grep -q -E ".*$pid.*:$port\$" && rc=0
elif [ $lsof_available -ne 0 ]; then
$socket_utility $lsof_opts -i ":$port" 2>/dev/null | \
grep -q -E "^($utils)[^[:space:]]*[[:space:]]+$pid([[:space:]].+)?[[:space:]]\\(LISTEN\\)([[:space:]]|\$)" && rc=0

View file

@ -1,7 +1,7 @@
Index: scripts/wsrep_sst_mariabackup.sh
--- scripts/wsrep_sst_mariabackup.sh.orig
+++ scripts/wsrep_sst_mariabackup.sh
@@ -101,6 +101,12 @@ if [ -z "$BACKUP_BIN" ]; then
@@ -33,6 +33,18 @@ if [ -z "$BACKUP_BIN" ]; then
exit 42
fi
@ -11,33 +11,12 @@ Index: scripts/wsrep_sst_mariabackup.sh
+ exit 42
+fi
+
DATA="$WSREP_SST_OPT_DATA"
INFO_FILE='xtrabackup_galera_info'
IST_FILE='xtrabackup_ist'
@@ -441,7 +447,7 @@ get_footprint()
cd "$DATA_DIR"
local payload_data=$(find . \
-regex '.*undo[0-9]+$\|.*\.ibd$\|.*\.MYI$\|.*\.MYD$\|.*ibdata1$' \
- -type f -print0 | du --files0-from=- --block-size=1 -c -s | \
+ -type f -print0 | xargs -0 du -c -s | \
awk 'END { print $1 }')
local payload_undo=0
if [ -n "$ib_undo_dir" -a "$ib_undo_dir" != '.' -a \
@@ -449,7 +455,7 @@ get_footprint()
then
cd "$ib_undo_dir"
payload_undo=$(find . -regex '.*undo[0-9]+$' -type f -print0 | \
- du --files0-from=- --block-size=1 -c -s | awk 'END { print $1 }')
+ xargs -0 du -c -s | awk 'END { print $1 }')
fi
cd "$OLD_PWD"
+GDU_BIN=$(commandex 'gdu')
+if [ -z "$GDU_BIN" ]; then
+ wsrep_log_error 'gdu binary not found in path'
+ exit 42
+fi
+
BACKUP_PID=""
@@ -798,7 +804,7 @@ recv_joiner()
local ltcmd="$tcmd"
if [ $tmt -gt 0 ]; then
if [ -n "$(commandex timeout)" ]; then
- if timeout --help | grep -qw -F -- '-k'; then
+ if timeout --help 2>/dev/null | grep -qw -F -- '-k'; then
ltcmd="timeout -k $(( tmt+10 )) $tmt $tcmd"
else
ltcmd="timeout -s9 $tmt $tcmd"
INFO_FILE='mariadb_backup_galera_info'

View file

@ -1,40 +1,22 @@
Index: scripts/wsrep_sst_rsync.sh
--- scripts/wsrep_sst_rsync.sh.orig
+++ scripts/wsrep_sst_rsync.sh
@@ -117,9 +117,14 @@ check_pid_and_port()
@@ -127,9 +127,15 @@ check_pid_and_port()
fi
port_info=$(sockstat "$opts" "$port" 2>/dev/null | \
grep -E '[[:space:]]LISTEN' | grep -o -E "$filter")
- else
+ elif [ $ss_available -ne 0 ]; then
port_info=$(ss -nlpH "( sport = :$port )" 2>/dev/null | \
grep -F 'users:(' | grep -o -E "$filter")
+ elif [ $fstat_available -ne 0 ]; then
+ port_info=$(fstat -n 2>/dev/null | grep -E "[[:space:]](\\*|\\[?::\\]?):$port\$")
+ else
+ wsrep_log_error "Unknown sockets utility"
+ exit 2 # ENOENT
fi
echo "$port_info" | \
grep -q -E "[[:space:]](\\*|\\[?::\\]?):$port\$" && busy=1
@@ -474,9 +479,9 @@ EOF
# Preparing binlog files for transfer:
wsrep_log_info "Preparing binlog files for transfer:"
tar_type=0
- if tar --help | grep -qw -F -- '--transform'; then
+ if tar --help 2>/dev/null | grep -qw -F -- '--transform'; then
tar_type=1
- elif tar --version | grep -qw -E '^bsdtar'; then
+ elif tar --version 2>/dev/null | grep -qw -E '^bsdtar'; then
tar_type=2
fi
if [ $tar_type -eq 2 ]; then
@@ -974,7 +979,7 @@ EOF
fi
# Extracting binlog files:
wsrep_log_info "Extracting binlog files:"
- if tar --version | grep -qw -E '^bsdtar'; then
+ if tar --version 2>/dev/null | grep -qw -E '^bsdtar'; then
tar -tf "$BINLOG_TAR_FILE" > "$tmpfile" && \
tar -xvf "$BINLOG_TAR_FILE" > /dev/null || RC=$?
final='$'
else
- port_info=$($socket_utility $lsof_opts -i ":$port" 2>/dev/null | \
- grep -w -F '(LISTEN)' || :)
- final='[[:space:]]'
+ if [ $fstat_available -ne 0 ]; then
+ port_info=$($socket_utility $fstat_opts 2>/dev/null | \
+ grep -E "[[:space:]](\\*|\\[?::\\]?):$port\$")
+ final=''
+ else
+ port_info=$($socket_utility $lsof_opts -i ":$port" 2>/dev/null | \
+ grep -w -F '(LISTEN)' || :)
+ final='[[:space:]]'
+ fi
fi
local busy=0

View file

@ -1,116 +0,0 @@
- [PATCH] MDEV-31963 Fix libfmt usage in SFORMAT
`fmt::detail::make_arg` does not accept temporaries. Make it happy by
storing the format arg values in a temporary array first.
cd5808eb8da13c5626d4bdeb452cef6ada29cb1d
- MDEV-34206 compile failure: fmt use incompatible with libfmt-10.2.[2]+
Upstream libfmt commit fmtlib/fmt@d707292
now requires the format function to be const.
Adjust the function prototype so it is const and can compile.
4375245d5d9f01cabb6e3fd6c637535e724eae38
Index: sql/item_strfunc.cc
--- sql/item_strfunc.cc.orig
+++ sql/item_strfunc.cc
@@ -1367,7 +1367,7 @@ bool Item_func_sformat::fix_length_and_dec(THD *thd)
namespace fmt {
template <> struct formatter<String>: formatter<string_view> {
template <typename FormatContext>
- auto format(String c, FormatContext& ctx) -> decltype(ctx.out()) {
+ auto format(String c, FormatContext& ctx) const -> decltype(ctx.out()) {
string_view name = { c.ptr(), c.length() };
return formatter<string_view>::format(name, ctx);
};
@@ -1382,11 +1382,24 @@ namespace fmt {
*/
String *Item_func_sformat::val_str(String *res)
{
+ /*
+ A union that stores a numeric format arg value.
+ fmt::detail::make_arg does not accept temporaries, so all of its numeric
+ args are temporarily stored in the fmt_args array.
+ See: https://github.com/fmtlib/fmt/issues/3596
+ */
+ union Format_arg_store {
+ longlong val_int;
+ float val_float;
+ double val_double;
+ };
+
DBUG_ASSERT(fixed());
- using ctx= fmt::format_context;
- String *fmt_arg= NULL;
- String *parg= NULL;
- fmt::format_args::format_arg *vargs= NULL;
+ using ctx= fmt::format_context;
+ String *fmt_arg= NULL;
+ String *parg= NULL;
+ fmt::format_args::format_arg *vargs= NULL;
+ Format_arg_store *fmt_args= NULL;
null_value= true;
if (!(fmt_arg= args[0]->val_str(res)))
@@ -1395,25 +1408,39 @@ String *Item_func_sformat::val_str(String *res)
if (!(vargs= new fmt::format_args::format_arg[arg_count - 1]))
return NULL;
+ if (!(fmt_args= new Format_arg_store[arg_count - 1]))
+ {
+ delete [] vargs;
+ return NULL;
+ }
+
/* Creates the array of arguments for vformat */
for (uint carg= 1; carg < arg_count; carg++)
{
switch (args[carg]->result_type())
{
case INT_RESULT:
- vargs[carg-1]= fmt::detail::make_arg<ctx>(args[carg]->val_int());
+ fmt_args[carg-1].val_int= args[carg]->val_int();
+ vargs[carg-1]= fmt::detail::make_arg<ctx>(fmt_args[carg-1].val_int);
break;
case DECIMAL_RESULT: // TODO
case REAL_RESULT:
if (args[carg]->field_type() == MYSQL_TYPE_FLOAT)
- vargs[carg-1]= fmt::detail::make_arg<ctx>((float)args[carg]->val_real());
+ {
+ fmt_args[carg-1].val_float= (float)args[carg]->val_real();
+ vargs[carg-1]= fmt::detail::make_arg<ctx>(fmt_args[carg-1].val_float);
+ }
else
- vargs[carg-1]= fmt::detail::make_arg<ctx>(args[carg]->val_real());
+ {
+ fmt_args[carg-1].val_double= args[carg]->val_real();
+ vargs[carg-1]= fmt::detail::make_arg<ctx>(fmt_args[carg-1].val_double);
+ }
break;
case STRING_RESULT:
if (!(parg= args[carg]->val_str(&val_arg[carg-1])))
{
delete [] vargs;
+ delete [] fmt_args;
return NULL;
}
vargs[carg-1]= fmt::detail::make_arg<ctx>(*parg);
@@ -1423,6 +1450,7 @@ String *Item_func_sformat::val_str(String *res)
default:
DBUG_ASSERT(0);
delete [] vargs;
+ delete [] fmt_args;
return NULL;
}
}
@@ -1446,6 +1474,7 @@ String *Item_func_sformat::val_str(String *res)
null_value= true;
}
delete [] vargs;
+ delete [] fmt_args;
return null_value ? NULL : res;
}

View file

@ -1,98 +0,0 @@
Unbreak build with libxml >=2.12.0
Index: storage/connect/libdoc.cpp
--- storage/connect/libdoc.cpp.orig
+++ storage/connect/libdoc.cpp
@@ -93,7 +93,7 @@ class LIBXMLDOC : public XMLDOCUMENT {
xmlXPathContextPtr Ctxp;
xmlXPathObjectPtr Xop;
xmlXPathObjectPtr NlXop;
- xmlErrorPtr Xerr;
+ const xmlError * Xerr;
char *Buf; // Temporary
bool Nofreelist;
}; // end of class LIBXMLDOC
@@ -366,7 +366,7 @@ bool LIBXMLDOC::ParseFile(PGLOBAL g, char *fn)
return false;
} else if ((Xerr = xmlGetLastError()))
- xmlResetError(Xerr);
+ xmlResetLastError();
return true;
} // end of ParseFile
@@ -505,9 +505,9 @@ int LIBXMLDOC::DumpDoc(PGLOBAL g, char *ofn)
#if 1
// This function does not crash (
if (xmlSaveFormatFileEnc((const char *)ofn, Docp, Encoding, 0) < 0) {
- xmlErrorPtr err = xmlGetLastError();
+ const xmlError * err = xmlGetLastError();
strcpy(g->Message, (err) ? err->message : "Error saving XML doc");
- xmlResetError(Xerr);
+ xmlResetLastError();
rc = -1;
} // endif Save
// rc = xmlDocDump(of, Docp);
@@ -547,7 +547,7 @@ void LIBXMLDOC::CloseDoc(PGLOBAL g, PFBLOCK xp)
xmlXPathFreeNodeSet(Nlist);
if ((Xerr = xmlGetLastError()))
- xmlResetError(Xerr);
+ xmlResetLastError();
Nlist = NULL;
} // endif Nlist
@@ -556,7 +556,7 @@ void LIBXMLDOC::CloseDoc(PGLOBAL g, PFBLOCK xp)
xmlXPathFreeObject(Xop);
if ((Xerr = xmlGetLastError()))
- xmlResetError(Xerr);
+ xmlResetLastError();
Xop = NULL;
} // endif Xop
@@ -565,7 +565,7 @@ void LIBXMLDOC::CloseDoc(PGLOBAL g, PFBLOCK xp)
xmlXPathFreeObject(NlXop);
if ((Xerr = xmlGetLastError()))
- xmlResetError(Xerr);
+ xmlResetLastError();
NlXop = NULL;
} // endif NlXop
@@ -574,7 +574,7 @@ void LIBXMLDOC::CloseDoc(PGLOBAL g, PFBLOCK xp)
xmlXPathFreeContext(Ctxp);
if ((Xerr = xmlGetLastError()))
- xmlResetError(Xerr);
+ xmlResetLastError();
Ctxp = NULL;
} // endif Ctxp
@@ -651,7 +651,7 @@ xmlNodeSetPtr LIBXMLDOC::GetNodeList(PGLOBAL g, xmlNod
if ((Xerr = xmlGetLastError())) {
strcpy(g->Message, Xerr->message);
- xmlResetError(Xerr);
+ xmlResetLastError();
return NULL;
} // endif Xerr
@@ -1079,7 +1079,7 @@ void XML2NODE::AddText(PGLOBAL g, PCSZ txtp)
/******************************************************************/
void XML2NODE::DeleteChild(PGLOBAL g, PXNODE dnp)
{
- xmlErrorPtr xerr;
+ const xmlError * xerr;
if (trace(1))
htrc("DeleteChild: node=%p\n", dnp);
@@ -1122,7 +1122,7 @@ err:
if (trace(1))
htrc("DeleteChild: errmsg=%-.256s\n", xerr->message);
- xmlResetError(xerr);
+ xmlResetLastError();
} // end of DeleteChild
/* -------------------- class XML2NODELIST ---------------------- */

View file

@ -1,7 +1,24 @@
Index: storage/rocksdb/CMakeLists.txt
--- storage/rocksdb/CMakeLists.txt.orig
+++ storage/rocksdb/CMakeLists.txt
@@ -58,15 +58,6 @@ IF(MSVC_ARM64)
@@ -32,6 +32,16 @@ IF(HAVE_SCHED_GETCPU)
ADD_DEFINITIONS(-DHAVE_SCHED_GETCPU=1 -DROCKSDB_SCHED_GETCPU_PRESENT)
ENDIF()
+CHECK_FUNCTION_EXISTS(getauxval "sys/auvx.h" HAVE_AUXV_GETAUXVAL)
+if(HAVE_AUXV_GETAUXVAL)
+ add_definitions(-DROCKSDB_AUXV_GETAUXVAL_PRESENT)
+endif()
+
+CHECK_FUNCTION_EXISTS(elf_aux_info "sys/auxv.h" HAVE_AUXV_ELF_AUX_INFO)
+if(HAVE_AUXV_ELF_AUX_INFO)
+ add_definitions(-DROCKSDB_AUXV_ELF_AUX_INFO_PRESENT)
+endif()
+
IF(WITH_VALGRIND)
ADD_DEFINITIONS(-DROCKSDB_VALGRIND_RUN=1)
ENDIF()
@@ -64,15 +74,6 @@ IF(MSVC_ARM64)
SKIP_ROCKSDB_PLUGIN("Windows ARM64 not supported")
ENDIF()
@ -17,16 +34,16 @@ Index: storage/rocksdb/CMakeLists.txt
# This plugin needs recent C++ compilers (it is using C++11 features)
# Skip build for the old compilers
SET(CXX11_FLAGS)
@@ -198,7 +189,7 @@ ADD_DEPENDENCIES(rocksdb_aux_lib GenError)
@@ -206,7 +207,7 @@ ADD_DEPENDENCIES(rocksdb_aux_lib GenError)
# MARIAROCKS-TODO: how to properly depend on -lrt ?
TARGET_LINK_LIBRARIES(rocksdb_aux_lib rocksdblib ${ZLIB_LIBRARY})
TARGET_LINK_LIBRARIES(rocksdb_aux_lib rocksdblib ${ZLIB_LIBRARIES})
-if (UNIX AND NOT APPLE AND NOT CMAKE_SYSTEM_NAME STREQUAL "OpenBSD")
+if (UNIX AND NOT APPLE AND NOT CMAKE_SYSTEM_NAME STREQUAL "SecBSD")
TARGET_LINK_LIBRARIES(rocksdb_aux_lib -lrt)
endif()
TARGET_LINK_LIBRARIES(rocksdb_aux_lib ${ATOMIC_EXTRA_LIBS})
@@ -249,7 +240,7 @@ ENDIF()
@@ -257,7 +258,7 @@ ENDIF()
# ADD_SUBDIRECTORY(unittest)
#ENDIF()

View file

@ -6,15 +6,15 @@
https://github.com/facebook/rocksdb/commit/ee4bd4780b321ddb5f92a0f4eb956f2a2ebd60dc
- Adding ARM AT_HWCAP support for FreeBSD
https://github.com/facebook/rocksdb/commit/93c6c18cf9731f47b386dd445dc13363423c507e
- Add OpenBSD/arm64 support for detection of CRC32 and PMULL
https://github.com/facebook/rocksdb/commit/4a6906e28ce058f6cea085b394a1adbd19aa468e
- Add elf_aux_info() support for OpenBSD
https://github.com/facebook/rocksdb/pull/12967
https://jira.mariadb.org/browse/MDEV-29875
Index: storage/rocksdb/rocksdb/util/crc32c_arm64.cc
--- storage/rocksdb/rocksdb/util/crc32c_arm64.cc.orig
+++ storage/rocksdb/rocksdb/util/crc32c_arm64.cc
@@ -5,13 +5,26 @@
@@ -5,13 +5,21 @@
#include "util/crc32c_arm64.h"
@ -24,25 +24,20 @@ Index: storage/rocksdb/rocksdb/util/crc32c_arm64.cc
+#if defined(__linux__)
#include <asm/hwcap.h>
+#endif
+#ifdef ROCKSDB_AUXV_GETAUXVAL_PRESENT
+#if defined(ROCKSDB_AUXV_GETAUXVAL_PRESENT) || \
+ defined(ROCKSDB_AUXV_ELF_AUX_INFO_PRESENT)
#include <sys/auxv.h>
+#endif
#ifndef HWCAP_CRC32
#define HWCAP_CRC32 (1 << 7)
#endif
+#ifndef HWCAP_PMULL
+#define HWCAP_PMULL (1 << 4)
+#endif
+#if defined(__OpenBSD__)
+#include <sys/types.h>
+#include <sys/sysctl.h>
+#include <machine/cpu.h>
+#include <machine/armreg.h>
+#endif
#ifdef HAVE_ARM64_CRYPTO
/* unfolding to compute 8 * 3 = 24 bytes parallelly */
@@ -33,18 +46,72 @@
@@ -33,18 +41,52 @@
} while (0)
#endif
@ -50,25 +45,15 @@ Index: storage/rocksdb/rocksdb/util/crc32c_arm64.cc
+
uint32_t crc32c_runtime_check(void) {
- uint64_t auxv = getauxval(AT_HWCAP);
+#if defined(ROCKSDB_AUXV_GETAUXVAL_PRESENT) || defined(__FreeBSD__)
+#if defined(ROCKSDB_AUXV_GETAUXVAL_PRESENT) || \
+ defined(ROCKSDB_AUXV_ELF_AUX_INFO_PRESENT)
+ uint64_t auxv = 0;
+#if defined(ROCKSDB_AUXV_GETAUXVAL_PRESENT)
+ auxv = getauxval(AT_HWCAP);
+#elif defined(__FreeBSD__)
+#elif defined(ROCKSDB_AUXV_ELF_AUX_INFO_PRESENT)
+ elf_aux_info(AT_HWCAP, &auxv, sizeof(auxv));
+#endif
return (auxv & HWCAP_CRC32) != 0;
+#elif defined(__OpenBSD__)
+ int r = 0;
+ const int isar0_mib[] = { CTL_MACHDEP, CPU_ID_AA64ISAR0 };
+ uint64_t isar0;
+ size_t len = sizeof(isar0);
+
+ if (sysctl(isar0_mib, 2, &isar0, &len, NULL, 0) != -1) {
+ if (ID_AA64ISAR0_CRC32(isar0) >= ID_AA64ISAR0_CRC32_BASE)
+ r = 1;
+ }
+ return r;
+#else
+ return 0;
+#endif
@ -77,25 +62,15 @@ Index: storage/rocksdb/rocksdb/util/crc32c_arm64.cc
-uint32_t crc32c_arm64(uint32_t crc, unsigned char const *data,
- unsigned len) {
+bool crc32c_pmull_runtime_check(void) {
+#if defined(ROCKSDB_AUXV_GETAUXVAL_PRESENT) || defined(__FreeBSD__)
+#if defined(ROCKSDB_AUXV_GETAUXVAL_PRESENT) || \
+ defined(ROCKSDB_AUXV_ELF_AUX_INFO_PRESENT)
+ uint64_t auxv = 0;
+#if defined(ROCKSDB_AUXV_GETAUXVAL_PRESENT)
+ auxv = getauxval(AT_HWCAP);
+#elif defined(__FreeBSD__)
+#elif defined(ROCKSDB_AUXV_ELF_AUX_INFO_PRESENT)
+ elf_aux_info(AT_HWCAP, &auxv, sizeof(auxv));
+#endif
+ return (auxv & HWCAP_PMULL) != 0;
+#elif defined(__OpenBSD__)
+ bool r = false;
+ const int isar0_mib[] = { CTL_MACHDEP, CPU_ID_AA64ISAR0 };
+ uint64_t isar0;
+ size_t len = sizeof(isar0);
+
+ if (sysctl(isar0_mib, 2, &isar0, &len, NULL, 0) != -1) {
+ if (ID_AA64ISAR0_AES(isar0) >= ID_AA64ISAR0_AES_PMULL)
+ r = true;
+ }
+ return r;
+#else
+ return false;
+#endif
@ -118,7 +93,7 @@ Index: storage/rocksdb/rocksdb/util/crc32c_arm64.cc
#ifdef HAVE_ARM64_CRYPTO
/* Crc32c Parallel computation
* Algorithm comes from Intel whitepaper:
@@ -55,51 +122,53 @@ uint32_t crc32c_arm64(uint32_t crc, unsigned char cons
@@ -55,51 +97,53 @@ uint32_t crc32c_arm64(uint32_t crc, unsigned char cons
* One Block: 42(BLK_LENGTH) * 8(step length: crc32c_u64) bytes
*/
#define BLK_LENGTH 42

View file

@ -2,13 +2,27 @@
https://github.com/facebook/rocksdb/commit/29f7bbef995bdf83098963799c66af742e95373f
- Fix compilation on Apple Silicon
https://github.com/facebook/rocksdb/commit/ee4bd4780b321ddb5f92a0f4eb956f2a2ebd60dc
- Fix build on FreeBSD/powerpc64(le)
https://github.com/facebook/rocksdb/commit/66e54c59847e316bb78dce786d2206d500bf8a90
- Add elf_aux_info() support for OpenBSD
https://github.com/facebook/rocksdb/pull/12967
https://jira.mariadb.org/browse/MDEV-29875
Index: storage/rocksdb/rocksdb/util/crc32c.cc
--- storage/rocksdb/rocksdb/util/crc32c.cc.orig
+++ storage/rocksdb/rocksdb/util/crc32c.cc
@@ -39,6 +39,10 @@
@@ -35,10 +35,20 @@
#define AT_HWCAP2 26
#endif
+#elif __FreeBSD__ && ROCKSDB_AUXV_ELF_AUX_INFO_PRESENT
+#include <machine/cpu.h>
+#include <sys/auxv.h>
+#include <sys/elf_common.h>
+#elif __OpenBSD__ && ROCKSDB_AUXV_ELF_AUX_INFO_PRESENT
+#include <sys/auxv.h>
#endif /* __linux__ */
#endif
@ -19,7 +33,26 @@ Index: storage/rocksdb/rocksdb/util/crc32c.cc
namespace ROCKSDB_NAMESPACE {
namespace crc32c {
@@ -468,7 +472,7 @@ static bool isAltiVec() {
@@ -457,6 +467,18 @@ static int arch_ppc_probe(void) {
return arch_ppc_crc32;
}
+#elif __FreeBSD__ || __OpenBSD__
+static int arch_ppc_probe(void) {
+ unsigned long cpufeatures;
+ arch_ppc_crc32 = 0;
+
+#if defined(__powerpc64__) && defined(ROCKSDB_AUXV_ELF_AUX_INFO_PRESENT)
+ elf_aux_info(AT_HWCAP2, &cpufeatures, sizeof(cpufeatures));
+ if (cpufeatures & PPC_FEATURE2_HAS_VEC_CRYPTO) arch_ppc_crc32 = 1;
+#endif /* __powerpc64__ */
+
+ return arch_ppc_crc32;
+}
#endif // __linux__
static bool isAltiVec() {
@@ -468,7 +490,7 @@ static bool isAltiVec() {
}
#endif
@ -28,7 +61,7 @@ Index: storage/rocksdb/rocksdb/util/crc32c.cc
uint32_t ExtendARMImpl(uint32_t crc, const char *buf, size_t size) {
return crc32c_arm64(crc, (const unsigned char *)buf, size);
}
@@ -488,10 +492,11 @@ std::string IsFastCrc32Supported() {
@@ -488,10 +510,11 @@ std::string IsFastCrc32Supported() {
has_fast_crc = false;
arch = "PPC";
#endif
@ -41,7 +74,7 @@ Index: storage/rocksdb/rocksdb/util/crc32c.cc
} else {
has_fast_crc = false;
arch = "Arm64";
@@ -1220,8 +1225,9 @@ uint32_t crc32c_3way(uint32_t crc, const char* buf, si
@@ -1220,8 +1243,9 @@ uint32_t crc32c_3way(uint32_t crc, const char* buf, si
static inline Function Choose_Extend() {
#ifdef HAVE_POWER8
return isAltiVec() ? ExtendPPCImpl : ExtendImpl<Slow_CRC32>;

View file

@ -3,7 +3,7 @@ Adjust the pkg-config file path since the port puts the shared libs in a sub dir
Index: support-files/CMakeLists.txt
--- support-files/CMakeLists.txt.orig
+++ support-files/CMakeLists.txt
@@ -96,7 +96,7 @@ IF(UNIX AND NOT WITHOUT_SERVER)
@@ -109,7 +109,7 @@ IF(UNIX AND NOT WITHOUT_SERVER)
ENDIF()
CONFIGURE_FILE(mariadb.pc.in ${CMAKE_CURRENT_BINARY_DIR}/mariadb.pc @ONLY)

View file

@ -240,9 +240,7 @@ share/mysql-test/plugin/mroonga/mroonga/storage/r/create_table_index_normalizer_
share/mysql-test/plugin/mroonga/mroonga/storage/r/create_table_index_normalizer_no_utf8_charset_with_utf8_normalizer.result
share/mysql-test/plugin/mroonga/mroonga/storage/r/create_table_index_normalizer_none.result
share/mysql-test/plugin/mroonga/mroonga/storage/r/create_table_index_normalizer_parameter.result
share/mysql-test/plugin/mroonga/mroonga/storage/r/create_table_index_parser_comment.result
share/mysql-test/plugin/mroonga/mroonga/storage/r/create_table_index_parser_default.result
share/mysql-test/plugin/mroonga/mroonga/storage/r/create_table_index_parser_off.result
share/mysql-test/plugin/mroonga/mroonga/storage/r/create_table_index_token_filters_multiple_token_filters.result
share/mysql-test/plugin/mroonga/mroonga/storage/r/create_table_index_token_filters_one_token_filter.result
share/mysql-test/plugin/mroonga/mroonga/storage/r/create_table_index_token_filters_parameter.result
@ -842,9 +840,7 @@ share/mysql-test/plugin/mroonga/mroonga/storage/t/create_table_index_normalizer_
share/mysql-test/plugin/mroonga/mroonga/storage/t/create_table_index_normalizer_no_utf8_charset_with_utf8_normalizer.test
share/mysql-test/plugin/mroonga/mroonga/storage/t/create_table_index_normalizer_none.test
share/mysql-test/plugin/mroonga/mroonga/storage/t/create_table_index_normalizer_parameter.test
share/mysql-test/plugin/mroonga/mroonga/storage/t/create_table_index_parser_comment.test
share/mysql-test/plugin/mroonga/mroonga/storage/t/create_table_index_parser_default.test
share/mysql-test/plugin/mroonga/mroonga/storage/t/create_table_index_parser_off.test
share/mysql-test/plugin/mroonga/mroonga/storage/t/create_table_index_token_filters_multiple_token_filters.test
share/mysql-test/plugin/mroonga/mroonga/storage/t/create_table_index_token_filters_one_token_filter.test
share/mysql-test/plugin/mroonga/mroonga/storage/t/create_table_index_token_filters_parameter.test
@ -1318,7 +1314,6 @@ share/mysql-test/plugin/mroonga/mroonga/wrapper/r/create_table_index_flags_with_
share/mysql-test/plugin/mroonga/mroonga/wrapper/r/create_table_normalizer_comment.result
share/mysql-test/plugin/mroonga/mroonga/wrapper/r/create_table_normalizer_fulltext_index_bin.result
share/mysql-test/plugin/mroonga/mroonga/wrapper/r/create_table_normalizer_parameter.result
share/mysql-test/plugin/mroonga/mroonga/wrapper/r/create_table_parser_comment.result
share/mysql-test/plugin/mroonga/mroonga/wrapper/r/create_table_token_filters_index_multiple_token_filters.result
share/mysql-test/plugin/mroonga/mroonga/wrapper/r/create_table_token_filters_index_one_token_filter.result
share/mysql-test/plugin/mroonga/mroonga/wrapper/r/create_table_token_filters_index_parameter.result
@ -1449,7 +1444,6 @@ share/mysql-test/plugin/mroonga/mroonga/wrapper/t/create_table_index_flags_with_
share/mysql-test/plugin/mroonga/mroonga/wrapper/t/create_table_normalizer_comment.test
share/mysql-test/plugin/mroonga/mroonga/wrapper/t/create_table_normalizer_fulltext_index_bin.test
share/mysql-test/plugin/mroonga/mroonga/wrapper/t/create_table_normalizer_parameter.test
share/mysql-test/plugin/mroonga/mroonga/wrapper/t/create_table_parser_comment.test
share/mysql-test/plugin/mroonga/mroonga/wrapper/t/create_table_token_filters_index_multiple_token_filters.test
share/mysql-test/plugin/mroonga/mroonga/wrapper/t/create_table_token_filters_index_one_token_filter.test
share/mysql-test/plugin/mroonga/mroonga/wrapper/t/create_table_token_filters_index_parameter.test

View file

@ -1,6 +1,9 @@
@conflict mariadb-client-<11.4.3p0v1
@bin bin/mariadb-ldb
bin/myrocks_hotbackup
bin/mysql_ldb
@bin bin/sst_dump
@so lib/mysql/plugin/ha_rocksdb.so
@man man/man1/mariadb-ldb.1
@man man/man1/myrocks_hotbackup.1
@man man/man1/mysql_ldb.1

View file

@ -54,7 +54,6 @@ include/mysql/mysql/
include/mysql/mysql.h
include/mysql/mysql/client_plugin.h
include/mysql/mysql/plugin_auth.h
include/mysql/mysql/plugin_auth_common.h
include/mysql/mysql_com.h
include/mysql/mysql_version.h
include/mysql/mysqld_error.h
@ -84,7 +83,6 @@ lib/pkgconfig/mariadb.pc
@man man/man1/mariadb-find-rows.1
@man man/man1/mariadb-hotcopy.1
@man man/man1/mariadb-import.1
@man man/man1/mariadb-ldb.1
@man man/man1/mariadb-plugin.1
@man man/man1/mariadb-service-convert.1
@man man/man1/mariadb-setpermission.1
@ -100,7 +98,6 @@ lib/pkgconfig/mariadb.pc
@man man/man1/mysql_config.1
@man man/man1/mysql_embedded.1
@man man/man1/mysql_find_rows.1
@man man/man1/mysql_ldb.1
@man man/man1/mysql_waitpid.1
@man man/man1/mysqlaccess.1
@man man/man1/mysqladmin.1

View file

@ -125,6 +125,7 @@ include/mysql/server/mysql/service_md5.h
include/mysql/server/mysql/service_my_crypt.h
include/mysql/server/mysql/service_my_print_error.h
include/mysql/server/mysql/service_my_snprintf.h
include/mysql/server/mysql/service_print_check_msg.h
include/mysql/server/mysql/service_progress_report.h
include/mysql/server/mysql/service_sha1.h
include/mysql/server/mysql/service_sha2.h
@ -158,17 +159,21 @@ include/mysql/server/private/atomic/solaris.h
include/mysql/server/private/authors.h
include/mysql/server/private/backup.h
include/mysql/server/private/bounded_queue.h
include/mysql/server/private/char_buffer.h
include/mysql/server/private/charset_collations.h
include/mysql/server/private/client_settings.h
include/mysql/server/private/compat56.h
include/mysql/server/private/config.h
include/mysql/server/private/contributors.h
include/mysql/server/private/create_options.h
include/mysql/server/private/create_tmp_table.h
include/mysql/server/private/cset_narrowing.h
include/mysql/server/private/custom_conf.h
include/mysql/server/private/datadict.h
include/mysql/server/private/ddl_log.h
include/mysql/server/private/debug.h
include/mysql/server/private/debug_sync.h
include/mysql/server/private/deprecation.h
include/mysql/server/private/derived_handler.h
include/mysql/server/private/derror.h
include/mysql/server/private/des_key_file.h
@ -190,6 +195,7 @@ include/mysql/server/private/gcalc_tools.h
include/mysql/server/private/grant.h
include/mysql/server/private/group_by_handler.h
include/mysql/server/private/gstream.h
include/mysql/server/private/gtid_index.h
include/mysql/server/private/ha_handler_stats.h
include/mysql/server/private/ha_partition.h
include/mysql/server/private/ha_sequence.h
@ -216,18 +222,22 @@ include/mysql/server/private/item_timefunc.h
include/mysql/server/private/item_vers.h
include/mysql/server/private/item_windowfunc.h
include/mysql/server/private/item_xmlfunc.h
include/mysql/server/private/json_schema.h
include/mysql/server/private/json_schema_helper.h
include/mysql/server/private/json_table.h
include/mysql/server/private/key.h
include/mysql/server/private/keycaches.h
include/mysql/server/private/lex.h
include/mysql/server/private/lex_charset.h
include/mysql/server/private/lex_ident.h
include/mysql/server/private/lex_string.h
include/mysql/server/private/lex_symbol.h
include/mysql/server/private/lf.h
include/mysql/server/private/lock.h
include/mysql/server/private/log.h
include/mysql/server/private/log_cache.h
include/mysql/server/private/log_event.h
include/mysql/server/private/log_event_old.h
include/mysql/server/private/log_event_data_type.h
include/mysql/server/private/log_slow.h
include/mysql/server/private/maria.h
include/mysql/server/private/mariadb.h
@ -235,7 +245,6 @@ include/mysql/server/private/mdl.h
include/mysql/server/private/mem_root_array.h
include/mysql/server/private/message.h
include/mysql/server/private/multi_range_read.h
include/mysql/server/private/my_alarm.h
include/mysql/server/private/my_apc.h
include/mysql/server/private/my_atomic.h
include/mysql/server/private/my_atomic_wrapper.h
@ -261,6 +270,7 @@ include/mysql/server/private/my_service_manager.h
include/mysql/server/private/my_stack_alloc.h
include/mysql/server/private/my_stacktrace.h
include/mysql/server/private/my_time.h
include/mysql/server/private/my_tracker.h
include/mysql/server/private/my_tree.h
include/mysql/server/private/my_uctype.h
include/mysql/server/private/my_user.h
@ -274,9 +284,12 @@ include/mysql/server/private/mysqld_suffix.h
include/mysql/server/private/mysys_err.h
include/mysql/server/private/opt_histogram_json.h
include/mysql/server/private/opt_range.h
include/mysql/server/private/opt_rewrite_date_cmp.h
include/mysql/server/private/opt_subselect.h
include/mysql/server/private/opt_trace.h
include/mysql/server/private/opt_trace_context.h
include/mysql/server/private/optimizer_costs.h
include/mysql/server/private/optimizer_defaults.h
include/mysql/server/private/parse_file.h
include/mysql/server/private/partition_element.h
include/mysql/server/private/partition_info.h
@ -317,7 +330,6 @@ include/mysql/server/private/rpl_injector.h
include/mysql/server/private/rpl_mi.h
include/mysql/server/private/rpl_parallel.h
include/mysql/server/private/rpl_record.h
include/mysql/server/private/rpl_record_old.h
include/mysql/server/private/rpl_reporting.h
include/mysql/server/private/rpl_rli.h
include/mysql/server/private/rpl_tblmap.h
@ -332,11 +344,14 @@ include/mysql/server/private/semisync_slave.h
include/mysql/server/private/service_versions.h
include/mysql/server/private/session_tracker.h
include/mysql/server/private/set_var.h
include/mysql/server/private/simple_tokenizer.h
include/mysql/server/private/slave.h
include/mysql/server/private/socketpair.h
include/mysql/server/private/source_revision.h
include/mysql/server/private/sp.h
include/mysql/server/private/sp_cache.h
include/mysql/server/private/sp_head.h
include/mysql/server/private/sp_instr.h
include/mysql/server/private/sp_pcontext.h
include/mysql/server/private/sp_rcontext.h
include/mysql/server/private/span.h
@ -423,9 +438,11 @@ include/mysql/server/private/sql_type_int.h
include/mysql/server/private/sql_type_json.h
include/mysql/server/private/sql_type_real.h
include/mysql/server/private/sql_type_string.h
include/mysql/server/private/sql_type_timeofday.h
include/mysql/server/private/sql_udf.h
include/mysql/server/private/sql_union.h
include/mysql/server/private/sql_update.h
include/mysql/server/private/sql_used.h
include/mysql/server/private/sql_view.h
include/mysql/server/private/sql_window.h
include/mysql/server/private/ssl_compat.h
@ -435,7 +452,6 @@ include/mysql/server/private/sys_vars_shared.h
include/mysql/server/private/t_ctype.h
include/mysql/server/private/table.h
include/mysql/server/private/table_cache.h
include/mysql/server/private/thr_alarm.h
include/mysql/server/private/thr_lock.h
include/mysql/server/private/thr_malloc.h
include/mysql/server/private/thr_timer.h
@ -452,20 +468,22 @@ include/mysql/server/private/vers_string.h
include/mysql/server/private/violite.h
include/mysql/server/private/waiting_threads.h
include/mysql/server/private/welcome_copyright_notice.h
include/mysql/server/private/win_tzname_data.h
include/mysql/server/private/winservice.h
include/mysql/server/private/wqueue.h
include/mysql/server/private/wsrep.h
include/mysql/server/private/wsrep_allowlist_service.h
include/mysql/server/private/wsrep_applier.h
include/mysql/server/private/wsrep_binlog.h
include/mysql/server/private/wsrep_client_service.h
include/mysql/server/private/wsrep_client_state.h
include/mysql/server/private/wsrep_condition_variable.h
include/mysql/server/private/wsrep_event_service.h
include/mysql/server/private/wsrep_high_priority_service.h
include/mysql/server/private/wsrep_mutex.h
include/mysql/server/private/wsrep_mysqld.h
include/mysql/server/private/wsrep_mysqld_c.h
include/mysql/server/private/wsrep_on.h
include/mysql/server/private/wsrep_plugin.h
include/mysql/server/private/wsrep_priv.h
include/mysql/server/private/wsrep_schema.h
include/mysql/server/private/wsrep_server_service.h
@ -576,6 +594,7 @@ libexec/mysqld
@man man/man1/replace.1
@man man/man1/resolve_stack_dump.1
@man man/man1/resolveip.1
@man man/man1/wsrep_sst_backup.1
@man man/man1/wsrep_sst_common.1
@man man/man1/wsrep_sst_mariabackup.1
@man man/man1/wsrep_sst_mysqldump.1
@ -597,10 +616,10 @@ share/examples/login.conf.d/mysqld
share/examples/mysql/
share/examples/mysql/binary-configure
share/examples/mysql/magic
share/examples/mysql/mariadb.logrotate
share/examples/mysql/mini-benchmark
share/examples/mysql/my.cnf
@sample ${SYSCONFDIR}/my.cnf
share/examples/mysql/mysql-log-rotate
share/examples/mysql/mysql.server
share/examples/mysql/mysqld_multi.server
share/examples/mysql/policy/
@ -655,12 +674,13 @@ share/mysql/dutch/
share/mysql/dutch/errmsg.sys
share/mysql/english/
share/mysql/english/errmsg.sys
share/mysql/errmsg-utf8.txt
share/mysql/estonian/
share/mysql/estonian/errmsg.sys
share/mysql/fill_help_tables.sql
share/mysql/french/
share/mysql/french/errmsg.sys
share/mysql/georgian/
share/mysql/georgian/errmsg.sys
share/mysql/german/
share/mysql/german/errmsg.sys
share/mysql/greek/
@ -678,12 +698,12 @@ share/mysql/korean/errmsg.sys
share/mysql/maria_add_gis_sp.sql
share/mysql/maria_add_gis_sp_bootstrap.sql
%%rocksdb%%
share/mysql/mysql_performance_tables.sql
share/mysql/mysql_sys_schema.sql
share/mysql/mysql_system_tables.sql
share/mysql/mysql_system_tables_data.sql
share/mysql/mysql_test_data_timezone.sql
share/mysql/mysql_test_db.sql
share/mysql/mariadb_performance_tables.sql
share/mysql/mariadb_sys_schema.sql
share/mysql/mariadb_system_tables.sql
share/mysql/mariadb_system_tables_data.sql
share/mysql/mariadb_test_data_timezone.sql
share/mysql/mariadb_test_db.sql
share/mysql/norwegian/
share/mysql/norwegian-ny/
share/mysql/norwegian-ny/errmsg.sys
@ -702,6 +722,8 @@ share/mysql/slovak/
share/mysql/slovak/errmsg.sys
share/mysql/spanish/
share/mysql/spanish/errmsg.sys
share/mysql/swahili/
share/mysql/swahili/errmsg.sys
share/mysql/swedish/
share/mysql/swedish/errmsg.sys
share/mysql/ukrainian/

File diff suppressed because it is too large Load diff