Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Support
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
M
MariaDB
Project overview
Project overview
Details
Activity
Releases
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Issues
0
Issues
0
List
Boards
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Analytics
Analytics
CI / CD
Repository
Value Stream
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
nexedi
MariaDB
Commits
bb9a634e
Commit
bb9a634e
authored
Jul 07, 2005
by
bell@sanja.is.com.ua
Browse files
Options
Browse Files
Download
Plain Diff
Merge sanja.is.com.ua:/home/bell/mysql/bk/mysql-5.0
into sanja.is.com.ua:/home/bell/mysql/bk/work-bug4-5.0
parents
9f30fa2c
f5f434cf
Changes
15
Hide whitespace changes
Inline
Side-by-side
Showing
15 changed files
with
55 additions
and
50 deletions
+55
-50
VC++Files/sql/mysqld.dsp
VC++Files/sql/mysqld.dsp
+1
-1
VC++Files/tests/mysql_client_test.dsp
VC++Files/tests/mysql_client_test.dsp
+4
-4
mysql-test/lib/mtr_misc.pl
mysql-test/lib/mtr_misc.pl
+6
-5
mysql-test/mysql-test-run.pl
mysql-test/mysql-test-run.pl
+20
-12
sql/examples/ha_archive.cc
sql/examples/ha_archive.cc
+5
-5
sql/examples/ha_archive.h
sql/examples/ha_archive.h
+3
-3
sql/ha_federated.cc
sql/ha_federated.cc
+2
-7
sql/item_strfunc.cc
sql/item_strfunc.cc
+0
-1
sql/sql_acl.cc
sql/sql_acl.cc
+0
-2
sql/sql_insert.cc
sql/sql_insert.cc
+1
-1
sql/sql_lex.cc
sql/sql_lex.cc
+5
-4
sql/sql_lex.h
sql/sql_lex.h
+1
-1
sql/sql_union.cc
sql/sql_union.cc
+3
-1
sql/sql_yacc.yy
sql/sql_yacc.yy
+1
-1
sql/table.cc
sql/table.cc
+3
-2
No files found.
VC++Files/sql/mysqld.dsp
View file @
bb9a634e
...
...
@@ -84,7 +84,7 @@ BSC32=bscmake.exe
# ADD BSC32 /nologo
LINK32=xilink6.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 /nologo /subsystem:console /debug /machine:I386 /pdbtype:sept
# ADD 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 Wsock32.lib ..\lib_debug\dbug.lib ..\lib_debug\vio.lib ..\lib_debug\mysys.lib ..\lib_debug\strings.lib ..\lib_debug\regex.lib ..\lib_debug\heap.lib ..\lib_debug\bdb.lib ..\lib_debug\innodb.lib ..\extra\yassl\
Release
\yassl.lib /nologo /subsystem:console /incremental:no /debug /machine:I386 /out:"../client_debug/mysqld-debug.exe" /pdbtype:sept
# ADD 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 Wsock32.lib ..\lib_debug\dbug.lib ..\lib_debug\vio.lib ..\lib_debug\mysys.lib ..\lib_debug\strings.lib ..\lib_debug\regex.lib ..\lib_debug\heap.lib ..\lib_debug\bdb.lib ..\lib_debug\innodb.lib ..\extra\yassl\
Debug
\yassl.lib /nologo /subsystem:console /incremental:no /debug /machine:I386 /out:"../client_debug/mysqld-debug.exe" /pdbtype:sept
!ELSEIF "$(CFG)" == "mysqld - Win32 nt"
...
...
VC++Files/tests/mysql_client_test.dsp
View file @
bb9a634e
...
...
@@ -51,8 +51,8 @@ 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 odbc32.lib odbccp32.lib mysqlclient.lib wsock32.lib mysys.lib regex.lib ..\extra\yassl\
Release\yassl.lib /nologo /out:"..
\mysql_client_test.exe" /incremental:yes /libpath:"..\lib_debug\" /debug /pdb:".\Debug\mysql_client_test.pdb" /pdbtype:sept /map:".\Debug\mysql_client_test.map" /subsystem:console
# ADD 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 odbc32.lib odbccp32.lib mysqlclient.lib wsock32.lib mysys.lib regex.lib ..\extra\yassl\
Release\yassl.lib /nologo /out:"..
\mysql_client_test.exe" /incremental:yes /libpath:"..\lib_debug\" /debug /pdb:".\Debug\mysql_client_test.pdb" /pdbtype:sept /map:".\Debug\mysql_client_test.map" /subsystem:console
# 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 odbc32.lib odbccp32.lib mysqlclient.lib wsock32.lib mysys.lib regex.lib ..\extra\yassl\
Debug\yassl.lib /nologo /out:"..\client_debug
\mysql_client_test.exe" /incremental:yes /libpath:"..\lib_debug\" /debug /pdb:".\Debug\mysql_client_test.pdb" /pdbtype:sept /map:".\Debug\mysql_client_test.map" /subsystem:console
# ADD 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 odbc32.lib odbccp32.lib mysqlclient.lib wsock32.lib mysys.lib regex.lib ..\extra\yassl\
Debug\yassl.lib /nologo /out:"..\client_debug
\mysql_client_test.exe" /incremental:yes /libpath:"..\lib_debug\" /debug /pdb:".\Debug\mysql_client_test.pdb" /pdbtype:sept /map:".\Debug\mysql_client_test.map" /subsystem:console
!ELSEIF "$(CFG)" == "mysql_client_test - Win32 Release"
...
...
@@ -76,8 +76,8 @@ 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 odbc32.lib odbccp32.lib Ws2_32.lib mysqlclient.lib mysys.lib regex.lib ..\extra\yassl\Release\yassl.lib /nologo /out:"..\mysql_client_test.exe" /incremental:no /pdb:".\Release\mysql_client_test.pdb" /pdbtype:sept /subsystem:console
# ADD 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 odbc32.lib odbccp32.lib Ws2_32.lib mysqlclient.lib mysys.lib regex.lib ..\extra\yassl\Release\yassl.lib /nologo /out:"..\mysql_client_test.exe" /incremental:no /pdb:".\Release\mysql_client_test.pdb" /pdbtype:sept /subsystem:console
# 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 odbc32.lib odbccp32.lib Ws2_32.lib mysqlclient.lib mysys.lib regex.lib ..\extra\yassl\Release\yassl.lib /nologo /out:"..\
client_release\
mysql_client_test.exe" /incremental:no /pdb:".\Release\mysql_client_test.pdb" /pdbtype:sept /subsystem:console
# ADD 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 odbc32.lib odbccp32.lib Ws2_32.lib mysqlclient.lib mysys.lib regex.lib ..\extra\yassl\Release\yassl.lib /nologo /out:"..\
client_release\
mysql_client_test.exe" /incremental:no /pdb:".\Release\mysql_client_test.pdb" /pdbtype:sept /subsystem:console
!ENDIF
...
...
mysql-test/lib/mtr_misc.pl
View file @
bb9a634e
...
...
@@ -83,18 +83,19 @@ sub mtr_script_exists (@) {
}
sub
mtr_exe_exists
(@)
{
foreach
my
$path
(
@_
)
my
@path
=
@_
;
map
{
$_
.=
"
.exe
"}
@path
if
$::glob_win32
;
foreach
my
$path
(
@path
)
{
$path
.=
"
.exe
"
if
$::opt_win32
;
return
$path
if
-
x
$path
;
}
if
(
@
_
==
1
)
if
(
@
path
==
1
)
{
mtr_error
("
Could not find
$
_
[0]
");
mtr_error
("
Could not find
$
path
[0]
");
}
else
{
mtr_error
("
Could not find any of
"
.
join
("
",
@
_
));
mtr_error
("
Could not find any of
"
.
join
("
",
@
path
));
}
}
...
...
mysql-test/mysql-test-run.pl
View file @
bb9a634e
...
...
@@ -419,7 +419,8 @@ sub initial_setup () {
{
# Windows programs like 'mysqld' needs Windows paths
$glob_mysql_test_dir
=
`
cygpath -m
$glob_mysql_test_dir
`;
$glob_cygwin_shell
=
`
cygpath -w
$ENV
{'SHELL'}
`;
# The Windows path c:\...
my
$shell
=
$ENV
{'
SHELL
'}
||
"
/bin/bash
";
$glob_cygwin_shell
=
`
cygpath -w
$shell
`;
# The Windows path c:\...
chomp
(
$glob_mysql_test_dir
);
chomp
(
$glob_cygwin_shell
);
}
...
...
@@ -791,13 +792,15 @@ sub executable_setup () {
my
$path_examples
=
"
$glob_basedir
/libmysqld/examples
";
$exe_mysqltest
=
mtr_exe_exists
("
$path_examples
/mysqltest
");
$exe_mysql_client_test
=
mtr_exe_exists
("
$path_examples
/mysql_client_test_embedded
");
mtr_exe_exists
("
$path_examples
/mysql_client_test_embedded
",
"
/usr/bin/false
");
}
else
{
$exe_mysqltest
=
mtr_exe_exists
("
$path_client_bindir
/mysqltest
");
$exe_mysql_client_test
=
mtr_exe_exists
("
$glob_basedir
/tests/mysql_client_test
");
mtr_exe_exists
("
$glob_basedir
/tests/mysql_client_test
",
"
/usr/bin/false
");
}
$exe_mysqldump
=
mtr_exe_exists
("
$path_client_bindir
/mysqldump
");
$exe_mysqlshow
=
mtr_exe_exists
("
$path_client_bindir
/mysqlshow
");
...
...
@@ -819,7 +822,8 @@ sub executable_setup () {
$exe_mysqladmin
=
mtr_exe_exists
("
$path_client_bindir
/mysqladmin
");
$exe_mysql
=
mtr_exe_exists
("
$path_client_bindir
/mysql
");
$exe_mysql_fix_system_tables
=
mtr_script_exists
("
$path_client_bindir
/mysql_fix_privilege_tables
");
mtr_script_exists
("
$path_client_bindir
/mysql_fix_privilege_tables
",
"
$glob_basedir
/scripts/mysql_fix_privilege_tables
");
$path_language
=
mtr_path_exists
("
$glob_basedir
/share/mysql/english/
",
"
$glob_basedir
/share/english/
");
...
...
@@ -833,13 +837,15 @@ sub executable_setup () {
$exe_mysqltest
=
mtr_exe_exists
("
$path_client_bindir
/mysqltest_embedded
");
$exe_mysql_client_test
=
mtr_exe_exists
("
$glob_basedir
/tests/mysql_client_test_embedded
",
"
$path_client_bindir
/mysql_client_test_embedded
");
"
$path_client_bindir
/mysql_client_test_embedded
",
"
/usr/bin/false
");
}
else
{
$exe_mysqltest
=
mtr_exe_exists
("
$path_client_bindir
/mysqltest
");
$exe_mysql_client_test
=
mtr_exe_exists
("
$path_client_bindir
/mysql_client_test
");
mtr_exe_exists
("
$path_client_bindir
/mysql_client_test
",
"
/usr/bin/false
");
# FIXME temporary
}
$path_ndb_tools_dir
=
"
$glob_basedir
/bin
";
...
...
@@ -1548,7 +1554,7 @@ sub do_before_start_master ($$) {
$tname
ne
"
rpl_crash_binlog_ib_3b
")
{
# FIXME we really want separate dir for binlogs
foreach
my
$bin
(
glob
("
$opt_vardir
/log/master*-bin
.
*
")
)
foreach
my
$bin
(
glob
("
$opt_vardir
/log/master*-bin*
")
)
{
unlink
(
$bin
);
}
...
...
@@ -1586,13 +1592,13 @@ sub do_before_start_slave ($$) {
$tname
ne
"
rpl_crash_binlog_ib_3b
"
)
{
# FIXME we really want separate dir for binlogs
foreach
my
$bin
(
glob
("
$opt_vardir
/log/slave*-bin
.
*
")
)
foreach
my
$bin
(
glob
("
$opt_vardir
/log/slave*-bin*
")
)
{
unlink
(
$bin
);
}
# FIXME really master?!
unlink
("
$
opt_vardir
/slave-data
/master.info
");
unlink
("
$
opt_vardir
/slave-data
/relay-log.info
");
unlink
("
$
slave
->[0]->{'path_myddir'}
/master.info
");
unlink
("
$
slave
->[0]->{'path_myddir'}
/relay-log.info
");
}
# Run slave initialization shell script if one exists
...
...
@@ -1606,8 +1612,10 @@ sub do_before_start_slave ($$) {
}
}
`
rm -f
$opt_vardir
/slave-data/log.*
`;
# unlink("$opt_vardir/slave-data/log.*");
foreach
my
$bin
(
glob
("
$slave
->[0]->{'path_myddir'}/log.*
")
)
{
unlink
(
$bin
);
}
}
sub
mysqld_arguments
($$$$$)
{
...
...
sql/examples/ha_archive.cc
View file @
bb9a634e
...
...
@@ -259,7 +259,7 @@ int ha_archive::write_data_header(gzFile file_to_write)
This method reads the header of a meta file and returns whether or not it was successful.
*rows will contain the current number of rows in the data file upon success.
*/
int
ha_archive
::
read_meta_file
(
File
meta_file
,
ulonglong
*
rows
)
int
ha_archive
::
read_meta_file
(
File
meta_file
,
ha_rows
*
rows
)
{
uchar
meta_buffer
[
META_BUFFER_SIZE
];
ulonglong
check_point
;
...
...
@@ -273,7 +273,7 @@ int ha_archive::read_meta_file(File meta_file, ulonglong *rows)
/*
Parse out the meta data, we ignore version at the moment
*/
*
rows
=
uint8korr
(
meta_buffer
+
2
);
*
rows
=
(
ha_rows
)
uint8korr
(
meta_buffer
+
2
);
check_point
=
uint8korr
(
meta_buffer
+
10
);
DBUG_PRINT
(
"ha_archive::read_meta_file"
,
(
"Check %d"
,
(
uint
)
meta_buffer
[
0
]));
...
...
@@ -296,7 +296,7 @@ int ha_archive::read_meta_file(File meta_file, ulonglong *rows)
By setting dirty you say whether or not the file represents the actual state of the data file.
Upon ::open() we set to dirty, and upon ::close() we set to clean.
*/
int
ha_archive
::
write_meta_file
(
File
meta_file
,
ulonglong
rows
,
bool
dirty
)
int
ha_archive
::
write_meta_file
(
File
meta_file
,
ha_rows
rows
,
bool
dirty
)
{
uchar
meta_buffer
[
META_BUFFER_SIZE
];
ulonglong
check_point
=
0
;
//Reserved for the future
...
...
@@ -787,7 +787,7 @@ int ha_archive::rnd_pos(byte * buf, byte *pos)
DBUG_ENTER
(
"ha_archive::rnd_pos"
);
statistic_increment
(
table
->
in_use
->
status_var
.
ha_read_rnd_next_count
,
&
LOCK_status
);
current_position
=
my_get_ptr
(
pos
,
ref_length
);
current_position
=
(
z_off_t
)
my_get_ptr
(
pos
,
ref_length
);
(
void
)
gzseek
(
archive
,
current_position
,
SEEK_SET
);
DBUG_RETURN
(
get_row
(
archive
,
buf
));
...
...
@@ -801,7 +801,7 @@ int ha_archive::repair(THD* thd, HA_CHECK_OPT* check_opt)
{
int
rc
;
byte
*
buf
;
ulonglong
rows_recorded
=
0
;
ha_rows
rows_recorded
=
0
;
gzFile
rebuild_file
;
// Archive file we are working with
File
meta_file
;
// Meta file we use
char
data_file_name
[
FN_REFLEN
];
...
...
sql/examples/ha_archive.h
View file @
bb9a634e
...
...
@@ -36,7 +36,7 @@ typedef struct st_archive_share {
gzFile
archive_write
;
/* Archive file we are working with */
bool
dirty
;
/* Flag for if a flush should occur */
bool
crashed
;
/* Meta file is crashed */
ulonglong
rows_recorded
;
/* Number of rows in tables */
ha_rows
rows_recorded
;
/* Number of rows in tables */
}
ARCHIVE_SHARE
;
/*
...
...
@@ -88,8 +88,8 @@ class ha_archive: public handler
int
rnd_next
(
byte
*
buf
);
int
rnd_pos
(
byte
*
buf
,
byte
*
pos
);
int
get_row
(
gzFile
file_to_read
,
byte
*
buf
);
int
read_meta_file
(
File
meta_file
,
ulonglong
*
rows
);
int
write_meta_file
(
File
meta_file
,
ulonglong
rows
,
bool
dirty
);
int
read_meta_file
(
File
meta_file
,
ha_rows
*
rows
);
int
write_meta_file
(
File
meta_file
,
ha_rows
rows
,
bool
dirty
);
ARCHIVE_SHARE
*
get_share
(
const
char
*
table_name
,
TABLE
*
table
);
int
free_share
(
ARCHIVE_SHARE
*
share
);
bool
auto_repair
()
const
{
return
1
;
}
// For the moment we just do this
...
...
sql/ha_federated.cc
View file @
bb9a634e
...
...
@@ -848,7 +848,7 @@ static FEDERATED_SHARE *get_share(const char *table_name, TABLE *table)
query
.
length
(
0
);
uint
table_name_length
,
table_base_name_length
;
char
*
tmp_table_name
,
*
t
mp_table_base_name
,
*
t
able_base_name
,
*
select_query
;
char
*
tmp_table_name
,
*
table_base_name
,
*
select_query
;
/* share->table_name has the file location - we want the table's name! */
table_base_name
=
(
char
*
)
table
->
s
->
table_name
;
...
...
@@ -969,7 +969,6 @@ const char **ha_federated::bas_ext() const
int
ha_federated
::
open
(
const
char
*
name
,
int
mode
,
uint
test_if_locked
)
{
int
rc
;
DBUG_ENTER
(
"ha_federated::open"
);
if
(
!
(
share
=
get_share
(
name
,
table
)))
...
...
@@ -1088,7 +1087,7 @@ int ha_federated::write_row(byte *buf)
{
uint
x
=
0
,
num_fields
=
0
;
Field
**
field
;
ulong
current_query_id
=
1
;
query_id_t
current_query_id
=
1
;
ulong
tmp_query_id
=
1
;
uint
all_fields_have_same_query_id
=
1
;
...
...
@@ -1479,8 +1478,6 @@ int ha_federated::index_read_idx(byte *buf, uint index, const byte *key,
__attribute__
((
unused
)))
{
char
index_value
[
IO_SIZE
];
char
key_value
[
IO_SIZE
];
char
test_value
[
IO_SIZE
];
String
index_string
(
index_value
,
sizeof
(
index_value
),
&
my_charset_bin
);
index_string
.
length
(
0
);
uint
keylen
;
...
...
@@ -1546,7 +1543,6 @@ int ha_federated::index_read_idx(byte *buf, uint index, const byte *key,
/* Initialized at each key walk (called multiple times unlike rnd_init()) */
int
ha_federated
::
index_init
(
uint
keynr
)
{
int
error
;
DBUG_ENTER
(
"ha_federated::index_init"
);
DBUG_PRINT
(
"info"
,
(
"table: '%s' key: %d"
,
table
->
s
->
table_name
,
keynr
));
...
...
@@ -1578,7 +1574,6 @@ int ha_federated::index_next(byte *buf)
int
ha_federated
::
rnd_init
(
bool
scan
)
{
DBUG_ENTER
(
"ha_federated::rnd_init"
);
int
num_fields
,
rows
;
/*
This 'scan' flag is incredibly important for this handler to work
...
...
sql/item_strfunc.cc
View file @
bb9a634e
...
...
@@ -456,7 +456,6 @@ String *Item_func_des_decrypt::val_str(String *str)
DBUG_ASSERT
(
fixed
==
1
);
#ifdef HAVE_OPENSSL
uint
code
=
ER_WRONG_PARAMETERS_TO_PROCEDURE
;
DES_key_schedule
ks1
,
ks2
,
ks3
;
DES_cblock
ivec
;
struct
st_des_keyblock
keyblock
;
struct
st_des_keyschedule
keyschedule
;
...
...
sql/sql_acl.cc
View file @
bb9a634e
...
...
@@ -2477,7 +2477,6 @@ static int replace_routine_table(THD *thd, GRANT_NAME *grant_name,
int
old_row_exists
=
1
;
int
error
=
0
;
ulong
store_proc_rights
;
byte
*
key
;
DBUG_ENTER
(
"replace_routine_table"
);
if
(
!
initialized
)
...
...
@@ -3217,7 +3216,6 @@ my_bool grant_init(THD *org_thd)
do
{
GRANT_NAME
*
mem_check
;
longlong
proc_type
;
HASH
*
hash
;
if
(
!
(
mem_check
=
new
GRANT_NAME
(
p_table
)))
{
...
...
sql/sql_insert.cc
View file @
bb9a634e
...
...
@@ -199,7 +199,7 @@ static int check_update_fields(THD *thd, TABLE_LIST *insert_table_list,
List
<
Item
>
&
update_fields
)
{
TABLE
*
table
=
insert_table_list
->
table
;
ulong
timestamp_query_id
;
query_id_t
timestamp_query_id
;
LINT_INIT
(
timestamp_query_id
);
/*
...
...
sql/sql_lex.cc
View file @
bb9a634e
...
...
@@ -1780,12 +1780,13 @@ uint8 st_lex::get_effective_with_check(st_table_list *view)
void
st_select_lex_unit
::
set_limit
(
SELECT_LEX
*
sl
)
{
ulonglong
select_limit_val
;
ha_rows
select_limit_val
;
DBUG_ASSERT
(
!
thd
->
current_arena
->
is_stmt_prepare
());
select_limit_val
=
sl
->
select_limit
?
sl
->
select_limit
->
val_uint
()
:
HA_POS_ERROR
;
offset_limit_cnt
=
sl
->
offset_limit
?
sl
->
offset_limit
->
val_uint
()
:
ULL
(
0
);
select_limit_val
=
(
ha_rows
)(
sl
->
select_limit
?
sl
->
select_limit
->
val_uint
()
:
HA_POS_ERROR
);
offset_limit_cnt
=
(
ha_rows
)(
sl
->
offset_limit
?
sl
->
offset_limit
->
val_uint
()
:
ULL
(
0
));
select_limit_cnt
=
select_limit_val
+
offset_limit_cnt
;
if
(
select_limit_cnt
<
select_limit_val
)
select_limit_cnt
=
HA_POS_ERROR
;
// no limit
...
...
sql/sql_lex.h
View file @
bb9a634e
...
...
@@ -304,7 +304,7 @@ class st_select_lex_node {
*
link_next
,
**
link_prev
;
/* list of whole SELECT_LEX */
public:
ulong
long
options
;
ulong
options
;
/*
result of this query can't be cached, bit field, can be :
UNCACHEABLE_DEPENDENT
...
...
sql/sql_union.cc
View file @
bb9a634e
...
...
@@ -457,7 +457,9 @@ bool st_select_lex_unit::exec()
table
->
no_keyread
=
1
;
}
res
=
sl
->
join
->
error
;
offset_limit_cnt
=
sl
->
offset_limit
?
sl
->
offset_limit
->
val_uint
()
:
0
;
offset_limit_cnt
=
(
ha_rows
)(
sl
->
offset_limit
?
sl
->
offset_limit
->
val_uint
()
:
0
);
if
(
!
res
)
{
examined_rows
+=
thd
->
examined_row_count
;
...
...
sql/sql_yacc.yy
View file @
bb9a634e
...
...
@@ -5674,7 +5674,7 @@ delete_limit_clause:
ulong_num:
NUM { int error; $$= (ulong) my_strtoll10($1.str, (char**) 0, &error); }
| HEX_NUM {
int error;
$$= (ulong) strtol($1.str, (char**) 0, 16); }
| HEX_NUM { $$= (ulong) strtol($1.str, (char**) 0, 16); }
| LONG_NUM { int error; $$= (ulong) my_strtoll10($1.str, (char**) 0, &error); }
| ULONGLONG_NUM { int error; $$= (ulong) my_strtoll10($1.str, (char**) 0, &error); }
| DECIMAL_NUM { int error; $$= (ulong) my_strtoll10($1.str, (char**) 0, &error); }
...
...
sql/table.cc
View file @
bb9a634e
...
...
@@ -746,8 +746,9 @@ int openfrm(THD *thd, const char *name, const char *alias, uint db_stat,
error.
*/
keyinfo
->
key_length
-=
(
key_part
->
length
-
field
->
key_length
());
key_part
->
store_length
-=
(
key_part
->
length
-
field
->
key_length
());
key_part
->
length
=
field
->
key_length
();
key_part
->
store_length
-=
(
uint16
)(
key_part
->
length
-
field
->
key_length
());
key_part
->
length
=
(
uint16
)
field
->
key_length
();
sql_print_error
(
"Found wrong key definition in %s; Please do
\"
ALTER TABLE '%s' FORCE
\"
to fix it!"
,
name
,
share
->
table_name
);
push_warning_printf
(
thd
,
MYSQL_ERROR
::
WARN_LEVEL_ERROR
,
ER_CRASHED_ON_USAGE
,
...
...
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