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
750af5a8
Commit
750af5a8
authored
Apr 11, 2006
by
ingo@mysql.com
Browse files
Options
Browse Files
Download
Plain Diff
Merge mysql.com:/home/mydev/mysql-4.0
into mysql.com:/home/mydev/mysql-4.0-bug5390
parents
ff01effb
11f59e39
Changes
16
Hide whitespace changes
Inline
Side-by-side
Showing
16 changed files
with
123 additions
and
36 deletions
+123
-36
Docs/MySQLEULA.txt
Docs/MySQLEULA.txt
+1
-1
README
README
+1
-1
acinclude.m4
acinclude.m4
+4
-1
configure.in
configure.in
+5
-0
mysql-test/README
mysql-test/README
+36
-18
mysql-test/README.gcov
mysql-test/README.gcov
+9
-7
mysql-test/mysql-test-run.sh
mysql-test/mysql-test-run.sh
+26
-1
mysql-test/r/func_op.result
mysql-test/r/func_op.result
+11
-0
mysql-test/r/update.result
mysql-test/r/update.result
+4
-0
mysql-test/t/func_op.test
mysql-test/t/func_op.test
+12
-0
mysql-test/t/update.test
mysql-test/t/update.test
+8
-0
netware/mysql_install_db.c
netware/mysql_install_db.c
+1
-1
scripts/make_binary_distribution.sh
scripts/make_binary_distribution.sh
+1
-1
scripts/mysql_install_db.sh
scripts/mysql_install_db.sh
+2
-1
sql/item_func.cc
sql/item_func.cc
+1
-4
sql/sql_base.cc
sql/sql_base.cc
+1
-0
No files found.
Docs/MySQLEULA.txt
View file @
750af5a8
...
...
@@ -63,7 +63,7 @@ Licensee.
4. Price and payment.
No later than thirty (30) days after submission of the Order Form, Licensee
shall remit one non-refundable license fee per Licensed Copy as posted on
http://
order
.mysql.com on the date Licensee submitted the Order Form (the
http://
shop
.mysql.com on the date Licensee submitted the Order Form (the
"License Fee"). All payments shall be made in Euros or U.S. dollars. Licensee
shall be responsible for paying all local, state, federal and international
sales, value added, excise and other taxes and duties payable in connection
...
...
README
View file @
750af5a8
...
...
@@ -8,7 +8,7 @@ License information can be found in these files:
For further information about MySQL or additional documentation, see:
- The latest information about MySQL: http://www.mysql.com
- The current MySQL documentation: http:/dev.mysql.com/doc
- The current MySQL documentation: http:/
/
dev.mysql.com/doc
Some manual sections of special interest:
...
...
acinclude.m4
View file @
750af5a8
...
...
@@ -373,7 +373,8 @@ AC_CACHE_VAL(mysql_cv_termcap_lib,
[AC_CHECK_LIB(ncurses, tgetent, mysql_cv_termcap_lib=libncurses,
[AC_CHECK_LIB(curses, tgetent, mysql_cv_termcap_lib=libcurses,
[AC_CHECK_LIB(termcap, tgetent, mysql_cv_termcap_lib=libtermcap,
mysql_cv_termcap_lib=NOT_FOUND)])])])
[AC_CHECK_LIB(tinfo, tgetent, mysql_cv_termcap_lib=libtinfo,
mysql_cv_termcap_lib=NOT_FOUND)])])])])
AC_MSG_CHECKING(for termcap functions library)
if test "$mysql_cv_termcap_lib" = "NOT_FOUND"; then
AC_MSG_ERROR([No curses/termcap library found])
...
...
@@ -381,6 +382,8 @@ elif test "$mysql_cv_termcap_lib" = "libtermcap"; then
TERMCAP_LIB=-ltermcap
elif test "$mysql_cv_termcap_lib" = "libncurses"; then
TERMCAP_LIB=-lncurses
elif test "$mysql_cv_termcap_lib" = "libtinfo"; then
TERMCAP_LIB=-ltinfo
else
TERMCAP_LIB=-lcurses
fi
...
...
configure.in
View file @
750af5a8
...
...
@@ -830,6 +830,9 @@ AC_SUBST(WRAPLIBS)
if
test
"
$IS_LINUX
"
=
"true"
;
then
AC_MSG_CHECKING
([
for
atomic operations]
)
AC_LANG_SAVE
AC_LANG_CPLUSPLUS
atom_ops
=
AC_TRY_RUN
([
#include <asm/atomic.h>
...
...
@@ -859,6 +862,8 @@ int main()
if
test
-z
"
$atom_ops
"
;
then
atom_ops
=
"no"
;
fi
AC_MSG_RESULT
(
$atom_ops
)
AC_LANG_RESTORE
AC_ARG_WITH
(
pstack,
[
--with-pstack
Use the pstack backtrace library],
[
USE_PSTACK
=
$withval
]
,
...
...
mysql-test/README
View file @
750af5a8
This directory contains a test suite for
mysql
daemon. To run
This directory contains a test suite for
the MySQL
daemon. To run
the currently existing test cases, simply execute ./mysql-test-run in
this directory. It will fire up the newly built mysqld and test it.
Note that you do not have to have to do make install, and you could
actually have a co-existing MySQL installation - the tests will not
Note that you do not have to have to do "make install", and you could
actually have a co-existing MySQL installation. The tests will not
conflict with it.
All tests must pass. If one or more of them fail on your system, please
read the following manual section of how to report the problem:
read the following manual section for instructions on how to report the
problem:
http://dev.mysql.com/doc/mysql/en/mysql-test-suite.html
If you want to use an already running MySQL server for specific tests,
use the --extern option to mysql-test-run. Please note that in this mode,
the test suite expects you to provide the names of the tests to run.
For example, here is the command to run the "alias" and "analyze" tests
with an external server:
mysql-test-run --extern alias analyze
To match your setup, you might also need to provide --socket, --user, and
other relevant options.
http://dev.mysql.com/doc/mysql/en/MySQL_test_suite.html
With no test cases named on the command line, mysql-test-run falls back
to the normal "non-extern" behavior. The reason for this is that some
tests cannot run with an external server.
You can create your own test cases. To create a test case:
You can create your own test cases. To create a test case, create a new
file in the t subdirectory using a text editor. The file should have a .test
extension. For example:
cd t
vi test_case_name.test
xemacs t/test_case_name.test
in the file, put a set of SQL commands that will
create some tables,
load test data, run some queries to manipulate it.
In the file, put a set of SQL statements that
create some tables,
load test data,
and
run some queries to manipulate it.
We would appreciate i
f the test tables were called
t1, t2, t3 ... (to not
We would appreciate i
t if you name your test tables
t1, t2, t3 ... (to not
conflict too much with existing tables).
Your test should begin by dropping the tables you are going to create and
end by dropping them again. This
will ensure that one can run the test
over
and over again.
end by dropping them again. This
ensures that you can run the test over
and over again.
If you are using mysqltest commands (like result file names) in your
test case
you should do
create the result file as follows:
test case
, you should
create the result file as follows:
mysql-test-run --record test_case_name
...
...
@@ -35,8 +53,8 @@ You can create your own test cases. To create a test case:
mysqltest --record < t/test_case_name.test
If you only have a simple test cases consist
ent of SQL commands and comments
you can create the test case
one of the following ways:
If you only have a simple test cases consist
ing of SQL statements and
comments, you can create the test case in
one of the following ways:
mysql-test-run --record test_case_name
...
...
@@ -45,11 +63,11 @@ You can create your own test cases. To create a test case:
mysqltest --record --record-file=r/test_case_name.result < t/test_case_name.test
When this is done, take a look at r/test_case_name.result
- If the result is
wrong, you have found a bug; In this case
you should
- If the result is
incorrect, you have found a bug. In this case,
you should
edit the test result to the correct results so that we can verify
that the bug is corrected in future releases.
To submit your test case, put your .test file and .result file(s) into
a tar.gz archive, add a README that explains the problem, ftp the
archive to ftp://support.mysql.com/pub/mysql/secret/ and send
a mail
archive to ftp://support.mysql.com/pub/mysql/secret/ and send a mail
to bugs@lists.mysql.com
mysql-test/README.gcov
View file @
750af5a8
To be able to see the level of coverage with the current test suite,
do the following:
- make sure gcov is installed
- compile with BUILD/compile-pentium-gcov ( if your machine is not pentium, hack
this script, or just live with the pentium-specific stuff)
- ./mysql-test-run -gcov
- to see the level of coverage for a given source file:
- Make sure gcov is installed
- Compile the MySQL distribution with BUILD/compile-pentium-gcov (if your
machine does not have a pentium CPU, hack this script, or just live with
the pentium-specific stuff)
- In the mysql-test directory, run this command: ./mysql-test-run -gcov
- To see the level of coverage for a given source file:
grep source_file_name /tmp/gcov.out
- to see which lines are not yet covered, look at source_file_name.gcov in the source tree. Then think hard about a test case that will cover those
lines, and write one!
- To see which lines are not yet covered, look at source_file_name.gcov in
the source tree. Then think hard about a test case that will cover those
lines, and write one!
mysql-test/mysql-test-run.sh
View file @
750af5a8
...
...
@@ -207,8 +207,13 @@ MYSQL_MANAGER_USER=root
# an environment variable can be used to control all ports. A small
# number is to be used, 0 - 16 or similar.
#
# Note the MASTER_MYPORT has to be set the same in all 4.x and 5.x
# versions of this script, else a 4.0 test run might conflict with a
# 5.1 test run, even if different MTR_BUILD_THREAD is used. This means
# all port numbers might not be used in this version of the script.
#
if
[
-n
"
$MTR_BUILD_THREAD
"
]
;
then
MASTER_MYPORT
=
`
expr
$MTR_BUILD_THREAD
'*'
5
+ 10000
`
MASTER_MYPORT
=
`
expr
$MTR_BUILD_THREAD
'*'
10
+ 10000
`
MYSQL_MANAGER_PORT
=
`
expr
$MASTER_MYPORT
+ 2
`
SLAVE_MYPORT
=
`
expr
$MASTER_MYPORT
+ 3
`
...
...
@@ -225,6 +230,9 @@ FAILED_CASES=
EXTRA_MASTER_OPT
=
""
EXTRA_MYSQL_TEST_OPT
=
""
USE_RUNNING_SERVER
=
1
# backport from 5.1, disabled - this substitution is not done in 4.0
# USE_NDBCLUSTER=@USE_NDBCLUSTER@
# USE_NDBCLUSTER_ONLY=0
DO_GCOV
=
""
DO_GDB
=
""
MANUAL_GDB
=
""
...
...
@@ -242,6 +250,8 @@ START_WAIT_TIMEOUT=10
STOP_WAIT_TIMEOUT
=
10
MYSQL_TEST_SSL_OPTS
=
""
$ECHO
"Logging:
$0
$*
"
# To ensure we see all arguments in the output, for the test analysis tool
while
test
$#
-gt
0
;
do
case
"
$1
"
in
--user
=
*
)
DBUSER
=
`
$ECHO
"
$1
"
|
$SED
-e
"s;--user=;;"
`
;;
...
...
@@ -254,6 +264,14 @@ while test $# -gt 0; do
SLAVE_MYSQLD
=
`
$ECHO
"
$1
"
|
$SED
-e
"s;--slave-binary=;;"
`
;;
--local
)
USE_RUNNING_SERVER
=
""
;;
--extern
)
USE_RUNNING_SERVER
=
"1"
;;
--with-ndbcluster
)
# USE_NDBCLUSTER="--ndbcluster" ;;
$ECHO
"Option '--with-ndbcluster' is ignored in this version"
;;
--with-ndbcluster-only
)
# USE_NDBCLUSTER="--ndbcluster"
# USE_NDBCLUSTER_SLAVE="--ndbcluster"
# USE_NDBCLUSTER_ONLY=1 ;;
$ECHO
"Option '--with-ndbcluster-only' is ignored in this version"
;;
--tmpdir
=
*
)
MYSQL_TMP_DIR
=
`
$ECHO
"
$1
"
|
$SED
-e
"s;--tmpdir=;;"
`
;;
--local-master
)
MASTER_MYPORT
=
3306
;
...
...
@@ -405,6 +423,13 @@ while test $# -gt 0; do
--fast
)
FAST_START
=
1
;;
--comment
=
*
)
TMP
=
`
$ECHO
"
$1
"
|
$SED
-e
"s;--comment=;;"
`
echo
echo
'############################################'
echo
"#
$TMP
"
echo
'############################################'
;;
--
)
shift
;
break
;;
--
*
)
$ECHO
"Unrecognized option:
$1
"
;
exit
1
;;
*
)
break
;;
...
...
mysql-test/r/func_op.result
View file @
750af5a8
...
...
@@ -25,3 +25,14 @@ select -1 >> 0, -1 << 0;
select -1 >> 1, -1 << 1;
-1 >> 1 -1 << 1
9223372036854775807 18446744073709551614
drop table if exists t1,t2;
create table t1(a int);
create table t2(a int, b int);
insert into t1 values (1), (2), (3);
insert into t2 values (1, 7), (3, 7);
select t1.a, t2.a, t2.b, bit_count(t2.b) from t1 left join t2 on t1.a=t2.a;
a a b bit_count(t2.b)
1 1 7 3
2 NULL NULL NULL
3 3 7 3
drop table t1, t2;
mysql-test/r/update.result
View file @
750af5a8
...
...
@@ -216,3 +216,7 @@ select * from t1;
a b
0 2
drop table t1;
create table t1(f1 int, `*f2` int);
insert into t1 values (1,1);
update t1 set `*f2`=1;
drop table t1;
mysql-test/t/func_op.test
View file @
750af5a8
...
...
@@ -14,3 +14,15 @@ select 1 | -1, 1 ^ -1, 1 & -1;
select
0
|
-
1
,
0
^
-
1
,
0
&
-
1
;
select
-
1
>>
0
,
-
1
<<
0
;
select
-
1
>>
1
,
-
1
<<
1
;
#
# Bug 13044: wrong bit_count() results
#
drop
table
if
exists
t1
,
t2
;
create
table
t1
(
a
int
);
create
table
t2
(
a
int
,
b
int
);
insert
into
t1
values
(
1
),
(
2
),
(
3
);
insert
into
t2
values
(
1
,
7
),
(
3
,
7
);
select
t1
.
a
,
t2
.
a
,
t2
.
b
,
bit_count
(
t2
.
b
)
from
t1
left
join
t2
on
t1
.
a
=
t2
.
a
;
drop
table
t1
,
t2
;
mysql-test/t/update.test
View file @
750af5a8
...
...
@@ -174,3 +174,11 @@ insert into t1 values (0, '1');
update
t1
set
b
=
b
+
1
where
a
=
0
;
select
*
from
t1
;
drop
table
t1
;
#
# Bug #16510 Updating field named like '*name' caused server crash
#
create
table
t1
(
f1
int
,
`*f2`
int
);
insert
into
t1
values
(
1
,
1
);
update
t1
set
`*f2`
=
1
;
drop
table
t1
;
netware/mysql_install_db.c
View file @
750af5a8
...
...
@@ -423,7 +423,7 @@ int main(int argc, char **argv)
printf
(
"
\n
The latest information about MySQL is available on the web at
\n
"
);
printf
(
"
\t
http://www.mysql.com
\n
"
);
printf
(
"
\n
Support MySQL by buying support at http
s://order
.mysql.com
\n\n
"
);
printf
(
"
\n
Support MySQL by buying support at http
://shop
.mysql.com
\n\n
"
);
return
0
;
}
scripts/make_binary_distribution.sh
View file @
750af5a8
...
...
@@ -279,7 +279,7 @@ then
gcclib
=
`
@CC@
--print-libgcc-file
`
if
test
$?
-ne
0
then
print
"Warning: Couldn't find libgcc.a!"
echo
"Warning: Couldn't find libgcc.a!"
else
$CP
$gcclib
libmygcc.a
fi
...
...
scripts/mysql_install_db.sh
View file @
750af5a8
#!/bin/sh
# Copyright (C) 2002-2004 MySQL AB
# For a more info consult the file COPYRIGHT distributed with this file.
...
...
@@ -397,7 +398,7 @@ then
echo
echo
"The latest information about MySQL is available on the web at"
echo
"http://www.mysql.com"
echo
"Support MySQL by buying support/licenses at http
s://order
.mysql.com"
echo
"Support MySQL by buying support/licenses at http
://shop
.mysql.com"
echo
exit
0
else
...
...
sql/item_func.cc
View file @
750af5a8
...
...
@@ -1138,11 +1138,8 @@ longlong Item_func_find_in_set::val_int()
longlong
Item_func_bit_count
::
val_int
()
{
ulonglong
value
=
(
ulonglong
)
args
[
0
]
->
val_int
();
if
(
args
[
0
]
->
null_value
)
{
null_value
=
1
;
/* purecov: inspected */
if
((
null_value
=
args
[
0
]
->
null_value
))
return
0
;
/* purecov: inspected */
}
return
(
longlong
)
my_count_bits
(
value
);
}
...
...
sql/sql_base.cc
View file @
750af5a8
...
...
@@ -1983,6 +1983,7 @@ int setup_fields(THD *thd, TABLE_LIST *tables, List<Item> &fields,
*/
if
(
item
->
type
()
==
Item
::
FIELD_ITEM
&&
((
Item_field
*
)
item
)
->
field_name
[
0
]
==
'*'
&&
((
Item_field
*
)
item
)
->
field_name
[
1
]
==
0
&&
!
((
Item_field
*
)
item
)
->
field
)
{
uint
elem
=
fields
.
elements
;
...
...
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