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
f13723ac
Commit
f13723ac
authored
Nov 30, 2004
by
joreland@mysql.com
Browse files
Options
Browse Files
Download
Plain Diff
Merge mysql.com:/home/jonas/src/mysql-5.0-ndb
into mysql.com:/home/jonas/src/wl2126
parents
f8e8cbc6
a1a4ddad
Changes
47
Show whitespace changes
Inline
Side-by-side
Showing
47 changed files
with
207 additions
and
79 deletions
+207
-79
client/mysqladmin.cc
client/mysqladmin.cc
+9
-0
dbug/monty.doc
dbug/monty.doc
+1
-1
dbug/user.r
dbug/user.r
+4
-4
mysql-test/r/ndb_index_unique.result
mysql-test/r/ndb_index_unique.result
+38
-0
mysql-test/r/strict.result
mysql-test/r/strict.result
+1
-1
mysql-test/r/view.result
mysql-test/r/view.result
+4
-4
mysql-test/t/information_schema.test
mysql-test/t/information_schema.test
+1
-0
mysql-test/t/ndb_grant.later
mysql-test/t/ndb_grant.later
+0
-0
mysql-test/t/ndb_index_unique.test
mysql-test/t/ndb_index_unique.test
+20
-0
mysql-test/t/ps_1general.test
mysql-test/t/ps_1general.test
+2
-0
mysql-test/t/view.test
mysql-test/t/view.test
+4
-2
ndb/src/ndbapi/NdbScanOperation.cpp
ndb/src/ndbapi/NdbScanOperation.cpp
+1
-0
netware/comp_err.def
netware/comp_err.def
+1
-1
netware/isamchk.def
netware/isamchk.def
+1
-1
netware/isamlog.def
netware/isamlog.def
+1
-1
netware/libmysql.def
netware/libmysql.def
+1
-1
netware/my_print_defaults.def
netware/my_print_defaults.def
+1
-1
netware/myisam_ftdump.def
netware/myisam_ftdump.def
+1
-1
netware/myisamchk.def
netware/myisamchk.def
+1
-1
netware/myisamlog.def
netware/myisamlog.def
+1
-1
netware/myisampack.def
netware/myisampack.def
+1
-1
netware/mysql.def
netware/mysql.def
+1
-1
netware/mysql_install.def
netware/mysql_install.def
+1
-1
netware/mysql_install_db.def
netware/mysql_install_db.def
+1
-1
netware/mysql_test_run.def
netware/mysql_test_run.def
+1
-1
netware/mysql_waitpid.def
netware/mysql_waitpid.def
+1
-1
netware/mysqladmin.def
netware/mysqladmin.def
+1
-1
netware/mysqlbinlog.def
netware/mysqlbinlog.def
+1
-1
netware/mysqlcheck.def
netware/mysqlcheck.def
+1
-1
netware/mysqld.def
netware/mysqld.def
+1
-1
netware/mysqld_safe.def
netware/mysqld_safe.def
+1
-1
netware/mysqldump.def
netware/mysqldump.def
+1
-1
netware/mysqlimport.def
netware/mysqlimport.def
+1
-1
netware/mysqlshow.def
netware/mysqlshow.def
+1
-1
netware/mysqltest.def
netware/mysqltest.def
+1
-1
netware/pack_isam.def
netware/pack_isam.def
+1
-1
netware/perror.def
netware/perror.def
+1
-1
netware/replace.def
netware/replace.def
+1
-1
netware/resolve_stack_dump.def
netware/resolve_stack_dump.def
+1
-1
netware/resolveip.def
netware/resolveip.def
+1
-1
sql/examples/ha_archive.cc
sql/examples/ha_archive.cc
+18
-4
sql/examples/ha_archive.h
sql/examples/ha_archive.h
+8
-6
sql/field.cc
sql/field.cc
+14
-14
sql/ha_ndbcluster.cc
sql/ha_ndbcluster.cc
+38
-6
sql/item_cmpfunc.h
sql/item_cmpfunc.h
+1
-1
sql/mysqld.cc
sql/mysqld.cc
+6
-2
sql/sql_select.cc
sql/sql_select.cc
+9
-6
No files found.
client/mysqladmin.cc
View file @
f13723ac
...
@@ -125,6 +125,10 @@ static TYPELIB command_typelib=
...
@@ -125,6 +125,10 @@ static TYPELIB command_typelib=
static
struct
my_option
my_long_options
[]
=
static
struct
my_option
my_long_options
[]
=
{
{
#ifdef __NETWARE__
{
"autoclose"
,
'a'
,
" Auto close the screen on exit for NetWare"
,
0
,
0
,
0
,
GET_NO_ARG
,
NO_ARG
,
0
,
0
,
0
,
0
,
0
,
0
},
#endif
{
"count"
,
'c'
,
{
"count"
,
'c'
,
"Number of iterations to make. This works with -i (--sleep) only."
,
"Number of iterations to make. This works with -i (--sleep) only."
,
(
gptr
*
)
&
nr_iterations
,
(
gptr
*
)
&
nr_iterations
,
0
,
GET_UINT
,
(
gptr
*
)
&
nr_iterations
,
(
gptr
*
)
&
nr_iterations
,
0
,
GET_UINT
,
...
@@ -218,6 +222,11 @@ get_one_option(int optid, const struct my_option *opt __attribute__((unused)),
...
@@ -218,6 +222,11 @@ get_one_option(int optid, const struct my_option *opt __attribute__((unused)),
int
error
=
0
;
int
error
=
0
;
switch
(
optid
)
{
switch
(
optid
)
{
#ifdef __NETWARE__
case
'a'
:
setscreenmode
(
SCR_AUTOCLOSE_ON_EXIT
);
// auto close the screen /
break
;
#endif
case
'c'
:
case
'c'
:
opt_count_iterations
=
1
;
opt_count_iterations
=
1
;
break
;
break
;
...
...
dbug/monty.doc
View file @
f13723ac
...
@@ -15,6 +15,6 @@ All changes that I or other people at MySQL AB have done to all files
...
@@ -15,6 +15,6 @@ All changes that I or other people at MySQL AB have done to all files
in the dbug library (Mainly in dbug.c, dbug_analyze.c, dbug_long.h,
in the dbug library (Mainly in dbug.c, dbug_analyze.c, dbug_long.h,
dbug.h) are put in public domain, as the rest of the dbug.c library)
dbug.h) are put in public domain, as the rest of the dbug.c library)
To my knowledge, all code in dbug library
are
in public domain.
To my knowledge, all code in dbug library
is
in public domain.
Michael Widenius
Michael Widenius
dbug/user.r
View file @
f13723ac
...
@@ -377,7 +377,7 @@ The factorial function is then called three times, with the arguments
...
@@ -377,7 +377,7 @@ The factorial function is then called three times, with the arguments
Note that the DBUG_PRINT takes exactly
Note that the DBUG_PRINT takes exactly
.B two
.B two
arguments, with the second argument (a format string and list
arguments, with the second argument (a format string and list
of printable values) enclosed in parenthes
i
s.
of printable values) enclosed in parenthes
e
s.
.P
.P
Debug control strings consist of a header, the "-#", followed
Debug control strings consist of a header, the "-#", followed
by a colon separated list of debugger arguments.
by a colon separated list of debugger arguments.
...
@@ -575,7 +575,7 @@ The second argument to a
...
@@ -575,7 +575,7 @@ The second argument to a
.B DBUG_PRINT
.B DBUG_PRINT
macro is a standard printf style
macro is a standard printf style
format string and one or more arguments to print, all
format string and one or more arguments to print, all
enclosed in parenthes
i
s so that they collectively become a single macro
enclosed in parenthes
e
s so that they collectively become a single macro
argument.
argument.
This is how variable numbers of printf arguments are supported.
This is how variable numbers of printf arguments are supported.
Also note that no explicit newline is required at the end of the format string.
Also note that no explicit newline is required at the end of the format string.
...
@@ -807,7 +807,7 @@ and the corresponding argument list.
...
@@ -807,7 +807,7 @@ and the corresponding argument list.
Note that the format string and argument list are all one macro argument
Note that the format string and argument list are all one macro argument
and
and
.B must
.B must
be enclosed in parenthes
i
s.
be enclosed in parenthes
e
s.
.SP 1
.SP 1
EX:\ \fCDBUG_PRINT\ ("eof",\ ("end\ of\ file\ found"));\fR
EX:\ \fCDBUG_PRINT\ ("eof",\ ("end\ of\ file\ found"));\fR
.br
.br
...
@@ -826,7 +826,7 @@ EX: \fCDBUG_DBUG\ ("net",\ packet,\ len);\fR
...
@@ -826,7 +826,7 @@ EX: \fCDBUG_DBUG\ ("net",\ packet,\ len);\fR
.LI DBUG_SETJMP\
.LI DBUG_SETJMP\
Used in place of the setjmp() function to first save the current
Used in place of the setjmp() function to first save the current
debugger state and then execute the standard setjmp call.
debugger state and then execute the standard setjmp call.
This allows to the debugger to restore it
'
s state when the
This allows to the debugger to restore its state when the
DBUG_LONGJMP macro is used to invoke the standard longjmp() call.
DBUG_LONGJMP macro is used to invoke the standard longjmp() call.
Currently all instances of DBUG_SETJMP must occur within the
Currently all instances of DBUG_SETJMP must occur within the
same function and at the same function nesting level.
same function and at the same function nesting level.
...
...
mysql-test/r/ndb_index_unique.result
View file @
f13723ac
...
@@ -77,8 +77,10 @@ a b c
...
@@ -77,8 +77,10 @@ a b c
3 NULL NULL
3 NULL NULL
select * from t1 use index (bc) where b IS NULL and c IS NULL order by a;
select * from t1 use index (bc) where b IS NULL and c IS NULL order by a;
a b c
a b c
3 NULL NULL
select * from t1 use index (bc) where b IS NULL and c = 2 order by a;
select * from t1 use index (bc) where b IS NULL and c = 2 order by a;
a b c
a b c
2 NULL 2
select * from t1 use index (bc) where b < 4 order by a;
select * from t1 use index (bc) where b < 4 order by a;
a b c
a b c
1 1 1
1 1 1
...
@@ -574,3 +576,39 @@ uid gid rid cid
...
@@ -574,3 +576,39 @@ uid gid rid cid
1 1 2 3
1 1 2 3
1 1 2 4
1 1 2 4
drop table t1,t2,t3,t4,t5,t6,t7;
drop table t1,t2,t3,t4,t5,t6,t7;
CREATE TABLE t1 (
a int unsigned NOT NULL PRIMARY KEY,
b int unsigned,
c int unsigned,
UNIQUE bc(b,c) ) engine = ndb;
insert into t1 values(1,1,1),(2,NULL,2),(3,NULL,NULL),(4,4,NULL);
select * from t1 where b=1 and c=1;
a b c
1 1 1
select * from t1 where b is null and c is null;
a b c
3 NULL NULL
select * from t1 where b is null and c = 2;
a b c
2 NULL 2
select * from t1 where b = 4 and c is null;
a b c
4 4 NULL
create table t8 as
select * from t1 where (b = 1 and c = 1)
or (b is null and c is null)
or (b is null and c = 2)
or (b = 4 and c is null);
select * from t8 order by a;
a b c
1 1 1
2 NULL 2
3 NULL NULL
4 4 NULL
select * from t1 order by a;
a b c
1 1 1
2 NULL 2
3 NULL NULL
4 4 NULL
drop table t1, t8;
mysql-test/r/strict.result
View file @
f13723ac
...
@@ -616,7 +616,7 @@ col1 col2
...
@@ -616,7 +616,7 @@ col1 col2
-9223372036854775808 0
-9223372036854775808 0
9223372036854775807 18446744073709551615
9223372036854775807 18446744073709551615
-9223372036854773760 0
-9223372036854773760 0
-9223372036854775808
1844674407370953984
9223372036854775807
1844674407370953984
-9223372036854775808 NULL
-9223372036854775808 NULL
-9223372036854775808 NULL
-9223372036854775808 NULL
NULL 18446744073709551615
NULL 18446744073709551615
...
...
mysql-test/r/view.result
View file @
f13723ac
...
@@ -8,7 +8,7 @@ create temporary table t1 (a int, b int);
...
@@ -8,7 +8,7 @@ create temporary table t1 (a int, b int);
create view v1 (c) as select b+1 from t1;
create view v1 (c) as select b+1 from t1;
ERROR HY000: View's SELECT contains a temporary table 't1'
ERROR HY000: View's SELECT contains a temporary table 't1'
drop table t1;
drop table t1;
create table t1 (a int, b int)
max_rows=1000000
;
create table t1 (a int, b int);
insert into t1 values (1,2), (1,3), (2,4), (2,5), (3,10);
insert into t1 values (1,2), (1,3), (2,4), (2,5), (3,10);
create view v1 (c,d) as select a,b+@@global.max_user_connections from t1;
create view v1 (c,d) as select a,b+@@global.max_user_connections from t1;
ERROR HY000: View's SELECT contains a variable or parameter
ERROR HY000: View's SELECT contains a variable or parameter
...
@@ -149,7 +149,7 @@ v5 VIEW
...
@@ -149,7 +149,7 @@ v5 VIEW
v6 VIEW
v6 VIEW
show table status;
show table status;
Name Engine Version Row_format Rows Avg_row_length Data_length Max_data_length Index_length Data_free Auto_increment Create_time Update_time Check_time Collation Checksum Create_options Comment
Name Engine Version Row_format Rows Avg_row_length Data_length Max_data_length Index_length Data_free Auto_increment Create_time Update_time Check_time Collation Checksum Create_options Comment
t1 MyISAM 9 Fixed 5 9 45
150994943 1024 0 NULL # # NULL latin1_swedish_ci NULL max_rows=1000000
t1 MyISAM 9 Fixed 5 9 45
38654705663 1024 0 NULL # # NULL latin1_swedish_ci NULL
v1 NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL # # NULL NULL NULL NULL view
v1 NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL # # NULL NULL NULL NULL view
v2 NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL # # NULL NULL NULL NULL view
v2 NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL # # NULL NULL NULL NULL view
v3 NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL # # NULL NULL NULL NULL view
v3 NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL # # NULL NULL NULL NULL view
...
@@ -1213,14 +1213,14 @@ select * from v1;
...
@@ -1213,14 +1213,14 @@ select * from v1;
drop view v1;
drop view v1;
drop table t1;
drop table t1;
create function x1 () returns int return 5;
create function x1 () returns int return 5;
create table t1 (s1 int)
max_rows=1000000
;
create table t1 (s1 int);
create view v1 as select x1() from t1;
create view v1 as select x1() from t1;
drop function x1;
drop function x1;
select * from v1;
select * from v1;
ERROR 42000: FUNCTION test.x1 does not exist
ERROR 42000: FUNCTION test.x1 does not exist
show table status;
show table status;
Name Engine Version Row_format Rows Avg_row_length Data_length Max_data_length Index_length Data_free Auto_increment Create_time Update_time Check_time Collation Checksum Create_options Comment
Name Engine Version Row_format Rows Avg_row_length Data_length Max_data_length Index_length Data_free Auto_increment Create_time Update_time Check_time Collation Checksum Create_options Comment
t1 MyISAM 9 Fixed 0 0 0
83886079 1024 0 NULL # # NULL latin1_swedish_ci NULL max_rows=1000000
t1 MyISAM 9 Fixed 0 0 0
21474836479 1024 0 NULL # # NULL latin1_swedish_ci NULL
v1 NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL # # NULL NULL NULL NULL FUNCTION test.x1 does not exist
v1 NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL # # NULL NULL NULL NULL FUNCTION test.x1 does not exist
drop view v1;
drop view v1;
drop table t1;
drop table t1;
...
...
mysql-test/t/information_schema.test
View file @
f13723ac
...
@@ -41,6 +41,7 @@ show tables like 't%';
...
@@ -41,6 +41,7 @@ show tables like 't%';
--
replace_column
15
# 16 #
--
replace_column
15
# 16 #
show
tables
*
from
test
where
table_name
like
't%'
;
show
tables
*
from
test
where
table_name
like
't%'
;
--
replace_column
12
# 13 #
--
replace_column
12
# 13 #
--
replace_result
"2147483647 "
"21474836479 "
show
table
status
;
show
table
status
;
show
full
columns
from
t3
like
"a%"
;
show
full
columns
from
t3
like
"a%"
;
show
full
columns
from
mysql
.
db
like
"Insert%"
;
show
full
columns
from
mysql
.
db
like
"Insert%"
;
...
...
mysql-test/t/ndb_grant.
test
→
mysql-test/t/ndb_grant.
later
View file @
f13723ac
File moved
mysql-test/t/ndb_index_unique.test
View file @
f13723ac
...
@@ -265,4 +265,24 @@ select * from t4 where rid = 2 order by cid;
...
@@ -265,4 +265,24 @@ select * from t4 where rid = 2 order by cid;
drop
table
t1
,
t2
,
t3
,
t4
,
t5
,
t6
,
t7
;
drop
table
t1
,
t2
,
t3
,
t4
,
t5
,
t6
,
t7
;
# test null in indexes
CREATE
TABLE
t1
(
a
int
unsigned
NOT
NULL
PRIMARY
KEY
,
b
int
unsigned
,
c
int
unsigned
,
UNIQUE
bc
(
b
,
c
)
)
engine
=
ndb
;
insert
into
t1
values
(
1
,
1
,
1
),(
2
,
NULL
,
2
),(
3
,
NULL
,
NULL
),(
4
,
4
,
NULL
);
select
*
from
t1
where
b
=
1
and
c
=
1
;
select
*
from
t1
where
b
is
null
and
c
is
null
;
select
*
from
t1
where
b
is
null
and
c
=
2
;
select
*
from
t1
where
b
=
4
and
c
is
null
;
create
table
t8
as
select
*
from
t1
where
(
b
=
1
and
c
=
1
)
or
(
b
is
null
and
c
is
null
)
or
(
b
is
null
and
c
=
2
)
or
(
b
=
4
and
c
is
null
);
select
*
from
t8
order
by
a
;
select
*
from
t1
order
by
a
;
drop
table
t1
,
t8
;
mysql-test/t/ps_1general.test
View file @
f13723ac
...
@@ -294,12 +294,14 @@ execute stmt4;
...
@@ -294,12 +294,14 @@ execute stmt4;
prepare
stmt4
from
' show table status from test like ''t2%'' '
;
prepare
stmt4
from
' show table status from test like ''t2%'' '
;
# egalize date and time values
# egalize date and time values
--
replace_column
12
# 13 # 14 #
--
replace_column
12
# 13 # 14 #
--
replace_result
2147483647
64424509439
# Bug#4288 : prepared statement 'show table status ..', wrong output on execute
# Bug#4288 : prepared statement 'show table status ..', wrong output on execute
execute
stmt4
;
execute
stmt4
;
# try the same with the big table
# try the same with the big table
prepare
stmt4
from
' show table status from test like ''t9%'' '
;
prepare
stmt4
from
' show table status from test like ''t9%'' '
;
# egalize date and time values
# egalize date and time values
--
replace_column
12
# 13 # 14 #
--
replace_column
12
# 13 # 14 #
--
replace_result
2147483647
4294967295
# Bug#4288
# Bug#4288
execute
stmt4
;
execute
stmt4
;
prepare
stmt4
from
' show status like ''Threads_running'' '
;
prepare
stmt4
from
' show status like ''Threads_running'' '
;
...
...
mysql-test/t/view.test
View file @
f13723ac
...
@@ -19,7 +19,7 @@ create temporary table t1 (a int, b int);
...
@@ -19,7 +19,7 @@ create temporary table t1 (a int, b int);
create
view
v1
(
c
)
as
select
b
+
1
from
t1
;
create
view
v1
(
c
)
as
select
b
+
1
from
t1
;
drop
table
t1
;
drop
table
t1
;
create
table
t1
(
a
int
,
b
int
)
max_rows
=
1000000
;
create
table
t1
(
a
int
,
b
int
);
insert
into
t1
values
(
1
,
2
),
(
1
,
3
),
(
2
,
4
),
(
2
,
5
),
(
3
,
10
);
insert
into
t1
values
(
1
,
2
),
(
1
,
3
),
(
2
,
4
),
(
2
,
5
),
(
3
,
10
);
# view with variable
# view with variable
...
@@ -84,6 +84,7 @@ explain extended select c from v6;
...
@@ -84,6 +84,7 @@ explain extended select c from v6;
show
tables
;
show
tables
;
show
full
tables
;
show
full
tables
;
--
replace_column
12
# 13 #
--
replace_column
12
# 13 #
--
replace_result
2147483647
38654705663
show
table
status
;
show
table
status
;
drop
view
v1
,
v2
,
v3
,
v4
,
v5
,
v6
;
drop
view
v1
,
v2
,
v3
,
v4
,
v5
,
v6
;
...
@@ -1165,12 +1166,13 @@ drop table t1;
...
@@ -1165,12 +1166,13 @@ drop table t1;
# VIEW over dropped function
# VIEW over dropped function
#
#
create function x1 () returns int return 5;
create function x1 () returns int return 5;
create table t1 (s1 int)
max_rows=1000000
;
create table t1 (s1 int);
create view v1 as select x1() from t1;
create view v1 as select x1() from t1;
drop function x1;
drop function x1;
-- error 1305
-- error 1305
select * from v1;
select * from v1;
--replace_column 12 # 13 #
--replace_column 12 # 13 #
--replace_result "2147483647 " "21474836479 "
show table status;
show table status;
drop view v1;
drop view v1;
drop table t1;
drop table t1;
...
...
ndb/src/ndbapi/NdbScanOperation.cpp
View file @
f13723ac
...
@@ -1648,4 +1648,5 @@ NdbIndexScanOperation::end_of_bound()
...
@@ -1648,4 +1648,5 @@ NdbIndexScanOperation::end_of_bound()
m_first_bound_word
=
theKEYINFOptr
+
theTotalNrOfKeyWordInSignal
;;
m_first_bound_word
=
theKEYINFOptr
+
theTotalNrOfKeyWordInSignal
;;
m_this_bound_start
=
theTupKeyLen
;
m_this_bound_start
=
theTupKeyLen
;
return
0
;
}
}
netware/comp_err.def
View file @
f13723ac
...
@@ -2,7 +2,7 @@
...
@@ -2,7 +2,7 @@
# MySQL Error File Compiler
# MySQL Error File Compiler
#------------------------------------------------------------------------------
#------------------------------------------------------------------------------
MODULE libc.nlm
MODULE libc.nlm
COPYRIGHT "(c) 2003 Novell, Inc. Portions (c) 2003 MySQL AB. All Rights Reserved."
COPYRIGHT "(c) 2003
-2005
Novell, Inc. Portions (c) 2003 MySQL AB. All Rights Reserved."
DESCRIPTION "MySQL Error File Compiler"
DESCRIPTION "MySQL Error File Compiler"
VERSION 4, 0
VERSION 4, 0
XDCDATA ../netware/mysql.xdc
XDCDATA ../netware/mysql.xdc
...
...
netware/isamchk.def
View file @
f13723ac
...
@@ -3,7 +3,7 @@
...
@@ -3,7 +3,7 @@
#------------------------------------------------------------------------------
#------------------------------------------------------------------------------
MODULE libc.nlm
MODULE libc.nlm
SCREENNAME "MySQL ISAM Table Check Tool"
SCREENNAME "MySQL ISAM Table Check Tool"
COPYRIGHT "(c) 2003 Novell, Inc. Portions (c) 2003 MySQL AB. All Rights Reserved."
COPYRIGHT "(c) 2003
-2005
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
...
...
netware/isamlog.def
View file @
f13723ac
...
@@ -2,7 +2,7 @@
...
@@ -2,7 +2,7 @@
# ISAM Log
# ISAM Log
#------------------------------------------------------------------------------
#------------------------------------------------------------------------------
MODULE libc.nlm
MODULE libc.nlm
COPYRIGHT "(c) 2003 Novell, Inc. Portions (c) 2003 MySQL AB. All Rights Reserved."
COPYRIGHT "(c) 2003
-2005
Novell, Inc. Portions (c) 2003 MySQL AB. All Rights Reserved."
DESCRIPTION "MySQL ISAM Table Log Tool"
DESCRIPTION "MySQL ISAM Table Log Tool"
VERSION 4, 0
VERSION 4, 0
XDCDATA ../netware/mysql.xdc
XDCDATA ../netware/mysql.xdc
...
...
netware/libmysql.def
View file @
f13723ac
...
@@ -3,7 +3,7 @@
...
@@ -3,7 +3,7 @@
#------------------------------------------------------------------------------
#------------------------------------------------------------------------------
MODULE libc.nlm
MODULE libc.nlm
EXPORT @libmysql.imp
EXPORT @libmysql.imp
COPYRIGHT "(c) 2003 Novell, Inc. Portions (c) 2003 MySQL AB. All Rights Reserved."
COPYRIGHT "(c) 2003
-2005
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
...
...
netware/my_print_defaults.def
View file @
f13723ac
...
@@ -2,7 +2,7 @@
...
@@ -2,7 +2,7 @@
# My Print Defaults
# My Print Defaults
#------------------------------------------------------------------------------
#------------------------------------------------------------------------------
MODULE libc.nlm
MODULE libc.nlm
COPYRIGHT "(c) 2003 Novell, Inc. Portions (c) 2003 MySQL AB. All Rights Reserved."
COPYRIGHT "(c) 2003
-2005
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
XDCDATA ../netware/mysql.xdc
XDCDATA ../netware/mysql.xdc
...
...
netware/myisam_ftdump.def
View file @
f13723ac
...
@@ -3,7 +3,7 @@
...
@@ -3,7 +3,7 @@
#------------------------------------------------------------------------------
#------------------------------------------------------------------------------
MODULE libc.nlm
MODULE libc.nlm
SCREENNAME "MySQL MyISAM Table Dump Tool"
SCREENNAME "MySQL MyISAM Table Dump Tool"
COPYRIGHT "(c) 2003 Novell, Inc. Portions (c) 2003 MySQL AB. All Rights Reserved."
COPYRIGHT "(c) 2003
-2005
Novell, Inc. Portions (c) 2003 MySQL AB. All Rights Reserved."
DESCRIPTION "MySQL MyISAM Table Dump Tool"
DESCRIPTION "MySQL MyISAM Table Dump Tool"
VERSION 4, 0
VERSION 4, 0
STACKSIZE 65536
STACKSIZE 65536
...
...
netware/myisamchk.def
View file @
f13723ac
...
@@ -3,7 +3,7 @@
...
@@ -3,7 +3,7 @@
#------------------------------------------------------------------------------
#------------------------------------------------------------------------------
MODULE libc.nlm
MODULE libc.nlm
SCREENNAME "MySQL MyISAM Table Check Tool"
SCREENNAME "MySQL MyISAM Table Check Tool"
COPYRIGHT "(c) 2003 Novell, Inc. Portions (c) 2003 MySQL AB. All Rights Reserved."
COPYRIGHT "(c) 2003
-2005
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
...
...
netware/myisamlog.def
View file @
f13723ac
...
@@ -3,7 +3,7 @@
...
@@ -3,7 +3,7 @@
#------------------------------------------------------------------------------
#------------------------------------------------------------------------------
MODULE libc.nlm
MODULE libc.nlm
SCREENNAME "MySQL MyISAM Table Log Tool"
SCREENNAME "MySQL MyISAM Table Log Tool"
COPYRIGHT "(c) 2003 Novell, Inc. Portions (c) 2003 MySQL AB. All Rights Reserved."
COPYRIGHT "(c) 2003
-2005
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
XDCDATA ../netware/mysql.xdc
XDCDATA ../netware/mysql.xdc
...
...
netware/myisampack.def
View file @
f13723ac
...
@@ -3,7 +3,7 @@
...
@@ -3,7 +3,7 @@
#------------------------------------------------------------------------------
#------------------------------------------------------------------------------
MODULE libc.nlm
MODULE libc.nlm
SCREENNAME "MySQL MyISAM Table Pack Tool"
SCREENNAME "MySQL MyISAM Table Pack Tool"
COPYRIGHT "(c) 2003 Novell, Inc. Portions (c) 2003 MySQL AB. All Rights Reserved."
COPYRIGHT "(c) 2003
-2005
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
XDCDATA ../netware/mysql.xdc
XDCDATA ../netware/mysql.xdc
...
...
netware/mysql.def
View file @
f13723ac
...
@@ -3,7 +3,7 @@
...
@@ -3,7 +3,7 @@
#------------------------------------------------------------------------------
#------------------------------------------------------------------------------
MODULE libc.nlm
MODULE libc.nlm
SCREENNAME "MySQL Monitor"
SCREENNAME "MySQL Monitor"
COPYRIGHT "(c) 2003 Novell, Inc. Portions (c) 2003 MySQL AB. All Rights Reserved."
COPYRIGHT "(c) 2003
-2005
Novell, Inc. Portions (c) 2003 MySQL AB. All Rights Reserved."
DESCRIPTION "MySQL Monitor"
DESCRIPTION "MySQL Monitor"
VERSION 4, 0
VERSION 4, 0
MULTIPLE
MULTIPLE
...
...
netware/mysql_install.def
View file @
f13723ac
...
@@ -2,7 +2,7 @@
...
@@ -2,7 +2,7 @@
# My Print Defaults
# My Print Defaults
#------------------------------------------------------------------------------
#------------------------------------------------------------------------------
MODULE libc.nlm
MODULE libc.nlm
COPYRIGHT "(c) 2003 Novell, Inc. Portions (c) 2003 MySQL AB. All Rights Reserved."
COPYRIGHT "(c) 2003
-2005
Novell, Inc. Portions (c) 2003 MySQL AB. All Rights Reserved."
DESCRIPTION "MySQL Install Tool"
DESCRIPTION "MySQL Install Tool"
VERSION 4, 0
VERSION 4, 0
XDCDATA ../netware/mysql.xdc
XDCDATA ../netware/mysql.xdc
...
...
netware/mysql_install_db.def
View file @
f13723ac
...
@@ -3,7 +3,7 @@
...
@@ -3,7 +3,7 @@
#------------------------------------------------------------------------------
#------------------------------------------------------------------------------
MODULE libc.nlm
MODULE libc.nlm
SCREENNAME "MySQL Install"
SCREENNAME "MySQL Install"
COPYRIGHT "(c) 2003 Novell, Inc. Portions (c) 2003 MySQL AB. All Rights Reserved."
COPYRIGHT "(c) 2003
-2005
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
XDCDATA ../netware/mysql.xdc
XDCDATA ../netware/mysql.xdc
...
...
netware/mysql_test_run.def
View file @
f13723ac
...
@@ -4,7 +4,7 @@
...
@@ -4,7 +4,7 @@
MODULE libc.nlm
MODULE libc.nlm
STACKSIZE 65536
STACKSIZE 65536
SCREENNAME "MySQL Test Run"
SCREENNAME "MySQL Test Run"
COPYRIGHT "(c) 2003 Novell, Inc. Portions (c) 2003 MySQL AB. All Rights Reserved."
COPYRIGHT "(c) 2003
-2005
Novell, Inc. Portions (c) 2003 MySQL AB. All Rights Reserved."
DESCRIPTION "MySQL Test Run"
DESCRIPTION "MySQL Test Run"
VERSION 4, 0
VERSION 4, 0
XDCDATA ../netware/mysql.xdc
XDCDATA ../netware/mysql.xdc
...
...
netware/mysql_waitpid.def
View file @
f13723ac
...
@@ -3,7 +3,7 @@
...
@@ -3,7 +3,7 @@
#------------------------------------------------------------------------------
#------------------------------------------------------------------------------
MODULE libc.nlm
MODULE libc.nlm
#SCREENNAME "MySQL Tool - Wait for a Program to Terminate"
#SCREENNAME "MySQL Tool - Wait for a Program to Terminate"
COPYRIGHT "(c) 2003 Novell, Inc. Portions (c) 2003 MySQL AB. All Rights Reserved."
COPYRIGHT "(c) 2003
-2005
Novell, Inc. Portions (c) 2003 MySQL AB. All Rights Reserved."
DESCRIPTION "MySQL Tool - Wait for a Program to Terminate"
DESCRIPTION "MySQL Tool - Wait for a Program to Terminate"
VERSION 4, 0
VERSION 4, 0
STACKSIZE 65536
STACKSIZE 65536
...
...
netware/mysqladmin.def
View file @
f13723ac
...
@@ -3,7 +3,7 @@
...
@@ -3,7 +3,7 @@
#------------------------------------------------------------------------------
#------------------------------------------------------------------------------
MODULE libc.nlm
MODULE libc.nlm
SCREENNAME "MySQL Admin"
SCREENNAME "MySQL Admin"
COPYRIGHT "(c) 2003 Novell, Inc. Portions (c) 2003 MySQL AB. All Rights Reserved."
COPYRIGHT "(c) 2003
-2005
Novell, Inc. Portions (c) 2003 MySQL AB. All Rights Reserved."
DESCRIPTION "MySQL Admin Tool"
DESCRIPTION "MySQL Admin Tool"
VERSION 4, 0
VERSION 4, 0
XDCDATA ../netware/mysql.xdc
XDCDATA ../netware/mysql.xdc
...
...
netware/mysqlbinlog.def
View file @
f13723ac
...
@@ -3,7 +3,7 @@
...
@@ -3,7 +3,7 @@
#------------------------------------------------------------------------------
#------------------------------------------------------------------------------
MODULE libc.nlm
MODULE libc.nlm
SCREENNAME "MySQL Binary Log Dump Tool"
SCREENNAME "MySQL Binary Log Dump Tool"
COPYRIGHT "(c) 2003 Novell, Inc. Portions (c) 2003 MySQL AB. All Rights Reserved."
COPYRIGHT "(c) 2003
-2005
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
XDCDATA ../netware/mysql.xdc
XDCDATA ../netware/mysql.xdc
...
...
netware/mysqlcheck.def
View file @
f13723ac
...
@@ -3,7 +3,7 @@
...
@@ -3,7 +3,7 @@
#------------------------------------------------------------------------------
#------------------------------------------------------------------------------
MODULE libc.nlm
MODULE libc.nlm
SCREENNAME "MySQL Check Tool"
SCREENNAME "MySQL Check Tool"
COPYRIGHT "(c) 2003 Novell, Inc. Portions (c) 2003 MySQL AB. All Rights Reserved."
COPYRIGHT "(c) 2003
-2005
Novell, Inc. Portions (c) 2003 MySQL AB. All Rights Reserved."
DESCRIPTION "MySQL Check Tool"
DESCRIPTION "MySQL Check Tool"
VERSION 4, 0
VERSION 4, 0
XDCDATA ../netware/mysql.xdc
XDCDATA ../netware/mysql.xdc
...
...
netware/mysqld.def
View file @
f13723ac
...
@@ -2,7 +2,7 @@
...
@@ -2,7 +2,7 @@
# MySQL Server
# MySQL Server
#------------------------------------------------------------------------------
#------------------------------------------------------------------------------
MODULE libc.nlm
MODULE libc.nlm
COPYRIGHT "(c) 2003 Novell, Inc. Portions (c) 2003 MySQL AB. All Rights Reserved."
COPYRIGHT "(c) 2003
-2005
Novell, Inc. Portions (c) 2003 MySQL AB. All Rights Reserved."
DESCRIPTION "MySQL Database Server"
DESCRIPTION "MySQL Database Server"
VERSION 4, 0
VERSION 4, 0
MULTIPLE
MULTIPLE
...
...
netware/mysqld_safe.def
View file @
f13723ac
...
@@ -3,7 +3,7 @@
...
@@ -3,7 +3,7 @@
#------------------------------------------------------------------------------
#------------------------------------------------------------------------------
MODULE libc.nlm
MODULE libc.nlm
SCREENNAME "MySQL Database Server"
SCREENNAME "MySQL Database Server"
COPYRIGHT "(c) 2003 Novell, Inc. Portions (c) 2003 MySQL AB. All Rights Reserved."
COPYRIGHT "(c) 2003
-2005
Novell, Inc. Portions (c) 2003 MySQL AB. All Rights Reserved."
DESCRIPTION "MySQL Database Server Monitor"
DESCRIPTION "MySQL Database Server Monitor"
VERSION 4, 0
VERSION 4, 0
MULTIPLE
MULTIPLE
...
...
netware/mysqldump.def
View file @
f13723ac
...
@@ -3,7 +3,7 @@
...
@@ -3,7 +3,7 @@
#------------------------------------------------------------------------------
#------------------------------------------------------------------------------
MODULE libc.nlm
MODULE libc.nlm
SCREENNAME "MySQL Dump Tool"
SCREENNAME "MySQL Dump Tool"
COPYRIGHT "(c) 2003 Novell, Inc. Portions (c) 2003 MySQL AB. All Rights Reserved."
COPYRIGHT "(c) 2003
-2005
Novell, Inc. Portions (c) 2003 MySQL AB. All Rights Reserved."
DESCRIPTION "MySQL Dump Tool"
DESCRIPTION "MySQL Dump Tool"
VERSION 4, 0
VERSION 4, 0
XDCDATA ../netware/mysql.xdc
XDCDATA ../netware/mysql.xdc
...
...
netware/mysqlimport.def
View file @
f13723ac
...
@@ -3,7 +3,7 @@
...
@@ -3,7 +3,7 @@
#------------------------------------------------------------------------------
#------------------------------------------------------------------------------
MODULE libc.nlm
MODULE libc.nlm
SCREENNAME "MySQL Import"
SCREENNAME "MySQL Import"
COPYRIGHT "(c) 2003 Novell, Inc. Portions (c) 2003 MySQL AB. All Rights Reserved."
COPYRIGHT "(c) 2003
-2005
Novell, Inc. Portions (c) 2003 MySQL AB. All Rights Reserved."
DESCRIPTION "MySQL Import Tool"
DESCRIPTION "MySQL Import Tool"
VERSION 4, 0
VERSION 4, 0
XDCDATA ../netware/mysql.xdc
XDCDATA ../netware/mysql.xdc
...
...
netware/mysqlshow.def
View file @
f13723ac
...
@@ -3,7 +3,7 @@
...
@@ -3,7 +3,7 @@
#------------------------------------------------------------------------------
#------------------------------------------------------------------------------
MODULE libc.nlm
MODULE libc.nlm
SCREENNAME "MySQL Show"
SCREENNAME "MySQL Show"
COPYRIGHT "(c) 2003 Novell, Inc. Portions (c) 2003 MySQL AB. All Rights Reserved."
COPYRIGHT "(c) 2003
-2005
Novell, Inc. Portions (c) 2003 MySQL AB. All Rights Reserved."
DESCRIPTION "MySQL Show Tool"
DESCRIPTION "MySQL Show Tool"
VERSION 4, 0
VERSION 4, 0
XDCDATA ../netware/mysql.xdc
XDCDATA ../netware/mysql.xdc
...
...
netware/mysqltest.def
View file @
f13723ac
...
@@ -2,7 +2,7 @@
...
@@ -2,7 +2,7 @@
# MySQL Admin
# MySQL Admin
#------------------------------------------------------------------------------
#------------------------------------------------------------------------------
MODULE libc.nlm
MODULE libc.nlm
COPYRIGHT "(c) 2003 Novell, Inc. Portions (c) 2003 MySQL AB. All Rights Reserved."
COPYRIGHT "(c) 2003
-2005
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
XDCDATA ../netware/mysql.xdc
XDCDATA ../netware/mysql.xdc
...
...
netware/pack_isam.def
View file @
f13723ac
...
@@ -2,7 +2,7 @@
...
@@ -2,7 +2,7 @@
# Pack ISAM
# Pack ISAM
#------------------------------------------------------------------------------
#------------------------------------------------------------------------------
MODULE libc.nlm
MODULE libc.nlm
COPYRIGHT "(c) 2003 Novell, Inc. Portions (c) 2003 MySQL AB. All Rights Reserved."
COPYRIGHT "(c) 2003
-2005
Novell, Inc. Portions (c) 2003 MySQL AB. All Rights Reserved."
DESCRIPTION "MySQL ISAM Table Pack Tool"
DESCRIPTION "MySQL ISAM Table Pack Tool"
VERSION 4, 0
VERSION 4, 0
XDCDATA ../netware/mysql.xdc
XDCDATA ../netware/mysql.xdc
...
...
netware/perror.def
View file @
f13723ac
...
@@ -2,7 +2,7 @@
...
@@ -2,7 +2,7 @@
# PERROR
# PERROR
#------------------------------------------------------------------------------
#------------------------------------------------------------------------------
MODULE libc.nlm
MODULE libc.nlm
COPYRIGHT "(c) 2003 Novell, Inc. Portions (c) 2003 MySQL AB. All Rights Reserved."
COPYRIGHT "(c) 2003
-2005
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
XDCDATA ../netware/mysql.xdc
XDCDATA ../netware/mysql.xdc
...
...
netware/replace.def
View file @
f13723ac
...
@@ -2,7 +2,7 @@
...
@@ -2,7 +2,7 @@
# Replace
# Replace
#------------------------------------------------------------------------------
#------------------------------------------------------------------------------
MODULE libc.nlm
MODULE libc.nlm
COPYRIGHT "(c) 2003 Novell, Inc. Portions (c) 2003 MySQL AB. All Rights Reserved."
COPYRIGHT "(c) 2003
-2005
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
XDCDATA ../netware/mysql.xdc
XDCDATA ../netware/mysql.xdc
...
...
netware/resolve_stack_dump.def
View file @
f13723ac
...
@@ -3,7 +3,7 @@
...
@@ -3,7 +3,7 @@
#------------------------------------------------------------------------------
#------------------------------------------------------------------------------
MODULE libc.nlm
MODULE libc.nlm
#SCREENNAME "MySQL Stack Dump Resolve Tool"
#SCREENNAME "MySQL Stack Dump Resolve Tool"
COPYRIGHT "(c) 2003 Novell, Inc. Portions (c) 2003 MySQL AB. All Rights Reserved."
COPYRIGHT "(c) 2003
-2005
Novell, Inc. Portions (c) 2003 MySQL AB. All Rights Reserved."
DESCRIPTION "MySQL Stack Dump Resolve Tool"
DESCRIPTION "MySQL Stack Dump Resolve Tool"
VERSION 4, 0
VERSION 4, 0
STACKSIZE 65536
STACKSIZE 65536
...
...
netware/resolveip.def
View file @
f13723ac
...
@@ -2,7 +2,7 @@
...
@@ -2,7 +2,7 @@
# Resolve IP
# Resolve IP
#------------------------------------------------------------------------------
#------------------------------------------------------------------------------
MODULE libc.nlm
MODULE libc.nlm
COPYRIGHT "(c) 2003 Novell, Inc. Portions (c) 2003 MySQL AB. All Rights Reserved."
COPYRIGHT "(c) 2003
-2005
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
XDCDATA ../netware/mysql.xdc
XDCDATA ../netware/mysql.xdc
...
...
sql/examples/ha_archive.cc
View file @
f13723ac
...
@@ -305,6 +305,7 @@ ARCHIVE_SHARE *ha_archive::get_share(const char *table_name, TABLE *table)
...
@@ -305,6 +305,7 @@ ARCHIVE_SHARE *ha_archive::get_share(const char *table_name, TABLE *table)
share
->
use_count
=
0
;
share
->
use_count
=
0
;
share
->
table_name_length
=
length
;
share
->
table_name_length
=
length
;
share
->
table_name
=
tmp_name
;
share
->
table_name
=
tmp_name
;
share
->
delayed
=
FALSE
;
fn_format
(
share
->
data_file_name
,
table_name
,
""
,
ARZ
,
MY_REPLACE_EXT
|
MY_UNPACK_FILENAME
);
fn_format
(
share
->
data_file_name
,
table_name
,
""
,
ARZ
,
MY_REPLACE_EXT
|
MY_UNPACK_FILENAME
);
fn_format
(
meta_file_name
,
table_name
,
""
,
ARM
,
MY_REPLACE_EXT
|
MY_UNPACK_FILENAME
);
fn_format
(
meta_file_name
,
table_name
,
""
,
ARM
,
MY_REPLACE_EXT
|
MY_UNPACK_FILENAME
);
strmov
(
share
->
table_name
,
table_name
);
strmov
(
share
->
table_name
,
table_name
);
...
@@ -536,7 +537,11 @@ int ha_archive::write_row(byte * buf)
...
@@ -536,7 +537,11 @@ int ha_archive::write_row(byte * buf)
pthread_mutex_lock
(
&
share
->
mutex
);
pthread_mutex_lock
(
&
share
->
mutex
);
written
=
gzwrite
(
share
->
archive_write
,
buf
,
table
->
reclength
);
written
=
gzwrite
(
share
->
archive_write
,
buf
,
table
->
reclength
);
DBUG_PRINT
(
"ha_archive::get_row"
,
(
"Wrote %d bytes expected %d"
,
written
,
table
->
reclength
));
DBUG_PRINT
(
"ha_archive::get_row"
,
(
"Wrote %d bytes expected %d"
,
written
,
table
->
reclength
));
if
(
!
delayed_insert
)
share
->
dirty
=
TRUE
;
share
->
dirty
=
TRUE
;
else
share
->
delayed
=
TRUE
;
if
(
written
!=
table
->
reclength
)
if
(
written
!=
table
->
reclength
)
goto
error
;
goto
error
;
/*
/*
...
@@ -594,6 +599,7 @@ int ha_archive::rnd_init(bool scan)
...
@@ -594,6 +599,7 @@ int ha_archive::rnd_init(bool scan)
{
{
gzflush
(
share
->
archive_write
,
Z_SYNC_FLUSH
);
gzflush
(
share
->
archive_write
,
Z_SYNC_FLUSH
);
share
->
dirty
=
FALSE
;
share
->
dirty
=
FALSE
;
share
->
delayed
=
FALSE
;
}
}
pthread_mutex_unlock
(
&
share
->
mutex
);
pthread_mutex_unlock
(
&
share
->
mutex
);
}
}
...
@@ -628,9 +634,12 @@ int ha_archive::get_row(gzFile file_to_read, byte *buf)
...
@@ -628,9 +634,12 @@ int ha_archive::get_row(gzFile file_to_read, byte *buf)
if
(
read
==
0
)
if
(
read
==
0
)
DBUG_RETURN
(
HA_ERR_END_OF_FILE
);
DBUG_RETURN
(
HA_ERR_END_OF_FILE
);
/* If the record is the wrong size, the file is probably damaged */
/* If the record is the wrong size, the file is probably damaged, unless
we are dealing with a delayed insert. In that case we can assume the file is ok,
but our row count doesn't match our data since the file has not been flushed.
*/
if
((
ulong
)
read
!=
table
->
reclength
)
if
((
ulong
)
read
!=
table
->
reclength
)
DBUG_RETURN
(
HA_ERR_CRASHED_ON_USAGE
);
DBUG_RETURN
(
share
->
delayed
?
HA_ERR_END_OF_FILE
:
HA_ERR_CRASHED_ON_USAGE
);
/* Calculate blob length, we use this for our buffer */
/* Calculate blob length, we use this for our buffer */
for
(
field
=
table
->
blob_field
;
*
field
;
field
++
)
for
(
field
=
table
->
blob_field
;
*
field
;
field
++
)
...
@@ -648,7 +657,7 @@ int ha_archive::get_row(gzFile file_to_read, byte *buf)
...
@@ -648,7 +657,7 @@ int ha_archive::get_row(gzFile file_to_read, byte *buf)
{
{
read
=
gzread
(
file_to_read
,
last
,
size
);
read
=
gzread
(
file_to_read
,
last
,
size
);
if
((
size_t
)
read
!=
size
)
if
((
size_t
)
read
!=
size
)
DBUG_RETURN
(
HA_ERR_CRASHED_ON_USAGE
);
DBUG_RETURN
(
share
->
delayed
?
HA_ERR_END_OF_FILE
:
HA_ERR_CRASHED_ON_USAGE
);
(
*
field
)
->
set_ptr
(
size
,
last
);
(
*
field
)
->
set_ptr
(
size
,
last
);
last
+=
size
;
last
+=
size
;
}
}
...
@@ -839,6 +848,11 @@ THR_LOCK_DATA **ha_archive::store_lock(THD *thd,
...
@@ -839,6 +848,11 @@ THR_LOCK_DATA **ha_archive::store_lock(THD *thd,
THR_LOCK_DATA
**
to
,
THR_LOCK_DATA
**
to
,
enum
thr_lock_type
lock_type
)
enum
thr_lock_type
lock_type
)
{
{
if
(
lock_type
==
TL_WRITE_DELAYED
)
delayed_insert
=
TRUE
;
else
delayed_insert
=
FALSE
;
if
(
lock_type
!=
TL_IGNORE
&&
lock
.
type
==
TL_UNLOCK
)
if
(
lock_type
!=
TL_IGNORE
&&
lock
.
type
==
TL_UNLOCK
)
{
{
/*
/*
...
...
sql/examples/ha_archive.h
View file @
f13723ac
...
@@ -36,6 +36,7 @@ typedef struct st_archive_share {
...
@@ -36,6 +36,7 @@ typedef struct st_archive_share {
gzFile
archive_write
;
/* Archive file we are working with */
gzFile
archive_write
;
/* Archive file we are working with */
bool
dirty
;
/* Flag for if a flush should occur */
bool
dirty
;
/* Flag for if a flush should occur */
ulonglong
rows_recorded
;
/* Number of rows in tables */
ulonglong
rows_recorded
;
/* Number of rows in tables */
bool
delayed
;
/* If a delayed insert has happened since opena */
}
ARCHIVE_SHARE
;
}
ARCHIVE_SHARE
;
/*
/*
...
@@ -53,9 +54,10 @@ class ha_archive: public handler
...
@@ -53,9 +54,10 @@ class ha_archive: public handler
byte
byte_buffer
[
IO_SIZE
];
/* Initial buffer for our string */
byte
byte_buffer
[
IO_SIZE
];
/* Initial buffer for our string */
String
buffer
;
/* Buffer used for blob storage */
String
buffer
;
/* Buffer used for blob storage */
ulonglong
scan_rows
;
/* Number of rows left in scan */
ulonglong
scan_rows
;
/* Number of rows left in scan */
bool
delayed_insert
;
/* If the insert is delayed */
public:
public:
ha_archive
(
TABLE
*
table
)
:
handler
(
table
)
ha_archive
(
TABLE
*
table
)
:
handler
(
table
)
,
delayed_insert
(
0
)
{
{
/* Set our original buffer from pre-allocated memory */
/* Set our original buffer from pre-allocated memory */
buffer
.
set
(
byte_buffer
,
IO_SIZE
,
system_charset_info
);
buffer
.
set
(
byte_buffer
,
IO_SIZE
,
system_charset_info
);
...
@@ -72,7 +74,7 @@ class ha_archive: public handler
...
@@ -72,7 +74,7 @@ class ha_archive: public handler
ulong
table_flags
()
const
ulong
table_flags
()
const
{
{
return
(
HA_REC_NOT_IN_SEQ
|
HA_NOT_EXACT_COUNT
|
HA_NO_AUTO_INCREMENT
|
return
(
HA_REC_NOT_IN_SEQ
|
HA_NOT_EXACT_COUNT
|
HA_NO_AUTO_INCREMENT
|
HA_FILE_BASED
);
HA_FILE_BASED
|
HA_CAN_INSERT_DELAYED
);
}
}
ulong
index_flags
(
uint
idx
,
uint
part
,
bool
all_parts
)
const
ulong
index_flags
(
uint
idx
,
uint
part
,
bool
all_parts
)
const
{
{
...
...
sql/field.cc
View file @
f13723ac
...
@@ -1182,7 +1182,7 @@ int Field_tiny::store(double nr)
...
@@ -1182,7 +1182,7 @@ int Field_tiny::store(double nr)
error
=
1
;
error
=
1
;
}
}
else
else
*
ptr
=
(
char
)
nr
;
*
ptr
=
(
char
)
(
int
)
nr
;
}
}
return
error
;
return
error
;
}
}
...
@@ -1313,9 +1313,9 @@ int Field_short::store(const char *from,uint len,CHARSET_INFO *cs)
...
@@ -1313,9 +1313,9 @@ int Field_short::store(const char *from,uint len,CHARSET_INFO *cs)
set_warning
(
MYSQL_ERROR
::
WARN_LEVEL_WARN
,
ER_WARN_DATA_OUT_OF_RANGE
,
1
);
set_warning
(
MYSQL_ERROR
::
WARN_LEVEL_WARN
,
ER_WARN_DATA_OUT_OF_RANGE
,
1
);
error
=
1
;
error
=
1
;
}
}
else
if
(
tmp
>
(
uint16
)
~
0
)
else
if
(
tmp
>
UINT_MAX16
)
{
{
tmp
=
(
uint16
)
~
0
;
tmp
=
UINT_MAX16
;
set_warning
(
MYSQL_ERROR
::
WARN_LEVEL_WARN
,
ER_WARN_DATA_OUT_OF_RANGE
,
1
);
set_warning
(
MYSQL_ERROR
::
WARN_LEVEL_WARN
,
ER_WARN_DATA_OUT_OF_RANGE
,
1
);
error
=
1
;
error
=
1
;
}
}
...
@@ -1364,9 +1364,9 @@ int Field_short::store(double nr)
...
@@ -1364,9 +1364,9 @@ int Field_short::store(double nr)
set_warning
(
MYSQL_ERROR
::
WARN_LEVEL_WARN
,
ER_WARN_DATA_OUT_OF_RANGE
,
1
);
set_warning
(
MYSQL_ERROR
::
WARN_LEVEL_WARN
,
ER_WARN_DATA_OUT_OF_RANGE
,
1
);
error
=
1
;
error
=
1
;
}
}
else
if
(
nr
>
(
double
)
(
uint16
)
~
0
)
else
if
(
nr
>
(
double
)
UINT_MAX16
)
{
{
res
=
(
int16
)
(
uint16
)
~
0
;
res
=
(
int16
)
UINT_MAX16
;
set_warning
(
MYSQL_ERROR
::
WARN_LEVEL_WARN
,
ER_WARN_DATA_OUT_OF_RANGE
,
1
);
set_warning
(
MYSQL_ERROR
::
WARN_LEVEL_WARN
,
ER_WARN_DATA_OUT_OF_RANGE
,
1
);
error
=
1
;
error
=
1
;
}
}
...
@@ -1388,7 +1388,7 @@ int Field_short::store(double nr)
...
@@ -1388,7 +1388,7 @@ int Field_short::store(double nr)
error
=
1
;
error
=
1
;
}
}
else
else
res
=
(
int16
)
nr
;
res
=
(
int16
)
(
int
)
nr
;
}
}
#ifdef WORDS_BIGENDIAN
#ifdef WORDS_BIGENDIAN
if
(
table
->
db_low_byte_first
)
if
(
table
->
db_low_byte_first
)
...
@@ -1413,9 +1413,9 @@ int Field_short::store(longlong nr)
...
@@ -1413,9 +1413,9 @@ int Field_short::store(longlong nr)
set_warning
(
MYSQL_ERROR
::
WARN_LEVEL_WARN
,
ER_WARN_DATA_OUT_OF_RANGE
,
1
);
set_warning
(
MYSQL_ERROR
::
WARN_LEVEL_WARN
,
ER_WARN_DATA_OUT_OF_RANGE
,
1
);
error
=
1
;
error
=
1
;
}
}
else
if
(
nr
>
(
longlong
)
(
uint16
)
~
0
)
else
if
(
nr
>
(
longlong
)
UINT_MAX16
)
{
{
res
=
(
int16
)
(
uint16
)
~
0
;
res
=
(
int16
)
UINT_MAX16
;
set_warning
(
MYSQL_ERROR
::
WARN_LEVEL_WARN
,
ER_WARN_DATA_OUT_OF_RANGE
,
1
);
set_warning
(
MYSQL_ERROR
::
WARN_LEVEL_WARN
,
ER_WARN_DATA_OUT_OF_RANGE
,
1
);
error
=
1
;
error
=
1
;
}
}
...
@@ -1884,7 +1884,7 @@ int Field_long::store(double nr)
...
@@ -1884,7 +1884,7 @@ int Field_long::store(double nr)
error
=
1
;
error
=
1
;
}
}
else
else
res
=
(
int32
)
nr
;
res
=
(
int32
)
(
longlong
)
nr
;
}
}
if
(
error
)
if
(
error
)
set_warning
(
MYSQL_ERROR
::
WARN_LEVEL_WARN
,
ER_WARN_DATA_OUT_OF_RANGE
,
1
);
set_warning
(
MYSQL_ERROR
::
WARN_LEVEL_WARN
,
ER_WARN_DATA_OUT_OF_RANGE
,
1
);
...
@@ -2123,7 +2123,7 @@ int Field_longlong::store(double nr)
...
@@ -2123,7 +2123,7 @@ int Field_longlong::store(double nr)
res
=
0
;
res
=
0
;
error
=
1
;
error
=
1
;
}
}
else
if
(
nr
>=
(
double
)
~
(
ulonglong
)
0
)
else
if
(
nr
>=
(
double
)
ULONGLONG_MAX
)
{
{
res
=
~
(
longlong
)
0
;
res
=
~
(
longlong
)
0
;
error
=
1
;
error
=
1
;
...
@@ -2133,15 +2133,15 @@ int Field_longlong::store(double nr)
...
@@ -2133,15 +2133,15 @@ int Field_longlong::store(double nr)
}
}
else
else
{
{
if
(
nr
<
(
double
)
LONGLONG_MIN
)
if
(
nr
<
=
(
double
)
LONGLONG_MIN
)
{
{
res
=
LONGLONG_MIN
;
res
=
LONGLONG_MIN
;
error
=
1
;
error
=
(
nr
<
(
double
)
LONGLONG_MIN
)
;
}
}
else
if
(
nr
>
(
double
)
LONGLONG_MAX
)
else
if
(
nr
>
=
(
double
)
LONGLONG_MAX
)
{
{
res
=
LONGLONG_MAX
;
res
=
LONGLONG_MAX
;
error
=
1
;
error
=
(
nr
>
(
double
)
LONGLONG_MAX
)
;
}
}
else
else
res
=
(
longlong
)
nr
;
res
=
(
longlong
)
nr
;
...
...
sql/ha_ndbcluster.cc
View file @
f13723ac
...
@@ -1183,9 +1183,10 @@ int ha_ndbcluster::unique_index_read(const byte *key,
...
@@ -1183,9 +1183,10 @@ int ha_ndbcluster::unique_index_read(const byte *key,
for
(
i
=
0
;
key_part
!=
end
;
key_part
++
,
i
++
)
for
(
i
=
0
;
key_part
!=
end
;
key_part
++
,
i
++
)
{
{
if
(
set_ndb_key
(
op
,
key_part
->
field
,
i
,
key_ptr
))
if
(
set_ndb_key
(
op
,
key_part
->
field
,
i
,
key_part
->
null_bit
?
key_ptr
+
1
:
key_ptr
))
ERR_RETURN
(
trans
->
getNdbError
());
ERR_RETURN
(
trans
->
getNdbError
());
key_ptr
+=
key_part
->
length
;
key_ptr
+=
key_part
->
store_
length
;
}
}
if
((
res
=
define_read_attrs
(
buf
,
op
)))
if
((
res
=
define_read_attrs
(
buf
,
op
)))
...
@@ -2273,6 +2274,28 @@ int ha_ndbcluster::index_end()
...
@@ -2273,6 +2274,28 @@ int ha_ndbcluster::index_end()
DBUG_RETURN
(
close_scan
());
DBUG_RETURN
(
close_scan
());
}
}
/**
* Check if key contains null
*/
static
int
check_null_in_key
(
const
KEY
*
key_info
,
const
byte
*
key
,
uint
key_len
)
{
KEY_PART_INFO
*
curr_part
,
*
end_part
;
const
byte
*
end_ptr
=
key
+
key_len
;
curr_part
=
key_info
->
key_part
;
end_part
=
curr_part
+
key_info
->
key_parts
;
for
(;
curr_part
!=
end_part
&&
key
<
end_ptr
;
curr_part
++
)
{
if
(
curr_part
->
null_bit
&&
*
key
)
return
1
;
key
+=
curr_part
->
store_length
;
}
return
0
;
}
int
ha_ndbcluster
::
index_read
(
byte
*
buf
,
int
ha_ndbcluster
::
index_read
(
byte
*
buf
,
const
byte
*
key
,
uint
key_len
,
const
byte
*
key
,
uint
key_len
,
...
@@ -2290,6 +2313,8 @@ int ha_ndbcluster::index_read(byte *buf,
...
@@ -2290,6 +2313,8 @@ int ha_ndbcluster::index_read(byte *buf,
case
PRIMARY_KEY_INDEX
:
case
PRIMARY_KEY_INDEX
:
if
(
find_flag
==
HA_READ_KEY_EXACT
&&
key_info
->
key_length
==
key_len
)
if
(
find_flag
==
HA_READ_KEY_EXACT
&&
key_info
->
key_length
==
key_len
)
{
{
if
(
m_active_cursor
&&
(
error
=
close_scan
()))
DBUG_RETURN
(
error
);
DBUG_RETURN
(
pk_read
(
key
,
key_len
,
buf
));
DBUG_RETURN
(
pk_read
(
key
,
key_len
,
buf
));
}
}
else
if
(
type
==
PRIMARY_KEY_INDEX
)
else
if
(
type
==
PRIMARY_KEY_INDEX
)
...
@@ -2299,8 +2324,11 @@ int ha_ndbcluster::index_read(byte *buf,
...
@@ -2299,8 +2324,11 @@ int ha_ndbcluster::index_read(byte *buf,
break
;
break
;
case
UNIQUE_ORDERED_INDEX
:
case
UNIQUE_ORDERED_INDEX
:
case
UNIQUE_INDEX
:
case
UNIQUE_INDEX
:
if
(
find_flag
==
HA_READ_KEY_EXACT
&&
key_info
->
key_length
==
key_len
)
if
(
find_flag
==
HA_READ_KEY_EXACT
&&
key_info
->
key_length
==
key_len
&&
!
check_null_in_key
(
key_info
,
key
,
key_len
))
{
{
if
(
m_active_cursor
&&
(
error
=
close_scan
()))
DBUG_RETURN
(
error
);
DBUG_RETURN
(
unique_index_read
(
key
,
key_len
,
buf
));
DBUG_RETURN
(
unique_index_read
(
key
,
key_len
,
buf
));
}
}
else
if
(
type
==
UNIQUE_INDEX
)
else
if
(
type
==
UNIQUE_INDEX
)
...
@@ -2407,6 +2435,8 @@ int ha_ndbcluster::read_range_first_to_buf(const key_range *start_key,
...
@@ -2407,6 +2435,8 @@ int ha_ndbcluster::read_range_first_to_buf(const key_range *start_key,
start_key
->
length
==
key_info
->
key_length
&&
start_key
->
length
==
key_info
->
key_length
&&
start_key
->
flag
==
HA_READ_KEY_EXACT
)
start_key
->
flag
==
HA_READ_KEY_EXACT
)
{
{
if
(
m_active_cursor
&&
(
error
=
close_scan
()))
DBUG_RETURN
(
error
);
error
=
pk_read
(
start_key
->
key
,
start_key
->
length
,
buf
);
error
=
pk_read
(
start_key
->
key
,
start_key
->
length
,
buf
);
DBUG_RETURN
(
error
==
HA_ERR_KEY_NOT_FOUND
?
HA_ERR_END_OF_FILE
:
error
);
DBUG_RETURN
(
error
==
HA_ERR_KEY_NOT_FOUND
?
HA_ERR_END_OF_FILE
:
error
);
}
}
...
@@ -2414,10 +2444,12 @@ int ha_ndbcluster::read_range_first_to_buf(const key_range *start_key,
...
@@ -2414,10 +2444,12 @@ int ha_ndbcluster::read_range_first_to_buf(const key_range *start_key,
case
UNIQUE_ORDERED_INDEX
:
case
UNIQUE_ORDERED_INDEX
:
case
UNIQUE_INDEX
:
case
UNIQUE_INDEX
:
key_info
=
table
->
key_info
+
active_index
;
key_info
=
table
->
key_info
+
active_index
;
if
(
start_key
&&
if
(
start_key
&&
start_key
->
length
==
key_info
->
key_length
&&
start_key
->
length
==
key_info
->
key_length
&&
start_key
->
flag
==
HA_READ_KEY_EXACT
&&
start_key
->
flag
==
HA_READ_KEY_EXACT
)
!
check_null_in_key
(
key_info
,
start_key
->
key
,
start_key
->
length
)
)
{
{
if
(
m_active_cursor
&&
(
error
=
close_scan
()))
DBUG_RETURN
(
error
);
error
=
unique_index_read
(
start_key
->
key
,
start_key
->
length
,
buf
);
error
=
unique_index_read
(
start_key
->
key
,
start_key
->
length
,
buf
);
DBUG_RETURN
(
error
==
HA_ERR_KEY_NOT_FOUND
?
HA_ERR_END_OF_FILE
:
error
);
DBUG_RETURN
(
error
==
HA_ERR_KEY_NOT_FOUND
?
HA_ERR_END_OF_FILE
:
error
);
}
}
...
...
sql/item_cmpfunc.h
View file @
f13723ac
...
@@ -1086,7 +1086,7 @@ class COND_EQUAL: public Sql_alloc
...
@@ -1086,7 +1086,7 @@ class COND_EQUAL: public Sql_alloc
};
};
class
Item_equal_iterator
:
List_iterator_fast
<
Item_field
>
class
Item_equal_iterator
:
public
List_iterator_fast
<
Item_field
>
{
{
public:
public:
inline
Item_equal_iterator
(
Item_equal
&
item_equal
)
inline
Item_equal_iterator
(
Item_equal
&
item_equal
)
...
...
sql/mysqld.cc
View file @
f13723ac
...
@@ -149,6 +149,7 @@ static VolumeID_t datavolid;
...
@@ -149,6 +149,7 @@ static VolumeID_t datavolid;
static
event_handle_t
eh
;
static
event_handle_t
eh
;
static
Report_t
ref
;
static
Report_t
ref
;
static
void
*
refneb
=
NULL
;
static
void
*
refneb
=
NULL
;
my_bool
event_flag
=
FALSE
;
static
int
volumeid
=
-
1
;
static
int
volumeid
=
-
1
;
/* NEB event callback */
/* NEB event callback */
...
@@ -819,6 +820,7 @@ static void __cdecl kill_server(int sig_ptr)
...
@@ -819,6 +820,7 @@ static void __cdecl kill_server(int sig_ptr)
unireg_end
();
unireg_end
();
#ifdef __NETWARE__
#ifdef __NETWARE__
if
(
!
event_flag
)
pthread_join
(
select_thread
,
NULL
);
// wait for main thread
pthread_join
(
select_thread
,
NULL
);
// wait for main thread
#endif
/* __NETWARE__ */
#endif
/* __NETWARE__ */
...
@@ -1530,6 +1532,7 @@ static void check_data_home(const char *path)
...
@@ -1530,6 +1532,7 @@ 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
*
)
{
{
event_flag
=
TRUE
;
kill_server
(
0
);
kill_server
(
0
);
}
}
...
@@ -1563,7 +1566,7 @@ void mysql_cb_init()
...
@@ -1563,7 +1566,7 @@ void mysql_cb_init()
Register for volume deactivation event
Register for volume deactivation event
Wrap the callback function, as it is called by non-LibC thread
Wrap the callback function, as it is called by non-LibC thread
*/
*/
(
void
)
NX_WRAP_INTERFACE
(
neb_event_callback
,
1
,
&
refneb
);
(
void
*
)
NX_WRAP_INTERFACE
(
neb_event_callback
,
1
,
&
refneb
);
registerwithneb
();
registerwithneb
();
NXVmRegisterExitHandler
(
mysql_cb_destroy
,
NULL
);
// clean-up
NXVmRegisterExitHandler
(
mysql_cb_destroy
,
NULL
);
// clean-up
...
@@ -1660,6 +1663,7 @@ ulong neb_event_callback(struct EventBlock *eblock)
...
@@ -1660,6 +1663,7 @@ ulong neb_event_callback(struct EventBlock *eblock)
{
{
consoleprintf
(
"MySQL data volume is deactivated, shutting down MySQL Server
\n
"
);
consoleprintf
(
"MySQL data volume is deactivated, shutting down MySQL Server
\n
"
);
nw_panic
=
TRUE
;
nw_panic
=
TRUE
;
event_flag
=
TRUE
;
kill_server
(
0
);
kill_server
(
0
);
}
}
}
}
...
...
sql/sql_select.cc
View file @
f13723ac
...
@@ -3464,7 +3464,7 @@ best_access_path(JOIN *join,
...
@@ -3464,7 +3464,7 @@ best_access_path(JOIN *join,
{
{
/*
/*
Assume that the first key part matches 1% of the file
Assume that the first key part matches 1% of the file
and that the hole key matches 10 (duplicates) or 1
and that the
w
hole key matches 10 (duplicates) or 1
(unique) records.
(unique) records.
Assume also that more key matches proportionally more
Assume also that more key matches proportionally more
records
records
...
@@ -3472,7 +3472,7 @@ best_access_path(JOIN *join,
...
@@ -3472,7 +3472,7 @@ best_access_path(JOIN *join,
records = (x * (b-a) + a*c-b)/(c-1)
records = (x * (b-a) + a*c-b)/(c-1)
b = records matched by whole key
b = records matched by whole key
a = records matched by first key part (1
0
% of all records?)
a = records matched by first key part (1% of all records?)
c = number of key parts in key
c = number of key parts in key
x = used key parts (1 <= x <= c)
x = used key parts (1 <= x <= c)
*/
*/
...
@@ -3488,9 +3488,12 @@ best_access_path(JOIN *join,
...
@@ -3488,9 +3488,12 @@ best_access_path(JOIN *join,
else
else
{
{
double
a
=
s
->
records
*
0.01
;
double
a
=
s
->
records
*
0.01
;
tmp
=
(
max_key_part
*
(
rec_per_key
-
a
)
+
if
(
keyinfo
->
key_parts
>
1
)
tmp
=
(
max_key_part
*
(
rec_per_key
-
a
)
+
a
*
keyinfo
->
key_parts
-
rec_per_key
)
/
a
*
keyinfo
->
key_parts
-
rec_per_key
)
/
(
keyinfo
->
key_parts
-
1
);
(
keyinfo
->
key_parts
-
1
);
else
tmp
=
a
;
set_if_bigger
(
tmp
,
1.0
);
set_if_bigger
(
tmp
,
1.0
);
}
}
records
=
(
ulong
)
tmp
;
records
=
(
ulong
)
tmp
;
...
@@ -4421,7 +4424,7 @@ find_best(JOIN *join,table_map rest_tables,uint idx,double record_count,
...
@@ -4421,7 +4424,7 @@ find_best(JOIN *join,table_map rest_tables,uint idx,double record_count,
{
{
/*
/*
Assume that the first key part matches 1% of the file
Assume that the first key part matches 1% of the file
and that the hole key matches 10 (duplicates) or 1
and that the
w
hole key matches 10 (duplicates) or 1
(unique) records.
(unique) records.
Assume also that more key matches proportionally more
Assume also that more key matches proportionally more
records
records
...
...
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