Merge with 4.0.11 tree to get latest bug fixes
client/mysql.cc: Auto merged client/mysqldump.c: Auto merged configure.in: Auto merged include/my_pthread.h: Auto merged include/mysql.h: Auto merged libmysql/libmysql.c: Auto merged libmysqld/libmysqld.c: Auto merged mysql-test/r/innodb.result: Auto merged mysql-test/r/rpl000001.result: Auto merged mysql-test/r/rpl000004.result: Auto merged mysql-test/r/type_blob.result: Auto merged mysql-test/t/innodb.test: Auto merged mysql-test/t/rpl000001.test: Auto merged mysys/my_init.c: Auto merged scripts/mysqld_safe.sh: Auto merged sql/item_cmpfunc.h: Auto merged sql/mysql_priv.h: Auto merged sql/sql_delete.cc: Auto merged sql/sql_handler.cc: Auto merged sql/sql_table.cc: Auto merged sql/structs.h: Auto merged Makefile.am: Merge with 4.0.11 mysql-test/mysql-test-run.sh: Merge with 4.0.11 mysql-test/r/rpl_log.result: Use local version (needs to be updated) mysql-test/t/type_blob.test: Merge with 4.0.11 sql/mysqld.cc: Merge with 4.0.11 sql/protocol.cc: Use local version
This commit is contained in:
commit
e793dfe95e
15
Makefile.am
15
Makefile.am
@ -25,15 +25,15 @@ SUBDIRS = . include @docs_dirs@ \
|
||||
@readline_topdir@ @readline_dir@ \
|
||||
@thread_dirs@ pstack @sql_client_dirs@ \
|
||||
@sql_server_dirs@ scripts man tests \
|
||||
BUILD netware os2 @libmysqld_dirs@ \
|
||||
@bench_dirs@ support-files @fs_dirs@ @tools_dirs@ \
|
||||
@platform_dir@
|
||||
BUILD @netware_dir@ os2 @libmysqld_dirs@ \
|
||||
@bench_dirs@ support-files @fs_dirs@ @tools_dirs@
|
||||
|
||||
|
||||
# Relink after clean
|
||||
linked_sources = linked_client_sources linked_server_sources \
|
||||
linked_libmysql_sources linked_libmysql_r_sources \
|
||||
linked_libmysqld_sources linked_libmysqldex_sources \
|
||||
linked_include_sources
|
||||
linked_include_sources @linked_netware_sources@
|
||||
|
||||
CLEANFILES = $(linked_sources)
|
||||
|
||||
@ -64,6 +64,10 @@ linked_libmysqldex_sources:
|
||||
cd libmysqld/examples; $(MAKE) link_sources
|
||||
echo timestamp > linked_libmysqldex_sources
|
||||
|
||||
linked_netware_sources:
|
||||
cd @netware_dir@; $(MAKE) link_sources
|
||||
echo timestamp > linked_netware_sources
|
||||
|
||||
#avoid recursive make calls in sql directory
|
||||
linked_server_sources:
|
||||
cd sql; rm -f mini_client_errors.c;@LN_CP_F@ ../libmysql/errmsg.c mini_client_errors.c
|
||||
@ -74,7 +78,7 @@ init-db: all
|
||||
$(top_builddir)/scripts/mysql_install_db
|
||||
|
||||
bin-dist: all
|
||||
$(top_builddir)/scripts/make_binary_distribution
|
||||
$(top_builddir)/scripts/make_binary_distribution @MAKE_BINARY_DISTRIBUTION_OPTIONS@
|
||||
|
||||
# Remove BK's "SCCS" subdirectories from source distribution
|
||||
dist-hook:
|
||||
@ -88,3 +92,4 @@ tags:
|
||||
|
||||
test:
|
||||
cd mysql-test ; ./mysql-test-run
|
||||
|
||||
|
@ -1885,6 +1885,9 @@ print_table_data_xml(MYSQL_RES *result)
|
||||
{
|
||||
MYSQL_ROW cur;
|
||||
MYSQL_FIELD *fields;
|
||||
#ifdef __NETWARE__
|
||||
uint lines= 0;
|
||||
#endif
|
||||
|
||||
mysql_field_seek(result,0);
|
||||
|
||||
|
@ -984,9 +984,12 @@ static void dumpTable(uint numFields, char *table)
|
||||
{
|
||||
char query[QUERY_LENGTH], *end, buff[256],table_buff[NAME_LEN+3];
|
||||
MYSQL_RES *res;
|
||||
MYSQL_FIELD *field;
|
||||
MYSQL_ROW row;
|
||||
MYSQL_FIELD *field;
|
||||
MYSQL_ROW row;
|
||||
ulong rownr, row_break, total_length, init_length;
|
||||
#if defined(__NETWARE__) && defined(THREAD)
|
||||
uint lines= 0;
|
||||
#endif
|
||||
|
||||
if (verbose)
|
||||
fprintf(stderr, "-- Sending SELECT query...\n");
|
||||
@ -1216,6 +1219,11 @@ static void dumpTable(uint numFields, char *table)
|
||||
}
|
||||
else if (!opt_xml)
|
||||
fputs(");\n", md_result_file);
|
||||
#if defined(__NETWARE__) && defined(THREAD)
|
||||
/* on a long result the screen could hog the cpu */
|
||||
if ((lines++ & 1023) == 0)
|
||||
pthread_yield();
|
||||
#endif
|
||||
}
|
||||
|
||||
/* XML - close table tag and supress regular output */
|
||||
|
61
configure.in
61
configure.in
@ -35,10 +35,10 @@ rm -f $AVAILABLE_LANGUAGES_ERRORS_RULES
|
||||
for i in $AVAILABLE_LANGUAGES
|
||||
do
|
||||
AVAILABLE_LANGUAGES_ERRORS="$AVAILABLE_LANGUAGES_ERRORS $i/errmsg.sys"
|
||||
case $SYSTEM_TYPE in
|
||||
*netware* | *modesto*)
|
||||
case $host_os in
|
||||
netware* | modesto*)
|
||||
echo "$i/errmsg.sys: $i/errmsg.txt
|
||||
\$(top_builddir)/extra/comp_err.cyg \$^ $i/errmsg.sys" \
|
||||
\$(top_builddir)/extra/comp_err.linux \$^ $i/errmsg.sys" \
|
||||
>> $AVAILABLE_LANGUAGES_ERRORS_RULES
|
||||
;;
|
||||
*)
|
||||
@ -1067,7 +1067,10 @@ dnl Is this the right match for DEC OSF on alpha?
|
||||
*netware*)
|
||||
# No need for curses library so set it to null
|
||||
with_named_curses=""
|
||||
PLATFORM_NETWARE=yes
|
||||
|
||||
# No thread library - in LibC
|
||||
with_named_thread=""
|
||||
|
||||
#
|
||||
# Edit Makefile.in files.
|
||||
#
|
||||
@ -1089,36 +1092,36 @@ dnl Is this the right match for DEC OSF on alpha?
|
||||
fi
|
||||
case $file in
|
||||
sql/Makefile.in)
|
||||
# Use gen_lex_hash.cyg instead of gen_lex_hash
|
||||
# Use gen_lex_hash.linux instead of gen_lex_hash
|
||||
# Add library dependencies to mysqld_DEPENDENCIES
|
||||
lib_DEPENDENCIES="\$(bdb_libs_with_path) \$(innodb_libs) \$(pstack_libs) \$(innodb_system_libs) \$(openssl_libs)"
|
||||
cat > $filesed << EOF
|
||||
s,\(^.*\$(MAKE) gen_lex_hash\),#\1,
|
||||
s,\(\./gen_lex_hash\),\1.cyg,
|
||||
s,\(\./gen_lex_hash\),\1.linux,
|
||||
s%\(mysqld_DEPENDENCIES = \) %\1$lib_DEPENDENCIES %
|
||||
EOF
|
||||
;;
|
||||
sql/share/Makefile.in)
|
||||
cat > $filesed << EOF
|
||||
s,\(extra/comp_err\),\1.cyg,
|
||||
s,\(extra/comp_err\),\1.linux,
|
||||
EOF
|
||||
;;
|
||||
libmysql/Makefile.in)
|
||||
cat > $filesed << EOF
|
||||
s,\(\./conf_to_src\)\( \$(top_srcdir)\),\1.cyg\2,
|
||||
s,\(: conf_to_src\),\1.cyg,
|
||||
s,\(\./conf_to_src\)\( \$(top_srcdir)\),\1.linux\2,
|
||||
s,\(: conf_to_src\),\1.linux,
|
||||
EOF
|
||||
;;
|
||||
libmysql_r/Makefile.in)
|
||||
cat > $filesed << EOF
|
||||
s,\(\./conf_to_src\)\( \$(top_srcdir)\),\1.cyg\2,
|
||||
s,\(: conf_to_src\),\1.cyg,
|
||||
s,\(\./conf_to_src\)\( \$(top_srcdir)\),\1.linux\2,
|
||||
s,\(: conf_to_src\),\1.linux,
|
||||
EOF
|
||||
;;
|
||||
strings/Makefile.in)
|
||||
cat > $filesed << EOF
|
||||
s,\(\./conf_to_src\)\( \$(top_srcdir)\),\1.cyg\2,
|
||||
s,\(: conf_to_src\),\1.cyg,
|
||||
s,\(\./conf_to_src\)\( \$(top_srcdir)\),\1.linux\2,
|
||||
s,\(: conf_to_src\),\1.linux,
|
||||
EOF
|
||||
;;
|
||||
client/Makefile.in)
|
||||
@ -1167,7 +1170,6 @@ EOF
|
||||
;;
|
||||
esac
|
||||
|
||||
AM_CONDITIONAL(PLATFORM_NETWARE, test "$PLATFORM_NETWARE" = "yes")
|
||||
|
||||
#---START: Used in for client configure
|
||||
# Check if we threads are in libc or if we should use
|
||||
@ -2270,13 +2272,6 @@ AC_ARG_WITH(extra-charsets,
|
||||
[extra_charsets="$withval"],
|
||||
[extra_charsets="none"])
|
||||
|
||||
AC_ARG_WITH(platform-dir,
|
||||
[ --with-platform-dir=DIR
|
||||
Add specified directory to list of SUBDIRS to build.],
|
||||
[ with_platform_dir=$withval ],
|
||||
[ with_platform_dir=no ]
|
||||
)
|
||||
|
||||
AC_MSG_CHECKING("character sets")
|
||||
|
||||
if test "$extra_charsets" = none; then
|
||||
@ -2458,12 +2453,15 @@ AC_SUBST(CLIENT_LIBS)
|
||||
AC_SUBST(sql_client_dirs)
|
||||
AC_SUBST(linked_client_targets)
|
||||
|
||||
platform_dir=
|
||||
if test "$with_platform_dir" != "no"
|
||||
then
|
||||
platform_dir="$with_platform_dir"
|
||||
# If configuring for NetWare, set up to link sources from and build the netware directory
|
||||
netware_dir=
|
||||
linked_netware_sources=
|
||||
if expr "$SYSTEM_TYPE" : ".*netware.*" > /dev/null; then
|
||||
netware_dir="netware"
|
||||
linked_netware_sources="linked_netware_sources"
|
||||
fi
|
||||
AC_SUBST(platform_dir)
|
||||
AC_SUBST(netware_dir)
|
||||
AC_SUBST(linked_netware_sources)
|
||||
|
||||
if test "$with_server" = "yes" -o "$THREAD_SAFE_CLIENT" != "no"
|
||||
then
|
||||
@ -2630,6 +2628,17 @@ AC_SUBST(GXX)
|
||||
#Remove TOOLS_LIBS, because this is included in LIBRARIES
|
||||
#AC_SUBST(TOOLS_LIBS)
|
||||
|
||||
# Set configuration options for make_binary_distribution
|
||||
case $SYSTEM_TYPE in
|
||||
*netware*)
|
||||
MAKE_BINARY_DISTRIBUTION_OPTIONS=--no-strip
|
||||
;;
|
||||
*)
|
||||
MAKE_BINARY_DISTRIBUTION_OPTIONS=
|
||||
;;
|
||||
esac
|
||||
AC_SUBST(MAKE_BINARY_DISTRIBUTION_OPTIONS)
|
||||
|
||||
# Output results
|
||||
|
||||
if test "$compile_readline" = "yes"
|
||||
|
@ -16,6 +16,8 @@
|
||||
|
||||
/* Wait until a program dies */
|
||||
|
||||
#ifndef __NETWARE__
|
||||
|
||||
#include <my_global.h>
|
||||
#include <m_string.h>
|
||||
#include <my_getopt.h>
|
||||
@ -101,3 +103,15 @@ void usage(void)
|
||||
my_print_help(my_long_options);
|
||||
exit(-1);
|
||||
}
|
||||
|
||||
#else
|
||||
|
||||
#include <stdio.h>
|
||||
|
||||
main()
|
||||
{
|
||||
fprintf(stderr,"This tool has not been ported to NetWare\n");
|
||||
return 0;
|
||||
}
|
||||
|
||||
#endif /* __NETWARE__ */
|
||||
|
@ -431,7 +431,7 @@ struct tm *localtime_r(const time_t *clock, struct tm *res);
|
||||
#define pthread_kill(A,B) pthread_dummy(0)
|
||||
#undef pthread_detach_this_thread
|
||||
#define pthread_detach_this_thread() { pthread_t tmp=pthread_self() ; pthread_detach(&tmp); }
|
||||
#else /* HAVE_PTHREAD_ATTR_CREATE && !HAVE_SIGWAIT */
|
||||
#elif !defined(__NETWARE__) /* HAVE_PTHREAD_ATTR_CREATE && !HAVE_SIGWAIT */
|
||||
#define HAVE_PTHREAD_KILL
|
||||
#endif
|
||||
|
||||
|
@ -595,7 +595,7 @@ my_bool
|
||||
simple_command(MYSQL *mysql,enum enum_server_command command, const char *arg,
|
||||
unsigned long length, my_bool skip_check);
|
||||
unsigned long net_safe_read(MYSQL* mysql);
|
||||
void STDCALL mysql_once_init(void);
|
||||
void mysql_once_init(void);
|
||||
|
||||
#ifdef __NETWARE__
|
||||
#pragma pack(pop) /* restore alignment */
|
||||
|
@ -774,7 +774,8 @@ char* getlogin(void);
|
||||
/* default to "root" on NetWare */
|
||||
static void read_user_name(char *name)
|
||||
{
|
||||
(void)strmake(name,"root", USERNAME_LENGTH);
|
||||
char *str=getenv("USER");
|
||||
strmake(name, str ? str : "UNKNOWN_USER", USERNAME_LENGTH);
|
||||
}
|
||||
|
||||
#elif !defined(MSDOS) && ! defined(VMS) && !defined(__WIN__) && !defined(OS2)
|
||||
@ -1773,7 +1774,7 @@ mysql_init(MYSQL *mysql)
|
||||
outside program.
|
||||
*/
|
||||
|
||||
void STDCALL mysql_once_init(void)
|
||||
void mysql_once_init(void)
|
||||
{
|
||||
if (!mysql_client_init)
|
||||
{
|
||||
|
@ -66,7 +66,7 @@ TYPELIB sql_protocol_typelib = {array_elements(sql_protocol_names_lib)-1,"",
|
||||
#define closesocket(A) close(A)
|
||||
#endif
|
||||
|
||||
void STDCALL mysql_once_init(void);
|
||||
static void mysql_once_init(void);
|
||||
static void end_server(MYSQL *mysql);
|
||||
static void append_wild(char *to,char *end,const char *wild);
|
||||
static ulong mysql_sub_escape_string(CHARSET_INFO *charset_info, char *to,
|
||||
|
@ -335,6 +335,7 @@ while test $# -gt 0; do
|
||||
EXTRA_SLAVE_MYSQLD_OPT="$EXTRA_SLAVE_MYSQLD_OPT --skip-safemalloc"
|
||||
SLEEP_TIME_AFTER_RESTART=10
|
||||
SLEEP_TIME_FOR_DELETE=60
|
||||
USE_RUNNING_SERVER=""
|
||||
;;
|
||||
--valgrind-options=*)
|
||||
TMP=`$ECHO "$1" | $SED -e "s;--valgrind-options=;;"`
|
||||
|
@ -1057,3 +1057,13 @@ create table t2 (b varchar(10) not null unique) type=innodb;
|
||||
select t1.a from t1,t2 where t1.a=t2.b;
|
||||
a
|
||||
drop table t1,t2;
|
||||
CREATE TABLE t1 (id INT NOT NULL, PRIMARY KEY (id)) TYPE=INNODB;
|
||||
CREATE TABLE t2 (id INT PRIMARY KEY, t1_id INT, INDEX par_ind (t1_id), FOREIGN KEY (t1_id) REFERENCES t1(id) ON DELETE CASCADE ) TYPE=INNODB;
|
||||
insert into t1 set id=1;
|
||||
insert into t2 set id=1, t1_id=1;
|
||||
delete t1,t2 from t1,t2 where t1.id=t2.t1_id;
|
||||
select * from t1;
|
||||
id
|
||||
select * from t2;
|
||||
id t1_id
|
||||
drop table t1,t2;
|
||||
|
@ -7,7 +7,7 @@ start slave;
|
||||
create table t1 (word char(20) not null);
|
||||
load data infile '../../std_data/words.dat' into table t1;
|
||||
load data local infile 'MYSQL_TEST_DIR/std_data/words.dat' into table t1;
|
||||
select * from t1;
|
||||
select * from t1 limit 10;
|
||||
word
|
||||
Aarhus
|
||||
Aaron
|
||||
@ -19,16 +19,6 @@ abandoned
|
||||
abandoning
|
||||
abandonment
|
||||
abandons
|
||||
Aarhus
|
||||
Aaron
|
||||
Ababa
|
||||
aback
|
||||
abaft
|
||||
abandon
|
||||
abandoned
|
||||
abandoning
|
||||
abandonment
|
||||
abandons
|
||||
stop slave;
|
||||
set password for root@"localhost" = password('foo');
|
||||
start slave;
|
||||
@ -41,7 +31,7 @@ n
|
||||
2
|
||||
select sum(length(word)) from t1;
|
||||
sum(length(word))
|
||||
141
|
||||
1021
|
||||
drop table t1,t3;
|
||||
reset master;
|
||||
stop slave;
|
||||
|
@ -18,7 +18,7 @@ Table Op Msg_type Msg_text
|
||||
test.t1 check status OK
|
||||
select count(*) from t2;
|
||||
count(*)
|
||||
10
|
||||
70
|
||||
select count(*) from t3;
|
||||
count(*)
|
||||
0
|
||||
|
@ -484,3 +484,10 @@ select foobar, boggle from t1 where foobar = 'fish' and boggle = 10;
|
||||
foobar boggle
|
||||
fish 10
|
||||
drop table t1;
|
||||
create table t1 (id integer auto_increment unique,imagem LONGBLOB not null);
|
||||
insert into t1 (id) values (1);
|
||||
update t1 set imagem=load_file('../../std_data/words.dat') where id=1;
|
||||
select if(imagem is null, "ERROR", "OK"),length(imagem) from t1 where id = 1;
|
||||
if(imagem is null, "ERROR", "OK") length(imagem)
|
||||
OK 581
|
||||
drop table t1;
|
||||
|
@ -8,3 +8,63 @@ abandoned
|
||||
abandoning
|
||||
abandonment
|
||||
abandons
|
||||
Aarhus
|
||||
Aaron
|
||||
Ababa
|
||||
aback
|
||||
abaft
|
||||
abandon
|
||||
abandoned
|
||||
abandoning
|
||||
abandonment
|
||||
abandons
|
||||
abase
|
||||
abased
|
||||
abasement
|
||||
abasements
|
||||
abases
|
||||
abash
|
||||
abashed
|
||||
abashes
|
||||
abashing
|
||||
abasing
|
||||
abate
|
||||
abated
|
||||
abatement
|
||||
abatements
|
||||
abater
|
||||
abates
|
||||
abating
|
||||
Abba
|
||||
abbe
|
||||
abbey
|
||||
abbeys
|
||||
abbot
|
||||
abbots
|
||||
Abbott
|
||||
abbreviate
|
||||
abbreviated
|
||||
abbreviates
|
||||
abbreviating
|
||||
abbreviation
|
||||
abbreviations
|
||||
Abby
|
||||
abdomen
|
||||
abdomens
|
||||
abdominal
|
||||
abduct
|
||||
abducted
|
||||
abduction
|
||||
abductions
|
||||
abductor
|
||||
abductors
|
||||
abducts
|
||||
Abe
|
||||
abed
|
||||
Abel
|
||||
Abelian
|
||||
Abelson
|
||||
Aberdeen
|
||||
Abernathy
|
||||
aberrant
|
||||
aberration
|
||||
|
@ -698,3 +698,16 @@ create table t1 (a varchar(10) not null) type=myisam;
|
||||
create table t2 (b varchar(10) not null unique) type=innodb;
|
||||
select t1.a from t1,t2 where t1.a=t2.b;
|
||||
drop table t1,t2;
|
||||
|
||||
#
|
||||
# Test of multi-table-delete with foreign key constraints
|
||||
#
|
||||
|
||||
CREATE TABLE t1 (id INT NOT NULL, PRIMARY KEY (id)) TYPE=INNODB;
|
||||
CREATE TABLE t2 (id INT PRIMARY KEY, t1_id INT, INDEX par_ind (t1_id), FOREIGN KEY (t1_id) REFERENCES t1(id) ON DELETE CASCADE ) TYPE=INNODB;
|
||||
insert into t1 set id=1;
|
||||
insert into t2 set id=1, t1_id=1;
|
||||
delete t1,t2 from t1,t2 where t1.id=t2.t1_id;
|
||||
select * from t1;
|
||||
select * from t2;
|
||||
drop table t1,t2;
|
||||
|
@ -4,7 +4,7 @@ create table t1 (word char(20) not null);
|
||||
load data infile '../../std_data/words.dat' into table t1;
|
||||
--replace_result $MYSQL_TEST_DIR MYSQL_TEST_DIR
|
||||
eval load data local infile '$MYSQL_TEST_DIR/std_data/words.dat' into table t1;
|
||||
select * from t1;
|
||||
select * from t1 limit 10;
|
||||
|
||||
#
|
||||
# Test slave with wrong password
|
||||
|
@ -1,3 +1,7 @@
|
||||
# This test can't be run with running server (--extern) as this uses
|
||||
# load_file() on a file in the tree.
|
||||
#
|
||||
|
||||
#
|
||||
# Basic cleanup
|
||||
#
|
||||
@ -283,3 +287,13 @@ insert into t1 values ('fish', 10),('bear', 20);
|
||||
select foobar, boggle from t1 where foobar = 'fish';
|
||||
select foobar, boggle from t1 where foobar = 'fish' and boggle = 10;
|
||||
drop table t1;
|
||||
|
||||
#
|
||||
# Bug when blob is updated
|
||||
#
|
||||
|
||||
create table t1 (id integer auto_increment unique,imagem LONGBLOB not null);
|
||||
insert into t1 (id) values (1);
|
||||
update t1 set imagem=load_file('../../std_data/words.dat') where id=1;
|
||||
select if(imagem is null, "ERROR", "OK"),length(imagem) from t1 where id = 1;
|
||||
drop table t1;
|
||||
|
@ -349,7 +349,7 @@ static my_bool win32_init_tcp_ip()
|
||||
|
||||
static void netware_init()
|
||||
{
|
||||
char cwd[PATH_MAX], *name
|
||||
char cwd[PATH_MAX], *name;
|
||||
|
||||
/* init only if we are not a client library */
|
||||
if (my_progname)
|
||||
|
@ -20,6 +20,7 @@
|
||||
|
||||
#include <mysys_priv.h>
|
||||
#ifdef __NETWARE__
|
||||
#include <string.h>
|
||||
#include <library.h>
|
||||
|
||||
/*
|
||||
@ -61,8 +62,8 @@ long PMMeteredUsageRequest
|
||||
long *NLSMeterErrCode
|
||||
);
|
||||
|
||||
ypedef long(*PMUR)(char*, long, char*, char, char*, long, long*, long*,
|
||||
long*);
|
||||
typedef long(*PMUR)(const char*, long, const char*, char,
|
||||
const char*, long, long*, long*, long*);
|
||||
|
||||
/* infoType */
|
||||
/* indicates that the info in the userInfo param is an NDS user */
|
||||
|
@ -14,7 +14,6 @@
|
||||
# along with this program; if not, write to the Free Software
|
||||
# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
|
||||
|
||||
if PLATFORM_NETWARE
|
||||
INCLUDES = -I$(srcdir)/../include -I../include -I..
|
||||
bin_PROGRAMS = mysqld_safe mysql_install_db mysql_test_run libmysql
|
||||
mysqld_safe_SOURCES= mysqld_safe.c my_manage.c
|
||||
@ -22,7 +21,27 @@ mysql_install_db_SOURCES= mysql_install_db.c my_manage.c
|
||||
mysql_test_run_SOURCES= mysql_test_run.c my_manage.c
|
||||
libmysql_SOURCES= libmysqlmain.c
|
||||
libmysql_LDADD = ../libmysql/.libs/libmysqlclient.a
|
||||
endif
|
||||
|
||||
netware_build_files = client/mysql.def client/mysqladmin.def \
|
||||
client/mysqlbinlog.def client/mysqlcheck.def \
|
||||
client/mysqldump.def client/mysqlimport.def \
|
||||
client/mysqlshow.def client/mysqltest.def \
|
||||
extra/mysql_install.def extra/my_print_defaults.def \
|
||||
extra/perror.def extra/replace.def \
|
||||
extra/resolveip.def isam/isamchk.def \
|
||||
isam/isamlog.def isam/pack_isam.def \
|
||||
libmysqld/libmysqld.def myisam/myisamchk.def \
|
||||
myisam/myisamlog.def myisam/myisampack.def \
|
||||
sql/mysqld.def sql/mysqld.xdc
|
||||
|
||||
link_sources:
|
||||
set -x; \
|
||||
for f in $(netware_build_files); do \
|
||||
rm -f $(srcdir)/../$$f; \
|
||||
org=`echo $$f | sed -e 's/.*\/\(.*\)/\1/g'`; \
|
||||
@LN_CP_F@ $(srcdir)/$$org $(srcdir)/../$$f; \
|
||||
done;
|
||||
|
||||
|
||||
# Don't update the files from bitkeeper
|
||||
%::SCCS/s.%
|
||||
|
@ -1,3 +1,6 @@
|
||||
CREATE DATABASE mysql;
|
||||
CREATE DATABASE test;
|
||||
|
||||
USE mysql;
|
||||
|
||||
CREATE TABLE db (Host char(60) binary DEFAULT '' NOT NULL, Db char(64) binary DEFAULT '' NOT NULL, User char(16) binary DEFAULT '' NOT NULL, Select_priv enum('N','Y') DEFAULT 'N' NOT NULL, Insert_priv enum('N','Y') DEFAULT 'N' NOT NULL, Update_priv enum('N','Y') DEFAULT 'N' NOT NULL, Delete_priv enum('N','Y') DEFAULT 'N' NOT NULL, Create_priv enum('N','Y') DEFAULT 'N' NOT NULL, Drop_priv enum('N','Y') DEFAULT 'N' NOT NULL, Grant_priv enum('N','Y') DEFAULT 'N' NOT NULL, References_priv enum('N','Y') DEFAULT 'N' NOT NULL, Index_priv enum('N','Y') DEFAULT 'N' NOT NULL, Alter_priv enum('N','Y') DEFAULT 'N' NOT NULL, Create_tmp_table_priv enum('N','Y') DEFAULT 'N' NOT NULL, Lock_tables_priv enum('N','Y') DEFAULT 'N' NOT NULL, PRIMARY KEY Host (Host,Db,User), KEY User (User)) comment='Database privileges';
|
||||
|
@ -2,7 +2,7 @@
|
||||
# ISAM Check
|
||||
#------------------------------------------------------------------------------
|
||||
MODULE libc.nlm
|
||||
COPYRIGHT "(c) 2002 Novell, Inc. Portions (c) 2002 MySQL AB. All Rights Reserved."
|
||||
COPYRIGHT "(c) 2003 Novell, Inc. Portions (c) 2003 MySQL AB. All Rights Reserved."
|
||||
DESCRIPTION "MySQL ISAM Table Check Tool"
|
||||
VERSION 4, 0
|
||||
STACKSIZE 65536
|
||||
|
@ -2,8 +2,8 @@
|
||||
# ISAM Log
|
||||
#------------------------------------------------------------------------------
|
||||
MODULE libc.nlm
|
||||
COPYRIGHT "(c) 2002 Novell, Inc. Portions (c) 2002 MySQL AB. All Rights Reserved."
|
||||
DESCRIPTION "ISAM Log"
|
||||
COPYRIGHT "(c) 2003 Novell, Inc. Portions (c) 2003 MySQL AB. All Rights Reserved."
|
||||
DESCRIPTION "MySQL ISAM Table Log Tool"
|
||||
VERSION 4, 0
|
||||
DEBUG
|
||||
|
||||
|
@ -3,7 +3,7 @@
|
||||
#------------------------------------------------------------------------------
|
||||
MODULE libc.nlm
|
||||
EXPORT @libmysql.imp
|
||||
COPYRIGHT "(c) 2002 Novell, Inc. Portions (c) 2002 MySQL AB. All Rights Reserved."
|
||||
COPYRIGHT "(c) 2003 Novell, Inc. Portions (c) 2003 MySQL AB. All Rights Reserved."
|
||||
DESCRIPTION "MySQL Client Library"
|
||||
VERSION 4, 0
|
||||
AUTOUNLOAD
|
||||
|
@ -2,7 +2,7 @@
|
||||
# My Print Defaults
|
||||
#------------------------------------------------------------------------------
|
||||
MODULE libc.nlm
|
||||
COPYRIGHT "(c) 2002 Novell, Inc. Portions (c) 2002 MySQL AB. All Rights Reserved."
|
||||
COPYRIGHT "(c) 2003 Novell, Inc. Portions (c) 2003 MySQL AB. All Rights Reserved."
|
||||
DESCRIPTION "MySQL Print Defaults Tool"
|
||||
VERSION 4, 0
|
||||
#DEBUG
|
||||
|
@ -2,7 +2,7 @@
|
||||
# MyISAM Check
|
||||
#------------------------------------------------------------------------------
|
||||
MODULE libc.nlm
|
||||
COPYRIGHT "(c) 2002 Novell, Inc. Portions (c) 2002 MySQL AB. All Rights Reserved."
|
||||
COPYRIGHT "(c) 2003 Novell, Inc. Portions (c) 2003 MySQL AB. All Rights Reserved."
|
||||
DESCRIPTION "MySQL MyISAM Table Check Tool"
|
||||
VERSION 4, 0
|
||||
STACKSIZE 65536
|
||||
|
@ -2,7 +2,7 @@
|
||||
# MyISAM Log
|
||||
#------------------------------------------------------------------------------
|
||||
MODULE libc.nlm
|
||||
COPYRIGHT "(c) 2002 Novell, Inc. Portions (c) 2002 MySQL AB. All Rights Reserved."
|
||||
COPYRIGHT "(c) 2003 Novell, Inc. Portions (c) 2003 MySQL AB. All Rights Reserved."
|
||||
DESCRIPTION "MySQL MyISAM Table Log Tool"
|
||||
VERSION 4, 0
|
||||
#DEBUG
|
||||
|
@ -2,7 +2,7 @@
|
||||
# MyISAM Pack
|
||||
#------------------------------------------------------------------------------
|
||||
MODULE libc.nlm
|
||||
COPYRIGHT "(c) 2002 Novell, Inc. Portions (c) 2002 MySQL AB. All Rights Reserved."
|
||||
COPYRIGHT "(c) 2003 Novell, Inc. Portions (c) 2003 MySQL AB. All Rights Reserved."
|
||||
DESCRIPTION "MySQL MyISAM Table Pack Tool"
|
||||
VERSION 4, 0
|
||||
#DEBUG
|
||||
|
@ -3,7 +3,7 @@
|
||||
#------------------------------------------------------------------------------
|
||||
MODULE libc.nlm
|
||||
SCREENNAME "MySQL Monitor"
|
||||
COPYRIGHT "(c) 2002 Novell, Inc. Portions (c) 2002 MySQL AB. All Rights Reserved."
|
||||
COPYRIGHT "(c) 2003 Novell, Inc. Portions (c) 2003 MySQL AB. All Rights Reserved."
|
||||
DESCRIPTION "MySQL Monitor"
|
||||
VERSION 4, 0
|
||||
MULTIPLE
|
||||
|
@ -312,20 +312,6 @@ void create_paths()
|
||||
{
|
||||
mkdir(datadir, 0);
|
||||
}
|
||||
|
||||
// mysql directory
|
||||
snprintf(temp, PATH_MAX, "%s/mysql", datadir);
|
||||
if (stat(temp, &info))
|
||||
{
|
||||
mkdir(temp, 0);
|
||||
}
|
||||
|
||||
// test directory
|
||||
snprintf(temp, PATH_MAX, "%s/test", datadir);
|
||||
if (stat(temp, &info))
|
||||
{
|
||||
mkdir(temp, 0);
|
||||
}
|
||||
}
|
||||
|
||||
/******************************************************************************
|
||||
|
@ -3,7 +3,7 @@
|
||||
#------------------------------------------------------------------------------
|
||||
MODULE libc.nlm
|
||||
SCREENNAME "MySQL Install"
|
||||
COPYRIGHT "(c) 2002 Novell, Inc. Portions (c) 2002 MySQL AB. All Rights Reserved."
|
||||
COPYRIGHT "(c) 2003 Novell, Inc. Portions (c) 2003 MySQL AB. All Rights Reserved."
|
||||
DESCRIPTION "MySQL Initial Database Installer"
|
||||
VERSION 4, 0
|
||||
#DEBUG
|
||||
|
@ -4,7 +4,7 @@
|
||||
MODULE libc.nlm
|
||||
STACKSIZE 65536
|
||||
SCREENNAME "MySQL Test Run"
|
||||
COPYRIGHT "(c) 2002 Novell, Inc. Portions (c) 2002 MySQL AB. All Rights Reserved."
|
||||
COPYRIGHT "(c) 2003 Novell, Inc. Portions (c) 2003 MySQL AB. All Rights Reserved."
|
||||
DESCRIPTION "MySQL Test Run"
|
||||
VERSION 4, 0
|
||||
#DEBUG
|
||||
|
@ -3,7 +3,7 @@
|
||||
#------------------------------------------------------------------------------
|
||||
MODULE libc.nlm
|
||||
SCREENNAME "MySQL Admin"
|
||||
COPYRIGHT "(c) 2002 Novell, Inc. Portions (c) 2002 MySQL AB. All Rights Reserved."
|
||||
COPYRIGHT "(c) 2003 Novell, Inc. Portions (c) 2003 MySQL AB. All Rights Reserved."
|
||||
DESCRIPTION "MySQL Admin Tool"
|
||||
VERSION 4, 0
|
||||
#DEBUG
|
||||
|
@ -2,7 +2,7 @@
|
||||
# MySQL Binary Log
|
||||
#------------------------------------------------------------------------------
|
||||
MODULE libc.nlm
|
||||
COPYRIGHT "(c) 2002 Novell, Inc. Portions (c) 2002 MySQL AB. All Rights Reserved."
|
||||
COPYRIGHT "(c) 2003 Novell, Inc. Portions (c) 2003 MySQL AB. All Rights Reserved."
|
||||
DESCRIPTION "MySQL Binary Log Dump Tool"
|
||||
VERSION 4, 0
|
||||
#DEBUG
|
||||
|
@ -2,7 +2,7 @@
|
||||
# MySQL Client
|
||||
#------------------------------------------------------------------------------
|
||||
MODULE libc.nlm
|
||||
COPYRIGHT "(c) 2002 Novell, Inc. Portions (c) 2002 MySQL AB. All Rights Reserved."
|
||||
COPYRIGHT "(c) 2003 Novell, Inc. Portions (c) 2003 MySQL AB. All Rights Reserved."
|
||||
DESCRIPTION "MySQL Check Tool"
|
||||
VERSION 4, 0
|
||||
#DEBUG
|
||||
|
@ -190,7 +190,7 @@ void finish_defaults()
|
||||
if (!err_log[0]) snprintf(err_log, PATH_MAX, "%s/%s.err", datadir, hostname);
|
||||
|
||||
// safe-log
|
||||
if (!safe_log[0]) snprintf(safe_log, PATH_MAX, "%s/%s.log", datadir, hostname);
|
||||
if (!safe_log[0]) snprintf(safe_log, PATH_MAX, "%s/%s.safe", datadir, hostname);
|
||||
|
||||
// mysqld
|
||||
if (!mysqld[0]) snprintf(mysqld, PATH_MAX, "%s/bin/mysqld-max", basedir);
|
||||
@ -364,7 +364,7 @@ void get_options(int argc, char *argv[])
|
||||
|
||||
// default file arguments
|
||||
init_args(al);
|
||||
add_arg(al, "dummy");
|
||||
add_arg(al, "ignore");
|
||||
read_defaults(al);
|
||||
parse_args(al->argc, al->argv);
|
||||
free_args(al);
|
||||
|
@ -2,7 +2,7 @@
|
||||
# MySQL Admin
|
||||
#------------------------------------------------------------------------------
|
||||
MODULE libc.nlm
|
||||
COPYRIGHT "(c) 2002 Novell, Inc. Portions (c) 2002 MySQL AB. All Rights Reserved."
|
||||
COPYRIGHT "(c) 2003 Novell, Inc. Portions (c) 2003 MySQL AB. All Rights Reserved."
|
||||
DESCRIPTION "MySQL Dump Tool"
|
||||
VERSION 4, 0
|
||||
#DEBUG
|
||||
|
@ -2,7 +2,7 @@
|
||||
# MySQL Client
|
||||
#------------------------------------------------------------------------------
|
||||
MODULE libc.nlm
|
||||
COPYRIGHT "(c) 2002 Novell, Inc. Portions (c) 2002 MySQL AB. All Rights Reserved."
|
||||
COPYRIGHT "(c) 2003 Novell, Inc. Portions (c) 2003 MySQL AB. All Rights Reserved."
|
||||
DESCRIPTION "MySQL Import Tool"
|
||||
VERSION 4, 0
|
||||
#DEBUG
|
||||
|
@ -3,7 +3,7 @@
|
||||
#------------------------------------------------------------------------------
|
||||
MODULE libc.nlm
|
||||
SCREENNAME "MySQL Show"
|
||||
COPYRIGHT "(c) 2002 Novell, Inc. Portions (c) 2002 MySQL AB. All Rights Reserved."
|
||||
COPYRIGHT "(c) 2003 Novell, Inc. Portions (c) 2003 MySQL AB. All Rights Reserved."
|
||||
DESCRIPTION "MySQL Show Tool"
|
||||
VERSION 4, 0
|
||||
#DEBUG
|
||||
|
@ -2,7 +2,7 @@
|
||||
# MySQL Admin
|
||||
#------------------------------------------------------------------------------
|
||||
MODULE libc.nlm
|
||||
COPYRIGHT "(c) 2002 Novell, Inc. Portions (c) 2002 MySQL AB. All Rights Reserved."
|
||||
COPYRIGHT "(c) 2003 Novell, Inc. Portions (c) 2003 MySQL AB. All Rights Reserved."
|
||||
DESCRIPTION "MySQL Test Case Tool"
|
||||
VERSION 4, 0
|
||||
#DEBUG
|
||||
|
@ -2,8 +2,8 @@
|
||||
# Pack ISAM
|
||||
#------------------------------------------------------------------------------
|
||||
MODULE libc.nlm
|
||||
COPYRIGHT "(c) 2002 Novell, Inc. Portions (c) 2002 MySQL AB. All Rights Reserved."
|
||||
DESCRIPTION "Pack ISAM"
|
||||
COPYRIGHT "(c) 2003 Novell, Inc. Portions (c) 2003 MySQL AB. All Rights Reserved."
|
||||
DESCRIPTION "MySQL ISAM Table Pack Tool"
|
||||
VERSION 4, 0
|
||||
DEBUG
|
||||
|
||||
|
@ -2,7 +2,7 @@
|
||||
# PERROR
|
||||
#------------------------------------------------------------------------------
|
||||
MODULE libc.nlm
|
||||
COPYRIGHT "(c) 2002 Novell, Inc. Portions (c) 2002 MySQL AB. All Rights Reserved."
|
||||
COPYRIGHT "(c) 2003 Novell, Inc. Portions (c) 2003 MySQL AB. All Rights Reserved."
|
||||
DESCRIPTION "MySQL Error Code Description Tool"
|
||||
VERSION 4, 0
|
||||
#DEBUG
|
||||
|
@ -2,7 +2,7 @@
|
||||
# Replace
|
||||
#------------------------------------------------------------------------------
|
||||
MODULE libc.nlm
|
||||
COPYRIGHT "(c) 2002 Novell, Inc. Portions (c) 2002 MySQL AB. All Rights Reserved."
|
||||
COPYRIGHT "(c) 2003 Novell, Inc. Portions (c) 2003 MySQL AB. All Rights Reserved."
|
||||
DESCRIPTION "MySQL Text Replacement Tool"
|
||||
VERSION 4, 0
|
||||
#DEBUG
|
||||
|
@ -2,7 +2,7 @@
|
||||
# Resolve IP
|
||||
#------------------------------------------------------------------------------
|
||||
MODULE libc.nlm
|
||||
COPYRIGHT "(c) 2002 Novell, Inc. Portions (c) 2002 MySQL AB. All Rights Reserved."
|
||||
COPYRIGHT "(c) 2003 Novell, Inc. Portions (c) 2003 MySQL AB. All Rights Reserved."
|
||||
DESCRIPTION "MySQL IP/Hostname Resolve Tool"
|
||||
VERSION 4, 0
|
||||
#DEBUG
|
||||
|
@ -1,3 +1,6 @@
|
||||
CREATE DATABASE mysql;
|
||||
CREATE DATABASE test;
|
||||
|
||||
USE mysql;
|
||||
|
||||
CREATE TABLE db (Host char(60) binary DEFAULT '' NOT NULL, Db char(64) binary DEFAULT '' NOT NULL, User char(16) binary DEFAULT '' NOT NULL, Select_priv enum('N','Y') DEFAULT 'N' NOT NULL, Insert_priv enum('N','Y') DEFAULT 'N' NOT NULL, Update_priv enum('N','Y') DEFAULT 'N' NOT NULL, Delete_priv enum('N','Y') DEFAULT 'N' NOT NULL, Create_priv enum('N','Y') DEFAULT 'N' NOT NULL, Drop_priv enum('N','Y') DEFAULT 'N' NOT NULL, Grant_priv enum('N','Y') DEFAULT 'N' NOT NULL, References_priv enum('N','Y') DEFAULT 'N' NOT NULL, Index_priv enum('N','Y') DEFAULT 'N' NOT NULL, Alter_priv enum('N','Y') DEFAULT 'N' NOT NULL, Create_tmp_table_priv enum('N','Y') DEFAULT 'N' NOT NULL, Lock_tables_priv enum('N','Y') DEFAULT 'N' NOT NULL, PRIMARY KEY Host (Host,Db,User), KEY User (User)) comment='Database privileges';
|
||||
|
@ -10,6 +10,7 @@ version=@VERSION@
|
||||
export machine system version
|
||||
SOURCE=`pwd`
|
||||
CP="cp -p"
|
||||
MV="mv"
|
||||
|
||||
STRIP=1
|
||||
DEBUG=0
|
||||
@ -58,7 +59,7 @@ case $system in
|
||||
MYSQL_SHARE=$BASE/share
|
||||
EXTRA_BIN_FILES="netware/mysqld_safe.nlm netware/mysql_install_db.nlm \
|
||||
netware/init_db.sql netware/test_db.sql netware/mysql_explain_log.nlm \
|
||||
netware/mysqlhotcopy.nlm netware/libmysql.nlm"
|
||||
netware/mysqlhotcopy.nlm netware/libmysql.nlm netware/init_secure_db.sql"
|
||||
;;
|
||||
esac
|
||||
|
||||
@ -122,7 +123,7 @@ do
|
||||
done
|
||||
|
||||
if [ $BASE_SYSTEM = "netware" ] ; then
|
||||
$CP -r netware/scripts/* $BASE/scripts
|
||||
$CP -r netware/*.pl $BASE/scripts
|
||||
fi
|
||||
|
||||
for i in libmysql/.libs/libmysqlclient.a libmysql/.libs/libmysqlclient.so* libmysql/libmysqlclient.* libmysql_r/.libs/libmysqlclient_r.a libmysql_r/.libs/libmysqlclient_r.so* libmysql_r/libmysqlclient_r.* mysys/libmysys.a strings/libmystrings.a dbug/libdbug.a libmysqld/.libs/libmysqld.a libmysqld/.libs/libmysqld.so* libmysqld/libmysqld.a netware/libmysql.imp
|
||||
@ -148,12 +149,15 @@ if [ $BASE_SYSTEM != "netware" ] ; then
|
||||
rm -f $BASE/include/config-netware.h
|
||||
fi
|
||||
|
||||
if [ -d tests ] ; then
|
||||
$CP tests/*.res tests/*.tst tests/*.pl $BASE/tests
|
||||
fi
|
||||
if [ -d man ] ; then
|
||||
$CP man/*.1 $BASE/man/man1
|
||||
if [ $BASE_SYSTEM != "netware" ] ; then
|
||||
if [ -d tests ] ; then
|
||||
$CP tests/*.res tests/*.tst tests/*.pl $BASE/tests
|
||||
fi
|
||||
if [ -d man ] ; then
|
||||
$CP man/*.1 $BASE/man/man1
|
||||
fi
|
||||
fi
|
||||
|
||||
$CP support-files/* $BASE/support-files
|
||||
|
||||
if [ $BASE_SYSTEM = "netware" ] ; then
|
||||
|
@ -272,6 +272,7 @@ echo "Starting $MYSQLD daemon with databases from $DATADIR"
|
||||
echo "`date +'%y%m%d %H:%M:%S mysqld started'`" >> $err_log
|
||||
while true
|
||||
do
|
||||
rm -f $MYSQL_UNIX_PORT $pid_file # Some extra safety
|
||||
if test -z "$args"
|
||||
then
|
||||
$NOHUP_NICENESS $ledir/$MYSQLD $defaults --basedir=$MY_BASEDIR_VERSION --datadir=$DATADIR $USER_OPTION --pid-file=$pid_file @MYSQLD_DEFAULT_SWITCHES@ >> $err_log 2>&1
|
||||
@ -310,7 +311,6 @@ do
|
||||
I=`expr $I + 1`
|
||||
done
|
||||
fi
|
||||
rm -f $MYSQL_UNIX_PORT $pid_file # Some extra safety
|
||||
echo "`date +'%y%m%d %H:%M:%S'` mysqld restarted" | tee -a $err_log
|
||||
done
|
||||
|
||||
|
@ -682,17 +682,18 @@ public:
|
||||
void update_used_tables()
|
||||
{
|
||||
if (!args[0]->maybe_null)
|
||||
used_tables_cache=0; /* is always false */
|
||||
{
|
||||
used_tables_cache= 0; /* is always false */
|
||||
cached_value= (longlong) 0;
|
||||
}
|
||||
else
|
||||
{
|
||||
args[0]->update_used_tables();
|
||||
used_tables_cache=args[0]->used_tables();
|
||||
}
|
||||
if (!used_tables_cache)
|
||||
{
|
||||
/* Remember if the value is always NULL or never NULL */
|
||||
args[0]->val();
|
||||
cached_value= args[0]->null_value ? (longlong) 1 : (longlong) 0;
|
||||
if (!(used_tables_cache=args[0]->used_tables()))
|
||||
{
|
||||
/* Remember if the value is always NULL or never NULL */
|
||||
cached_value= (longlong) args[0]->is_null();
|
||||
}
|
||||
}
|
||||
}
|
||||
optimize_type select_optimize() const { return OPTIMIZE_NULL; }
|
||||
|
@ -554,7 +554,7 @@ my_bool mysqld_show_warnings(THD *thd, ulong levels_to_show);
|
||||
/* sql_handler.cc */
|
||||
int mysql_ha_open(THD *thd, TABLE_LIST *tables);
|
||||
int mysql_ha_close(THD *thd, TABLE_LIST *tables, bool dont_send_ok=0);
|
||||
int mysql_ha_closeall(THD *thd, TABLE_LIST *tables, bool dont_send_ok=0);
|
||||
int mysql_ha_closeall(THD *thd, TABLE_LIST *tables);
|
||||
int mysql_ha_read(THD *, TABLE_LIST *,enum enum_ha_read_modes,char *,
|
||||
List<Item> *,enum ha_rkey_function,Item *,ha_rows,ha_rows);
|
||||
|
||||
|
@ -782,7 +782,7 @@ void kill_mysql(void)
|
||||
|
||||
#if defined(OS2) || defined(__NETWARE__)
|
||||
extern "C" void kill_server(int sig_ptr)
|
||||
#define RETURN_FROM_KILL_SERVER DBUG_RETURN
|
||||
#define RETURN_FROM_KILL_SERVER DBUG_VOID_RETURN
|
||||
#elif !defined(__WIN__)
|
||||
static void *kill_server(void *sig_ptr)
|
||||
#define RETURN_FROM_KILL_SERVER DBUG_RETURN(0)
|
||||
@ -799,9 +799,6 @@ static void __cdecl kill_server(int sig_ptr)
|
||||
RETURN_FROM_KILL_SERVER;
|
||||
kill_in_progress=TRUE;
|
||||
abort_loop=1; // This should be set
|
||||
#ifdef __NETWARE__
|
||||
ActivateScreen(getscreenhandle()); // Show the screen going down
|
||||
#endif
|
||||
signal(sig,SIG_IGN);
|
||||
if (sig == MYSQL_KILL_SIGNAL || sig == 0)
|
||||
sql_print_error(ER(ER_NORMAL_SHUTDOWN),my_progname);
|
||||
@ -1427,7 +1424,6 @@ static void check_data_home(const char *path)
|
||||
// down server event callback
|
||||
void mysql_down_server_cb(void *, void *)
|
||||
{
|
||||
setscreenmode(SCR_AUTOCLOSE_ON_EXIT); // auto close the screen
|
||||
kill_server(0);
|
||||
}
|
||||
|
||||
@ -1483,26 +1479,6 @@ static void start_signal_handler(void)
|
||||
|
||||
static void check_data_home(const char *path)
|
||||
{
|
||||
struct volume_info vol;
|
||||
char buff[PATH_MAX], *pos;
|
||||
|
||||
bzero((char*) &vol, sizeof(vol)); // clear struct
|
||||
|
||||
// find volume name
|
||||
if ((pos= strchr(path, ':')))
|
||||
{
|
||||
uint length= (uint) (pos-path);
|
||||
strmake(buff, path, min(length, sizeof(buff)-1));
|
||||
}
|
||||
else
|
||||
strmov(buff, "SYS"); // assume SYS volume
|
||||
|
||||
netware_vol_info_from_name(&vol, buff); // retrieve information
|
||||
if ((vol.flags & VOL_NSS_PRESENT) == 0)
|
||||
{
|
||||
sql_print_error("Error: %s is not on an NSS volume!", path);
|
||||
unireg_abort(-1);
|
||||
}
|
||||
}
|
||||
|
||||
#elif defined(__EMX__)
|
||||
@ -2019,11 +1995,6 @@ static int init_common_variables(const char *conf_file_name, int argc,
|
||||
max_system_variables.pseudo_thread_id= (ulong)~0;
|
||||
start_time=time((time_t*) 0);
|
||||
|
||||
#ifdef __NETWARE__
|
||||
printf("MySQL Server %s, for %s (%s)\n", VERSION, SYSTEM_TYPE, MACHINE_TYPE);
|
||||
fflush(stdout);
|
||||
#endif /* __NETWARE__ */
|
||||
|
||||
#ifdef OS2
|
||||
{
|
||||
// fix timezone for daylight saving
|
||||
@ -2849,7 +2820,11 @@ inline void kill_broken_server()
|
||||
(!opt_disable_networking && ip_sock == INVALID_SOCKET))
|
||||
{
|
||||
select_thread_in_use = 0;
|
||||
#ifdef __NETWARE__
|
||||
kill_server(MYSQL_KILL_SIGNAL); /* never returns */
|
||||
#else
|
||||
kill_server((void*)MYSQL_KILL_SIGNAL); /* never returns */
|
||||
#endif /* __NETWARE__ */
|
||||
}
|
||||
}
|
||||
#define MAYBE_BROKEN_SYSCALL kill_broken_server();
|
||||
@ -3487,7 +3462,6 @@ enum options
|
||||
OPT_BDB_LOG_BUFFER_SIZE,
|
||||
OPT_BDB_MAX_LOCK,
|
||||
OPT_ERROR_LOG_FILE,
|
||||
OPT_AUTOCLOSE,
|
||||
OPT_ENABLE_SHARED_MEMORY,
|
||||
OPT_SHARED_MEMORY_BASE_NAME,
|
||||
OPT_OLD_PASSWORDS
|
||||
@ -3500,9 +3474,6 @@ struct my_option my_long_options[] =
|
||||
{
|
||||
{"ansi", 'a', "Use ANSI SQL syntax instead of MySQL syntax", 0, 0, 0,
|
||||
GET_NO_ARG, NO_ARG, 0, 0, 0, 0, 0, 0},
|
||||
#ifdef __NETWARE__
|
||||
{"autoclose", OPT_AUTOCLOSE, "Auto close screen. (NetWare only)", 0, 0, 0, GET_NO_ARG, NO_ARG, 0, 0, 0, 0, 0, 0},
|
||||
#endif /* __NETWARE__ */
|
||||
{"basedir", 'b',
|
||||
"Path to installation directory. All paths are usually resolved relative to this.",
|
||||
(gptr*) &mysql_home_ptr, (gptr*) &mysql_home_ptr, 0, GET_STR, REQUIRED_ARG,
|
||||
@ -4890,11 +4861,6 @@ get_one_option(int optid, const struct my_option *opt __attribute__((unused)),
|
||||
if (opt_console)
|
||||
opt_error_log= 0; // Force logs to stdout
|
||||
break;
|
||||
#ifdef __NETWARE__
|
||||
case (int) OPT_AUTOCLOSE:
|
||||
setscreenmode(SCR_AUTOCLOSE_ON_EXIT);
|
||||
break;
|
||||
#endif
|
||||
case (int) OPT_FLUSH:
|
||||
#ifdef HAVE_ISAM
|
||||
nisam_flush=1;
|
||||
|
@ -45,7 +45,8 @@ void init_read_record(READ_RECORD *info,THD *thd, TABLE *table,
|
||||
info->ref_length=table->file->ref_length;
|
||||
info->select=select;
|
||||
info->print_error=print_error;
|
||||
table->status=0; /* And it's allways found */
|
||||
info->ignore_not_found_rows= 0;
|
||||
table->status=0; /* And it's always found */
|
||||
|
||||
if (select && my_b_inited(&select->file))
|
||||
tempfile= &select->file;
|
||||
@ -184,7 +185,8 @@ tryNext:
|
||||
{
|
||||
if (tmp == HA_ERR_END_OF_FILE)
|
||||
tmp= -1;
|
||||
else if (tmp == HA_ERR_RECORD_DELETED)
|
||||
else if (tmp == HA_ERR_RECORD_DELETED ||
|
||||
(tmp == HA_ERR_KEY_NOT_FOUND && info->ignore_not_found_rows))
|
||||
goto tryNext;
|
||||
else
|
||||
{
|
||||
@ -212,7 +214,8 @@ tryNext:
|
||||
{
|
||||
if (tmp == HA_ERR_END_OF_FILE)
|
||||
tmp= -1;
|
||||
else if (tmp == HA_ERR_RECORD_DELETED)
|
||||
else if (tmp == HA_ERR_RECORD_DELETED ||
|
||||
(tmp == HA_ERR_KEY_NOT_FOUND && info->ignore_not_found_rows))
|
||||
goto tryNext;
|
||||
else
|
||||
{
|
||||
|
@ -411,6 +411,7 @@ void multi_delete::send_error(uint errcode,const char *err)
|
||||
int multi_delete::do_deletes(bool from_send_error)
|
||||
{
|
||||
int local_error= 0, counter= 0;
|
||||
DBUG_ENTER("do_deletes");
|
||||
|
||||
if (from_send_error)
|
||||
{
|
||||
@ -436,7 +437,12 @@ int multi_delete::do_deletes(bool from_send_error)
|
||||
}
|
||||
|
||||
READ_RECORD info;
|
||||
init_read_record(&info,thd,table,NULL,0,0);
|
||||
init_read_record(&info,thd,table,NULL,0,1);
|
||||
/*
|
||||
Ignore any rows not found in reference tables as they may already have
|
||||
been deleted by foreign key handling
|
||||
*/
|
||||
info.ignore_not_found_rows= 1;
|
||||
while (!(local_error=info.read_record(&info)) && !thd->killed)
|
||||
{
|
||||
if ((local_error=table->file->delete_row(table->record[0])))
|
||||
@ -450,7 +456,7 @@ int multi_delete::do_deletes(bool from_send_error)
|
||||
if (local_error == -1) // End of file
|
||||
local_error = 0;
|
||||
}
|
||||
return local_error;
|
||||
DBUG_RETURN(local_error);
|
||||
}
|
||||
|
||||
|
||||
|
@ -86,18 +86,11 @@ int mysql_ha_close(THD *thd, TABLE_LIST *tables, bool dont_send_ok)
|
||||
return 0;
|
||||
}
|
||||
|
||||
int mysql_ha_closeall(THD *thd, TABLE_LIST *tables, bool dont_send_ok)
|
||||
int mysql_ha_closeall(THD *thd, TABLE_LIST *tables)
|
||||
{
|
||||
TABLE **ptr=find_table_ptr_by_name(thd, tables->db, tables->real_name, 0);
|
||||
|
||||
DBUG_ASSERT(dont_send_ok);
|
||||
if (*ptr)
|
||||
{
|
||||
// if (!dont_send_ok) VOID(pthread_mutex_lock(&LOCK_open));
|
||||
close_thread_table(thd, ptr);
|
||||
// if (!dont_send_ok) VOID(pthread_mutex_unlock(&LOCK_open));
|
||||
}
|
||||
// if (!dont_send_ok) send_ok(&thd->net);
|
||||
return 0;
|
||||
}
|
||||
|
||||
|
@ -191,7 +191,7 @@ int mysql_rm_table_part2(THD *thd, TABLE_LIST *tables, bool if_exists,
|
||||
for (table=tables ; table ; table=table->next)
|
||||
{
|
||||
char *db=table->db ? table->db : thd->db;
|
||||
mysql_ha_closeall(thd, table, 1);
|
||||
mysql_ha_closeall(thd, table);
|
||||
if (!close_temporary_table(thd, db, table->real_name))
|
||||
{
|
||||
tmp_table_deleted=1;
|
||||
|
@ -106,7 +106,7 @@ typedef struct st_read_record { /* Parameter to read_record */
|
||||
byte *record;
|
||||
byte *cache,*cache_pos,*cache_end,*read_positions;
|
||||
IO_CACHE *io_cache;
|
||||
bool print_error;
|
||||
bool print_error, ignore_not_found_rows;
|
||||
} READ_RECORD;
|
||||
|
||||
enum timestamp_type { TIMESTAMP_NONE, TIMESTAMP_DATE, TIMESTAMP_FULL,
|
||||
|
Loading…
x
Reference in New Issue
Block a user