Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Support
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
M
mariadb
Project overview
Project overview
Details
Activity
Releases
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Issues
0
Issues
0
List
Boards
Labels
Milestones
Merge Requests
0
Merge Requests
0
Analytics
Analytics
Repository
Value Stream
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Create a new issue
Commits
Issue Boards
Open sidebar
Kirill Smelkov
mariadb
Commits
94c32876
Commit
94c32876
authored
Apr 10, 2006
by
unknown
Browse files
Options
Browse Files
Download
Plain Diff
manual merge
parents
1b021192
9f55b7cb
Changes
10
Show whitespace changes
Inline
Side-by-side
Showing
10 changed files
with
681 additions
and
50 deletions
+681
-50
VC++Files/client/mysql_upgrade.dsp
VC++Files/client/mysql_upgrade.dsp
+71
-0
VC++Files/client/mysql_upgrade_ia64.dsp
VC++Files/client/mysql_upgrade_ia64.dsp
+77
-0
VC++Files/mysql.dsw
VC++Files/mysql.dsw
+25
-0
VC++Files/mysql_ia64.dsw
VC++Files/mysql_ia64.dsw
+20
-0
client/Makefile.am
client/Makefile.am
+5
-2
client/mysql_upgrade.c
client/mysql_upgrade.c
+400
-0
mysql-test/r/partition.result
mysql-test/r/partition.result
+17
-0
mysql-test/t/disabled.def
mysql-test/t/disabled.def
+43
-42
mysql-test/t/partition.test
mysql-test/t/partition.test
+15
-0
sql/ha_partition.cc
sql/ha_partition.cc
+8
-6
No files found.
VC++Files/client/mysql_upgrade.dsp
0 → 100644
View file @
94c32876
# Microsoft Developer Studio Project File - Name="mysql_upgrade" - Package Owner=<4>
# Microsoft Developer Studio Generated Build File, Format Version 6.00
# ** DO NOT EDIT **
# TARGTYPE "Win32 (x86) Console Application" 0x0103
CFG=mysql_upgrade - Win32 Release
!MESSAGE This is not a valid makefile. To build this project using NMAKE,
!MESSAGE use the Export Makefile command and run
!MESSAGE
!MESSAGE NMAKE /f "mysql_upgrade.mak".
!MESSAGE
!MESSAGE You can specify a configuration when running NMAKE
!MESSAGE by defining the macro CFG on the command line. For example:
!MESSAGE
!MESSAGE NMAKE /f "mysql_upgrade.mak" CFG="mysql_upgrade - Win32 Release"
!MESSAGE
!MESSAGE Possible choices for configuration are:
!MESSAGE
!MESSAGE "mysql_upgrade - Win32 Release" (based on "Win32 (x86) Console Application")
!MESSAGE
# Begin Project
# PROP AllowPerConfigDependencies 0
# PROP Scc_ProjName ""
# PROP Scc_LocalPath ""
CPP=cl.exe
RSC=rc.exe
# PROP BASE Use_MFC 0
# PROP BASE Use_Debug_Libraries 0
# PROP BASE Output_Dir "mysql_upgrade___Win32_Release"
# PROP BASE Intermediate_Dir "mysql_upgrade___Win32_Release"
# PROP BASE Target_Dir ""
# PROP Use_MFC 0
# PROP Use_Debug_Libraries 0
# PROP Output_Dir "mysql_upgrade___Win32_Release"
# PROP Intermediate_Dir "mysql_upgrade___Win32_Release"
# PROP Ignore_Export_Lib 0
# PROP Target_Dir ""
# ADD BASE CPP /nologo /W3 /GX /O2 /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c
# ADD CPP /nologo /G6 /MT /W3 /O2 /I "../include" /D "NDEBUG" /D "DBUG_OFF" /D "_CONSOLE" /D "_MBCS" /D "_WINDOWS" /Fp"Release/mysql_upgrade.pch" /YX /Fo"Release/" /Fd"Release/" /FD /c
# ADD BASE RSC /l 0x416 /d "NDEBUG"
# ADD RSC /l 0x416 /d "NDEBUG"
BSC32=bscmake.exe
# ADD BASE BSC32 /nologo
# ADD BSC32 /nologo
LINK32=link.exe
# ADD BASE LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /subsystem:console /machine:I386
# ADD LINK32 mysqlclient.lib wsock32.lib kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib zlib.lib /nologo /subsystem:console /pdb:"release/mysql_upgrade.pdb" /machine:I386 /out:"../client_release/mysql_upgrade.exe" /libpath:"..\lib_release\\"
# SUBTRACT LINK32 /pdb:none
# Begin Target
# Name "mysql_upgrade - Win32 Release"
# Begin Group "Source Files"
# PROP Default_Filter "cpp;c;cxx;rc;def;r;odl;idl;hpj;bat"
# Begin Source File
SOURCE=.\mysql_upgrade.c
# End Source File
# End Group
# Begin Group "Header Files"
# PROP Default_Filter "h;hpp;hxx;hm;inl"
# End Group
# Begin Group "Resource Files"
# PROP Default_Filter "ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe"
# End Group
# End Target
# End Project
VC++Files/client/mysql_upgrade_ia64.dsp
0 → 100644
View file @
94c32876
# Microsoft Developer Studio Project File - Name="mysql_upgrade" - Package Owner=<4>
# Microsoft Developer Studio Generated Build File, Format Version 6.00
# ** DO NOT EDIT **
# TARGTYPE "Win32 (x86) Console Application" 0x0103
CFG=mysql_upgrade - Win32 Release
!MESSAGE This is not a valid makefile. To build this project using NMAKE,
!MESSAGE use the Export Makefile command and run
!MESSAGE
!MESSAGE NMAKE /f "mysql_upgrade.mak".
!MESSAGE
!MESSAGE You can specify a configuration when running NMAKE
!MESSAGE by defining the macro CFG on the command line. For example:
!MESSAGE
!MESSAGE NMAKE /f "mysql_upgrade.mak" CFG="mysql_upgrade - Win32 Release"
!MESSAGE
!MESSAGE Possible choices for configuration are:
!MESSAGE
!MESSAGE "mysql_upgrade - WinIA64 Release" (based on "Win32 (x86) Console Application")
!MESSAGE
# Begin Project
# PROP AllowPerConfigDependencies 0
# PROP Scc_ProjName ""
# PROP Scc_LocalPath ""
CPP=cl.exe
RSC=rc.exe
!IF "$(CFG)" == "mysql - WinIA64 Release"
# PROP BASE Use_MFC 0
# PROP BASE Use_Debug_Libraries 0
# PROP BASE Output_Dir "mysql_upgrade___WinIA64_Release"
# PROP BASE Intermediate_Dir "mysql_upgrade___WinIA64_Release"
# PROP BASE Target_Dir ""
# PROP Use_MFC 0
# PROP Use_Debug_Libraries 0
# PROP Output_Dir "mysql_upgrade___WinIA64_Release"
# PROP Intermediate_Dir "mysql_upgrade___WinIA64_Release"
# PROP Ignore_Export_Lib 0
# PROP Target_Dir ""
# ADD BASE CPP /nologo /W3 /GX /O2 /D "WIN64" /D "NDEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c
# ADD CPP /nologo /MT /W3 /I "../include" /D"NDEBUG" /D"DBUG_OFF" /D"_CONSOLE" /D"_MBCS" /D"_WINDOWS" /Fp"Release/mysql_upgrade.pch" /YX /Fo"Release/" /Fd"Release/" /FD /c /O2 /G2 /EHsc /D"_IA64_" /Zi /D"WIN64" /D"WIN32" /D"_AFX_NO_DAO_SUPPORT" /Wp64 /Zm600
# ADD BASE RSC /l 0x416 /d "NDEBUG"
# ADD RSC /l 0x416 /d "NDEBUG"
BSC32=bscmake.exe
# ADD BASE BSC32 /nologo
# ADD BSC32 /nologo
LINK32=link.exe
# ADD BASE LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /subsystem:console /machine:IA64
# ADD LINK32 mysqlclient.lib wsock32.lib kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib zlib.lib /nologo /subsystem:console /pdb:"release/mysql_upgrade.pdb" /machine:IA64 /out:"../client_release/mysql_upgrade.exe" /libpath:"..\lib_release\\" /incremental:no
# SUBTRACT LINK32
!ENDIF
# Begin Target
# Name "mysql_upgrade - WinIA64 Release"
# Begin Group "Source Files"
# PROP Default_Filter "cpp;c;cxx;rc;def;r;odl;idl;hpj;bat"
# Begin Source File
SOURCE=.\mysql_upgrade.c
# End Source File
# End Group
# Begin Group "Header Files"
# PROP Default_Filter "h;hpp;hxx;hm;inl"
# End Group
# Begin Group "Resource Files"
# PROP Default_Filter "ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe"
# End Group
# End Target
# End Project
VC++Files/mysql.dsw
View file @
94c32876
...
...
@@ -339,6 +339,27 @@ Package=<4>
###############################################################################
Project: "mysql_upgrade"=".\client\mysql_upgrade.dsp" - Package Owner=<4>
Package=<5>
{{{
}}}
Package=<4>
{{{
Begin Project Dependency
Project_Dep_Name mysqlclient
End Project Dependency
Begin Project Dependency
Project_Dep_Name zlib
End Project Dependency
Begin Project Dependency
Project_Dep_Name mysys
End Project Dependency
}}}
###############################################################################
Project: "mysqlbinlog"=".\mysqlbinlog\mysqlbinlog.dsp" - Package Owner=<4>
Package=<5>
...
...
@@ -415,6 +436,8 @@ Package=<4>
End Project Dependency
Begin Project Dependency
Project_Dep_Name mysqladmin
Begin Project Dependency
Project_Dep_Name myqsl_upgrade
End Project Dependency
Begin Project Dependency
Project_Dep_Name mysqldump
...
...
@@ -802,6 +825,8 @@ Package=<4>
End Project Dependency
Begin Project Dependency
Project_Dep_Name mysqladmin
Begin Project Dependency
Project_Dep_Name mysql_upgrade
End Project Dependency
Begin Project Dependency
Project_Dep_Name mysql_client_test
...
...
VC++Files/mysql_ia64.dsw
View file @
94c32876
...
...
@@ -436,6 +436,24 @@ Package=<4>
###############################################################################
Project: "mysql_upgrade"=".\client\mysql_upgrade_ia64.dsp" - Package Owner=<4>
Package=<5>
{{{
}}}
Package=<4>
{{{
Begin Project Dependency
Project_Dep_Name mysqlclient
End Project Dependency
Begin Project Dependency
Project_Dep_Name zlib
End Project Dependency
}}}
###############################################################################
Project: "mysqlbinlog"=".\mysqlbinlog\mysqlbinlog_ia64.dsp" - Package Owner=<4>
Package=<5>
...
...
@@ -500,6 +518,8 @@ Package=<4>
End Project Dependency
Begin Project Dependency
Project_Dep_Name mysqladmin_ia64
Begin Project Dependency
Project_Dep_Name mysql_upgrade_ia64
End Project Dependency
Begin Project Dependency
Project_Dep_Name mysqldump
...
...
client/Makefile.am
View file @
94c32876
...
...
@@ -39,7 +39,7 @@ LDADD= @CLIENT_EXTRA_LDFLAGS@ $(CLIENT_THREAD_LIBS) \
bin_PROGRAMS
=
mysql mysqladmin mysqlcheck mysqlshow
\
mysqldump mysqlimport mysqltest mysqlbinlog
\
mysqltestmanagerc mysqltestmanager-pwgen
\
mysqlslap
mysqlslap
mysql_upgrade
noinst_HEADERS
=
sql_string.h completion_hash.h my_readline.h
\
client_priv.h
mysql_SOURCES
=
mysql.cc readline.cc sql_string.cc completion_hash.cc
...
...
@@ -72,11 +72,14 @@ mysqlslap_SOURCES= mysqlslap.c \
mysqldump_SOURCES
=
mysqldump.c my_user.c
$(yassl_dummy_link_fix)
mysqlimport_SOURCES
=
mysqlimport.c
\
$(yassl_dummy_link_fix)
mysql_upgrade_SOURCES
=
mysql_upgrade.c
$(yassl_dummy_link_fix)
sql_src
=
log_event.h mysql_priv.h log_event.cc my_decimal.h my_decimal.cc
strings_src
=
decimal.c
# Fix for mit-threads
DEFS
=
-DUNDEF_THREADS_HACK
DEFS
=
-DUNDEF_THREADS_HACK
\
-DDEFAULT_MYSQL_HOME
=
"
\"
$(prefix)
\"
"
\
-DDATADIR
=
"
\"
$(localstatedir)
\"
"
EXTRA_DIST
=
get_password.c cmakelists.txt
link_sources
:
...
...
client/mysql_upgrade.c
0 → 100644
View file @
94c32876
/* Copyright (C) 2000 MySQL AB
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
the Free Software Foundation; either version 2 of the License, or
(at your option) any later version.
This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
You should have received a copy of the GNU General Public License
along with this program; if not, write to the Free Software
Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA */
#include "client_priv.h"
#include <my_dir.h>
static
my_bool
opt_force
=
0
,
opt_verbose
=
0
,
tty_password
=
0
;
static
char
*
user
=
(
char
*
)
"root"
,
*
basedir
=
0
,
*
datadir
=
0
,
*
opt_password
=
0
;
static
my_bool
upgrade_defaults_created
=
0
;
static
my_string
opt_mysql_port
,
opt_mysql_unix_port
=
0
;
static
char
*
default_dbug_option
=
(
char
*
)
"d:t:O,/tmp/comp_err.trace"
;
static
my_bool
info_flag
=
0
;
static
struct
my_option
my_long_options
[]
=
{
{
"help"
,
'?'
,
"Display this help message and exit."
,
0
,
0
,
0
,
GET_NO_ARG
,
NO_ARG
,
0
,
0
,
0
,
0
,
0
,
0
},
{
"basedir"
,
'b'
,
"Specifies the directory where MySQL is installed"
,
(
gptr
*
)
&
basedir
,
(
gptr
*
)
&
basedir
,
0
,
GET_STR
,
REQUIRED_ARG
,
0
,
0
,
0
,
0
,
0
,
0
},
{
"datadir"
,
'd'
,
"Specifies the data directory"
,
(
gptr
*
)
&
datadir
,
(
gptr
*
)
&
datadir
,
0
,
GET_STR
,
REQUIRED_ARG
,
0
,
0
,
0
,
0
,
0
,
0
},
#ifdef DBUG_OFF
{
"debug"
,
'#'
,
"This is a non-debug version. Catch this and exit"
,
0
,
0
,
0
,
GET_DISABLED
,
OPT_ARG
,
0
,
0
,
0
,
0
,
0
,
0
},
#else
{
"debug"
,
'#'
,
"Output debug log"
,
(
gptr
*
)
&
default_dbug_option
,
(
gptr
*
)
&
default_dbug_option
,
0
,
GET_STR
,
OPT_ARG
,
0
,
0
,
0
,
0
,
0
,
0
},
#endif
{
"debug-info"
,
'T'
,
"Print some debug info at exit."
,
(
gptr
*
)
&
info_flag
,
(
gptr
*
)
&
info_flag
,
0
,
GET_BOOL
,
NO_ARG
,
0
,
0
,
0
,
0
,
0
,
0
},
{
"force"
,
'f'
,
"Continue even if we get an sql-error."
,
(
gptr
*
)
&
opt_force
,
(
gptr
*
)
&
opt_force
,
0
,
GET_BOOL
,
NO_ARG
,
0
,
0
,
0
,
0
,
0
,
0
},
{
"password"
,
'p'
,
"Password to use when connecting to server. If password is not given it's solicited on the tty."
,
0
,
0
,
0
,
GET_STR
,
OPT_ARG
,
0
,
0
,
0
,
0
,
0
,
0
},
{
"port"
,
'P'
,
"Port number to use for connection."
,
(
gptr
*
)
&
opt_mysql_port
,
(
gptr
*
)
&
opt_mysql_port
,
0
,
GET_STR
,
REQUIRED_ARG
,
0
,
0
,
0
,
0
,
0
,
0
},
{
"protocol"
,
OPT_MYSQL_PROTOCOL
,
"The protocol of connection (tcp,socket,pipe,memory)."
,
0
,
0
,
0
,
GET_STR
,
REQUIRED_ARG
,
0
,
0
,
0
,
0
,
0
,
0
},
{
"socket"
,
'S'
,
"Socket file to use for connection."
,
(
gptr
*
)
&
opt_mysql_unix_port
,
(
gptr
*
)
&
opt_mysql_unix_port
,
0
,
GET_STR
,
REQUIRED_ARG
,
0
,
0
,
0
,
0
,
0
,
0
},
{
"user"
,
'u'
,
"User for login if not current user."
,
(
gptr
*
)
&
user
,
(
gptr
*
)
&
user
,
0
,
GET_STR
,
REQUIRED_ARG
,
0
,
0
,
0
,
0
,
0
,
0
},
{
"verbose"
,
'v'
,
"Display more output about the process"
,
(
gptr
*
)
&
opt_verbose
,
(
gptr
*
)
&
opt_verbose
,
0
,
GET_BOOL
,
NO_ARG
,
0
,
0
,
0
,
0
,
0
,
0
},
{
0
,
0
,
0
,
0
,
0
,
0
,
GET_NO_ARG
,
NO_ARG
,
0
,
0
,
0
,
0
,
0
,
0
}
};
static
const
char
*
load_default_groups
[]
=
{
"mysql_upgrade"
,
"client"
,
0
};
#include <help_end.h>
static
my_bool
get_one_option
(
int
optid
,
const
struct
my_option
*
opt
__attribute__
((
unused
)),
char
*
argument
)
{
switch
(
optid
)
{
case
'?'
:
puts
(
"MySQL utility script to upgrade database to the current server version"
);
puts
(
""
);
my_print_help
(
my_long_options
);
exit
(
0
);
case
'#'
:
DBUG_PUSH
(
argument
?
argument
:
default_dbug_option
);
break
;
case
'f'
:
opt_force
=
TRUE
;
break
;
case
'p'
:
tty_password
=
1
;
if
(
argument
)
{
char
*
start
=
argument
;
my_free
(
opt_password
,
MYF
(
MY_ALLOW_ZERO_PTR
));
opt_password
=
my_strdup
(
argument
,
MYF
(
MY_FAE
));
while
(
*
argument
)
*
argument
++=
'x'
;
/* Destroy argument */
if
(
*
start
)
start
[
1
]
=
0
;
/* Cut length of argument */
tty_password
=
0
;
}
break
;
default:
;
};
return
0
;
}
/* buffer should be not smaller than FN_REFLEN */
static
my_bool
test_file_exists_res
(
const
char
*
dir
,
const
char
*
fname
,
char
*
buffer
,
char
**
buf_end
)
{
MY_STAT
stat_info
;
*
buf_end
=
strxnmov
(
buffer
,
FN_REFLEN
-
1
,
dir
,
"/"
,
fname
,
NullS
);
unpack_filename
(
buffer
,
buffer
);
return
my_stat
(
buffer
,
&
stat_info
,
MYF
(
0
))
!=
0
;
}
static
my_bool
test_file_exists
(
const
char
*
dir
,
const
char
*
fname
)
{
char
path
[
FN_REFLEN
];
char
*
path_end
;
return
test_file_exists_res
(
dir
,
fname
,
path
,
&
path_end
);
}
static
int
create_check_file
(
const
char
*
path
)
{
File
check_file
=
my_open
(
path
,
O_CREAT
|
O_WRONLY
,
MYF
(
MY_FAE
|
MY_WME
));
int
error
;
if
(
check_file
<
0
)
return
1
;
error
=
my_write
(
check_file
,
VERSION
,
strlen
(
VERSION
),
MYF
(
MY_WME
|
MY_FNABP
));
error
=
my_close
(
check_file
,
MYF
(
MY_FAE
|
MY_WME
))
||
error
;
return
error
;
}
static
int
create_defaults_file
(
const
char
*
path
,
const
char
*
our_defaults_path
)
{
uint
b_read
;
File
our_defaults_file
;
char
buffer
[
512
];
char
*
buffer_end
;
int
error
;
/* check if the defaults file is needed at all */
if
(
!
opt_password
)
return
0
;
File
defaults_file
=
my_open
(
path
,
O_BINARY
|
O_CREAT
|
O_WRONLY
,
MYF
(
MY_FAE
|
MY_WME
));
if
(
defaults_file
<
0
)
return
1
;
upgrade_defaults_created
=
1
;
if
(
our_defaults_path
)
{
our_defaults_file
=
my_open
(
our_defaults_path
,
O_RDONLY
,
MYF
(
MY_FAE
|
MY_WME
));
if
(
our_defaults_file
<
0
)
return
1
;
do
{
if
(((
b_read
=
my_read
(
our_defaults_file
,
buffer
,
sizeof
(
buffer
),
MYF
(
MY_WME
)))
==
MY_FILE_ERROR
)
||
my_write
(
defaults_file
,
buffer
,
b_read
,
MYF
(
MY_FNABP
|
MY_WME
)))
{
error
=
1
;
goto
close_return
;
}
}
while
(
b_read
==
sizeof
(
buffer
));
}
buffer_end
=
strnmov
(
buffer
,
"
\n
[client]"
,
sizeof
(
buffer
));
if
(
opt_password
)
buffer_end
=
strxnmov
(
buffer
,
sizeof
(
buffer
),
"
\n
password="
,
opt_password
,
NullS
);
error
=
my_write
(
defaults_file
,
buffer
,
(
int
)
(
buffer_end
-
buffer
),
MYF
(
MY_WME
|
MY_FNABP
));
close_return:
return
my_close
(
defaults_file
,
MYF
(
MY_WME
))
||
error
;
}
int
main
(
int
argc
,
char
**
argv
)
{
char
bindir
[
FN_REFLEN
];
char
*
bindir_end
,
*
buf_end
;
char
datadir_buf
[
FN_REFLEN
];
char
mysqlcheck_line
[
FN_REFLEN
],
*
mysqlcheck_end
;
char
check_file_name
[
FN_REFLEN
];
int
check_file
;
char
fix_priv_tables_cmd
[
FN_REFLEN
],
*
fix_cmd_end
;
char
script_line
[
FN_REFLEN
];
int
error
;
char
*
forced_defaults_file
;
char
*
forced_extra_defaults
;
char
*
defaults_group_suffix
;
char
upgrade_defaults_path
[
FN_REFLEN
],
*
defaults_to_use
=
0
;
char
port_socket
[
100
],
*
port_socket_end
;
MY_INIT
(
argv
[
0
]);
#ifdef __NETWARE__
setscreenmode
(
SCR_AUTOCLOSE_ON_EXIT
);
#endif
load_defaults
(
"my"
,
load_default_groups
,
&
argc
,
&
argv
);
if
((
error
=
handle_options
(
&
argc
,
&
argv
,
my_long_options
,
get_one_option
)))
exit
(
error
);
if
(
tty_password
)
opt_password
=
get_tty_password
(
NullS
);
/* Check if we want to force the use a specific default file */
get_defaults_options
(
argc
,
argv
,
&
forced_defaults_file
,
&
forced_extra_defaults
,
&
defaults_group_suffix
);
port_socket_end
=
port_socket
;
if
(
opt_mysql_port
)
port_socket_end
=
strxnmov
(
port_socket
,
sizeof
(
port_socket
)
-
1
,
" --port="
,
opt_mysql_port
,
NullS
);
if
(
opt_mysql_unix_port
)
port_socket_end
=
strxnmov
(
port_socket_end
,
sizeof
(
port_socket
)
-
(
int
)(
port_socket_end
-
port_socket
)
-
1
,
" --socket="
,
opt_mysql_unix_port
,
NullS
);
*
port_socket_end
=
0
;
if
(
basedir
)
{
bindir_end
=
strmake
(
bindir
,
basedir
,
sizeof
(
bindir
)
-
1
);
}
else
{
if
(
test_file_exists
(
"./share/mysql/english"
,
"errmsg.sys"
)
&&
(
test_file_exists
(
"./bin"
,
"mysqld"
)
||
test_file_exists
(
"./libexec"
,
"mysqld"
)))
{
getcwd
(
bindir
,
sizeof
(
bindir
));
bindir_end
=
bindir
+
strlen
(
bindir
);
}
else
{
bindir_end
=
strmake
(
bindir
,
DEFAULT_MYSQL_HOME
,
sizeof
(
bindir
)
-
1
);
}
}
if
(
!
datadir
)
{
datadir
=
datadir_buf
;
if
(
test_file_exists
(
bindir
,
"data/mysql"
))
{
*
strxnmov
(
datadir_buf
,
sizeof
(
datadir_buf
)
-
1
,
bindir
,
"/data"
,
NullS
)
=
0
;
}
else
if
(
test_file_exists
(
bindir
,
"var/mysql"
))
{
*
strxnmov
(
datadir_buf
,
sizeof
(
datadir_buf
)
-
1
,
bindir
,
"/var"
,
NullS
)
=
0
;
}
else
datadir
=
(
char
*
)
DATADIR
;
}
strmake
(
bindir_end
,
"/bin"
,
sizeof
(
bindir
)
-
(
int
)
(
bindir_end
-
bindir
)
-
1
);
if
(
!
test_file_exists_res
(
bindir
,
"mysqlcheck"
,
mysqlcheck_line
,
&
mysqlcheck_end
))
{
printf
(
"Can't find program '%s'
\n
"
,
mysqlcheck_line
);
puts
(
"Please restart with --basedir=mysql-install-directory"
);
exit
(
1
);
}
if
(
!
test_file_exists
(
datadir
,
"mysql/user.frm"
))
{
puts
(
"Can't find data directory. Please restart with --datadir=path-to-data-dir"
);
exit
(
1
);
}
/* create the modified defaults file to be used by mysqlcheck */
/* and mysql tools */
*
strxnmov
(
upgrade_defaults_path
,
sizeof
(
upgrade_defaults_path
)
-
1
,
datadir
,
"/upgrade_defaults"
,
NullS
)
=
0
;
unpack_filename
(
upgrade_defaults_path
,
upgrade_defaults_path
);
if
((
error
=
create_defaults_file
(
upgrade_defaults_path
,
forced_extra_defaults
)))
goto
err_exit
;
defaults_to_use
=
upgrade_defaults_created
?
upgrade_defaults_path
:
forced_extra_defaults
;
if
(
test_file_exists_res
(
datadir
,
"mysql_upgrade_info"
,
check_file_name
,
&
buf_end
)
&&
!
opt_force
)
{
char
chf_buffer
[
50
];
int
b_read
;
check_file
=
my_open
(
check_file_name
,
O_RDONLY
,
MYF
(
0
));
b_read
=
my_read
(
check_file
,
chf_buffer
,
sizeof
(
chf_buffer
)
-
1
,
MYF
(
0
));
chf_buffer
[
b_read
]
=
0
;
my_close
(
check_file
,
MYF
(
0
));
if
(
!
strcmp
(
chf_buffer
,
VERSION
))
{
if
(
opt_verbose
)
puts
(
"mysql_upgrade already done for this version"
);
goto
fix_priv_tables
;
}
}
if
(
defaults_to_use
)
{
mysqlcheck_end
=
strxnmov
(
mysqlcheck_end
,
sizeof
(
mysqlcheck_line
)
-
(
int
)
(
mysqlcheck_end
-
mysqlcheck_line
),
" --defaults-extra-file="
,
defaults_to_use
,
NullS
);
}
mysqlcheck_end
=
strxnmov
(
mysqlcheck_end
,
sizeof
(
mysqlcheck_line
)
-
(
int
)
(
mysqlcheck_end
-
mysqlcheck_line
-
1
),
" --check-upgrade --all-databases --auto-repair --user="
,
user
,
port_socket
,
NullS
);
*
mysqlcheck_end
=
0
;
if
(
opt_verbose
)
printf
(
"Running %s
\n
"
,
mysqlcheck_line
);
if
((
error
=
system
(
mysqlcheck_line
)))
{
printf
(
"Error executing '%s'
\n
"
,
mysqlcheck_line
);
goto
err_exit
;
}
if
((
error
=
create_check_file
(
check_file_name
)))
goto
err_exit
;
fix_priv_tables:
if
(
!
test_file_exists_res
(
bindir
,
"mysql"
,
fix_priv_tables_cmd
,
&
fix_cmd_end
))
{
puts
(
"Could not find MySQL command-line client (mysql)."
);
puts
(
"Please use --basedir to specify the directory where MySQL is installed."
);
error
=
1
;
goto
err_exit
;
}
if
(
!
test_file_exists_res
(
basedir
,
"support_files/mysql_fix_privilege_tables.sql"
,
script_line
,
&
buf_end
)
&&
!
test_file_exists_res
(
basedir
,
"share/mysql_fix_privilege_tables.sql"
,
script_line
,
&
buf_end
)
&&
!
test_file_exists_res
(
basedir
,
"share/mysql/mysql_fix_privilege_tables.sql"
,
script_line
,
&
buf_end
)
&&
!
test_file_exists_res
(
basedir
,
"scripts/mysql_fix_privilege_tables.sql"
,
script_line
,
&
buf_end
)
&&
!
test_file_exists_res
(
"/usr/local/mysql/share/mysql"
,
"mysql_fix_privilege_tables.sql"
,
script_line
,
&
buf_end
))
{
puts
(
"Could not find file mysql_fix_privilege_tables.sql"
);
puts
(
"Please use --basedir to specify the directory where MySQL is installed"
);
error
=
1
;
goto
err_exit
;
}
if
(
defaults_to_use
)
{
fix_cmd_end
=
strxnmov
(
fix_cmd_end
,
sizeof
(
fix_priv_tables_cmd
)
-
(
int
)
(
fix_cmd_end
-
fix_priv_tables_cmd
-
1
),
" --defaults-extra-file="
,
defaults_to_use
,
NullS
);
}
fix_cmd_end
=
strxnmov
(
fix_cmd_end
,
sizeof
(
fix_priv_tables_cmd
)
-
(
int
)
(
fix_cmd_end
-
fix_priv_tables_cmd
),
" --user="
,
user
,
port_socket
,
" mysql < "
,
script_line
,
NullS
);
*
fix_cmd_end
=
0
;
if
((
error
=
system
(
fix_priv_tables_cmd
)))
{
/* Problem is that the 'Duplicate column' error */
/* which is not a bug for the script makes 'mysql' return */
/* an error */
/* printf("Error executing '%s'\n", fix_priv_tables_cmd); */
}
err_exit:
if
(
upgrade_defaults_created
)
my_delete
(
upgrade_defaults_path
,
MYF
(
0
));
my_end
(
info_flag
?
MY_CHECK_ERROR
|
MY_GIVE_INFO
:
0
);
return
error
;
}
/* main */
mysql-test/r/partition.result
View file @
94c32876
...
...
@@ -848,4 +848,21 @@ t1 CREATE TABLE `t1` (
`a` int(11) DEFAULT NULL
) ENGINE=MyISAM DEFAULT CHARSET=latin1 PARTITION BY LIST (a) (PARTITION p0 VALUES IN (NULL) ENGINE = MyISAM)
DROP TABLE t1;
create table t1 (s1 int auto_increment primary key)
partition by list (s1)
(partition p1 values in (1),
partition p2 values in (2),
partition p3 values in (3));
insert into t1 values (null);
insert into t1 values (null);
insert into t1 values (null);
select auto_increment from information_schema.tables where table_name='t1';
auto_increment
4
select * from t1;
s1
1
2
3
drop table t1;
End of 5.1 tests
mysql-test/t/disabled.def
View file @
94c32876
...
...
@@ -4,49 +4,50 @@
#
# Separate the test case name and the comment with ':'.
#
#
<testcasename> : Comment test
#
<testcasename> : BUG#<xxxx> <date disabled> <disabler> <comment>
#
# Do not use any TAB characters for whitespace.
#
##############################################################################
events_bugs : test case unstable (race conditions). andrey will fix
events_stress : test case unstable. andrey will fix
events : test case unstable. andrey will fix
events_bugs : BUG#17619 2006-02-21 andrey Test case unstable (race conditions)
events_stress : BUG#17619 2006-02-21 andrey Test case unstable
events : BUG#17619 2006-02-21 andrey Test case unstable
ndb_autodiscover : BUG#18952 2006-02-16 jmiller Needs to be fixed w.r.t binlog
ndb_autodiscover2 : BUG#18952 2006-02-16 jmiller Needs to be fixed w.r.t binlog
ndb_cache2 : BUG#18597 2006-03-28 brian
ndb_gis : BUG#18600 2006-03-28 brian
ndb_load : BUG#17233 2006-02-16 jmiller
partition_03ndb : BUG#16385 2006-03-24 mikael
ps_7ndb : BUG#18950 2006-02-16 jmiller Dbug assert in RBR mode when executing test suite
rpl_ndb_dd_basic : BUG#18569 2006-03-28 brian
rpl_row_basic_7ndb : BUG#18923 2006-04-09 brian
rpl_ndb_dd_advance : BUG#18924 2006-04-09 brian
rpl_ndb_multi_update2 : BUG#18928 2006-04-09 brian
rpl_ndb_2innodb : BUG#18945 2006-03-22 tomas Assertion in get_parts_for_update()
rpl_ndb_2myisam : BUG#18945 2006-03-22 tomas Assertion in get_parts_for_update()
rpl_ndb_auto_inc : BUG#17086 2006-02-16 jmiller
rpl_ndb_basic : BUG#18592 2006-03-28 brian
rpl_ndb_ddl : BUG#18946 2006-03-16 mats Master hangs (Probably related to BUG#17400)
rpl_ndb_insert_ignore : BUG#18567 2006-03-28 brian
rpl_ndb_innodb2ndb : BUG#18261 2006-03-16 mats Cluster Replication: tests rpl_ndb_xxx2ndb fails (BUG#17400)
rpl_ndb_myisam2ndb : BUG#18261 2006-03-16 mats Cluster Replication: tests rpl_ndb_xxx2ndb fails (BUG#17400)
rpl_ndb_multi_update3 : BUG#18627 2006-03-29 monty Cluster Replication: rpl_ndb_multi_update3 fails on Intel 64 bit
rpl_ndb_log : BUG#18947 2006-03-21 tomas Result not deterministic, TBD if should remove
rpl_ndb_relay_space : BUG#16993 2006-02-16 jmiller
rpl_switch_stm_row_mixed : BUG#18590 2006-03-28 brian
rpl_row_inexist_tbl : BUG#18948 2006-03-09 mats Disabled since patch makes this test wait forever
rpl_sp : BUG#16456 2006-02-16 jmiller
rpl_until : BUG#15886 2006-02-16 jmiller Unstable test case
sp-goto : BUG#18949 2006-02-16 jmiller GOTO is currently is disabled - will be fixed in the future
mysqldump : BUG#18078 2006-03-10 lars
udf : BUG#18564 2006-03-27 ian (Permission by Brian)
#ndb_alter_table_row : sometimes wrong error 1015!=1046
ndb_autodiscover : Needs to be fixed w.r.t binlog
ndb_autodiscover2 : Needs to be fixed w.r.t binlog
#ndb_binlog_basic : Results are not deterministic, Tomas will fix
#ndb_binlog_multi : Results are not deterministic, Tomas will fix
ndb_cache2 : Bug #18597
ndb_gis : Bug #18600
ndb_load : Bug#17233
partition_03ndb : Bug#16385
ps_7ndb : dbug assert in RBR mode when executing test suite
#rpl_bit_npk : Bug#13418
#rpl_ddl : Bug#15963 SBR does not show "Definer" correctly
rpl_ndb_dd_basic : Bug #18569
rpl_row_basic_7ndb : Bug #18923
rpl_ndb_dd_advance : Bug #18924
rpl_ndb_multi_update2 : Bug #18928
rpl_ndb_2innodb : assertion in get_parts_for_update()
rpl_ndb_2myisam : assertion in get_parts_for_update()
rpl_ndb_auto_inc : Bug#17086
rpl_ndb_basic : Bug #18592
#rpl_ndb_blob : interferes with following tests, causing hang
#rpl_ndb_blob2 : interferes with following tests, causing hang
rpl_ndb_ddl : master hangs
#rpl_ndb_delete_nowhere : Bug#17400: delete & update of rows in table without pk fails
rpl_ndb_insert_ignore : Bug #18567
rpl_ndb_innodb2ndb : Bug#18261: Cluster Replication: tests rpl_ndb_xxx2ndb fails
rpl_ndb_myisam2ndb : Bug#18261: Cluster Replication: tests rpl_ndb_xxx2ndb fails
rpl_ndb_multi_update3 : Bug#18627: Cluster Replication: rpl_ndb_multi_update3 fails on Intel 64 bit
rpl_ndb_log : result not deterministic, TBD if should remove
rpl_ndb_relay_space : Bug#16993
#rpl_ndb_multi_update3 : Bug#17400: delete & update of rows in table without pk fails
rpl_switch_stm_row_mixed : Bug #18590
rpl_row_inexist_tbl : Disabled since patch makes this test wait forever
rpl_sp : Bug#16456
rpl_until : Unstable test case, bug#15886
sp-goto : GOTO is currently is disabled - will be fixed in the future
mysqldump : BUG#18078
udf : Bug#18564 (Permission by Brian)
mysql-test/t/partition.test
View file @
94c32876
...
...
@@ -965,4 +965,19 @@ PARTITION BY LIST (a)
SHOW
CREATE
TABLE
t1
;
DROP
TABLE
t1
;
#
# Bug#18753 Partitions: auto_increment fails
#
create
table
t1
(
s1
int
auto_increment
primary
key
)
partition
by
list
(
s1
)
(
partition
p1
values
in
(
1
),
partition
p2
values
in
(
2
),
partition
p3
values
in
(
3
));
insert
into
t1
values
(
null
);
insert
into
t1
values
(
null
);
insert
into
t1
values
(
null
);
select
auto_increment
from
information_schema
.
tables
where
table_name
=
't1'
;
select
*
from
t1
;
drop
table
t1
;
--
echo
End
of
5.1
tests
sql/ha_partition.cc
View file @
94c32876
...
...
@@ -4201,11 +4201,7 @@ void ha_partition::info(uint flag)
if
(
flag
&
HA_STATUS_AUTO
)
{
DBUG_PRINT
(
"info"
,
(
"HA_STATUS_AUTO"
));
/*
The auto increment value is only maintained by the first handler
so we will only call this.
*/
m_file
[
0
]
->
info
(
HA_STATUS_AUTO
);
auto_increment_value
=
get_auto_increment
();
}
if
(
flag
&
HA_STATUS_VARIABLE
)
{
...
...
@@ -5349,9 +5345,15 @@ void ha_partition::restore_auto_increment()
ulonglong
ha_partition
::
get_auto_increment
()
{
ulonglong
auto_inc
,
max_auto_inc
=
0
;
DBUG_ENTER
(
"ha_partition::get_auto_increment"
);
DBUG_RETURN
(
m_file
[
0
]
->
get_auto_increment
());
for
(
uint
i
=
0
;
i
<
m_tot_parts
;
i
++
)
{
auto_inc
=
m_file
[
i
]
->
get_auto_increment
();
set_if_bigger
(
max_auto_inc
,
auto_inc
);
}
DBUG_RETURN
(
max_auto_inc
);
}
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment