mirror of
https://github.com/MariaDB/server.git
synced 2025-07-27 18:02:13 +03:00
Fixed multi-table-delete for InnoDB tables
Novell patches
This commit is contained in:
15
Makefile.am
15
Makefile.am
@ -24,15 +24,15 @@ EXTRA_DIST = INSTALL-SOURCE README \
|
|||||||
SUBDIRS = . include @docs_dirs@ @readline_dir@ \
|
SUBDIRS = . include @docs_dirs@ @readline_dir@ \
|
||||||
@thread_dirs@ pstack @sql_client_dirs@ \
|
@thread_dirs@ pstack @sql_client_dirs@ \
|
||||||
@sql_server_dirs@ scripts man tests \
|
@sql_server_dirs@ scripts man tests \
|
||||||
BUILD netware os2 @libmysqld_dirs@ \
|
BUILD @netware_dir@ os2 @libmysqld_dirs@ \
|
||||||
@bench_dirs@ support-files @fs_dirs@ @tools_dirs@ \
|
@bench_dirs@ support-files @fs_dirs@ @tools_dirs@
|
||||||
@platform_dir@
|
|
||||||
|
|
||||||
# Relink after clean
|
# Relink after clean
|
||||||
linked_sources = linked_client_sources linked_server_sources \
|
linked_sources = linked_client_sources linked_server_sources \
|
||||||
linked_libmysql_sources linked_libmysql_r_sources \
|
linked_libmysql_sources linked_libmysql_r_sources \
|
||||||
linked_libmysqld_sources linked_libmysqldex_sources \
|
linked_libmysqld_sources linked_libmysqldex_sources \
|
||||||
linked_include_sources
|
linked_include_sources @linked_netware_sources@
|
||||||
|
|
||||||
CLEANFILES = $(linked_sources)
|
CLEANFILES = $(linked_sources)
|
||||||
|
|
||||||
@ -63,6 +63,10 @@ linked_libmysqldex_sources:
|
|||||||
cd libmysqld/examples; $(MAKE) link_sources
|
cd libmysqld/examples; $(MAKE) link_sources
|
||||||
echo timestamp > linked_libmysqldex_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
|
#avoid recursive make calls in sql directory
|
||||||
linked_server_sources:
|
linked_server_sources:
|
||||||
cd sql; rm -f mini_client_errors.c;@LN_CP_F@ ../libmysql/errmsg.c mini_client_errors.c
|
cd sql; rm -f mini_client_errors.c;@LN_CP_F@ ../libmysql/errmsg.c mini_client_errors.c
|
||||||
@ -73,7 +77,7 @@ init-db: all
|
|||||||
$(top_builddir)/scripts/mysql_install_db
|
$(top_builddir)/scripts/mysql_install_db
|
||||||
|
|
||||||
bin-dist: all
|
bin-dist: all
|
||||||
$(top_builddir)/scripts/make_binary_distribution
|
$(top_builddir)/scripts/make_binary_distribution @MAKE_BINARY_DISTRIBUTION_OPTIONS@
|
||||||
|
|
||||||
tags:
|
tags:
|
||||||
support-files/build-tags
|
support-files/build-tags
|
||||||
@ -83,3 +87,4 @@ tags:
|
|||||||
|
|
||||||
test:
|
test:
|
||||||
cd mysql-test ; ./mysql-test-run
|
cd mysql-test ; ./mysql-test-run
|
||||||
|
|
||||||
|
@ -1702,6 +1702,9 @@ print_table_data_xml(MYSQL_RES *result)
|
|||||||
{
|
{
|
||||||
MYSQL_ROW cur;
|
MYSQL_ROW cur;
|
||||||
MYSQL_FIELD *fields;
|
MYSQL_FIELD *fields;
|
||||||
|
#ifdef __NETWARE__
|
||||||
|
uint lines= 0;
|
||||||
|
#endif
|
||||||
|
|
||||||
mysql_field_seek(result,0);
|
mysql_field_seek(result,0);
|
||||||
|
|
||||||
|
61
configure.in
61
configure.in
@ -38,10 +38,10 @@ rm -f $AVAILABLE_LANGUAGES_ERRORS_RULES
|
|||||||
for i in $AVAILABLE_LANGUAGES
|
for i in $AVAILABLE_LANGUAGES
|
||||||
do
|
do
|
||||||
AVAILABLE_LANGUAGES_ERRORS="$AVAILABLE_LANGUAGES_ERRORS $i/errmsg.sys"
|
AVAILABLE_LANGUAGES_ERRORS="$AVAILABLE_LANGUAGES_ERRORS $i/errmsg.sys"
|
||||||
case $SYSTEM_TYPE in
|
case $host_os in
|
||||||
*netware* | *modesto*)
|
netware* | modesto*)
|
||||||
echo "$i/errmsg.sys: $i/errmsg.txt
|
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
|
>> $AVAILABLE_LANGUAGES_ERRORS_RULES
|
||||||
;;
|
;;
|
||||||
*)
|
*)
|
||||||
@ -1067,7 +1067,10 @@ dnl Is this the right match for DEC OSF on alpha?
|
|||||||
*netware*)
|
*netware*)
|
||||||
# No need for curses library so set it to null
|
# No need for curses library so set it to null
|
||||||
with_named_curses=""
|
with_named_curses=""
|
||||||
PLATFORM_NETWARE=yes
|
|
||||||
|
# No thread library - in LibC
|
||||||
|
with_named_thread=""
|
||||||
|
|
||||||
#
|
#
|
||||||
# Edit Makefile.in files.
|
# Edit Makefile.in files.
|
||||||
#
|
#
|
||||||
@ -1089,36 +1092,36 @@ dnl Is this the right match for DEC OSF on alpha?
|
|||||||
fi
|
fi
|
||||||
case $file in
|
case $file in
|
||||||
sql/Makefile.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
|
# Add library dependencies to mysqld_DEPENDENCIES
|
||||||
lib_DEPENDENCIES="\$(bdb_libs_with_path) \$(innodb_libs) \$(pstack_libs) \$(innodb_system_libs) \$(openssl_libs)"
|
lib_DEPENDENCIES="\$(bdb_libs_with_path) \$(innodb_libs) \$(pstack_libs) \$(innodb_system_libs) \$(openssl_libs)"
|
||||||
cat > $filesed << EOF
|
cat > $filesed << EOF
|
||||||
s,\(^.*\$(MAKE) gen_lex_hash\),#\1,
|
s,\(^.*\$(MAKE) gen_lex_hash\),#\1,
|
||||||
s,\(\./gen_lex_hash\),\1.cyg,
|
s,\(\./gen_lex_hash\),\1.linux,
|
||||||
s%\(mysqld_DEPENDENCIES = \) %\1$lib_DEPENDENCIES %
|
s%\(mysqld_DEPENDENCIES = \) %\1$lib_DEPENDENCIES %
|
||||||
EOF
|
EOF
|
||||||
;;
|
;;
|
||||||
sql/share/Makefile.in)
|
sql/share/Makefile.in)
|
||||||
cat > $filesed << EOF
|
cat > $filesed << EOF
|
||||||
s,\(extra/comp_err\),\1.cyg,
|
s,\(extra/comp_err\),\1.linux,
|
||||||
EOF
|
EOF
|
||||||
;;
|
;;
|
||||||
libmysql/Makefile.in)
|
libmysql/Makefile.in)
|
||||||
cat > $filesed << EOF
|
cat > $filesed << EOF
|
||||||
s,\(\./conf_to_src\)\( \$(top_srcdir)\),\1.cyg\2,
|
s,\(\./conf_to_src\)\( \$(top_srcdir)\),\1.linux\2,
|
||||||
s,\(: conf_to_src\),\1.cyg,
|
s,\(: conf_to_src\),\1.linux,
|
||||||
EOF
|
EOF
|
||||||
;;
|
;;
|
||||||
libmysql_r/Makefile.in)
|
libmysql_r/Makefile.in)
|
||||||
cat > $filesed << EOF
|
cat > $filesed << EOF
|
||||||
s,\(\./conf_to_src\)\( \$(top_srcdir)\),\1.cyg\2,
|
s,\(\./conf_to_src\)\( \$(top_srcdir)\),\1.linux\2,
|
||||||
s,\(: conf_to_src\),\1.cyg,
|
s,\(: conf_to_src\),\1.linux,
|
||||||
EOF
|
EOF
|
||||||
;;
|
;;
|
||||||
strings/Makefile.in)
|
strings/Makefile.in)
|
||||||
cat > $filesed << EOF
|
cat > $filesed << EOF
|
||||||
s,\(\./conf_to_src\)\( \$(top_srcdir)\),\1.cyg\2,
|
s,\(\./conf_to_src\)\( \$(top_srcdir)\),\1.linux\2,
|
||||||
s,\(: conf_to_src\),\1.cyg,
|
s,\(: conf_to_src\),\1.linux,
|
||||||
EOF
|
EOF
|
||||||
;;
|
;;
|
||||||
client/Makefile.in)
|
client/Makefile.in)
|
||||||
@ -1167,7 +1170,6 @@ EOF
|
|||||||
;;
|
;;
|
||||||
esac
|
esac
|
||||||
|
|
||||||
AM_CONDITIONAL(PLATFORM_NETWARE, test "$PLATFORM_NETWARE" = "yes")
|
|
||||||
|
|
||||||
#---START: Used in for client configure
|
#---START: Used in for client configure
|
||||||
# Check if we threads are in libc or if we should use
|
# Check if we threads are in libc or if we should use
|
||||||
@ -2195,13 +2197,6 @@ AC_ARG_WITH(extra-charsets,
|
|||||||
[extra_charsets="$withval"],
|
[extra_charsets="$withval"],
|
||||||
[extra_charsets="none"])
|
[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")
|
AC_MSG_CHECKING("character sets")
|
||||||
|
|
||||||
if test "$extra_charsets" = none; then
|
if test "$extra_charsets" = none; then
|
||||||
@ -2440,12 +2435,15 @@ AC_SUBST(CLIENT_LIBS)
|
|||||||
AC_SUBST(sql_client_dirs)
|
AC_SUBST(sql_client_dirs)
|
||||||
AC_SUBST(linked_client_targets)
|
AC_SUBST(linked_client_targets)
|
||||||
|
|
||||||
platform_dir=
|
# If configuring for NetWare, set up to link sources from and build the netware directory
|
||||||
if test "$with_platform_dir" != "no"
|
netware_dir=
|
||||||
then
|
linked_netware_sources=
|
||||||
platform_dir="$with_platform_dir"
|
if expr "$SYSTEM_TYPE" : ".*netware.*" > /dev/null; then
|
||||||
|
netware_dir="netware"
|
||||||
|
linked_netware_sources="linked_netware_sources"
|
||||||
fi
|
fi
|
||||||
AC_SUBST(platform_dir)
|
AC_SUBST(netware_dir)
|
||||||
|
AC_SUBST(linked_netware_sources)
|
||||||
|
|
||||||
if test "$with_server" = "yes" -o "$THREAD_SAFE_CLIENT" != "no"
|
if test "$with_server" = "yes" -o "$THREAD_SAFE_CLIENT" != "no"
|
||||||
then
|
then
|
||||||
@ -2612,6 +2610,17 @@ AC_SUBST(GXX)
|
|||||||
#Remove TOOLS_LIBS, because this is included in LIBRARIES
|
#Remove TOOLS_LIBS, because this is included in LIBRARIES
|
||||||
#AC_SUBST(TOOLS_LIBS)
|
#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
|
# Output results
|
||||||
AC_OUTPUT(Makefile extra/Makefile mysys/Makefile isam/Makefile dnl
|
AC_OUTPUT(Makefile extra/Makefile mysys/Makefile isam/Makefile dnl
|
||||||
strings/Makefile regex/Makefile heap/Makefile dnl
|
strings/Makefile regex/Makefile heap/Makefile dnl
|
||||||
|
@ -16,6 +16,8 @@
|
|||||||
|
|
||||||
/* Wait until a program dies */
|
/* Wait until a program dies */
|
||||||
|
|
||||||
|
#ifndef __NETWARE__
|
||||||
|
|
||||||
#include <my_global.h>
|
#include <my_global.h>
|
||||||
#include <m_string.h>
|
#include <m_string.h>
|
||||||
#include <my_getopt.h>
|
#include <my_getopt.h>
|
||||||
@ -101,3 +103,15 @@ void usage(void)
|
|||||||
my_print_help(my_long_options);
|
my_print_help(my_long_options);
|
||||||
exit(-1);
|
exit(-1);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
#else
|
||||||
|
|
||||||
|
#include <stdio.h>
|
||||||
|
|
||||||
|
main()
|
||||||
|
{
|
||||||
|
fprintf(stderr,"This tool has not been ported to NetWare\n");
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
#endif /* __NETWARE__ */
|
||||||
|
@ -430,7 +430,7 @@ struct tm *localtime_r(const time_t *clock, struct tm *res);
|
|||||||
#define pthread_kill(A,B) pthread_dummy(0)
|
#define pthread_kill(A,B) pthread_dummy(0)
|
||||||
#undef pthread_detach_this_thread
|
#undef pthread_detach_this_thread
|
||||||
#define pthread_detach_this_thread() { pthread_t tmp=pthread_self() ; pthread_detach(&tmp); }
|
#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
|
#define HAVE_PTHREAD_KILL
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
@ -422,7 +422,7 @@ int STDCALL mysql_drop_db(MYSQL *mysql, const char *DB);
|
|||||||
int simple_command(MYSQL *mysql,enum enum_server_command command,
|
int simple_command(MYSQL *mysql,enum enum_server_command command,
|
||||||
const char *arg, unsigned long length, my_bool skipp_check);
|
const char *arg, unsigned long length, my_bool skipp_check);
|
||||||
unsigned long net_safe_read(MYSQL* mysql);
|
unsigned long net_safe_read(MYSQL* mysql);
|
||||||
void STDCALL mysql_once_init(void);
|
void mysql_once_init(void);
|
||||||
|
|
||||||
#ifdef __NETWARE__
|
#ifdef __NETWARE__
|
||||||
#pragma pack(pop) /* restore alignment */
|
#pragma pack(pop) /* restore alignment */
|
||||||
|
@ -536,7 +536,8 @@ char* getlogin(void);
|
|||||||
/* default to "root" on NetWare */
|
/* default to "root" on NetWare */
|
||||||
static void read_user_name(char *name)
|
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)
|
#elif !defined(MSDOS) && ! defined(VMS) && !defined(__WIN__) && !defined(OS2)
|
||||||
@ -1427,7 +1428,7 @@ mysql_init(MYSQL *mysql)
|
|||||||
outside program.
|
outside program.
|
||||||
*/
|
*/
|
||||||
|
|
||||||
void STDCALL mysql_once_init(void)
|
void mysql_once_init(void)
|
||||||
{
|
{
|
||||||
if (!mysql_client_init)
|
if (!mysql_client_init)
|
||||||
{
|
{
|
||||||
|
@ -62,7 +62,7 @@ my_string mysql_unix_port=0;
|
|||||||
#define closesocket(A) close(A)
|
#define closesocket(A) close(A)
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
void STDCALL mysql_once_init(void);
|
static void mysql_once_init(void);
|
||||||
static MYSQL_DATA *read_rows (MYSQL *mysql,MYSQL_FIELD *fields,
|
static MYSQL_DATA *read_rows (MYSQL *mysql,MYSQL_FIELD *fields,
|
||||||
uint field_count);
|
uint field_count);
|
||||||
static int read_one_row(MYSQL *mysql,uint fields,MYSQL_ROW row,
|
static int read_one_row(MYSQL *mysql,uint fields,MYSQL_ROW row,
|
||||||
|
@ -331,6 +331,7 @@ while test $# -gt 0; do
|
|||||||
EXTRA_SLAVE_MYSQLD_OPT="$EXTRA_SLAVE_MYSQLD_OPT --skip-safemalloc"
|
EXTRA_SLAVE_MYSQLD_OPT="$EXTRA_SLAVE_MYSQLD_OPT --skip-safemalloc"
|
||||||
SLEEP_TIME_AFTER_RESTART=10
|
SLEEP_TIME_AFTER_RESTART=10
|
||||||
SLEEP_TIME_FOR_DELETE=120
|
SLEEP_TIME_FOR_DELETE=120
|
||||||
|
USE_RUNNING_SERVER=""
|
||||||
;;
|
;;
|
||||||
--valgrind-options=*)
|
--valgrind-options=*)
|
||||||
TMP=`$ECHO "$1" | $SED -e "s;--valgrind-options=;;"`
|
TMP=`$ECHO "$1" | $SED -e "s;--valgrind-options=;;"`
|
||||||
|
@ -1058,3 +1058,13 @@ create table t2 (b varchar(10) not null unique) type=innodb;
|
|||||||
select t1.a from t1,t2 where t1.a=t2.b;
|
select t1.a from t1,t2 where t1.a=t2.b;
|
||||||
a
|
a
|
||||||
drop table t1,t2;
|
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;
|
||||||
|
@ -8,7 +8,7 @@ drop table if exists t1,t2,t3;
|
|||||||
create table t1 (word char(20) not null);
|
create table t1 (word char(20) not null);
|
||||||
load data infile '../../std_data/words.dat' into table t1;
|
load data infile '../../std_data/words.dat' into table t1;
|
||||||
load data local infile 'MYSQL_TEST_DIR/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
|
word
|
||||||
Aarhus
|
Aarhus
|
||||||
Aaron
|
Aaron
|
||||||
@ -20,16 +20,6 @@ abandoned
|
|||||||
abandoning
|
abandoning
|
||||||
abandonment
|
abandonment
|
||||||
abandons
|
abandons
|
||||||
Aarhus
|
|
||||||
Aaron
|
|
||||||
Ababa
|
|
||||||
aback
|
|
||||||
abaft
|
|
||||||
abandon
|
|
||||||
abandoned
|
|
||||||
abandoning
|
|
||||||
abandonment
|
|
||||||
abandons
|
|
||||||
slave stop;
|
slave stop;
|
||||||
set password for root@"localhost" = password('foo');
|
set password for root@"localhost" = password('foo');
|
||||||
slave start;
|
slave start;
|
||||||
@ -42,7 +32,7 @@ n
|
|||||||
2
|
2
|
||||||
select sum(length(word)) from t1;
|
select sum(length(word)) from t1;
|
||||||
sum(length(word))
|
sum(length(word))
|
||||||
141
|
1021
|
||||||
drop table t1,t3;
|
drop table t1,t3;
|
||||||
reset master;
|
reset master;
|
||||||
slave stop;
|
slave stop;
|
||||||
|
@ -23,7 +23,7 @@ Table Op Msg_type Msg_text
|
|||||||
test.t1 check status OK
|
test.t1 check status OK
|
||||||
select count(*) from t2;
|
select count(*) from t2;
|
||||||
count(*)
|
count(*)
|
||||||
10
|
70
|
||||||
select count(*) from t3;
|
select count(*) from t3;
|
||||||
count(*)
|
count(*)
|
||||||
0
|
0
|
||||||
|
@ -22,9 +22,9 @@ master-bin.001 172 Intvar 1 172 INSERT_ID=1
|
|||||||
master-bin.001 200 Query 1 200 use test; insert into t1 values (NULL)
|
master-bin.001 200 Query 1 200 use test; insert into t1 values (NULL)
|
||||||
master-bin.001 263 Query 1 263 use test; drop table t1
|
master-bin.001 263 Query 1 263 use test; drop table t1
|
||||||
master-bin.001 311 Query 1 311 use test; create table t1 (word char(20) not null)
|
master-bin.001 311 Query 1 311 use test; create table t1 (word char(20) not null)
|
||||||
master-bin.001 386 Create_file 1 386 db=test;table=t1;file_id=1;block_len=81
|
master-bin.001 386 Create_file 1 386 db=test;table=t1;file_id=1;block_len=581
|
||||||
master-bin.001 556 Exec_load 1 556 ;file_id=1
|
master-bin.001 1056 Exec_load 1 1056 ;file_id=1
|
||||||
master-bin.001 579 Query 1 579 use test; drop table t1
|
master-bin.001 1079 Query 1 1079 use test; drop table t1
|
||||||
show binlog events from 79 limit 1;
|
show binlog events from 79 limit 1;
|
||||||
Log_name Pos Event_type Server_id Orig_log_pos Info
|
Log_name Pos Event_type Server_id Orig_log_pos Info
|
||||||
master-bin.001 79 Query 1 79 use test; create table t1(n int not null auto_increment primary key)
|
master-bin.001 79 Query 1 79 use test; create table t1(n int not null auto_increment primary key)
|
||||||
@ -50,10 +50,10 @@ master-bin.001 172 Intvar 1 172 INSERT_ID=1
|
|||||||
master-bin.001 200 Query 1 200 use test; insert into t1 values (NULL)
|
master-bin.001 200 Query 1 200 use test; insert into t1 values (NULL)
|
||||||
master-bin.001 263 Query 1 263 use test; drop table t1
|
master-bin.001 263 Query 1 263 use test; drop table t1
|
||||||
master-bin.001 311 Query 1 311 use test; create table t1 (word char(20) not null)
|
master-bin.001 311 Query 1 311 use test; create table t1 (word char(20) not null)
|
||||||
master-bin.001 386 Create_file 1 386 db=test;table=t1;file_id=1;block_len=81
|
master-bin.001 386 Create_file 1 386 db=test;table=t1;file_id=1;block_len=581
|
||||||
master-bin.001 556 Exec_load 1 556 ;file_id=1
|
master-bin.001 1056 Exec_load 1 1056 ;file_id=1
|
||||||
master-bin.001 579 Query 1 579 use test; drop table t1
|
master-bin.001 1079 Query 1 1079 use test; drop table t1
|
||||||
master-bin.001 627 Rotate 1 627 master-bin.002;pos=4
|
master-bin.001 1127 Rotate 1 1127 master-bin.002;pos=4
|
||||||
show binlog events in 'master-bin.002';
|
show binlog events in 'master-bin.002';
|
||||||
Log_name Pos Event_type Server_id Orig_log_pos Info
|
Log_name Pos Event_type Server_id Orig_log_pos Info
|
||||||
master-bin.002 4 Query 1 4 use test; create table t1 (n int)
|
master-bin.002 4 Query 1 4 use test; create table t1 (n int)
|
||||||
@ -76,10 +76,10 @@ slave-bin.001 172 Intvar 1 172 INSERT_ID=1
|
|||||||
slave-bin.001 200 Query 1 200 use test; insert into t1 values (NULL)
|
slave-bin.001 200 Query 1 200 use test; insert into t1 values (NULL)
|
||||||
slave-bin.001 263 Query 1 263 use test; drop table t1
|
slave-bin.001 263 Query 1 263 use test; drop table t1
|
||||||
slave-bin.001 311 Query 1 311 use test; create table t1 (word char(20) not null)
|
slave-bin.001 311 Query 1 311 use test; create table t1 (word char(20) not null)
|
||||||
slave-bin.001 386 Create_file 1 386 db=test;table=t1;file_id=1;block_len=81
|
slave-bin.001 386 Create_file 1 386 db=test;table=t1;file_id=1;block_len=581
|
||||||
slave-bin.001 565 Exec_load 1 556 ;file_id=1
|
slave-bin.001 1065 Exec_load 1 1056 ;file_id=1
|
||||||
slave-bin.001 588 Query 1 579 use test; drop table t1
|
slave-bin.001 1088 Query 1 1079 use test; drop table t1
|
||||||
slave-bin.001 636 Rotate 2 636 slave-bin.002;pos=4
|
slave-bin.001 1136 Rotate 2 1136 slave-bin.002;pos=4
|
||||||
show binlog events in 'slave-bin.002' from 4;
|
show binlog events in 'slave-bin.002' from 4;
|
||||||
Log_name Pos Event_type Server_id Orig_log_pos Info
|
Log_name Pos Event_type Server_id Orig_log_pos Info
|
||||||
slave-bin.002 4 Query 1 4 use test; create table t1 (n int)
|
slave-bin.002 4 Query 1 4 use test; create table t1 (n int)
|
||||||
@ -87,6 +87,6 @@ slave-bin.002 62 Query 1 62 use test; insert into t1 values (1)
|
|||||||
slave-bin.002 122 Query 1 122 use test; drop table t1
|
slave-bin.002 122 Query 1 122 use test; drop table t1
|
||||||
show slave status;
|
show slave status;
|
||||||
Master_Host Master_User Master_Port Connect_retry Master_Log_File Read_Master_Log_Pos Relay_Log_File Relay_Log_Pos Relay_Master_Log_File Slave_IO_Running Slave_SQL_Running Replicate_do_db Replicate_ignore_db Last_errno Last_error Skip_counter Exec_master_log_pos Relay_log_space
|
Master_Host Master_User Master_Port Connect_retry Master_Log_File Read_Master_Log_Pos Relay_Log_File Relay_Log_Pos Relay_Master_Log_File Slave_IO_Running Slave_SQL_Running Replicate_do_db Replicate_ignore_db Last_errno Last_error Skip_counter Exec_master_log_pos Relay_log_space
|
||||||
127.0.0.1 root MASTER_PORT 1 master-bin.002 170 slave-relay-bin.002 957 master-bin.002 Yes Yes 0 0 170 961
|
127.0.0.1 root MASTER_PORT 1 master-bin.002 170 slave-relay-bin.002 1457 master-bin.002 Yes Yes 0 0 170 1461
|
||||||
show binlog events in 'slave-bin.005' from 4;
|
show binlog events in 'slave-bin.005' from 4;
|
||||||
Error when executing command SHOW BINLOG EVENTS: Could not find target log
|
Error when executing command SHOW BINLOG EVENTS: Could not find target log
|
||||||
|
@ -448,3 +448,10 @@ select foobar, boggle from t1 where foobar = 'fish' and boggle = 10;
|
|||||||
foobar boggle
|
foobar boggle
|
||||||
fish 10
|
fish 10
|
||||||
drop table t1;
|
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
|
abandoning
|
||||||
abandonment
|
abandonment
|
||||||
abandons
|
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
|
||||||
|
@ -696,3 +696,16 @@ create table t1 (a varchar(10) not null) type=myisam;
|
|||||||
create table t2 (b varchar(10) not null unique) type=innodb;
|
create table t2 (b varchar(10) not null unique) type=innodb;
|
||||||
select t1.a from t1,t2 where t1.a=t2.b;
|
select t1.a from t1,t2 where t1.a=t2.b;
|
||||||
drop table t1,t2;
|
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;
|
load data infile '../../std_data/words.dat' into table t1;
|
||||||
--replace_result $MYSQL_TEST_DIR MYSQL_TEST_DIR
|
--replace_result $MYSQL_TEST_DIR MYSQL_TEST_DIR
|
||||||
eval load data local infile '$MYSQL_TEST_DIR/std_data/words.dat' into table t1;
|
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
|
# 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.
|
||||||
|
#
|
||||||
|
|
||||||
#
|
#
|
||||||
# test of full join with blob
|
# test of full join with blob
|
||||||
#
|
#
|
||||||
@ -249,3 +253,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';
|
||||||
select foobar, boggle from t1 where foobar = 'fish' and boggle = 10;
|
select foobar, boggle from t1 where foobar = 'fish' and boggle = 10;
|
||||||
drop table t1;
|
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;
|
||||||
|
@ -350,7 +350,7 @@ static my_bool win32_init_tcp_ip()
|
|||||||
|
|
||||||
static void netware_init()
|
static void netware_init()
|
||||||
{
|
{
|
||||||
char cwd[PATH_MAX], *name
|
char cwd[PATH_MAX], *name;
|
||||||
|
|
||||||
/* init only if we are not a client library */
|
/* init only if we are not a client library */
|
||||||
if (my_progname)
|
if (my_progname)
|
||||||
|
@ -20,6 +20,7 @@
|
|||||||
|
|
||||||
#include <mysys_priv.h>
|
#include <mysys_priv.h>
|
||||||
#ifdef __NETWARE__
|
#ifdef __NETWARE__
|
||||||
|
#include <string.h>
|
||||||
#include <library.h>
|
#include <library.h>
|
||||||
|
|
||||||
/*
|
/*
|
||||||
@ -61,8 +62,8 @@ long PMMeteredUsageRequest
|
|||||||
long *NLSMeterErrCode
|
long *NLSMeterErrCode
|
||||||
);
|
);
|
||||||
|
|
||||||
ypedef long(*PMUR)(char*, long, char*, char, char*, long, long*, long*,
|
typedef long(*PMUR)(const char*, long, const char*, char,
|
||||||
long*);
|
const char*, long, long*, long*, long*);
|
||||||
|
|
||||||
/* infoType */
|
/* infoType */
|
||||||
/* indicates that the info in the userInfo param is an NDS user */
|
/* 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
|
# along with this program; if not, write to the Free Software
|
||||||
# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
|
# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
|
||||||
|
|
||||||
if PLATFORM_NETWARE
|
|
||||||
INCLUDES = -I$(srcdir)/../include -I../include -I..
|
INCLUDES = -I$(srcdir)/../include -I../include -I..
|
||||||
bin_PROGRAMS = mysqld_safe mysql_install_db mysql_test_run libmysql
|
bin_PROGRAMS = mysqld_safe mysql_install_db mysql_test_run libmysql
|
||||||
mysqld_safe_SOURCES= mysqld_safe.c my_manage.c
|
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
|
mysql_test_run_SOURCES= mysql_test_run.c my_manage.c
|
||||||
libmysql_SOURCES= libmysqlmain.c
|
libmysql_SOURCES= libmysqlmain.c
|
||||||
libmysql_LDADD = ../libmysql/.libs/libmysqlclient.a
|
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
|
# Don't update the files from bitkeeper
|
||||||
%::SCCS/s.%
|
%::SCCS/s.%
|
||||||
|
@ -1,3 +1,6 @@
|
|||||||
|
CREATE DATABASE mysql;
|
||||||
|
CREATE DATABASE test;
|
||||||
|
|
||||||
USE mysql;
|
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';
|
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
|
# ISAM Check
|
||||||
#------------------------------------------------------------------------------
|
#------------------------------------------------------------------------------
|
||||||
MODULE libc.nlm
|
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"
|
DESCRIPTION "MySQL ISAM Table Check Tool"
|
||||||
VERSION 4, 0
|
VERSION 4, 0
|
||||||
STACKSIZE 65536
|
STACKSIZE 65536
|
||||||
|
@ -2,8 +2,8 @@
|
|||||||
# ISAM Log
|
# ISAM Log
|
||||||
#------------------------------------------------------------------------------
|
#------------------------------------------------------------------------------
|
||||||
MODULE libc.nlm
|
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 "ISAM Log"
|
DESCRIPTION "MySQL ISAM Table Log Tool"
|
||||||
VERSION 4, 0
|
VERSION 4, 0
|
||||||
DEBUG
|
DEBUG
|
||||||
|
|
||||||
|
@ -3,7 +3,7 @@
|
|||||||
#------------------------------------------------------------------------------
|
#------------------------------------------------------------------------------
|
||||||
MODULE libc.nlm
|
MODULE libc.nlm
|
||||||
EXPORT @libmysql.imp
|
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"
|
DESCRIPTION "MySQL Client Library"
|
||||||
VERSION 4, 0
|
VERSION 4, 0
|
||||||
AUTOUNLOAD
|
AUTOUNLOAD
|
||||||
|
@ -2,7 +2,7 @@
|
|||||||
# My Print Defaults
|
# My Print Defaults
|
||||||
#------------------------------------------------------------------------------
|
#------------------------------------------------------------------------------
|
||||||
MODULE libc.nlm
|
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"
|
DESCRIPTION "MySQL Print Defaults Tool"
|
||||||
VERSION 4, 0
|
VERSION 4, 0
|
||||||
#DEBUG
|
#DEBUG
|
||||||
|
@ -2,7 +2,7 @@
|
|||||||
# MyISAM Check
|
# MyISAM Check
|
||||||
#------------------------------------------------------------------------------
|
#------------------------------------------------------------------------------
|
||||||
MODULE libc.nlm
|
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"
|
DESCRIPTION "MySQL MyISAM Table Check Tool"
|
||||||
VERSION 4, 0
|
VERSION 4, 0
|
||||||
STACKSIZE 65536
|
STACKSIZE 65536
|
||||||
|
@ -2,7 +2,7 @@
|
|||||||
# MyISAM Log
|
# MyISAM Log
|
||||||
#------------------------------------------------------------------------------
|
#------------------------------------------------------------------------------
|
||||||
MODULE libc.nlm
|
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"
|
DESCRIPTION "MySQL MyISAM Table Log Tool"
|
||||||
VERSION 4, 0
|
VERSION 4, 0
|
||||||
#DEBUG
|
#DEBUG
|
||||||
|
@ -2,7 +2,7 @@
|
|||||||
# MyISAM Pack
|
# MyISAM Pack
|
||||||
#------------------------------------------------------------------------------
|
#------------------------------------------------------------------------------
|
||||||
MODULE libc.nlm
|
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"
|
DESCRIPTION "MySQL MyISAM Table Pack Tool"
|
||||||
VERSION 4, 0
|
VERSION 4, 0
|
||||||
#DEBUG
|
#DEBUG
|
||||||
|
@ -3,7 +3,7 @@
|
|||||||
#------------------------------------------------------------------------------
|
#------------------------------------------------------------------------------
|
||||||
MODULE libc.nlm
|
MODULE libc.nlm
|
||||||
SCREENNAME "MySQL Monitor"
|
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"
|
DESCRIPTION "MySQL Monitor"
|
||||||
VERSION 4, 0
|
VERSION 4, 0
|
||||||
MULTIPLE
|
MULTIPLE
|
||||||
|
@ -312,20 +312,6 @@ void create_paths()
|
|||||||
{
|
{
|
||||||
mkdir(datadir, 0);
|
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
|
MODULE libc.nlm
|
||||||
SCREENNAME "MySQL Install"
|
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"
|
DESCRIPTION "MySQL Initial Database Installer"
|
||||||
VERSION 4, 0
|
VERSION 4, 0
|
||||||
#DEBUG
|
#DEBUG
|
||||||
|
@ -4,7 +4,7 @@
|
|||||||
MODULE libc.nlm
|
MODULE libc.nlm
|
||||||
STACKSIZE 65536
|
STACKSIZE 65536
|
||||||
SCREENNAME "MySQL Test Run"
|
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"
|
DESCRIPTION "MySQL Test Run"
|
||||||
VERSION 4, 0
|
VERSION 4, 0
|
||||||
#DEBUG
|
#DEBUG
|
||||||
|
@ -3,7 +3,7 @@
|
|||||||
#------------------------------------------------------------------------------
|
#------------------------------------------------------------------------------
|
||||||
MODULE libc.nlm
|
MODULE libc.nlm
|
||||||
SCREENNAME "MySQL Admin"
|
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"
|
DESCRIPTION "MySQL Admin Tool"
|
||||||
VERSION 4, 0
|
VERSION 4, 0
|
||||||
#DEBUG
|
#DEBUG
|
||||||
|
@ -2,7 +2,7 @@
|
|||||||
# MySQL Binary Log
|
# MySQL Binary Log
|
||||||
#------------------------------------------------------------------------------
|
#------------------------------------------------------------------------------
|
||||||
MODULE libc.nlm
|
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"
|
DESCRIPTION "MySQL Binary Log Dump Tool"
|
||||||
VERSION 4, 0
|
VERSION 4, 0
|
||||||
#DEBUG
|
#DEBUG
|
||||||
|
@ -2,7 +2,7 @@
|
|||||||
# MySQL Client
|
# MySQL Client
|
||||||
#------------------------------------------------------------------------------
|
#------------------------------------------------------------------------------
|
||||||
MODULE libc.nlm
|
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"
|
DESCRIPTION "MySQL Check Tool"
|
||||||
VERSION 4, 0
|
VERSION 4, 0
|
||||||
#DEBUG
|
#DEBUG
|
||||||
|
@ -190,7 +190,7 @@ void finish_defaults()
|
|||||||
if (!err_log[0]) snprintf(err_log, PATH_MAX, "%s/%s.err", datadir, hostname);
|
if (!err_log[0]) snprintf(err_log, PATH_MAX, "%s/%s.err", datadir, hostname);
|
||||||
|
|
||||||
// safe-log
|
// 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
|
// mysqld
|
||||||
if (!mysqld[0]) snprintf(mysqld, PATH_MAX, "%s/bin/mysqld-max", basedir);
|
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
|
// default file arguments
|
||||||
init_args(al);
|
init_args(al);
|
||||||
add_arg(al, "dummy");
|
add_arg(al, "ignore");
|
||||||
read_defaults(al);
|
read_defaults(al);
|
||||||
parse_args(al->argc, al->argv);
|
parse_args(al->argc, al->argv);
|
||||||
free_args(al);
|
free_args(al);
|
||||||
|
@ -2,7 +2,7 @@
|
|||||||
# MySQL Admin
|
# MySQL Admin
|
||||||
#------------------------------------------------------------------------------
|
#------------------------------------------------------------------------------
|
||||||
MODULE libc.nlm
|
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"
|
DESCRIPTION "MySQL Dump Tool"
|
||||||
VERSION 4, 0
|
VERSION 4, 0
|
||||||
#DEBUG
|
#DEBUG
|
||||||
|
@ -2,7 +2,7 @@
|
|||||||
# MySQL Client
|
# MySQL Client
|
||||||
#------------------------------------------------------------------------------
|
#------------------------------------------------------------------------------
|
||||||
MODULE libc.nlm
|
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"
|
DESCRIPTION "MySQL Import Tool"
|
||||||
VERSION 4, 0
|
VERSION 4, 0
|
||||||
#DEBUG
|
#DEBUG
|
||||||
|
@ -3,7 +3,7 @@
|
|||||||
#------------------------------------------------------------------------------
|
#------------------------------------------------------------------------------
|
||||||
MODULE libc.nlm
|
MODULE libc.nlm
|
||||||
SCREENNAME "MySQL Show"
|
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"
|
DESCRIPTION "MySQL Show Tool"
|
||||||
VERSION 4, 0
|
VERSION 4, 0
|
||||||
#DEBUG
|
#DEBUG
|
||||||
|
@ -2,7 +2,7 @@
|
|||||||
# MySQL Admin
|
# MySQL Admin
|
||||||
#------------------------------------------------------------------------------
|
#------------------------------------------------------------------------------
|
||||||
MODULE libc.nlm
|
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"
|
DESCRIPTION "MySQL Test Case Tool"
|
||||||
VERSION 4, 0
|
VERSION 4, 0
|
||||||
#DEBUG
|
#DEBUG
|
||||||
|
@ -2,8 +2,8 @@
|
|||||||
# Pack ISAM
|
# Pack ISAM
|
||||||
#------------------------------------------------------------------------------
|
#------------------------------------------------------------------------------
|
||||||
MODULE libc.nlm
|
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 "Pack ISAM"
|
DESCRIPTION "MySQL ISAM Table Pack Tool"
|
||||||
VERSION 4, 0
|
VERSION 4, 0
|
||||||
DEBUG
|
DEBUG
|
||||||
|
|
||||||
|
@ -2,7 +2,7 @@
|
|||||||
# PERROR
|
# PERROR
|
||||||
#------------------------------------------------------------------------------
|
#------------------------------------------------------------------------------
|
||||||
MODULE libc.nlm
|
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"
|
DESCRIPTION "MySQL Error Code Description Tool"
|
||||||
VERSION 4, 0
|
VERSION 4, 0
|
||||||
#DEBUG
|
#DEBUG
|
||||||
|
@ -2,7 +2,7 @@
|
|||||||
# Replace
|
# Replace
|
||||||
#------------------------------------------------------------------------------
|
#------------------------------------------------------------------------------
|
||||||
MODULE libc.nlm
|
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"
|
DESCRIPTION "MySQL Text Replacement Tool"
|
||||||
VERSION 4, 0
|
VERSION 4, 0
|
||||||
#DEBUG
|
#DEBUG
|
||||||
|
@ -2,7 +2,7 @@
|
|||||||
# Resolve IP
|
# Resolve IP
|
||||||
#------------------------------------------------------------------------------
|
#------------------------------------------------------------------------------
|
||||||
MODULE libc.nlm
|
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"
|
DESCRIPTION "MySQL IP/Hostname Resolve Tool"
|
||||||
VERSION 4, 0
|
VERSION 4, 0
|
||||||
#DEBUG
|
#DEBUG
|
||||||
|
@ -1,3 +1,6 @@
|
|||||||
|
CREATE DATABASE mysql;
|
||||||
|
CREATE DATABASE test;
|
||||||
|
|
||||||
USE mysql;
|
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';
|
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
|
export machine system version
|
||||||
SOURCE=`pwd`
|
SOURCE=`pwd`
|
||||||
CP="cp -p"
|
CP="cp -p"
|
||||||
|
MV="mv"
|
||||||
|
|
||||||
STRIP=1
|
STRIP=1
|
||||||
DEBUG=0
|
DEBUG=0
|
||||||
@ -58,7 +59,7 @@ case $system in
|
|||||||
MYSQL_SHARE=$BASE/share
|
MYSQL_SHARE=$BASE/share
|
||||||
EXTRA_BIN_FILES="netware/mysqld_safe.nlm netware/mysql_install_db.nlm \
|
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/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
|
esac
|
||||||
|
|
||||||
@ -122,7 +123,7 @@ do
|
|||||||
done
|
done
|
||||||
|
|
||||||
if [ $BASE_SYSTEM = "netware" ] ; then
|
if [ $BASE_SYSTEM = "netware" ] ; then
|
||||||
$CP -r netware/scripts/* $BASE/scripts
|
$CP -r netware/*.pl $BASE/scripts
|
||||||
fi
|
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
|
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
|
rm -f $BASE/include/config-netware.h
|
||||||
fi
|
fi
|
||||||
|
|
||||||
if [ -d tests ] ; then
|
if [ $BASE_SYSTEM != "netware" ] ; then
|
||||||
$CP tests/*.res tests/*.tst tests/*.pl $BASE/tests
|
if [ -d tests ] ; then
|
||||||
fi
|
$CP tests/*.res tests/*.tst tests/*.pl $BASE/tests
|
||||||
if [ -d man ] ; then
|
fi
|
||||||
$CP man/*.1 $BASE/man/man1
|
if [ -d man ] ; then
|
||||||
|
$CP man/*.1 $BASE/man/man1
|
||||||
|
fi
|
||||||
fi
|
fi
|
||||||
|
|
||||||
$CP support-files/* $BASE/support-files
|
$CP support-files/* $BASE/support-files
|
||||||
|
|
||||||
if [ $BASE_SYSTEM = "netware" ] ; then
|
if [ $BASE_SYSTEM = "netware" ] ; then
|
||||||
|
@ -475,8 +475,7 @@ public:
|
|||||||
if (!(used_tables_cache=args[0]->used_tables()))
|
if (!(used_tables_cache=args[0]->used_tables()))
|
||||||
{
|
{
|
||||||
/* Remember if the value is always NULL or never NULL */
|
/* Remember if the value is always NULL or never NULL */
|
||||||
args[0]->val();
|
cached_value= (longlong) args[0]->is_null();
|
||||||
cached_value= args[0]->null_value ? (longlong) 1 : (longlong) 0;
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -494,7 +494,7 @@ int mysqld_show(THD *thd, const char *wild, show_var_st *variables,
|
|||||||
/* sql_handler.cc */
|
/* sql_handler.cc */
|
||||||
int mysql_ha_open(THD *thd, TABLE_LIST *tables);
|
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_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 *,
|
int mysql_ha_read(THD *, TABLE_LIST *,enum enum_ha_read_modes,char *,
|
||||||
List<Item> *,enum ha_rkey_function,Item *,ha_rows,ha_rows);
|
List<Item> *,enum ha_rkey_function,Item *,ha_rows,ha_rows);
|
||||||
|
|
||||||
|
@ -760,7 +760,7 @@ void kill_mysql(void)
|
|||||||
|
|
||||||
#if defined(OS2) || defined(__NETWARE__)
|
#if defined(OS2) || defined(__NETWARE__)
|
||||||
extern "C" void kill_server(int sig_ptr)
|
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__)
|
#elif !defined(__WIN__)
|
||||||
static void *kill_server(void *sig_ptr)
|
static void *kill_server(void *sig_ptr)
|
||||||
#define RETURN_FROM_KILL_SERVER DBUG_RETURN(0)
|
#define RETURN_FROM_KILL_SERVER DBUG_RETURN(0)
|
||||||
@ -777,9 +777,6 @@ static void __cdecl kill_server(int sig_ptr)
|
|||||||
RETURN_FROM_KILL_SERVER;
|
RETURN_FROM_KILL_SERVER;
|
||||||
kill_in_progress=TRUE;
|
kill_in_progress=TRUE;
|
||||||
abort_loop=1; // This should be set
|
abort_loop=1; // This should be set
|
||||||
#ifdef __NETWARE__
|
|
||||||
ActivateScreen(getscreenhandle()); // Show the screen going down
|
|
||||||
#endif
|
|
||||||
signal(sig,SIG_IGN);
|
signal(sig,SIG_IGN);
|
||||||
if (sig == MYSQL_KILL_SIGNAL || sig == 0)
|
if (sig == MYSQL_KILL_SIGNAL || sig == 0)
|
||||||
sql_print_error(ER(ER_NORMAL_SHUTDOWN),my_progname);
|
sql_print_error(ER(ER_NORMAL_SHUTDOWN),my_progname);
|
||||||
@ -1392,7 +1389,6 @@ static void check_data_home(const char *path)
|
|||||||
// down server event callback
|
// down server event callback
|
||||||
void mysql_down_server_cb(void *, void *)
|
void mysql_down_server_cb(void *, void *)
|
||||||
{
|
{
|
||||||
setscreenmode(SCR_AUTOCLOSE_ON_EXIT); // auto close the screen
|
|
||||||
kill_server(0);
|
kill_server(0);
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -1448,26 +1444,6 @@ static void start_signal_handler(void)
|
|||||||
|
|
||||||
static void check_data_home(const char *path)
|
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__)
|
#elif defined(__EMX__)
|
||||||
@ -2005,11 +1981,6 @@ int main(int argc, char **argv)
|
|||||||
|
|
||||||
start_time=time((time_t*) 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
|
#ifdef OS2
|
||||||
{
|
{
|
||||||
// fix timezone for daylight saving
|
// fix timezone for daylight saving
|
||||||
@ -2764,7 +2735,11 @@ inline void kill_broken_server()
|
|||||||
(!opt_disable_networking && ip_sock == INVALID_SOCKET))
|
(!opt_disable_networking && ip_sock == INVALID_SOCKET))
|
||||||
{
|
{
|
||||||
select_thread_in_use = 0;
|
select_thread_in_use = 0;
|
||||||
|
#ifdef __NETWARE__
|
||||||
|
kill_server(MYSQL_KILL_SIGNAL); /* never returns */
|
||||||
|
#else
|
||||||
kill_server((void*)MYSQL_KILL_SIGNAL); /* never returns */
|
kill_server((void*)MYSQL_KILL_SIGNAL); /* never returns */
|
||||||
|
#endif /* __NETWARE__ */
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
#define MAYBE_BROKEN_SYSCALL kill_broken_server();
|
#define MAYBE_BROKEN_SYSCALL kill_broken_server();
|
||||||
@ -3181,8 +3156,7 @@ enum options {
|
|||||||
OPT_BDB_CACHE_SIZE,
|
OPT_BDB_CACHE_SIZE,
|
||||||
OPT_BDB_LOG_BUFFER_SIZE,
|
OPT_BDB_LOG_BUFFER_SIZE,
|
||||||
OPT_BDB_MAX_LOCK,
|
OPT_BDB_MAX_LOCK,
|
||||||
OPT_ERROR_LOG_FILE,
|
OPT_ERROR_LOG_FILE
|
||||||
OPT_AUTOCLOSE
|
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
||||||
@ -3192,9 +3166,6 @@ struct my_option my_long_options[] =
|
|||||||
{
|
{
|
||||||
{"ansi", 'a', "Use ANSI SQL syntax instead of MySQL syntax", 0, 0, 0,
|
{"ansi", 'a', "Use ANSI SQL syntax instead of MySQL syntax", 0, 0, 0,
|
||||||
GET_NO_ARG, NO_ARG, 0, 0, 0, 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',
|
{"basedir", 'b',
|
||||||
"Path to installation directory. All paths are usually resolved relative to this.",
|
"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,
|
(gptr*) &mysql_home_ptr, (gptr*) &mysql_home_ptr, 0, GET_STR, REQUIRED_ARG,
|
||||||
@ -4526,11 +4497,6 @@ get_one_option(int optid, const struct my_option *opt __attribute__((unused)),
|
|||||||
if (opt_console)
|
if (opt_console)
|
||||||
opt_error_log= 0; // Force logs to stdout
|
opt_error_log= 0; // Force logs to stdout
|
||||||
break;
|
break;
|
||||||
#ifdef __NETWARE__
|
|
||||||
case (int) OPT_AUTOCLOSE:
|
|
||||||
setscreenmode(SCR_AUTOCLOSE_ON_EXIT);
|
|
||||||
break;
|
|
||||||
#endif
|
|
||||||
case (int) OPT_FLUSH:
|
case (int) OPT_FLUSH:
|
||||||
#ifdef HAVE_ISAM
|
#ifdef HAVE_ISAM
|
||||||
nisam_flush=1;
|
nisam_flush=1;
|
||||||
|
@ -1,4 +1,4 @@
|
|||||||
/* Copyright (C) 2000 MySQL AB & MySQL Finland AB & TCX DataKonsult AB
|
/* Copyright (C) 2000-2003 MySQL AB
|
||||||
|
|
||||||
This program is free software; you can redistribute it and/or modify
|
This program is free software; you can redistribute it and/or modify
|
||||||
it under the terms of the GNU General Public License as published by
|
it under the terms of the GNU General Public License as published by
|
||||||
@ -283,11 +283,6 @@ bool
|
|||||||
net_store_data(String *packet,const char *from,uint length)
|
net_store_data(String *packet,const char *from,uint length)
|
||||||
{
|
{
|
||||||
ulong packet_length=packet->length();
|
ulong packet_length=packet->length();
|
||||||
/*
|
|
||||||
We have added net5store in net_store_length.
|
|
||||||
Before that largest size was int3store.
|
|
||||||
Therefore +5 is changed to +9
|
|
||||||
*/
|
|
||||||
if (packet_length+9+length > packet->alloced_length() &&
|
if (packet_length+9+length > packet->alloced_length() &&
|
||||||
packet->realloc(packet_length+9+length))
|
packet->realloc(packet_length+9+length))
|
||||||
return 1;
|
return 1;
|
||||||
@ -305,8 +300,12 @@ net_store_data(String *packet,const char *from)
|
|||||||
{
|
{
|
||||||
uint length=(uint) strlen(from);
|
uint length=(uint) strlen(from);
|
||||||
uint packet_length=packet->length();
|
uint packet_length=packet->length();
|
||||||
if (packet_length+9+length > packet->alloced_length() &&
|
/*
|
||||||
packet->realloc(packet_length+9+length))
|
3 is the longest coding for storing a string with the used
|
||||||
|
net_store_length() function. We use 5 here 'just in case'
|
||||||
|
*/
|
||||||
|
if (packet_length+5+length > packet->alloced_length() &&
|
||||||
|
packet->realloc(packet_length+5+length))
|
||||||
return 1;
|
return 1;
|
||||||
char *to=(char*) net_store_length((char*) packet->ptr()+packet_length,
|
char *to=(char*) net_store_length((char*) packet->ptr()+packet_length,
|
||||||
length);
|
length);
|
||||||
|
@ -45,7 +45,8 @@ void init_read_record(READ_RECORD *info,THD *thd, TABLE *table,
|
|||||||
info->ref_length=table->file->ref_length;
|
info->ref_length=table->file->ref_length;
|
||||||
info->select=select;
|
info->select=select;
|
||||||
info->print_error=print_error;
|
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))
|
if (select && my_b_inited(&select->file))
|
||||||
tempfile= &select->file;
|
tempfile= &select->file;
|
||||||
@ -184,7 +185,8 @@ tryNext:
|
|||||||
{
|
{
|
||||||
if (tmp == HA_ERR_END_OF_FILE)
|
if (tmp == HA_ERR_END_OF_FILE)
|
||||||
tmp= -1;
|
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;
|
goto tryNext;
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
@ -212,7 +214,8 @@ tryNext:
|
|||||||
{
|
{
|
||||||
if (tmp == HA_ERR_END_OF_FILE)
|
if (tmp == HA_ERR_END_OF_FILE)
|
||||||
tmp= -1;
|
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;
|
goto tryNext;
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
|
@ -393,6 +393,7 @@ void multi_delete::send_error(uint errcode,const char *err)
|
|||||||
int multi_delete::do_deletes(bool from_send_error)
|
int multi_delete::do_deletes(bool from_send_error)
|
||||||
{
|
{
|
||||||
int local_error= 0, counter= 0;
|
int local_error= 0, counter= 0;
|
||||||
|
DBUG_ENTER("do_deletes");
|
||||||
|
|
||||||
if (from_send_error)
|
if (from_send_error)
|
||||||
{
|
{
|
||||||
@ -418,7 +419,12 @@ int multi_delete::do_deletes(bool from_send_error)
|
|||||||
}
|
}
|
||||||
|
|
||||||
READ_RECORD info;
|
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)
|
while (!(local_error=info.read_record(&info)) && !thd->killed)
|
||||||
{
|
{
|
||||||
if ((local_error=table->file->delete_row(table->record[0])))
|
if ((local_error=table->file->delete_row(table->record[0])))
|
||||||
@ -432,7 +438,7 @@ int multi_delete::do_deletes(bool from_send_error)
|
|||||||
if (local_error == -1) // End of file
|
if (local_error == -1) // End of file
|
||||||
local_error = 0;
|
local_error = 0;
|
||||||
}
|
}
|
||||||
return local_error;
|
DBUG_RETURN(local_error);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
@ -87,18 +87,11 @@ int mysql_ha_close(THD *thd, TABLE_LIST *tables, bool dont_send_ok)
|
|||||||
return 0;
|
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);
|
TABLE **ptr=find_table_ptr_by_name(thd, tables->db, tables->real_name, 0);
|
||||||
|
|
||||||
DBUG_ASSERT(dont_send_ok);
|
|
||||||
if (*ptr)
|
if (*ptr)
|
||||||
{
|
|
||||||
// if (!dont_send_ok) VOID(pthread_mutex_lock(&LOCK_open));
|
|
||||||
close_thread_table(thd, ptr);
|
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;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -174,7 +174,7 @@ int mysql_rm_table_part2(THD *thd, TABLE_LIST *tables, bool if_exists,
|
|||||||
for (table=tables ; table ; table=table->next)
|
for (table=tables ; table ; table=table->next)
|
||||||
{
|
{
|
||||||
char *db=table->db ? table->db : thd->db;
|
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))
|
if (!close_temporary_table(thd, db, table->real_name))
|
||||||
{
|
{
|
||||||
tmp_table_deleted=1;
|
tmp_table_deleted=1;
|
||||||
|
@ -106,7 +106,7 @@ typedef struct st_read_record { /* Parameter to read_record */
|
|||||||
byte *record;
|
byte *record;
|
||||||
byte *cache,*cache_pos,*cache_end,*read_positions;
|
byte *cache,*cache_pos,*cache_end,*read_positions;
|
||||||
IO_CACHE *io_cache;
|
IO_CACHE *io_cache;
|
||||||
bool print_error;
|
bool print_error, ignore_not_found_rows;
|
||||||
} READ_RECORD;
|
} READ_RECORD;
|
||||||
|
|
||||||
enum timestamp_type { TIMESTAMP_NONE, TIMESTAMP_DATE, TIMESTAMP_FULL,
|
enum timestamp_type { TIMESTAMP_NONE, TIMESTAMP_DATE, TIMESTAMP_FULL,
|
||||||
|
Reference in New Issue
Block a user