Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Support
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
M
MariaDB
Project overview
Project overview
Details
Activity
Releases
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Issues
0
Issues
0
List
Boards
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Analytics
Analytics
CI / CD
Repository
Value Stream
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
nexedi
MariaDB
Commits
5686da41
Commit
5686da41
authored
Sep 01, 2006
by
georg@lmy002.wdf.sap.corp
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
Fixes for crashes and test failures
parent
9d6471c3
Changes
8
Hide whitespace changes
Inline
Side-by-side
Showing
8 changed files
with
382 additions
and
15 deletions
+382
-15
client/mysqlbinlog.cc
client/mysqlbinlog.cc
+2
-3
extra/comp_err.c
extra/comp_err.c
+2
-1
include/my_dbug.h
include/my_dbug.h
+1
-0
mysql-test/mysql-test-run.pl
mysql-test/mysql-test-run.pl
+26
-9
mysql-test/t/system_mysql_db_fix.test
mysql-test/t/system_mysql_db_fix.test
+3
-0
mysys/my_seek.c
mysys/my_seek.c
+2
-1
scripts/make_win_bin_dist
scripts/make_win_bin_dist
+345
-0
sql/ha_archive.cc
sql/ha_archive.cc
+1
-1
No files found.
client/mysqlbinlog.cc
View file @
5686da41
...
...
@@ -1490,14 +1490,13 @@ int main(int argc, char** argv)
the server
*/
#ifdef __WIN__
#include "my_decimal.h"
#include "decimal.c"
#if defined(__WIN__) && !defined(CMAKE_BUILD)
#include "my_decimal.cpp"
#include "log_event.cpp"
#else
#include "my_decimal.h"
#include "decimal.c"
#include "my_decimal.cc"
#include "log_event.cc"
#endif
...
...
extra/comp_err.c
View file @
5686da41
...
...
@@ -188,8 +188,9 @@ int main(int argc, char *argv[])
DBUG_RETURN
(
1
);
}
clean_up
(
lang_head
,
error_head
);
DBUG_LEAVE
;
/* we can't call my_end after DBUG_RETURN */
my_end
(
info_flag
?
MY_CHECK_ERROR
|
MY_GIVE_INFO
:
0
);
DBUG_RETURN
(
0
);
return
(
0
);
}
}
...
...
include/my_dbug.h
View file @
5686da41
...
...
@@ -97,6 +97,7 @@ extern void _db_unlock_file(void);
#define DBUG_UNLOCK_FILE
#define DBUG_OUTPUT(A)
#define DBUG_ASSERT(A) {}
#define DBUG_LEAVE
#endif
#ifdef __cplusplus
}
...
...
mysql-test/mysql-test-run.pl
View file @
5686da41
...
...
@@ -1042,20 +1042,30 @@ sub executable_setup () {
if
(
$glob_win32
)
{
$path_client_bindir
=
mtr_path_exists
("
$glob_basedir
/client_release
",
"
$glob_basedir
/client_debug
",
"
$glob_basedir
/client_debug
",
"
$glob_basedir
/client/release
",
"
$glob_basedir
/client/debug
",
"
$glob_basedir
/bin
",);
$exe_mysqld
=
mtr_exe_exists
("
$path_client_bindir
/mysqld-max-nt
",
"
$path_client_bindir
/mysqld-max
",
"
$path_client_bindir
/mysqld-nt
",
"
$path_client_bindir
/mysqld
",
"
$path_client_bindir
/mysqld-debug
",
"
$path_client_bindir
/mysqld-max
");
$path_language
=
mtr_path_exists
("
$glob_basedir
/share/english/
");
$path_charsetsdir
=
mtr_path_exists
("
$glob_basedir
/share/charsets
");
"
$path_client_bindir
/mysqld-max
",
"
$glob_basedir
/sql/release/mysqld
",
"
$glob_basedir
/sql/debug/mysqld
");
$path_language
=
mtr_path_exists
("
$glob_basedir
/share/english/
",
"
$glob_basedir
/sql/share/english/
");
$path_charsetsdir
=
mtr_path_exists
("
$glob_basedir
/share/charsets
",
"
$glob_basedir
/sql/share/charsets/
");
$exe_my_print_defaults
=
mtr_exe_exists
("
$path_client_bindir
/my_print_defaults
");
mtr_exe_exists
("
$path_client_bindir
/my_print_defaults
",
"
$glob_basedir
/extra/release/my_print_defaults
",
"
$glob_basedir
/extra/debug/my_print_defaults
");
$exe_perror
=
mtr_exe_exists
("
$path_client_bindir
/perror
");
mtr_exe_exists
("
$path_client_bindir
/perror
",
"
$glob_basedir
/extra/release/perror
",
"
$glob_basedir
/extra/debug/perror
");
}
else
{
...
...
@@ -1085,6 +1095,9 @@ sub executable_setup () {
$exe_mysqltest
=
mtr_exe_exists
("
$path_client_bindir
/mysqltest
");
$exe_mysql_client_test
=
mtr_exe_exists
("
$glob_basedir
/tests/mysql_client_test
",
"
$path_client_bindir
/mysql_client_test
",
"
$glob_basedir
/tests/release/mysql_client_test
",
"
$glob_basedir
/tests/debug/mysql_client_test
",
"
$path_client_bindir
/mysql_client_test
",
"
/usr/bin/false
");
}
...
...
@@ -1096,7 +1109,8 @@ sub executable_setup () {
$exe_mysqladmin
=
mtr_exe_exists
("
$path_client_bindir
/mysqladmin
");
$exe_mysql
=
mtr_exe_exists
("
$path_client_bindir
/mysql
");
$exe_mysql_fix_system_tables
=
mtr_script_exists
("
$glob_basedir
/scripts/mysql_fix_privilege_tables
");
mtr_script_exists
("
$glob_basedir
/scripts/mysql_fix_privilege_tables
",
"
/usr/bin/false
");
$path_ndb_tools_dir
=
mtr_path_exists
("
$glob_basedir
/ndb/tools
");
$exe_ndb_mgm
=
"
$glob_basedir
/ndb/src/mgmclient/ndb_mgm
";
$lib_udf_example
=
...
...
@@ -1114,7 +1128,8 @@ sub executable_setup () {
$exe_mysql
=
mtr_exe_exists
("
$path_client_bindir
/mysql
");
$exe_mysql_fix_system_tables
=
mtr_script_exists
("
$path_client_bindir
/mysql_fix_privilege_tables
",
"
$glob_basedir
/scripts/mysql_fix_privilege_tables
");
"
$glob_basedir
/scripts/mysql_fix_privilege_tables
",
"
/usr/bin/false
");
$exe_my_print_defaults
=
mtr_exe_exists
("
$path_client_bindir
/my_print_defaults
");
$exe_perror
=
...
...
@@ -1148,7 +1163,9 @@ sub executable_setup () {
}
else
{
$exe_mysqltest
=
mtr_exe_exists
("
$path_client_bindir
/mysqltest
");
$exe_mysqltest
=
mtr_exe_exists
("
$path_client_bindir
/mysqltest
",
"
$glob_basedir
/client/release/mysqltest
",
"
$glob_basedir
/client/debug/mysqltest
");
$exe_mysql_client_test
=
mtr_exe_exists
("
$path_client_bindir
/mysql_client_test
",
"
/usr/bin/false
");
# FIXME temporary
...
...
mysql-test/t/system_mysql_db_fix.test
View file @
5686da41
# Embedded server doesn't support external clients
--
source
include
/
not_embedded
.
inc
# Windows doesn't support execution of shell scripts (to fix!!)
--
source
include
/
not_windows
.
inc
#
# This is the test for mysql_fix_privilege_tables
#
...
...
mysys/my_seek.c
View file @
5686da41
...
...
@@ -29,7 +29,8 @@ my_off_t my_seek(File fd, my_off_t pos, int whence,
whence
,
MyFlags
));
DBUG_ASSERT
(
pos
!=
MY_FILEPOS_ERROR
);
/* safety check */
newpos
=
lseek
(
fd
,
pos
,
whence
);
if
(
-
1
!=
fd
)
newpos
=
lseek
(
fd
,
pos
,
whence
);
if
(
newpos
==
(
os_off_t
)
-
1
)
{
my_errno
=
errno
;
...
...
scripts/make_win_bin_dist
0 → 100755
View file @
5686da41
#!/bin/sh
# Exit if failing to copy, we want exact specifications, not
# just "what happen to be built".
set
-e
# ----------------------------------------------------------------------
# Read first argument that is the base name of the resulting TAR file.
# See usage() function below for a description on the arguments.
#
# NOTE: We will read the rest of the command line later on.
# NOTE: Pattern matching with "{..,..}" can't be used, not portable.
# ----------------------------------------------------------------------
# FIXME FIXME "debug", own build or handled here?
# FIXME FIXME add way to copy from other builds executables
usage
()
{
echo
<<
EOF
Usage: make_win_bin_dist [ options ] package-base-name [ copy-defs... ]
This is a script to run from the top of a source tree built on Windows.
The "package-base-name" argument should be something like
mysql-noinstall-5.0.25-win32 (or winx64)
and will be the name of the directory of the unpacked ZIP (stripping
away the "noinstall" part of the ZIP file name if any) and the base
for the resulting package name.
Options are
--embedded Pack the embedded server and give error if not built.
The default is to pack it if it is built.
--no-embedded Don't pack the embedded server even if built
--debug Pack the debug binaries and give error if not built.
--no-debug Don't pack the debug binaries even if built
--only-debug The target for this build was "Debug", and we just
want to replace the normal binaries with debug
versions, i.e. no separate "debug" directories.
--exe-suffix=SUF Add a suffix to the "mysqld" binary.
As you might want to include files of directories from other builds
(like a "mysqld-max.exe" server), you can instruct this script do copy
them in for you. This is the "copy-def" arguments, and they are of the
form
relative-dest-name=source-name .....
i.e. can be something like
bin/mysqld-max.exe=../my-max-build/sql/release/mysqld.exe
If you specify a directory the whole directory will be copied.
EOF
exit
1
}
# ----------------------------------------------------------------------
# We need to be at the top of a source tree, check that we are
# ----------------------------------------------------------------------
if
[
!
-d
"sql"
]
;
then
echo
"You need to run this script from inside the source tree"
usage
fi
# ----------------------------------------------------------------------
# Actual argument processing, first part
# ----------------------------------------------------------------------
NOINST_NAME
=
""
TARGET
=
"release"
PACK_EMBEDDED
=
""
# Could be "no", "yes" or empty
PACK_DEBUG
=
""
# Could be "no", "yes" or empty
EXE_SUFFIX
=
""
for
arg
do
shift
case
"
$arg
"
in
--embedded
)
PACK_EMBEDDED
=
"yes"
;;
--no-embedded
)
PACK_EMBEDDED
=
"no"
;;
--debug
)
PACK_DEBUG
=
"yes"
;;
--no-debug
)
PACK_DEBUG
=
"no"
;;
--only-debug
)
TARGET
=
"debug"
;
PACK_DEBUG
=
"no"
;;
--exe-suffix
=
*
)
EXE_SUFFIX
=
`
echo
"
$arg
"
|
sed
-e
"s,--exe-suffix=,,"
`
;;
-
*
)
echo
"Unknown argument '
$arg
'"
usage
;;
*
)
NOINST_NAME
=
"
$arg
"
break
esac
done
if
[
x
"
$NOINST_NAME
"
=
x
""
]
;
then
echo
"No base package name given"
usage
fi
DESTDIR
=
`
echo
$NOINST_NAME
|
sed
's/-noinstall-/-/'
`
if
[
-e
$DESTDIR
]
;
then
echo
"Please remove the old
$DESTDIR
before running this script"
usage
fi
# ----------------------------------------------------------------------
# Copy executables, and client DLL (FIXME why?)
# ----------------------------------------------------------------------
trap
'echo "Clearning up and exiting..." ; rm -fr $DESTDIR; exit 1'
ERR
mkdir
$DESTDIR
mkdir
$DESTDIR
/bin
cp
client/
$TARGET
/
*
.exe
$DESTDIR
/bin/
cp
extra/
$TARGET
/
*
.exe
$DESTDIR
/bin/
cp
myisam/
$TARGET
/
*
.exe
$DESTDIR
/bin/
cp
server-tools/instance-manager/
$TARGET
/
*
.exe
$DESTDIR
/bin/
cp
tests/
$TARGET
/
*
.exe
$DESTDIR
/bin/
cp
libmysql/
$TARGET
/
*
.exe
$DESTDIR
/bin/
cp
libmysql/
$TARGET
/libmysql.dll
$DESTDIR
/bin/
# FIXME really needed?!
mv
$DESTDIR
/bin/comp_err.exe
$DESTDIR
/bin/comp-err.exe
cp
sql/
$TARGET
/mysqld.exe
$DESTDIR
/bin/mysqld
$EXE_SUFFIX
.exe
if
[
x
"
$PACK_DEBUG
"
=
""
-a
-f
"sql/debug/mysqld.exe"
-o
\
x
"
$PACK_DEBUG
"
=
"yes"
]
;
then
cp
sql/debug/mysqld.exe
$DESTDIR
/bin/mysqld-debug.exe
cp
sql/debug/mysqld.pdb
$DESTDIR
/bin/mysqld-debug.pdb
cp
sql/debug/mysqld.map
$DESTDIR
/bin/mysqld-debug.map
fi
# ----------------------------------------------------------------------
# Copy data directory, readme files etc
# ----------------------------------------------------------------------
cp
COPYING EXCEPTIONS-CLIENT
$DESTDIR
/
# FIXME is there ever a data directory to copy?
if
[
-d
win/data
]
;
then
cp
-pR
win/data
$DESTDIR
/data
fi
# FIXME maybe a flag to define "release build", or do the
# check from the calling script that all these are there,
# and with the correct content.
mkdir
$DESTDIR
/Docs
cp
Docs/INSTALL-BINARY
$DESTDIR
/Docs/
cp
Docs/manual.chm
$DESTDIR
/Docs/
||
/bin/true
cp
ChangeLog
$DESTDIR
/Docs/
||
/bin/true
cp
COPYING
$DESTDIR
/Docs/
cp
support-files/my-
*
.ini
$DESTDIR
/
# ----------------------------------------------------------------------
# These will be filled in when we enable embedded. Note that if no
# argument is given, it is copied if exists, else a check is done.
# ----------------------------------------------------------------------
copy_embedded
()
{
mkdir
-p
$DESTDIR
/Embedded/DLL/release
\
$DESTDIR
/Embedded/static/release
cp
libmysqld/libmysqld.def
$DESTDIR
/include/
cp
libmysqld/
$TARGET
/mysqlserver.lib
$DESTDIR
/Embedded/static/release/
cp
libmysqld/
$TARGET
/libmysqld.dll
$DESTDIR
/Embedded/DLL/release/
cp
libmysqld/
$TARGET
/libmysqld.exp
$DESTDIR
/Embedded/DLL/release/
cp
libmysqld/
$TARGET
/libmysqld.lib
$DESTDIR
/Embedded/DLL/release/
if
[
x
"
$PACK_DEBUG
"
=
""
-a
-f
"libmysqld/debug/libmysqld.lib"
-o
\
x
"
$PACK_DEBUG
"
=
"yes"
]
;
then
mkdir
-p
$DESTDIR
/Embedded/DLL/debug
cp
libmysqld/debug/libmysqld.dll
$DESTDIR
/Embedded/DLL/debug/
cp
libmysqld/debug/libmysqld.exp
$DESTDIR
/Embedded/DLL/debug/
cp
libmysqld/debug/libmysqld.lib
$DESTDIR
/Embedded/DLL/debug/
fi
}
if
[
x
"
$PACK_EMBEDDED
"
=
""
-a
\
-f
"libmysqld/
$TARGET
/mysqlserver.lib"
-a
\
-f
"libmysqld/
$TARGET
/libmysqld.lib"
-o
\
x
"
$PACK_EMBEDDED
"
=
"yes"
]
;
then
copy_embedded
fi
# ----------------------------------------------------------------------
# FIXME test stuff that is useless garbage?
# ----------------------------------------------------------------------
mkdir
-p
$DESTDIR
/examples/libmysqltest/release
cp
libmysql/mytest.c libmysql/myTest.vcproj libmysql/
$TARGET
/myTest.exe
\
$DESTDIR
/examples/libmysqltest/
cp
libmysql/
$TARGET
/myTest.exe
$DESTDIR
/examples/libmysqltest/release/
if
[
x
"
$PACK_DEBUG
"
=
""
-a
-f
"libmysql/debug/myTest.exe"
-o
\
x
"
$PACK_DEBUG
"
=
"yes"
]
;
then
mkdir
-p
$DESTDIR
/examples/libmysqltest/debug
cp
libmysql/debug/myTest.exe
$DESTDIR
/examples/libmysqltest/debug/
fi
mkdir
-p
$DESTDIR
/examples/tests
cp
tests/
*
.res tests/
*
.tst tests/
*
.pl tests/
*
.c
$DESTDIR
/examples/tests/
# ----------------------------------------------------------------------
# FIXME why not copy it all in "include"?!
# ----------------------------------------------------------------------
mkdir
-p
$DESTDIR
/include
cp
include/conf
*
.h
\
include/mysql
*
.h
\
include/errmsg.h
\
include/my_alloc.h
\
include/my_getopt.h
\
include/my_sys.h
\
include/my_list.h
\
include/my_pthread.h
\
include/my_dbug.h
\
include/m_string.h
\
include/m_ctype.h
\
include/my_global.h
\
include/typelib.h
$DESTDIR
/include/
cp
libmysql/libmysql.def
$DESTDIR
/include/
# ----------------------------------------------------------------------
# Client libraries, and other libraries
# FIXME why "libmysql.dll" installed both in "bin" and "lib/opt"?
# ----------------------------------------------------------------------
mkdir
-p
$DESTDIR
/lib/opt
cp
libmysql/
$TARGET
/libmysql.dll
\
libmysql/
$TARGET
/libmysql.lib
\
client/
$TARGET
/mysqlclient.lib
\
regex/
$TARGET
/regex.lib
\
strings/
$TARGET
/strings.lib
\
zlib/
$TARGET
/zlib.lib
$DESTDIR
/lib/opt/
if
[
x
"
$PACK_DEBUG
"
=
""
-a
-f
"libmysql/debug/libmysql.lib"
-o
\
x
"
$PACK_DEBUG
"
=
"yes"
]
;
then
mkdir
-p
$DESTDIR
/lib/debug
cp
libmysql/debug/libmysql.dll
\
libmysql/debug/libmysql.lib
\
client/debug/mysqlclient.lib
\
mysys/debug/mysys.lib
\
regex/debug/regex.lib
\
strings/debug/strings.lib
\
zlib/debug/zlib.lib
$DESTDIR
/lib/debug/
fi
# FIXME sort this out...
cp
mysys/
$TARGET
/mysys.lib
$DESTDIR
/lib/opt/mysys_tls.lib
# ----------------------------------------------------------------------
# Copy the test directory
# ----------------------------------------------------------------------
mkdir
-p
$DESTDIR
/mysql-test/include
$DESTDIR
/mysql-test/lib
\
$DESTDIR
/mysql-test/r
$DESTDIR
/mysql-test/std_data
\
$DESTDIR
/mysql-test/t
cp
mysql-test/mysql-test-run.pl
$DESTDIR
/mysql-test/
cp
mysql-test/README
$DESTDIR
/mysql-test/
cp
mysql-test/install_test_db.sh
$DESTDIR
/mysql-test/install_test_db
cp
mysql-test/include/
*
.inc
$DESTDIR
/mysql-test/include/
cp
mysql-test/lib/
*
.pl
$DESTDIR
/mysql-test/lib/
cp
mysql-test/lib/
*
.sql
$DESTDIR
/mysql-test/lib/
cp
mysql-test/r/
*
.require
$DESTDIR
/mysql-test/r/
# Need this trick, or we get "argument list too long".
ABS_DST
=
`
pwd
`
/
$DESTDIR
(
cd
mysql-test/r/
&&
cp
*
.result
$ABS_DST
/mysql-test/r/
)
cp
mysql-test/std_data/
*
$DESTDIR
/mysql-test/std_data/
cp
mysql-test/t/
*
.opt
$DESTDIR
/mysql-test/t/
cp
mysql-test/t/
*
.sh
$DESTDIR
/mysql-test/t/
cp
mysql-test/t/
*
.slave-mi
$DESTDIR
/mysql-test/t/
cp
mysql-test/t/
*
.sql
$DESTDIR
/mysql-test/t/
cp
mysql-test/t/
*
.def
$DESTDIR
/mysql-test/t/
(
cd
mysql-test/t/
&&
cp
*
.test
$ABS_DST
/mysql-test/t/
)
# Note that this will not copy "extra" if a soft link
if
[
-d
mysql-test/extra
]
;
then
mkdir
-p
$DESTDIR
/mysql-test/extra
cp
-pR
mysql-test/extra/
*
$DESTDIR
/mysql-test/extra/
fi
# ----------------------------------------------------------------------
# Copy what could be usable in the "scripts" directory. Currently
# only SQL files, others are bourne shell scripts or Perl scripts
# not really usable on Windows.
#
# But to be nice to the few Cygwin users we might have in 5.0 we
# continue to copy the stuff, but don't include it include it in
# the WiX install.
# ----------------------------------------------------------------------
mkdir
-p
$DESTDIR
/scripts
# Uncomment and remove the for loop in 5.1
#cp scripts/*.sql $DESTDIR/scripts/
for
i
in
`
cd
scripts
&&
ls
`
;
do
\
if
echo
$i
|
grep
-q
'\.sh'
;
then
\
cp
scripts/
$i
$DESTDIR
/scripts/
`
echo
$i
|
sed
-e
's/\.sh$//'
`
;
\
elif
[
$i
=
Makefile.am
-o
$i
=
Makefile.in
-o
-e
scripts/
$i
.sh
]
;
then
\
:
;
\
else
\
cp
scripts/
$i
$DESTDIR
/scripts/
$i
;
\
fi
;
\
done
cp
-pR
sql/share
$DESTDIR
/
cp
-pR
sql-bench
$DESTDIR
/
rm
-f
$DESTDIR
/sql-bench/
*
.sh
$DESTDIR
/sql-bench/Makefile
*
# ----------------------------------------------------------------------
# Copy other files specified on command line DEST=SOURCE
# ----------------------------------------------------------------------
for
arg
do
dst
=
`
echo
$arg
|
sed
's/=.*$//'
`
src
=
`
echo
$arg
|
sed
's/^.*=//'
`
if
[
x
"
$dst
"
=
x
""
-o
x
"
$src
"
=
x
""
]
;
then
echo
"Invalid specification of what to copy"
usage
fi
mkdir
-p
`
dirname
$DESTDIR
/
$dst
`
cp
-pR
"
$src
"
$DESTDIR
/
$dst
done
# ----------------------------------------------------------------------
# Finally creat the ZIP archive
# ----------------------------------------------------------------------
rm
-f
$NOINST_NAME
.zip
zip
-r
$NOINST_NAME
.zip
$DESTDIR
rm
-Rf
$DESTDIR
sql/ha_archive.cc
View file @
5686da41
...
...
@@ -614,7 +614,7 @@ int ha_archive::create(const char *name, TABLE *table_arg,
error
=
my_errno
;
goto
error
;
}
if
((
archive
=
gzdopen
(
create_file
,
"wb"
))
==
NULL
)
if
((
archive
=
gzdopen
(
dup
(
create_file
)
,
"wb"
))
==
NULL
)
{
error
=
errno
;
goto
error2
;
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment