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
44c0545a
Commit
44c0545a
authored
Mar 26, 2001
by
monty@donna.mysql.fi
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
Added test case that crashed Innobase
parent
2ff0334c
Changes
21
Expand all
Hide whitespace changes
Inline
Side-by-side
Showing
21 changed files
with
281 additions
and
209 deletions
+281
-209
BUILD/compile-solaris-sparc-purify
BUILD/compile-solaris-sparc-purify
+7
-5
extra/resolve_stack_dump.c
extra/resolve_stack_dump.c
+32
-8
innobase/include/Makefile.i
innobase/include/Makefile.i
+2
-0
innobase/include/univ.i
innobase/include/univ.i
+4
-0
innobase/os/os0file.c
innobase/os/os0file.c
+6
-7
mysql-test/t/innobase.test
mysql-test/t/innobase.test
+9
-0
mysys/mf_qsort.c
mysys/mf_qsort.c
+3
-2
sql-bench/Results/ATIS-mysql-Linux_2.2.16_SMP_alpha
sql-bench/Results/ATIS-mysql-Linux_2.2.16_SMP_alpha
+8
-8
sql-bench/Results/RUN-mysql-Linux_2.2.16_SMP_alpha
sql-bench/Results/RUN-mysql-Linux_2.2.16_SMP_alpha
+88
-81
sql-bench/Results/alter-table-mysql-Linux_2.2.16_SMP_alpha
sql-bench/Results/alter-table-mysql-Linux_2.2.16_SMP_alpha
+6
-6
sql-bench/Results/big-tables-mysql-Linux_2.2.16_SMP_alpha
sql-bench/Results/big-tables-mysql-Linux_2.2.16_SMP_alpha
+6
-6
sql-bench/Results/connect-mysql-Linux_2.2.16_SMP_alpha
sql-bench/Results/connect-mysql-Linux_2.2.16_SMP_alpha
+10
-10
sql-bench/Results/create-mysql-Linux_2.2.16_SMP_alpha
sql-bench/Results/create-mysql-Linux_2.2.16_SMP_alpha
+7
-7
sql-bench/Results/insert-mysql-Linux_2.2.16_SMP_alpha
sql-bench/Results/insert-mysql-Linux_2.2.16_SMP_alpha
+48
-45
sql-bench/Results/select-mysql-Linux_2.2.16_SMP_alpha
sql-bench/Results/select-mysql-Linux_2.2.16_SMP_alpha
+20
-13
sql-bench/Results/wisconsin-mysql-Linux_2.2.16_SMP_alpha
sql-bench/Results/wisconsin-mysql-Linux_2.2.16_SMP_alpha
+4
-4
sql/ha_gemini.h
sql/ha_gemini.h
+1
-0
sql/ha_innobase.cc
sql/ha_innobase.cc
+10
-4
sql/ha_innobase.h
sql/ha_innobase.h
+1
-0
sql/handler.cc
sql/handler.cc
+6
-0
sql/mysqld.cc
sql/mysqld.cc
+3
-3
No files found.
BUILD/compile-solaris-sparc-purify
View file @
44c0545a
#! /bin/sh
gmake
-k
clean
||
true
/bin/rm
-f
*
/.deps/
*
.P config.cache
path
=
`
dirname
$0
`
.
"
$path
/SETUP.sh"
aclocal
&&
autoheader
&&
aclocal
&&
automake
&&
autoconf
(
cd
bdb/dist
&&
sh s_all
)
(
cd
innobase
&&
aclocal
&&
autoheader
&&
aclocal
&&
automake
&&
autoconf
)
extra_flags
=
"
$sparc_cflags
-DHAVE_PURIFY -O2"
extra_configs
=
"
$sparc_configs
--with-debug=full"
CFLAGS
=
"-Wimplicit -Wreturn-type -Wid-clash-51 -Wswitch -Wtrigraphs -Wcomment -W -Wchar-subscripts -Wformat -Wimplicit-function-dec -Wimplicit-int -Wparentheses -Wsign-compare -Wwrite-strings -Wunused -DHAVE_purify -O2"
CXX
=
gcc
CXXFLAGS
=
"-Wimplicit -Wreturn-type -Wid-clash-51 -Wswitch -Wtrigraphs -Wcomment -W -Wchar-subscripts -Wformat -Wimplicit-function-dec -Wimplicit-int -Wparentheses -Wsign-compare -Wwrite-strings -Woverloaded-virtual -Wextern-inline -Wsign-promo -Wreorder -Wctor-dtor-privacy -Wnon-virtual-dtor -felide-constructors -fno-exceptions -fno-rtti -DHAVE_PURIFY -O2"
./configure
--prefix
=
/usr/local/mysql
--enable-assembler
--with-extra-charsets
=
complex
--enable-thread-safe-client
--with-debug
=
full
.
"
$path
/FINISH.sh"
gmake
-j
4
extra/resolve_stack_dump.c
View file @
44c0545a
...
...
@@ -31,7 +31,7 @@
#define INIT_SYM_TABLE 4096
#define INC_SYM_TABLE 4096
#define MAX_SYM_SIZE 128
#define DUMP_VERSION "1.
1
"
#define DUMP_VERSION "1.
2
"
#define HEX_INVALID (uchar)255
typedef
ulong
my_long_addr_t
;
/* at some point, we need to fix configure
...
...
@@ -72,14 +72,15 @@ static void usage()
printf
(
"MySQL AB, by Sasha Pachev
\n
"
);
printf
(
"This software comes with ABSOLUTELY NO WARRANTY
\n\n
"
);
printf
(
"Resolve numeric stack strace dump into symbols.
\n\n
"
);
printf
(
"Usage: %s [OPTIONS]
\n
"
,
my_progname
);
printf
(
"Usage: %s [OPTIONS]
symbols-file [numeric-dump-file]
\n
"
,
my_progname
);
printf
(
"
\n
\
-?, --help Display this help and exit.
\n
\
-h, --host=... Connect to host.
\n
\
-V, --version Output version information and exit.
\n
\
-n, --numeric-dump-file File containing the numeric stack dump.
\n
\
-s, --symbols-file=... File containting the output of\
nm --numeric-sort mysqld .
\n\n
"
);
-V, --version Output version information and exit.
\n
"
);
printf
(
"
\n
\
The symbols-file should include the output from: 'nm --numeric-sort mysqld'.
\n
\
The numeric-dump-file should contain a numeric stack trace from mysqld.
\n
\
If the numeric-dump-file is not given, the stack trace is read from stdin.
\n
"
);
}
...
...
@@ -125,15 +126,38 @@ static int parse_args(int argc, char **argv)
argc
-=
optind
;
argv
+=
optind
;
if
(
argc
>
0
)
/*
The following code is to make the command compatible with the old
version that required one to use the -n and -s options
*/
if
(
argc
==
2
)
{
sym_fname
=
argv
[
0
];
dump_fname
=
argv
[
1
];
}
else
if
(
argc
==
1
)
{
if
(
!
sym_fname
)
sym_fname
=
argv
[
0
];
else
if
(
!
dump_fname
)
dump_fname
=
argv
[
0
];
else
{
usage
();
exit
(
1
);
}
}
else
if
(
argc
!=
0
||
!
sym_fname
)
{
usage
();
exit
(
1
);
}
return
0
;
}
static
void
open_files
()
{
fp_out
=
stdout
;
...
...
innobase/include/Makefile.i
View file @
44c0545a
...
...
@@ -4,5 +4,7 @@ libsdir = ../libs
INCLUDES
=
-I
../../include
-I
../include
CFLAGS
=
-g
-O2
-DDEBUG_OFF
# Don't update the files from bitkeeper
%
::
SCCS/s.%
innobase/include/univ.i
View file @
44c0545a
...
...
@@ -29,6 +29,10 @@ subdirectory of 'mysql'. */
#
include
<
global
.
h
>
#
include
<
my_pthread
.
h
>
/* Include <sys/stat.h> to get S_I... macros defined for os0file.c */
#
include
<
sys
/
stat
.
h
>
#
undef
PACKAGE
#
undef
VERSION
...
...
innobase/os/os0file.c
View file @
44c0545a
...
...
@@ -318,11 +318,8 @@ os_file_create(
UT_NOT_USED
(
purpose
);
if
(
create_mode
==
OS_FILE_CREATE
)
{
#ifndef S_IRWXU
file
=
open
(
name
,
create_flag
);
#else
file
=
open
(
name
,
create_flag
,
S_IRWXU
|
S_IRWXG
|
S_IRWXO
);
#endif
file
=
open
(
name
,
create_flag
,
S_IRUSR
|
S_IWUSR
|
S_IRGRP
|
S_IWGRP
|
S_IROTH
|
S_IWOTH
);
}
else
{
file
=
open
(
name
,
create_flag
);
}
...
...
@@ -905,19 +902,21 @@ os_aio_init(
os_aio_segment_wait_events
[
i
]
=
os_event_create
(
NULL
);
}
#if
defined(POSIX_ASYNC_IO) && defined(NOT_USED_WITH_MYSQL)
#if
def POSIX_ASYNC_IO
/* Block aio signals from the current thread and its children:
for this to work, the current thread must be the first created
in the database, so that all its children will inherit its
signal mask */
/* TODO: to work MySQL needs the SIGALARM signal; the following
will not work yet! */
sigemptyset
(
&
sigset
);
sigaddset
(
&
sigset
,
SIGRTMIN
+
1
+
0
);
sigaddset
(
&
sigset
,
SIGRTMIN
+
1
+
1
);
sigaddset
(
&
sigset
,
SIGRTMIN
+
1
+
2
);
sigaddset
(
&
sigset
,
SIGRTMIN
+
1
+
3
);
pthread_sigmask
(
SIG_BLOCK
,
&
sigset
,
NULL
);
pthread_sigmask
(
SIG_BLOCK
,
&
sigset
,
NULL
);
*/
#endif
}
...
...
mysql-test/t/innobase.test
View file @
44c0545a
...
...
@@ -408,3 +408,12 @@ CREATE TABLE t1 (
INSERT
INTO
t1
VALUES
(
1
,
1
);
SELECT
MIN
(
B
),
MAX
(
b
)
FROM
t1
WHERE
t1
.
a
=
1
;
drop
table
t1
;
#
# Crash when using many tables (Test case by Jeremy D Zawodny)
#
create
table
t1
(
a
int
primary
key
,
b
int
,
c
int
,
d
int
,
e
int
,
f
int
,
g
int
,
h
int
,
i
int
,
j
int
,
k
int
,
l
int
,
m
int
,
n
int
,
o
int
,
p
int
,
q
int
,
r
int
,
s
int
,
t
int
,
u
int
,
v
int
,
w
int
,
x
int
,
y
int
,
z
int
,
a1
int
,
a2
int
,
a3
int
,
a4
int
,
a5
int
,
a6
int
,
a7
int
,
a8
int
,
a9
int
,
b1
int
,
b2
int
,
b3
int
,
b4
int
,
b5
int
,
b6
int
)
type
=
Innobase
;
insert
into
t1
values
(
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
,
1
);
explain
select
*
from
t1
where
a
>
0
and
a
<
50
;
drop
table
t1
;
mysys/mf_qsort.c
View file @
44c0545a
...
...
@@ -37,7 +37,6 @@ along with GNU QSORT; see the file COPYING. If not, write to
the Free Software Foundation, 675 Mass Ave, Cambridge, MA 02139, USA. */
#include "mysys_priv.h"
#if !defined(HAVE_purify) || defined(QSORT_EXTRA_CMP_ARGUMENT)
/* Envoke the comparison function, returns either 0, < 0, or > 0. */
#ifdef QSORT_EXTRA_CMP_ARGUMENT
...
...
@@ -123,6 +122,9 @@ qsort_t qsort(void *base_ptr, size_t total_elems, size_t size, qsort_cmp cmp)
stack_node
stack
[
STACK_SIZE
];
/* Largest size needed for 32-bit int!!! */
stack_node
*
top
=
stack
+
1
;
char
*
pivot_buffer
=
(
char
*
)
my_alloca
((
int
)
size
);
#ifdef HAVE_purify
stack
[
0
].
lo
=
stack
[
0
].
hi
=
0
;
#endif
while
(
STACK_NOT_EMPTY
)
{
...
...
@@ -255,4 +257,3 @@ qsort_t qsort(void *base_ptr, size_t total_elems, size_t size, qsort_cmp cmp)
}
SORT_RETURN
;
}
#endif
/* HAVE_purify */
sql-bench/Results/ATIS-mysql-Linux_2.2.16_SMP_alpha
View file @
44c0545a
Testing server 'MySQL 3.23.3
1' at 2001-12-17 12:46:04
Testing server 'MySQL 3.23.3
6' at 2001-03-26 1:22:18
ATIS table test
...
...
@@ -6,15 +6,15 @@ Creating tables
Time for create_table (28): 0 wallclock secs ( 0.00 usr 0.00 sys + 0.00 cusr 0.00 csys = 0.00 CPU)
Inserting data
Time to insert (9768):
3 wallclock secs ( 0.60
usr 0.65 sys + 0.00 cusr 0.00 csys = 0.00 CPU)
Time to insert (9768):
4 wallclock secs ( 0.57
usr 0.65 sys + 0.00 cusr 0.00 csys = 0.00 CPU)
Retrieving data
Time for select_simple_join (500):
2
wallclock secs ( 0.58 usr 0.37 sys + 0.00 cusr 0.00 csys = 0.00 CPU)
Time for select_join (100):
1 wallclock secs ( 0.42 usr 0.32
sys + 0.00 cusr 0.00 csys = 0.00 CPU)
Time for select_key_prefix_join (100): 11 wallclock secs ( 3.
27 usr 2.59
sys + 0.00 cusr 0.00 csys = 0.00 CPU)
Time for select_distinct (800): 10 wallclock secs ( 1.
49 usr 0.94
sys + 0.00 cusr 0.00 csys = 0.00 CPU)
Time for select_group (2800): 11 wallclock secs ( 1.4
5 usr 0.64
sys + 0.00 cusr 0.00 csys = 0.00 CPU)
Time for select_simple_join (500):
1
wallclock secs ( 0.58 usr 0.37 sys + 0.00 cusr 0.00 csys = 0.00 CPU)
Time for select_join (100):
2 wallclock secs ( 0.44 usr 0.33
sys + 0.00 cusr 0.00 csys = 0.00 CPU)
Time for select_key_prefix_join (100): 11 wallclock secs ( 3.
47 usr 2.55
sys + 0.00 cusr 0.00 csys = 0.00 CPU)
Time for select_distinct (800): 10 wallclock secs ( 1.
53 usr 0.98
sys + 0.00 cusr 0.00 csys = 0.00 CPU)
Time for select_group (2800): 11 wallclock secs ( 1.4
4 usr 0.65
sys + 0.00 cusr 0.00 csys = 0.00 CPU)
Removing tables
Time to drop_table (28): 0 wallclock secs ( 0.00 usr 0.00 sys + 0.00 cusr 0.00 csys = 0.00 CPU)
Total time: 3
8 wallclock secs ( 7.82 usr 5.51
sys + 0.00 cusr 0.00 csys = 0.00 CPU)
Total time: 3
9 wallclock secs ( 8.05 usr 5.53
sys + 0.00 cusr 0.00 csys = 0.00 CPU)
sql-bench/Results/RUN-mysql-Linux_2.2.16_SMP_alpha
View file @
44c0545a
This diff is collapsed.
Click to expand it.
sql-bench/Results/alter-table-mysql-Linux_2.2.16_SMP_alpha
View file @
44c0545a
Testing server 'MySQL 3.23.3
1' at 2001-12-17 12:46:42
Testing server 'MySQL 3.23.3
6' at 2001-03-26 1:22:58
Testing of ALTER TABLE
Testing with 1000 columns and 1000 rows in 20 steps
Insert data into the table
Time for insert (1000) 0 wallclock secs ( 0.0
5 usr 0.07
sys + 0.00 cusr 0.00 csys = 0.00 CPU)
Time for insert (1000) 0 wallclock secs ( 0.0
7 usr 0.06
sys + 0.00 cusr 0.00 csys = 0.00 CPU)
Time for alter_table_add (992):
195 wallclock secs ( 0.17 usr 0.09
sys + 0.00 cusr 0.00 csys = 0.00 CPU)
Time for alter_table_add (992):
219 wallclock secs ( 0.16 usr 0.07
sys + 0.00 cusr 0.00 csys = 0.00 CPU)
Time for create_index (8):
3
wallclock secs ( 0.00 usr 0.00 sys + 0.00 cusr 0.00 csys = 0.00 CPU)
Time for create_index (8):
4
wallclock secs ( 0.00 usr 0.00 sys + 0.00 cusr 0.00 csys = 0.00 CPU)
Time for drop_index (8): 4 wallclock secs ( 0.00 usr 0.00 sys + 0.00 cusr 0.00 csys = 0.00 CPU)
Time for alter_table_drop (496): 1
55
wallclock secs ( 0.06 usr 0.04 sys + 0.00 cusr 0.00 csys = 0.00 CPU)
Time for alter_table_drop (496): 1
78
wallclock secs ( 0.06 usr 0.04 sys + 0.00 cusr 0.00 csys = 0.00 CPU)
Total time:
357 wallclock secs ( 0.28 usr 0.20
sys + 0.00 cusr 0.00 csys = 0.00 CPU)
Total time:
405 wallclock secs ( 0.30 usr 0.16
sys + 0.00 cusr 0.00 csys = 0.00 CPU)
sql-bench/Results/big-tables-mysql-Linux_2.2.16_SMP_alpha
View file @
44c0545a
Testing server 'MySQL 3.23.3
1' at 2001-12-17 12:52:39
Testing server 'MySQL 3.23.3
6' at 2001-03-26 1:29:43
Testing of some unusual tables
All tests are done 1000 times with 1000 fields
Testing table with 1000 fields
Testing select * from table with 1 record
Time to select_many_fields(1000): 10 wallclock secs ( 3.
38 usr 4.68
sys + 0.00 cusr 0.00 csys = 0.00 CPU)
Time to select_many_fields(1000): 10 wallclock secs ( 3.
55 usr 5.04
sys + 0.00 cusr 0.00 csys = 0.00 CPU)
Testing select all_fields from table with 1 record
Time to select_many_fields(1000): 15 wallclock secs ( 3.
55 usr 4.64
sys + 0.00 cusr 0.00 csys = 0.00 CPU)
Time to select_many_fields(1000): 15 wallclock secs ( 3.
61 usr 5.06
sys + 0.00 cusr 0.00 csys = 0.00 CPU)
Testing insert VALUES()
Time to insert_many_fields(1000): 5 wallclock secs ( 0.3
3 usr 0.08
sys + 0.00 cusr 0.00 csys = 0.00 CPU)
Time to insert_many_fields(1000): 5 wallclock secs ( 0.3
0 usr 0.09
sys + 0.00 cusr 0.00 csys = 0.00 CPU)
Testing insert (all_fields) VALUES()
Time to insert_many_fields(1000):
10 wallclock secs ( 0.03 usr 0.07
sys + 0.00 cusr 0.00 csys = 0.00 CPU)
Time to insert_many_fields(1000):
9 wallclock secs ( 0.03 usr 0.05
sys + 0.00 cusr 0.00 csys = 0.00 CPU)
Total time: 40 wallclock secs ( 7.
30 usr 9.46
sys + 0.00 cusr 0.00 csys = 0.00 CPU)
Total time: 40 wallclock secs ( 7.
49 usr 10.23
sys + 0.00 cusr 0.00 csys = 0.00 CPU)
sql-bench/Results/connect-mysql-Linux_2.2.16_SMP_alpha
View file @
44c0545a
Testing server 'MySQL 3.23.3
1' at 2001-12-17 12:53:19
Testing server 'MySQL 3.23.3
6' at 2001-03-26 1:30:23
Testing the speed of connecting to the server and sending of data
All tests are done 10000 times
Testing connection/disconnect
Time to connect (10000): 14 wallclock secs ( 7.
94 usr 2.31
sys + 0.00 cusr 0.00 csys = 0.00 CPU)
Time to connect (10000): 14 wallclock secs ( 7.
60 usr 2.34
sys + 0.00 cusr 0.00 csys = 0.00 CPU)
Test connect/simple select/disconnect
Time for connect+select_simple (10000): 16 wallclock secs (
8.44 usr 3.19
sys + 0.00 cusr 0.00 csys = 0.00 CPU)
Time for connect+select_simple (10000): 16 wallclock secs (
7.88 usr 3.28
sys + 0.00 cusr 0.00 csys = 0.00 CPU)
Test simple select
Time for select_simple (10000):
2 wallclock secs ( 0.30 usr 0.78
sys + 0.00 cusr 0.00 csys = 0.00 CPU)
Time for select_simple (10000):
1 wallclock secs ( 0.33 usr 0.77
sys + 0.00 cusr 0.00 csys = 0.00 CPU)
Testing connect/select 1 row from table/disconnect
Time to connect+select_1_row (10000): 17 wallclock secs ( 8.
45 usr 3.13
sys + 0.00 cusr 0.00 csys = 0.00 CPU)
Time to connect+select_1_row (10000): 17 wallclock secs ( 8.
25 usr 3.12
sys + 0.00 cusr 0.00 csys = 0.00 CPU)
Testing select 1 row from table
Time to select_1_row (10000):
2 wallclock secs ( 0.29 usr 0.81
sys + 0.00 cusr 0.00 csys = 0.00 CPU)
Time to select_1_row (10000):
3 wallclock secs ( 0.30 usr 0.80
sys + 0.00 cusr 0.00 csys = 0.00 CPU)
Testing select 2 rows from table
Time to select_2_rows (10000):
3 wallclock secs ( 0.32 usr 0.93
sys + 0.00 cusr 0.00 csys = 0.00 CPU)
Time to select_2_rows (10000):
2 wallclock secs ( 0.32 usr 0.95
sys + 0.00 cusr 0.00 csys = 0.00 CPU)
Test select with aritmetic (+)
Time for select_column+column (10000): 3 wallclock secs ( 0.3
0 usr 0.72
sys + 0.00 cusr 0.00 csys = 0.00 CPU)
Time for select_column+column (10000): 3 wallclock secs ( 0.3
1 usr 0.79
sys + 0.00 cusr 0.00 csys = 0.00 CPU)
Testing retrieval of big records (65000 bytes)
Time to select_big (10000):
19 wallclock secs ( 7.77 usr 5.83
sys + 0.00 cusr 0.00 csys = 0.00 CPU)
Time to select_big (10000):
20 wallclock secs ( 8.34 usr 6.75
sys + 0.00 cusr 0.00 csys = 0.00 CPU)
Total time: 76 wallclock secs (33.
82 usr 17.71
sys + 0.00 cusr 0.00 csys = 0.00 CPU)
Total time: 76 wallclock secs (33.
34 usr 18.80
sys + 0.00 cusr 0.00 csys = 0.00 CPU)
sql-bench/Results/create-mysql-Linux_2.2.16_SMP_alpha
View file @
44c0545a
Testing server 'MySQL 3.23.3
1' at 2001-12-17 12:54:35
Testing server 'MySQL 3.23.3
6' at 2001-03-26 1:31:40
Testing the speed of creating and droping tables
Testing with 10000 tables and 10000 loop count
Testing create of tables
Time for create_MANY_tables (10000): 1
85 wallclock secs ( 1.92 usr 0.72
sys + 0.00 cusr 0.00 csys = 0.00 CPU)
Time for create_MANY_tables (10000): 1
04 wallclock secs ( 1.76 usr 0.73
sys + 0.00 cusr 0.00 csys = 0.00 CPU)
Accessing tables
Time to select_group_when_MANY_tables (10000): 6 wallclock secs ( 0.
89 usr 0.87
sys + 0.00 cusr 0.00 csys = 0.00 CPU)
Time to select_group_when_MANY_tables (10000): 6 wallclock secs ( 0.
95 usr 0.90
sys + 0.00 cusr 0.00 csys = 0.00 CPU)
Testing drop
Time for drop_table_when_MANY_tables (10000):
6 wallclock secs ( 0.55 usr 0.56
sys + 0.00 cusr 0.00 csys = 0.00 CPU)
Time for drop_table_when_MANY_tables (10000):
7 wallclock secs ( 0.64 usr 0.63
sys + 0.00 cusr 0.00 csys = 0.00 CPU)
Testing create+drop
Time for create+drop (10000): 1
2 wallclock secs ( 2.23 usr 1.21
sys + 0.00 cusr 0.00 csys = 0.00 CPU)
Time for create_key+drop (10000): 17 wallclock secs (
3.97 usr 1.39
sys + 0.00 cusr 0.00 csys = 0.00 CPU)
Total time:
226 wallclock secs ( 9.57 usr 4.75
sys + 0.00 cusr 0.00 csys = 0.00 CPU)
Time for create+drop (10000): 1
3 wallclock secs ( 2.39 usr 1.35
sys + 0.00 cusr 0.00 csys = 0.00 CPU)
Time for create_key+drop (10000): 17 wallclock secs (
4.00 usr 1.40
sys + 0.00 cusr 0.00 csys = 0.00 CPU)
Total time:
147 wallclock secs ( 9.75 usr 5.02
sys + 0.00 cusr 0.00 csys = 0.00 CPU)
sql-bench/Results/insert-mysql-Linux_2.2.16_SMP_alpha
View file @
44c0545a
This diff is collapsed.
Click to expand it.
sql-bench/Results/select-mysql-Linux_2.2.16_SMP_alpha
View file @
44c0545a
Testing server 'MySQL 3.23.3
1' at 2001-12-17 13:31:13
Testing server 'MySQL 3.23.3
6' at 2001-03-26 2:12:47
Testing the speed of selecting on keys that consist of many parts
The test-table has 10000 rows and the test is done with 500 ranges.
Creating table
Inserting 10000 rows
Time to insert (10000): 4 wallclock secs ( 0.76 usr 0.67 sys + 0.00 cusr 0.00 csys = 0.00 CPU)
Time to insert (10000): 4 wallclock secs ( 0.81 usr 0.63 sys + 0.00 cusr 0.00 csys = 0.00 CPU)
Test if the database has a query cache
Time for select_query_cache (10000): 82 wallclock secs ( 3.31 usr 1.00 sys + 0.00 cusr 0.00 csys = 0.00 CPU)
Time for select_query_cache2 (10000): 83 wallclock secs ( 3.20 usr 0.96 sys + 0.00 cusr 0.00 csys = 0.00 CPU)
Testing big selects on the table
Time for select_big (70:17207): 1 wallclock secs ( 0.12 usr 0.0
9
sys + 0.00 cusr 0.00 csys = 0.00 CPU)
Time for select_range (410:1057904): 2
17 wallclock secs ( 7.91 usr 5.38
sys + 0.00 cusr 0.00 csys = 0.00 CPU)
Time for min_max_on_key (70000): 1
72 wallclock secs (21.85 usr 6.80
sys + 0.00 cusr 0.00 csys = 0.00 CPU)
Time for count_on_key (50000): 3
93 wallclock secs (16.24 usr 4.77
sys + 0.00 cusr 0.00 csys = 0.00 CPU)
Time for select_big (70:17207): 1 wallclock secs ( 0.12 usr 0.0
8
sys + 0.00 cusr 0.00 csys = 0.00 CPU)
Time for select_range (410:1057904): 2
25 wallclock secs ( 7.61 usr 5.12
sys + 0.00 cusr 0.00 csys = 0.00 CPU)
Time for min_max_on_key (70000): 1
55 wallclock secs (21.44 usr 6.55
sys + 0.00 cusr 0.00 csys = 0.00 CPU)
Time for count_on_key (50000): 3
55 wallclock secs (16.27 usr 4.69
sys + 0.00 cusr 0.00 csys = 0.00 CPU)
Time for count_group_on_key_parts (1000:100000): 4
4 wallclock secs ( 0.96 usr 0.58
sys + 0.00 cusr 0.00 csys = 0.00 CPU)
Time for count_group_on_key_parts (1000:100000): 4
2 wallclock secs ( 0.94 usr 0.56
sys + 0.00 cusr 0.00 csys = 0.00 CPU)
Testing count(distinct) on the table
Time for count_distinct (2000:2000): 103 wallclock secs ( 0.72 usr 0.23 sys + 0.00 cusr 0.00 csys = 0.00 CPU)
Time for count_distinct_group_on_key (1000:6000): 49 wallclock secs ( 0.49 usr 0.15 sys + 0.00 cusr 0.00 csys = 0.00 CPU)
Time for count_distinct_group_on_key_parts (1000:100000): 64 wallclock secs ( 1.03 usr 0.60 sys + 0.00 cusr 0.00 csys = 0.00 CPU)
Time for count_distinct_group (1000:100000): 64 wallclock secs ( 1.01 usr 0.62 sys + 0.00 cusr 0.00 csys = 0.00 CPU)
Time for count_distinct_big (100:1000000): 82 wallclock secs ( 6.23 usr 7.46 sys + 0.00 cusr 0.00 csys = 0.00 CPU)
Total time: 1193 wallclock secs (57.33 usr 27.36 sys + 0.00 cusr 0.00 csys = 0.00 CPU)
Time for count_distinct_key_prefix (1000:1000): 38 wallclock secs ( 0.39 usr 0.12 sys + 0.00 cusr 0.00 csys = 0.00 CPU)
Time for count_distinct (1000:1000): 48 wallclock secs ( 0.40 usr 0.10 sys + 0.00 cusr 0.00 csys = 0.00 CPU)
Time for count_distinct_2 (1000:1000): 50 wallclock secs ( 0.42 usr 0.12 sys + 0.00 cusr 0.00 csys = 0.00 CPU)
Time for count_distinct_group_on_key (1000:6000): 42 wallclock secs ( 0.42 usr 0.15 sys + 0.00 cusr 0.00 csys = 0.00 CPU)
Time for count_distinct_group_on_key_parts (1000:100000): 70 wallclock secs ( 0.97 usr 0.59 sys + 0.00 cusr 0.00 csys = 0.00 CPU)
Time for count_distinct_group (1000:100000): 69 wallclock secs ( 0.98 usr 0.61 sys + 0.00 cusr 0.00 csys = 0.00 CPU)
Time for count_distinct_big (100:1000000): 82 wallclock secs ( 6.04 usr 7.21 sys + 0.00 cusr 0.00 csys = 0.00 CPU)
Total time: 1346 wallclock secs (63.34 usr 28.50 sys + 0.00 cusr 0.00 csys = 0.00 CPU)
sql-bench/Results/wisconsin-mysql-Linux_2.2.16_SMP_alpha
View file @
44c0545a
Testing server 'MySQL 3.23.3
1' at 2001-12-17 13:51:06
Testing server 'MySQL 3.23.3
6' at 2001-03-26 2:35:13
Wisconsin benchmark test
Time for create_table (3): 0 wallclock secs ( 0.00 usr 0.00 sys + 0.00 cusr 0.00 csys = 0.00 CPU)
Inserting data
Time to insert (31000): 1
4 wallclock secs ( 2.16 usr 2.23
sys + 0.00 cusr 0.00 csys = 0.00 CPU)
Time to insert (31000): 1
5 wallclock secs ( 2.39 usr 2.30
sys + 0.00 cusr 0.00 csys = 0.00 CPU)
Time to delete_big (1): 0 wallclock secs ( 0.00 usr 0.00 sys + 0.00 cusr 0.00 csys = 0.00 CPU)
Running actual benchmark
Time for wisc_benchmark (114): 4 wallclock secs ( 1.
62 usr 0.85
sys + 0.00 cusr 0.00 csys = 0.00 CPU)
Time for wisc_benchmark (114): 4 wallclock secs ( 1.
59 usr 0.88
sys + 0.00 cusr 0.00 csys = 0.00 CPU)
Total time: 1
8 wallclock secs ( 3.78 usr 3.08
sys + 0.00 cusr 0.00 csys = 0.00 CPU)
Total time: 1
9 wallclock secs ( 3.99 usr 3.17
sys + 0.00 cusr 0.00 csys = 0.00 CPU)
sql/ha_gemini.h
View file @
44c0545a
...
...
@@ -158,6 +158,7 @@ class ha_gemini: public handler
#define GEM_OPTID_SPIN_RETRIES 1
extern
bool
gemini_skip
;
extern
SHOW_COMP_OPTION
have_gemini
;
extern
long
gemini_options
;
extern
long
gemini_buffer_cache
;
extern
long
gemini_io_threads
;
...
...
sql/ha_innobase.cc
View file @
44c0545a
...
...
@@ -917,7 +917,7 @@ innobase_mysql_cmp(
not UNIV_SQL_NULL */
{
enum_field_types
mysql_tp
;
int
ret
;
int
ret
;
dbug_assert
(
a_length
!=
UNIV_SQL_NULL
);
dbug_assert
(
b_length
!=
UNIV_SQL_NULL
);
...
...
@@ -928,9 +928,15 @@ innobase_mysql_cmp(
case
FIELD_TYPE_STRING
:
case
FIELD_TYPE_VAR_STRING
:
ret
=
my_sortncmp
((
const
char
*
)
a
,
a_length
,
(
const
char
*
)
b
,
b_length
);
return
ret
;
ret
=
my_sortncmp
((
const
char
*
)
a
,
a_length
,
(
const
char
*
)
b
,
b_length
);
if
(
ret
<
0
)
{
return
(
-
1
);
}
else
if
(
ret
>
0
)
{
return
(
1
);
}
else
{
return
(
0
);
}
default:
assert
(
0
);
}
...
...
sql/ha_innobase.h
View file @
44c0545a
...
...
@@ -148,6 +148,7 @@ class ha_innobase: public handler
};
extern
bool
innobase_skip
;
extern
SHOW_COMP_OPTION
have_innobase
;
extern
uint
innobase_init_flags
,
innobase_lock_type
;
extern
ulong
innobase_cache_size
;
extern
char
*
innobase_home
,
*
innobase_tmpdir
,
*
innobase_logdir
;
...
...
sql/handler.cc
View file @
44c0545a
...
...
@@ -159,7 +159,10 @@ int ha_init()
if
(
innobase_init
())
return
-
1
;
if
(
!
innobase_skip
)
// If we couldn't use handler
{
opt_using_transactions
=
1
;
have_innobase
=
SHOW_OPTION_DISABLED
;
}
}
#endif
#ifdef HAVE_GEMINI_DB
...
...
@@ -168,7 +171,10 @@ int ha_init()
if
(
gemini_init
())
return
-
1
;
if
(
!
gemini_skip
)
// If we couldn't use handler
{
opt_using_transactions
=
1
;
have_gemini
=
SHOW_OPTION_DISABLED
;
}
}
#endif
return
0
;
...
...
sql/mysqld.cc
View file @
44c0545a
...
...
@@ -1696,9 +1696,9 @@ int main(int argc, char **argv)
#ifdef EXTRA_DEBUG
case
1
:
sql_print_error
(
"\
Warning: You
should set server-id to a non-0 value if log-bin is enabled.
\n
\
mysqld will log updates to the binary log, but will not accept connections
\n
\
from slaves
."
);
Warning: You
have enabled the binary log, but you haven't set server-id:
\n
\
Updates will be logged to the binary log, but connections to slaves will
\n
\
not be accepted
."
);
break
;
#endif
case
2
:
...
...
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