Commit 696e5ec3 authored by tim@threads.polyesthetic.msg's avatar tim@threads.polyesthetic.msg

Merge work.mysql.com:/home/bk/mysql

into threads.polyesthetic.msg:/home/tim/my/3
parents fcfc583e 6aa6374e
......@@ -237,11 +237,15 @@ scripts/safe_mysqld
sql-bench/Results-linux/ATIS-mysql_bdb-Linux_2.2.14_my_SMP_i686
sql-bench/bench-init.pl
sql-bench/compare-results
sql-bench/compare-results-all
sql-bench/copy-db
sql-bench/crash-me
sql-bench/gif/*
sql-bench/graph-compare-results
sql-bench/output/*
sql-bench/run-all-tests
sql-bench/server-cfg
sql-bench/template.html
sql-bench/test-ATIS
sql-bench/test-alter-table
sql-bench/test-big-tables
......
heikki@donna.mysql.fi
jani@janikt.pp.saunalahti.fi
monty@hundin.mysql.fi
monty@tik.mysql.fi
monty@work.mysql.com
mwagner@evoq.mwagner.org
paul@central.snake.net
paul@teton.kitebird.com
sasha@mysql.sashanet.com
serg@serg.mysql.com
tim@threads.polyesthetic.msg
......@@ -3,6 +3,7 @@
#shift
TO=dev-public@mysql.com
FROM=$USER@mysql.com
INTERNALS=internals@lists.mysql.com
LIMIT=10000
if [ "$REAL_EMAIL" = "" ]
......@@ -22,7 +23,23 @@ then
List-ID: <bk.mysql>
From: $FROM
To: $TO
Subject: bk commit
Subject: bk commit into 3.23 tree
EOF
bk changes -v -r+
bk cset -r+ -d
) | head -n $LIMIT | /usr/sbin/sendmail -t
echo "Notifying internals list at $INTERNALS"
(
cat <<EOF
List-ID: <bk.mysql>
From: $FROM
To: $INTERNALS
Subject: bk commit into 3.23 tree
Below is the list of changes that have just been pushed into main
3.23. repository. For information on how to access the repository
see http://www.mysql.com/doc/I/n/Installing_source_tree.html
EOF
bk changes -v -r+
......
......@@ -4,10 +4,10 @@ use Getopt::Long;
$opt_distribution=$opt_user=$opt_result=$opt_config_options=$opt_config_env="";
$opt_dbd_options=$opt_perl_options=$opt_suffix="";
$opt_tmp=$version_suffix="";
$opt_help=$opt_Information=$opt_no_delete=$opt_debug=$opt_stage=$opt_rsh_mail=$opt_no_test=$opt_no_perl=$opt_with_low_memory=$opt_fast_benchmark=$opt_static_client=$opt_static_server=$opt_static_perl=$opt_sur=$opt_with_small_disk=$opt_local_perl=$opt_tcpip=$opt_build_thread=$opt_no_mysqltest=$opt_use_old_distribution=0;
$opt_help=$opt_Information=$opt_no_delete=$opt_debug=$opt_stage=$opt_rsh_mail=$opt_no_test=$opt_no_perl=$opt_with_low_memory=$opt_fast_benchmark=$opt_static_client=$opt_static_server=$opt_static_perl=$opt_sur=$opt_with_small_disk=$opt_local_perl=$opt_tcpip=$opt_build_thread=$opt_no_mysqltest=$opt_use_old_distribution=$opt_enable_shared=$opt_no_crash_me=$opt_no_strip=0;
$opt_innodb=$opt_bdb=0;
GetOptions("Information","help","distribution=s","user=s","result=s","no-delete","no-test","no-mysqltest","perl-files=s","debug","config-options=s","config-env=s","stage=i","rsh-mail","with-low-memory","fast-benchmark","tmp=s","static-client","static-server","static-perl","no-perl","local-perl","perl-options=s","sur","with-small-disk","dbd-options=s","tcpip","suffix=s","build-thread=i","innodb","bdb","use-old-distribution") || usage();
GetOptions("Information","help","distribution=s","user=s","result=s","no-delete","no-test","no-mysqltest","perl-files=s","debug","config-options=s","config-env=s","stage=i","rsh-mail","with-low-memory","fast-benchmark","tmp=s","static-client","static-server","static-perl","no-perl","local-perl","perl-options=s","sur","with-small-disk","dbd-options=s","tcpip","suffix=s","build-thread=i","innodb","bdb","use-old-distribution","enable-shared","no-crash-me","no-strip") || usage();
usage() if ($opt_help || $opt_Information);
usage() if (!$opt_distribution);
......@@ -19,7 +19,7 @@ if ($opt_innodb || $opt_bdb)
chomp($host=`hostname`);
$full_host_name=$host;
print "$host: Compiling MySQL$version_suffix at $host$suffix, stage: $opt_stage\n" if ($opt_debug);
info("Compiling MySQL$version_suffix at $host$suffix, stage: $opt_stage\n");
$connect_option= ($opt_tcpip ? "--host=$host" : "");
$host =~ /^([^.-]*)/;
$host=$1 . $opt_suffix;
......@@ -119,7 +119,10 @@ if ($opt_stage <= 1)
{
$opt_config_options.=" --with-client-ldflags=-all-static";
}
if (!$opt_enable_shared)
{
$opt_config_options.= " --disable-shared"; # Default for binary versions
}
if ($opt_bdb)
{
$opt_config_options.= " --with-berkeley-db"
......@@ -146,10 +149,13 @@ if ($opt_stage <= 2)
#
if ($opt_stage <= 3)
{
my ($flags);
log_system("rm -fr mysql-3* mysql-4* $pwd/$host/*.tar.gz");
log_system("nm -n sql/mysqld | gzip -9 -v 2>&1 > sql/mysqld.sym.gz | cat");
log_system("strip sql/mysqld extra/comp_err client/mysql sql/mysqld client/mysqlshow extra/replace isam/isamchk client/mysqladmin client/mysqldump extra/perror");
check_system("scripts/make_binary_distribution $opt_tmp $opt_suffix",".tar.gz created");
$flags="";
$flags.="--no-strip" if ($opt_no_strip);
check_system("scripts/make_binary_distribution --tmp=$opt_tmp --suffix=$opt_suffix $flags",".tar.gz created");
safe_system("mv mysql*.tar.gz $pwd/$host");
safe_system("cp client/mysqladmin $pwd/$host/bin");
safe_system("$make clean") if ($opt_with_small_disk);
......@@ -174,6 +180,7 @@ if ($opt_stage <= 4 && !$opt_no_test)
$tar_file =~ /(mysql-[^\/]*)\.tar/;
$ver=$1;
$test_dir="$pwd/$host/test/$ver";
$ENV{"LD_LIBRARY_PATH"}= "$testdir/lib:" . $ENV{"LD_LIBRARY_PATH"};
if ($opt_stage <= 5 && !$opt_no_test && !$opt_no_mysqltest)
{
......@@ -237,7 +244,7 @@ if ($opt_stage <= 7 && $opt_perl_files && !$opt_no_perl && !$opt_no_test)
}
if ($opt_stage <= 8 && !$opt_no_test)
if ($opt_stage <= 8 && !$opt_no_test && !$opt_no_crash_me)
{
safe_cd("$test_dir/sql-bench");
log_system("rm -f limits/mysql.cfg");
......
......@@ -47,7 +47,7 @@ This is a manual about @strong{MySQL} internals.
@menu
@end menu
@node caching
@node caching,,,
@chapter How MySQL handles caching
@strong{MySQL} has the following caches:
......@@ -89,7 +89,7 @@ found rows are cached in a join cache. One SELECT query can use many
join caches in the worst case.
@end itemize
@node flush tables
@node flush tables,,,
@chapter How MySQL handles flush tables
@itemize @bullet
......@@ -134,7 +134,7 @@ After this it will give other threads a chance to open the same tables.
@end itemize
@node Filesort
@node Filesort,,,
@chapter How MySQL does sorting (filesort)
@itemize @bullet
......@@ -174,7 +174,7 @@ and then we read the rows in the sorted order into a row buffer
@end itemize
@node Coding guidelines
@node Coding guidelines,,,
@chapter Coding guidelines
@itemize @bullet
......@@ -289,7 +289,7 @@ Use pointers rather than array indexing when operating on strings.
@end itemize
@node mysys functions
@node mysys functions,,,
@chapter mysys functions
Functions i mysys: (For flags se my_sys.h)
......@@ -433,6 +433,205 @@ Functions i mysys: (For flags se my_sys.h)
void end_key_cache _A((void));
- End key-cacheing.
@node protocol,,,
@chapter MySQL client/server protocol
Raw packet without compression
==============================
-------------------------------------------------
| Packet Length | Packet no | Data |
| 3 Bytes | 1 Byte | n Bytes |
-------------------------------------------------
3 Byte packet length
The length is calculated with int3store
See include/global.h for details.
The max packetsize can be 16 MB.
1 Byte packet no
If no compression is used the first 4 bytes of each paket
is the header of the paket.
The packet number is incremented for each sent packet. The first
packet starts with 0
n Byte data
The packet length can be recalculated with:
length = byte1 + (256 * byte2) + (256 * 256 * byte3)
Raw packet with compression
===========================
-----------------------------------------------------
| Packet Length | Packet no | Uncomp. Packet Length |
| 3 Bytes | 1 Byte | 3 Bytes |
-----------------------------------------------------
3 Byte packet length
The length is calculated with int3store
See include/global.h for details.
The max packetsize can be 16 MB.
1 Byte packet no
3 Byte uncompressed packet length
If compression is used the first 7 bytes of each paket
is the header of the paket.
Basic packets
==============
OK-packet
For details see sql/net_pkg.cc
function send_ok
-------------------------------------------------
| Header | No of Rows | Affected Rows |
| | 1 Byte | 1-8 Byte |
-------------------------------------------------
| ID (last_insert_id) | Status | Length |
| 1-8 Byte | 2 Byte | 1-8 Byte |
-------------------------------------------------
| Messagetext |
| n Byte |
-------------------------------------------------
Header
1 byte number of rows ? (always 0 ?)
1-8 bytes affected rows
1-8 byte id (last_insert_id)
2 byte Status (usually 0)
If the OK-packege includes a message:
1-8 bytes length of message
n bytes messagetext
Error-packet
-------------------------------------------------
| Header | Statuscode | Error no |
| | 1 Byte | 2 Byte |
-------------------------------------------------
| Messagetext | 0x00 |
| n Byte | 1 Byte |
-------------------------------------------------
Header
1 byte status code (0xFF = ERROR)
2 byte error number (is only sent to new 3.23 clients.
n byte errortext
1 byte 0x00
The communication
=================
> Packet from server to client
< Paket from client tor server
Login
------
> 1. packet
Header
1 byte protocolversion
n byte serverversion
1 byte 0x00
4 byte threadnumber
8 byte crypt seed
1 byte 0x00
2 byte CLIENT_xxx options (see include/mysql_com.h
that is supported by the server
1 byte number of current server charset
2 byte server status variables (SERVER_STATUS_xxx flags)
13 byte 0x00 (not used yet).
< 2. packet
Header
2 byte CLIENT_xxx options
3 byte max_allowed_packet for the client
n byte username
1 byte 0x00
8 byte crypted password
1 byte 0x00
n byte databasename
1 byte 0x00
> 3. packet
OK-packet
Command
--------
< 1. packet
Header
1 byte command type (e.g.0x03 = query)
n byte query
Result set (after command)
--------------------------
> 2. packet
Header
1-8 byte field_count (packed with net_store_length())
If field_count == 0 (command):
1-8 byte affected rows
1-8 byte insert id
2 bytes server_status (SERVER_STATUS_xx)
If field_count == NULL_LENGTH (251)
LOAD DATA LOCAL INFILE
If field_count > 0 Result Set:
> n packets
Header Info
Column description: 5 data object /column
(See code in unpack_fields())
Columninfo for each column:
1 data block table_name
1 byte length of block
n byte data
1 data block field_name
1 byte length of block...
n byte data
1 data block display length of field
1 byte length of block
3 bytes display length of filed
1 data block type field of type (enum_field_types)
1 byte length of block
1 bytexs field of type
1 data block flags
1 byte length of block
2 byte flags for the columns (NOT_NULL_FLAG, ZEROFILL_FLAG....)
1 byte decimals
if table definition:
1 data block default value
Actual result (one packet per row):
4 byte header
1-8 byte length of data
n data
Fieldtype Codes:
================
display_length |enum_field_type |flags
----------------------------------------------------
Blob 03 FF FF 00 |01 FC |03 90 00 00
Mediumblob 03 FF FF FF |01 FC |03 90 00 00
Tinyblob 03 FF 00 00 |01 FC |03 90 00 00
Text 03 FF FF 00 |01 FC |03 10 00 00
Mediumtext 03 FF FF FF |01 FC |03 10 00 00
Tinytext 03 FF 00 00 |01 FC |03 10 00 00
Integer 03 0B 00 00 |01 03 |03 03 42 00
Mediumint 03 09 00 00 |01 09 |03 00 00 00
Smallint 03 06 00 00 |01 02 |03 00 00 00
Tinyint 03 04 00 00 |01 01 |03 00 00 00
Varchar 03 XX 00 00 |01 FD |03 00 00 00
Enum 03 05 00 00 |01 FE |03 00 01 00
Datetime 03 13 00 00 |01 0C |03 00 00 00
Timestamp 03 0E 00 00 |01 07 |03 61 04 00
Time 03 08 00 00 |01 0B |03 00 00 00
Date 03 0A 00 00 |01 0A |03 00 00 00
@c The Index was empty, and ugly, so I removed it. (jcole, Sep 7, 2000)
......
This diff is collapsed.
......@@ -16,7 +16,7 @@
/* Show databases, tables or columns */
#define SHOW_VERSION "8.2"
#define SHOW_VERSION "8.3"
#include <global.h>
#include <my_sys.h>
......@@ -30,6 +30,7 @@
static my_string host=0,opt_password=0,user=0;
static my_bool opt_show_keys=0,opt_compress=0,opt_status=0;
static uint opt_verbose=0;
static void get_options(int *argc,char ***argv);
static uint opt_mysql_port=0;
......@@ -140,6 +141,7 @@ static struct option long_options[] =
#ifndef DONT_ALLOW_USER_CHANGE
{"user", required_argument, 0, 'u'},
#endif
{"verbose", no_argument, 0, 'v'},
{"version", no_argument, 0, 'V'},
{0, 0, 0, 0}
};
......@@ -181,6 +183,8 @@ static void usage(void)
-u, --user=# user for login if not current user\n");
#endif
printf("\
-v, --verbose more verbose output; You can use this multiple times\n\
to get even more verbose output.\n\
-V, --version output version information and exit\n");
puts("\n\
......@@ -200,7 +204,7 @@ get_options(int *argc,char ***argv)
int c,option_index;
my_bool tty_password=0;
while ((c=getopt_long(*argc,*argv,"c:h:p::u:#::P:S:Ck?VWi",long_options,
while ((c=getopt_long(*argc,*argv,"c:h:p::u:#::P:S:Ck?vVWi",long_options,
&option_index)) != EOF)
{
switch(c) {
......@@ -210,6 +214,9 @@ get_options(int *argc,char ***argv)
case 'c':
charsets_dir= optarg;
break;
case 'v':
opt_verbose++;
break;
case 'h':
host = optarg;
break;
......@@ -277,10 +284,13 @@ static int
list_dbs(MYSQL *mysql,const char *wild)
{
const char *header;
uint length;
uint length, counter = 0;
ulong rowcount = 0L;
char tables[NAME_LEN+1], rows[NAME_LEN+1];
char query[255];
MYSQL_FIELD *field;
MYSQL_RES *result;
MYSQL_ROW row;
MYSQL_ROW row, trow, rrow;
if (!(result=mysql_list_dbs(mysql,wild)))
{
......@@ -297,10 +307,79 @@ list_dbs(MYSQL *mysql,const char *wild)
if (length < field->max_length)
length=field->max_length;
if (!opt_verbose)
print_header(header,length,NullS);
else if (opt_verbose == 1)
print_header(header,length,"Tables",6,NullS);
else
print_header(header,length,"Tables",6,"Total Rows",12,NullS);
while ((row = mysql_fetch_row(result)))
{
counter++;
if (opt_verbose)
{
/*
* Original code by MG16373; Slightly modified by Monty.
* Print now the count of tables and rows for each database.
*/
if (!(mysql_select_db(mysql,row[0])))
{
MYSQL_RES *tresult = mysql_list_tables(mysql,(char*)NULL);
if (mysql_affected_rows(mysql) > 0)
{
sprintf(tables,"%6lu",(ulong) mysql_affected_rows(mysql));
rowcount = 0;
if (opt_verbose > 1)
{
while ((trow = mysql_fetch_row(tresult)))
{
sprintf(query,"SELECT COUNT(*) FROM `%s`",trow[0]);
if (!(mysql_query(mysql,query)))
{
MYSQL_RES *rresult;
if ((rresult = mysql_store_result(mysql)))
{
rrow = mysql_fetch_row(rresult);
rowcount += (ulong) strtoull(rrow[0], (char**) 0, 10);
mysql_free_result(rresult);
}
}
}
sprintf(rows,"%12lu",rowcount);
}
}
else
{
sprintf(tables,"%6d",0);
sprintf(rows,"%12d",0);
}
mysql_free_result(tresult);
}
else
{
strmov(tables,"N/A");
strmov(rows,"N/A");
}
}
if (!opt_verbose)
print_row(row[0],length,0);
print_trailer(length,0);
else if (opt_verbose == 1)
print_row(row[0],length,tables,6,NullS);
else
print_row(row[0],length,tables,6,rows,12,NullS);
}
print_trailer(length,
(opt_verbose > 0 ? 6 : 0),
(opt_verbose > 1 ? 12 :0),
0);
if (counter && opt_verbose)
printf("%u row%s in set.\n",counter,(counter > 1) ? "s" : "");
mysql_free_result(result);
return 0;
}
......@@ -310,10 +389,11 @@ static int
list_tables(MYSQL *mysql,const char *db,const char *table)
{
const char *header;
uint head_length;
uint head_length, counter = 0;
char query[255], rows[64], fields[16];
MYSQL_FIELD *field;
MYSQL_RES *result;
MYSQL_ROW row;
MYSQL_ROW row, rrow;
if (mysql_select_db(mysql,db))
{
......@@ -338,14 +418,81 @@ list_tables(MYSQL *mysql,const char *db,const char *table)
if (head_length < field->max_length)
head_length=field->max_length;
if (!opt_verbose)
print_header(header,head_length,NullS);
else if (opt_verbose == 1)
print_header(header,head_length,"Columns",8,NullS);
else
print_header(header,head_length,"Columns",8, "Total Rows",10,NullS);
while ((row = mysql_fetch_row(result)))
print_row(row[0],head_length,0);
print_trailer(head_length,0);
{
/*
* Modified by MG16373
* Print now the count of rows for each table.
*/
counter++;
if (opt_verbose > 0)
{
if (!(mysql_select_db(mysql,db)))
{
MYSQL_RES *rresult = mysql_list_fields(mysql,row[0],NULL);
ulong rowcount=0L;
if (!rresult)
{
strmov(fields,"N/A");
strmov(rows,"N/A");
}
else
{
sprintf(fields,"%8u",(uint) mysql_num_fields(rresult));
mysql_free_result(rresult);
if (opt_verbose > 1)
{
sprintf(query,"SELECT COUNT(*) FROM `%s`",row[0]);
if (!(mysql_query(mysql,query)))
{
if ((rresult = mysql_store_result(mysql)))
{
rrow = mysql_fetch_row(rresult);
rowcount += (unsigned long) strtoull(rrow[0], (char**) 0, 10);
mysql_free_result(rresult);
}
sprintf(rows,"%10lu",rowcount);
}
else
sprintf(rows,"%10d",0);
}
}
}
else
{
strmov(fields,"N/A");
strmov(rows,"N/A");
}
}
if (!opt_verbose)
print_row(row[0],head_length,NullS);
else if (opt_verbose == 1)
print_row(row[0],head_length, fields,8, NullS);
else
print_row(row[0],head_length, fields,8, rows,10, NullS);
}
print_trailer(head_length,
(opt_verbose > 0 ? 8 : 0),
(opt_verbose > 1 ? 10 :0),
0);
if (counter && opt_verbose)
printf("%u row%s in set.\n\n",counter,(counter > 1) ? "s" : "");
mysql_free_result(result);
return 0;
}
static int
list_table_status(MYSQL *mysql,const char *db,const char *wild)
{
......
......@@ -4,7 +4,7 @@ dnl Process this file with autoconf to produce a configure script.
AC_INIT(sql/mysqld.cc)
AC_CANONICAL_SYSTEM
# The Docs Makefile.am parses this line!
AM_INIT_AUTOMAKE(mysql, 3.23.39)
AM_INIT_AUTOMAKE(mysql, 3.23.39a)
AM_CONFIG_HEADER(config.h)
PROTOCOL_VERSION=10
......
......@@ -31,7 +31,8 @@ struct mem_area_struct{
};
/* Each memory area takes this many extra bytes for control information */
#define MEM_AREA_EXTRA_SIZE (sizeof(struct mem_area_struct))
#define MEM_AREA_EXTRA_SIZE (ut_calc_align(sizeof(struct mem_area_struct),\
UNIV_MEM_ALIGNMENT))
/************************************************************************
Creates a memory pool. */
......
......@@ -171,10 +171,10 @@ page_cur_search(
ut_ad(dtuple_check_typed(tuple));
page_cur_search_with_match(page, tuple, mode,
&low_matched_fields,
&low_matched_bytes,
&up_matched_fields,
&up_matched_bytes,
&low_matched_fields,
&low_matched_bytes,
cursor);
return(low_matched_fields);
}
......
......@@ -2207,7 +2207,7 @@ row_sel_get_clust_rec_for_mysql(
visit through secondary index records that would not really
exist in our snapshot. */
if ((old_vers || rec_get_deleted_flag(rec))
if (clust_rec && (old_vers || rec_get_deleted_flag(rec))
&& !row_sel_sec_rec_is_for_clust_rec(rec, sec_index,
clust_rec, clust_index)) {
clust_rec = NULL;
......
......@@ -176,7 +176,7 @@ trx_rollback_all_without_sess(void)
if (UT_LIST_GET_FIRST(trx_sys->trx_list)) {
fprintf(stderr,
"Innobase: Starting rollback of uncommitted transactions\n");
"InnoDB: Starting rollback of uncommitted transactions\n");
} else {
return;
}
......@@ -196,7 +196,7 @@ loop:
if (trx == NULL) {
fprintf(stderr,
"Innobase: Rollback of uncommitted transactions completed\n");
"InnoDB: Rollback of uncommitted transactions completed\n");
mem_heap_free(heap);
......@@ -221,7 +221,7 @@ loop:
ut_a(thr == que_fork_start_command(fork, SESS_COMM_EXECUTE, 0));
fprintf(stderr, "Innobase: Rolling back trx no %lu\n",
fprintf(stderr, "InnoDB: Rolling back trx no %lu\n",
ut_dulint_get_low(trx->id));
mutex_exit(&kernel_mutex);
......@@ -238,7 +238,7 @@ loop:
mutex_exit(&kernel_mutex);
fprintf(stderr,
"Innobase: Waiting rollback of trx no %lu to end\n",
"InnoDB: Waiting rollback of trx no %lu to end\n",
ut_dulint_get_low(trx->id));
os_thread_sleep(100000);
......@@ -264,7 +264,7 @@ loop:
mutex_exit(&(dict_sys->mutex));
}
fprintf(stderr, "Innobase: Rolling back of trx no %lu completed\n",
fprintf(stderr, "InnoDB: Rolling back of trx no %lu completed\n",
ut_dulint_get_low(trx->id));
mem_heap_free(heap);
......
......@@ -198,7 +198,7 @@ trx_sys_init_at_db_start(void)
if (UT_LIST_GET_LEN(trx_sys->trx_list) > 0) {
fprintf(stderr,
"Innobase: %lu uncommitted transaction(s) which must be rolled back\n",
"InnoDB: %lu uncommitted transaction(s) which must be rolled back\n",
UT_LIST_GET_LEN(trx_sys->trx_list));
}
......
......@@ -954,7 +954,7 @@ static int _nisam_cmp_buffer(File file, const byte *buff, ulong filepos, uint le
{
if (my_read(file,temp_buff,next_length,MYF(MY_NABP)))
goto err;
if (memcmp((byte*) buff,temp_buff,IO_SIZE))
if (memcmp((byte*) buff,temp_buff,next_length))
DBUG_RETURN(1);
buff+=next_length;
length-= next_length;
......
......@@ -1221,20 +1221,19 @@ static int _mi_cmp_buffer(File file, const byte *buff, my_off_t filepos,
char temp_buff[IO_SIZE*2];
DBUG_ENTER("_mi_cmp_buffer");
VOID(my_seek(file,filepos,MY_SEEK_SET,MYF(0)));
next_length= IO_SIZE*2 - (uint) (filepos & (IO_SIZE-1));
while (length > IO_SIZE*2)
{
if (my_read(file,temp_buff,next_length,MYF(MY_NABP)))
if (my_pread(file,temp_buff,next_length,filepos, MYF(MY_NABP)) ||
memcmp((byte*) buff,temp_buff,next_length))
goto err;
if (memcmp((byte*) buff,temp_buff,IO_SIZE))
DBUG_RETURN(1);
filepos+=next_length;
buff+=next_length;
length-= next_length;
next_length=IO_SIZE*2;
}
if (my_read(file,temp_buff,length,MYF(MY_NABP)))
if (my_pread(file,temp_buff,length,filepos,MYF(MY_NABP)))
goto err;
DBUG_RETURN(memcmp((byte*) buff,temp_buff,length));
err:
......
......@@ -1010,7 +1010,7 @@ uint _mi_pack_get_block_info(MI_INFO *myisam, MI_BLOCK_INFO *info, File file,
{
ref_length=myisam->s->pack.ref_length;
/*
We can't use my_pread() here because mi_rad_pack_record assumes
We can't use my_pread() here because mi_read_rnd_pack_record assumes
position is ok
*/
VOID(my_seek(file,filepos,MY_SEEK_SET,MYF(0)));
......
......@@ -143,6 +143,11 @@ while test $# -gt 0; do
EXTRA_MYSQL_TEST_OPT="$EXTRA_MYSQL_TEST_OPT $1"
SLEEP_TIME=`$ECHO "$1" | $SED -e "s;--sleep=;;"`
;;
--mysqld=*)
TMP=`$ECHO "$1" | $SED -e "s;--mysqld=;;"`
EXTRA_MASTER_MYSQLD_OPT="$EXTRA_MASTER_MYSQLD_OPT $TMP"
EXTRA_SLAVE_MYSQLD_OPT="$EXTRA_SLAVE_MYSQLD_OPT $TMP"
;;
--gcov )
if [ x$BINARY_DIST = x1 ] ; then
$ECHO "Cannot do coverage test without the source - please use source dist"
......@@ -158,12 +163,16 @@ while test $# -gt 0; do
$ECHO "Note: you will get more meaningful output on a source distribution compiled with debugging option when running tests with -gdb option"
fi
DO_GDB=1
USE_RUNNING_SERVER=""
EXTRA_MASTER_MYSQLD_OPT="$EXTRA_MASTER_MYSQLD_OPT --skip-stack"
;;
--ddd )
if [ x$BINARY_DIST = x1 ] ; then
$ECHO "Note: you will get more meaningful output on a source distribution compiled with debugging option when running tests with -gdb option"
fi
DO_DDD=1
EXTRA_MASTER_MYSQLD_OPT="$EXTRA_MASTER_MYSQLD_OPT --skip-stack"
USE_RUNNING_SERVER=""
;;
--skip-*)
EXTRA_MASTER_MYSQLD_OPT="$EXTRA_MASTER_MYSQLD_OPT $1"
......@@ -430,12 +439,10 @@ start_master()
--server-id=1 \
--basedir=$MY_BASEDIR \
--port=$MASTER_MYPORT \
--exit-info=256 \
--datadir=$MASTER_MYDDIR \
--pid-file=$MASTER_MYPID \
--socket=$MASTER_MYSOCK \
--log=$MASTER_MYLOG --default-character-set=latin1 \
--core \
--tmpdir=$MYSQL_TMP_DIR \
--language=english \
--innodb_data_file_path=ibdata1:50M \
......
......@@ -27,3 +27,8 @@ n
12
Table Op Msg_type Msg_text
test.t1 optimize status OK
i
1
2
3
4
Table Op Msg_type Msg_text
test.t1 check status OK
......@@ -8,3 +8,7 @@ b
1 10000000001
a$1 $b c$
1 2 3
table type possible_keys key key_len ref rows Extra
t2 ref B B 21 const 1 where used
a B
3 world
@test @`select` @TEST @not_used
1 2 3 NULL
@test_int @test_double @test_string @test_string2 @select
10 0.00 abcdeghi abcdefghij NULL
10 1e-10 abcdeghi abcdefghij NULL
@test_int @test_double @test_string @test_string2
hello hello hello hello
@test_int @test_double @test_string @test_string2
......@@ -10,3 +10,5 @@ hellohello hellohello hellohello hellohello
NULL NULL NULL NULL
@t1:=(@t2:=1)+@t3:=4 @t1 @t2 @t3
5 5 1 4
@t5
1.23456
......@@ -71,3 +71,14 @@ ALTER TABLE t1 ADD Column new_col int not null;
UNLOCK TABLES;
OPTIMIZE TABLE t1;
DROP TABLE t1;
#
# Drop and add an auto_increment column
#
create table t1 (i int unsigned not null auto_increment primary key);
insert into t1 values (null),(null),(null),(null);
alter table t1 drop i,add i int unsigned not null auto_increment, drop primary key, add primary key (i);
select * from t1;
drop table t1;
connect (con1,localhost,root,,);
connect (con2,localhost,root,,);
connection con1;
drop table if exists t1;
#add a lot of keys to slow down check
create table t1(n int not null, key(n), key(n), key(n), key(n));
let $1=10000;
while ($1)
{
eval insert into t1 values ($1);
dec $1;
}
send check table t1 type=extended;
connection con2;
insert into t1 values (200000);
connection con1;
reap;
drop table t1;
......@@ -2,6 +2,7 @@
# Bug when using comparions of strings and integers.
#
drop table if exists t1;
CREATE TABLE t1 (id CHAR(12) not null, PRIMARY KEY (id));
insert into t1 values ('000000000001'),('000000000002');
explain select * from t1 where id=000000000001;
......
......@@ -2,6 +2,7 @@
# Check some special create statements.
#
drop table if exists t1,t2;
create table t1 (b char(0));
insert into t1 values (""),(null);
select * from t1;
......@@ -57,3 +58,14 @@ select a$1, $b, c$ from test_$1.$test1;
create table test_$1.test2$ (a int);
drop table test_$1.test2$;
drop database test_$1;
#
# Test of CREATE ... SELECT with indexes
#
create table t1 (a int auto_increment not null primary key, B CHAR(20));
insert into t1 (b) values ("hello"),("my"),("world");
create table t2 (key (b)) select * from t1;
explain select * from t2 where b="world";
select * from t2 where b="world";
drop table t1,t2;
#
# test variables
#
set @`test`=1,@TEST=3,@select=2;
set @`test`=1,@TEST=3,@select=2,@t5=1.23456;
select @test,@`select`,@TEST,@not_used;
set @test_int=10,@test_double=1e-10,@test_string="abcdeghi",@test_string2="abcdefghij",@select=NULL;
select @test_int,@test_double,@test_string,@test_string2,@select;
......@@ -12,3 +12,5 @@ select @test_int,@test_double,@test_string,@test_string2;
set @test_int=null,@test_double=null,@test_string=null,@test_string2=null;
select @test_int,@test_double,@test_string,@test_string2;
select @t1:=(@t2:=1)+@t3:=4,@t1,@t2,@t3;
select @t5;
......@@ -69,7 +69,7 @@ uint my_pread(File Filedes, byte *Buffer, uint Count, my_off_t offset,
DBUG_RETURN(MY_FILE_ERROR); /* Return with error */
}
if (MyFlags & (MY_NABP | MY_FNABP))
DBUG_RETURN(0); /* Ok vid l{sning */
DBUG_RETURN(0); /* Read went ok; Return 0 */
DBUG_RETURN(readbytes); /* purecov: inspected */
}
} /* my_pread */
......
......@@ -11,30 +11,29 @@ export machine system version
SOURCE=`pwd`
CP="cp -p"
# Debug option must come first
STRIP=1
DEBUG=0
if test x$1 = x"--debug"
then
DEBUG=1
shift 1
fi
# Save temporary distribution here (must be full path)
SILENT=0
TMP=/tmp
if test $# -gt 0
then
TMP=$1
shift 1
fi
# Get optional suffix for distribution
SUFFIX=""
if test $# -gt 0
then
SUFFIX=$1
shift 1
fi
parse_arguments() {
for arg do
case "$arg" in
--debug) DEBUG=1;;
--tmp=*) TMP=`echo "$arg" | sed -e "s;--tmp=;;"` ;;
--suffix=*) SUFFIX=`echo "$arg" | sed -e "s;--suffix=;;"` ;;
--no-strip) STRIP=0 ;;
--silent) SILENT=1 ;;
*)
echo "Unknown argument '$arg'"
exit 1
;;
esac
done
}
parse_arguments "$@"
#make
......@@ -68,14 +67,18 @@ for i in extra/comp_err extra/replace extra/perror extra/resolveip \
client/mysql sql/mysqld client/mysqlshow client/mysqlcheck \
client/mysqladmin client/mysqldump client/mysqlimport client/mysqltest \
client/.libs/mysql client/.libs/mysqlshow client/.libs/mysqladmin \
client/.libs/mysqldump client/.libs/mysqlimport client/.libs/mysqltest
client/.libs/mysqldump client/.libs/mysqlimport client/.libs/mysqltest \
client/.libs/mysqlcheck
do
if [ -f $i ]
then
$CP $i $BASE/bin
fi
done
strip $BASE/bin/*
if [ x$STRIP = x1 ] ; then
strip $BASE/bin/*
fi
for i in sql/mysqld.sym.gz
do
......@@ -190,7 +193,13 @@ fi
echo "Using $tar to create archive"
cd $TMP
$tar cvf $SOURCE/$NEW_NAME.tar $NEW_NAME
OPT=cvf
if [ x$SILENT = x1 ] ; then
OPT=cf
fi
$tar $OPT $SOURCE/$NEW_NAME.tar $NEW_NAME
cd $SOURCE
echo "Compressing archive"
gzip -9 $NEW_NAME.tar
......
# This file describes how to run MySQL benchmarks with PostgreSQL
# This file describes how to run MySQL benchmark suite with PostgreSQL
#
# WARNING:
#
# Don't run the --fast test on a PostgreSQL 7.1.1 database on
# which you have any critical data; During one of our test runs
# PostgreSQL got a corrupted database and all data was destroyed!
# (When we tried to restart postmaster, It died with a
# When we tried to restart postmaster, It died with a
# 'no such file or directory' error and never recovered from that!
#
# Another time vacuum() filled our system disk with had 6G free
# while vaccuming a table of 60 M.
#
# We have sent a mail about this to the PostgreSQL mailing list, so
# the PostgreSQL developers should be aware of these problems and should
# hopefully fix this soon.
#
# WARNING
# The test was run on a Intel Xeon 2x 550 Mzh machine with 1G memory,
# 9G hard disk. The OS is Suse 6.4, with Linux 2.2.14 compiled with SMP
# 9G hard disk. The OS is Suse 7.1, with Linux 2.4.0 compiled with SMP
# support
# Both the perl client and the database server is run
# on the same machine. No other cpu intensive process was used during
......@@ -73,8 +80,15 @@ make install
run-all-tests --comment="Intel Xeon, 2x550 Mhz, 512M, pg started with -o -F" --user=postgres --server=pg --cmp=mysql
# and a test where we do a vacuum() after each update.
# (The time for vacuum() is counted in the book-keeping() column)
# When running with --fast we run the following vacuum commands on
# the database between each major update of the tables:
# vacuum table
# or
# vacuum analyze
# vacuum
# The time for vacuum() is accounted for in the book-keeping() column, not
# in the test that updates the database.
run-all-tests --comment="Intel Xeon, 2x550 Mhz, 512M, pg started with -o -F" --user=postgres --server=pg --cmp=mysql --fast
......
......@@ -21,7 +21,7 @@ benchdir_root= $(prefix)
benchdir = $(benchdir_root)/sql-bench
bench_SCRIPTS = test-ATIS test-connect test-create test-insert \
test-big-tables test-select test-wisconsin \
test-alter-table \
test-alter-table graph-compare-results \
bench-init.pl compare-results run-all-tests \
server-cfg crash-me copy-db
CLEANFILES = $(bench_SCRIPTS)
......@@ -29,7 +29,8 @@ EXTRA_SCRIPTS = test-ATIS.sh test-connect.sh test-create.sh \
test-insert.sh test-big-tables.sh test-select.sh \
test-alter-table.sh test-wisconsin.sh \
bench-init.pl.sh compare-results.sh server-cfg.sh \
run-all-tests.sh crash-me.sh copy-db.sh
run-all-tests.sh crash-me.sh copy-db.sh \
graph-compare-results.sh
EXTRA_DIST = $(EXTRA_SCRIPTS)
dist-hook:
......
......@@ -11,7 +11,7 @@ In this directory are the queries and raw data files used to populate
the MySQL benchmarks. In order to run the benchmarks you should normally
execute a command like the following:
run-all-tests --server=msyql --cmp=mysql,pg,solid --user=test --password=test --log
run-all-tests --server=mysql --cmp=mysql,pg,solid --user=test --password=test --log
The above means that one wants to run the benchmark with MySQL. The limits
should be taken from all of mysql,PostgreSQL and Solid. Login name and
......
Testing server 'MySQL 3.23.22 beta' at 2000-08-17 17:46:54
ATIS table test
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): 2 wallclock secs ( 0.49 usr 0.34 sys + 0.00 cusr 0.00 csys = 0.00 CPU)
Retrieving data
Time for select_simple_join (500): 2 wallclock secs ( 0.63 usr 0.32 sys + 0.00 cusr 0.00 csys = 0.00 CPU)
Time for select_join (200): 15 wallclock secs ( 4.21 usr 2.20 sys + 0.00 cusr 0.00 csys = 0.00 CPU)
Time for select_distinct (800): 12 wallclock secs ( 1.70 usr 0.68 sys + 0.00 cusr 0.00 csys = 0.00 CPU)
Time for select_group (2600): 12 wallclock secs ( 1.43 usr 0.39 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: 43 wallclock secs ( 8.46 usr 3.93 sys + 0.00 cusr 0.00 csys = 0.00 CPU)
Testing server 'MySQL 3.23.39' at 2001-06-05 19:26:17
ATIS table test
Creating tables
Time for create_table (28): 0 wallclock secs ( 0.01 usr 0.00 sys + 0.00 cusr 0.00 csys = 0.01 CPU)
Inserting data
Time to insert (9768): 3 wallclock secs ( 0.45 usr 0.44 sys + 0.00 cusr 0.00 csys = 0.89 CPU)
Retrieving data
Time for select_simple_join (500): 3 wallclock secs ( 0.68 usr 0.19 sys + 0.00 cusr 0.00 csys = 0.87 CPU)
Time for select_join (100): 3 wallclock secs ( 0.51 usr 0.20 sys + 0.00 cusr 0.00 csys = 0.71 CPU)
Time for select_key_prefix_join (100): 13 wallclock secs ( 4.08 usr 2.01 sys + 0.00 cusr 0.00 csys = 6.09 CPU)
Time for select_distinct (800): 15 wallclock secs ( 1.75 usr 0.69 sys + 0.00 cusr 0.00 csys = 2.44 CPU)
Time for select_group (2600): 20 wallclock secs ( 1.57 usr 0.41 sys + 0.00 cusr 0.00 csys = 1.98 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: 57 wallclock secs ( 9.06 usr 3.94 sys + 0.00 cusr 0.00 csys = 13.00 CPU)
Testing server 'MySQL 3.23.22 beta' at 2000-08-17 19:10:55
ATIS table test
Creating tables
Time for create_table (28): 1 wallclock secs ( 0.00 usr 0.00 sys + 0.00 cusr 0.00 csys = 0.00 CPU)
Inserting data
Time to insert (9768): 0 wallclock secs ( 0.00 usr 0.00 sys + 0.00 cusr 0.00 csys = 0.00 CPU)
Retrieving data
Time for select_simple_join (500): 1 wallclock secs ( 0.64 usr 0.24 sys + 0.00 cusr 0.00 csys = 0.00 CPU)
Time for select_join (200): 16 wallclock secs ( 4.21 usr 2.17 sys + 0.00 cusr 0.00 csys = 0.00 CPU)
Time for select_distinct (800): 11 wallclock secs ( 1.74 usr 0.60 sys + 0.00 cusr 0.00 csys = 0.00 CPU)
Time for select_group (2600): 13 wallclock secs ( 1.34 usr 0.63 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: 42 wallclock secs ( 7.93 usr 3.64 sys + 0.00 cusr 0.00 csys = 0.00 CPU)
Testing server 'PostgreSQL version ???' at 2000-12-05 5:18:45
ATIS table test
Creating tables
Time for create_table (28): 0 wallclock secs ( 0.02 usr 0.01 sys + 0.00 cusr 0.00 csys = 0.00 CPU)
Inserting data
Time to insert (9768): 9 wallclock secs ( 2.88 usr 0.35 sys + 0.00 cusr 0.00 csys = 0.00 CPU)
Retrieving data
Time for select_simple_join (500): 3 wallclock secs ( 0.69 usr 0.04 sys + 0.00 cusr 0.00 csys = 0.00 CPU)
Time for select_join (200): 14 wallclock secs ( 5.18 usr 0.20 sys + 0.00 cusr 0.00 csys = 0.00 CPU)
Time for select_distinct (800): 17 wallclock secs ( 2.21 usr 0.07 sys + 0.00 cusr 0.00 csys = 0.00 CPU)
Time for select_group (2600): 45 wallclock secs ( 1.73 usr 0.10 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: 89 wallclock secs (12.72 usr 0.77 sys + 0.00 cusr 0.00 csys = 0.00 CPU)
Testing server 'PostgreSQL version ???' at 2001-06-03 4:40:22
ATIS table test
Creating tables
Time for create_table (28): 0 wallclock secs ( 0.01 usr 0.00 sys + 0.00 cusr 0.00 csys = 0.01 CPU)
Inserting data
Time to insert (9768): 8 wallclock secs ( 2.97 usr 0.28 sys + 0.00 cusr 0.00 csys = 3.25 CPU)
Retrieving data
Time for select_simple_join (500): 3 wallclock secs ( 0.74 usr 0.03 sys + 0.00 cusr 0.00 csys = 0.77 CPU)
Time for select_join (100): 4 wallclock secs ( 0.52 usr 0.13 sys + 0.00 cusr 0.00 csys = 0.65 CPU)
Time for select_key_prefix_join (100): 11 wallclock secs ( 4.30 usr 0.16 sys + 0.00 cusr 0.00 csys = 4.46 CPU)
Time for select_distinct (800): 22 wallclock secs ( 1.95 usr 0.18 sys + 0.00 cusr 0.00 csys = 2.13 CPU)
Time for select_group (2600): 52 wallclock secs ( 1.43 usr 0.19 sys + 0.00 cusr 0.00 csys = 1.62 CPU)
Removing tables
Time to drop_table (28): 1 wallclock secs ( 0.01 usr 0.00 sys + 0.00 cusr 0.00 csys = 0.01 CPU)
Total time: 101 wallclock secs (11.93 usr 0.98 sys + 0.00 cusr 0.00 csys = 12.91 CPU)
Testing server 'PostgreSQL version 7.1.2' at 2001-06-12 1:14:34
ATIS table test
Creating tables
Time for create_table (28): 0 wallclock secs ( 0.05 usr 0.00 sys + 0.00 cusr 0.00 csys = 0.05 CPU)
Inserting data
Time to insert (9768): 8 wallclock secs ( 2.78 usr 0.51 sys + 0.00 cusr 0.00 csys = 3.29 CPU)
Retrieving data
Time for select_simple_join (500): 3 wallclock secs ( 0.73 usr 0.10 sys + 0.00 cusr 0.00 csys = 0.83 CPU)
Time for select_join (100): 4 wallclock secs ( 0.67 usr 0.09 sys + 0.00 cusr 0.00 csys = 0.76 CPU)
Time for select_key_prefix_join (100): 12 wallclock secs ( 4.43 usr 0.15 sys + 0.00 cusr 0.00 csys = 4.58 CPU)
Time for select_distinct (800): 22 wallclock secs ( 2.10 usr 0.26 sys + 0.00 cusr 0.00 csys = 2.36 CPU)
Time for select_group (2600): 55 wallclock secs ( 1.75 usr 0.06 sys + 0.00 cusr 0.00 csys = 1.81 CPU)
Removing tables
Time to drop_table (28): 0 wallclock secs ( 0.02 usr 0.00 sys + 0.00 cusr 0.00 csys = 0.02 CPU)
Total time: 104 wallclock secs (12.54 usr 1.17 sys + 0.00 cusr 0.00 csys = 13.71 CPU)
Testing server 'PostgreSQL version 7.0.2' at 2000-08-17 3:08:29
Testing server 'PostgreSQL version 7.1.2' at 2001-06-11 17:53:03
ATIS table test
Creating tables
Time for create_table (28): 1 wallclock secs ( 0.01 usr 0.00 sys + 0.00 cusr 0.00 csys = 0.00 CPU)
Time for create_table (28): 1 wallclock secs ( 0.03 usr 0.00 sys + 0.00 cusr 0.00 csys = 0.03 CPU)
NOTICE: Vacuum: table not found
Time for book-keeping (1): 1 wallclock secs ( 0.00 usr 0.00 sys + 0.00 cusr 0.00 csys = 0.00 CPU)
Inserting data
Time to insert (9768): 9 wallclock secs ( 2.85 usr 0.37 sys + 0.00 cusr 0.00 csys = 0.00 CPU)
Time to insert (9768): 8 wallclock secs ( 2.90 usr 0.28 sys + 0.00 cusr 0.00 csys = 3.18 CPU)
NOTICE: Vacuum: table not found
Time for book-keeping (1): 1 wallclock secs ( 0.00 usr 0.01 sys + 0.00 cusr 0.00 csys = 0.00 CPU)
Time for book-keeping (1): 0 wallclock secs ( 0.00 usr 0.00 sys + 0.00 cusr 0.00 csys = 0.00 CPU)
Retrieving data
Time for select_simple_join (500): 3 wallclock secs ( 0.79 usr 0.07 sys + 0.00 cusr 0.00 csys = 0.00 CPU)
Time for select_join (200): 13 wallclock secs ( 4.77 usr 0.26 sys + 0.00 cusr 0.00 csys = 0.00 CPU)
Time for select_distinct (800): 17 wallclock secs ( 2.06 usr 0.13 sys + 0.00 cusr 0.00 csys = 0.00 CPU)
Time for select_group (2600): 41 wallclock secs ( 1.51 usr 0.15 sys + 0.00 cusr 0.00 csys = 0.00 CPU)
Time for select_simple_join (500): 4 wallclock secs ( 0.71 usr 0.18 sys + 0.00 cusr 0.00 csys = 0.89 CPU)
Time for select_join (100): 4 wallclock secs ( 0.59 usr 0.10 sys + 0.00 cusr 0.00 csys = 0.69 CPU)
Time for select_key_prefix_join (100): 12 wallclock secs ( 4.47 usr 0.12 sys + 0.00 cusr 0.00 csys = 4.59 CPU)
Time for select_distinct (800): 23 wallclock secs ( 1.91 usr 0.34 sys + 0.00 cusr 0.00 csys = 2.25 CPU)
Time for select_group (2600): 51 wallclock secs ( 1.48 usr 0.12 sys + 0.00 cusr 0.00 csys = 1.60 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)
NOTICE: Vacuum: table not found
Time for book-keeping (1): 1 wallclock secs ( 0.00 usr 0.00 sys + 0.00 cusr 0.00 csys = 0.00 CPU)
Total time: 87 wallclock secs (12.00 usr 0.99 sys + 0.00 cusr 0.00 csys = 0.00 CPU)
Total time: 105 wallclock secs (12.13 usr 1.14 sys + 0.00 cusr 0.00 csys = 13.27 CPU)
Benchmark DBD suite: 2.9
Date of test: 2000-08-17 19:09:48
Running tests on: Linux 2.2.14-my-SMP i686
Arguments:
Comments: Intel Xeon, 2x550 Mhz, 1G ram, key_buffer=16M
Limits from: mysql,pg
Server version: MySQL 3.23.22 beta
ATIS: Total time: 43 wallclock secs ( 8.46 usr 3.93 sys + 0.00 cusr 0.00 csys = 0.00 CPU)
alter-table: Total time: 260 wallclock secs ( 0.27 usr 0.09 sys + 0.00 cusr 0.00 csys = 0.00 CPU)
big-tables: Total time: 30 wallclock secs ( 8.19 usr 6.74 sys + 0.00 cusr 0.00 csys = 0.00 CPU)
connect: Total time: 53 wallclock secs (26.25 usr 9.76 sys + 0.00 cusr 0.00 csys = 0.00 CPU)
create: Total time: 121 wallclock secs ( 8.83 usr 3.14 sys + 0.00 cusr 0.00 csys = 0.00 CPU)
insert: Total time: 1592 wallclock secs (254.20 usr 98.51 sys + 0.00 cusr 0.00 csys = 0.00 CPU)
select: Total time: 1692 wallclock secs (111.29 usr 65.22 sys + 0.00 cusr 0.00 csys = 0.00 CPU)
wisconsin: Total time: 16 wallclock secs ( 2.87 usr 1.61 sys + 0.00 cusr 0.00 csys = 0.00 CPU)
All 8 test executed successfully
Totals per operation:
Operation seconds usr sys cpu tests
alter_table_add 252.00 0.20 0.02 0.00 992
connect 10.00 6.60 1.51 0.00 10000
connect+select_1_row 13.00 7.08 2.47 0.00 10000
connect+select_simple 13.00 7.36 2.24 0.00 10000
count 46.00 0.07 0.00 0.00 100
count_distinct 124.00 0.65 0.16 0.00 1000
count_distinct_big 623.00 69.07 56.00 0.00 1020
count_distinct_group 77.00 0.94 0.33 0.00 1000
count_distinct_group_on_key 64.00 0.37 0.07 0.00 1000
count_distinct_group_on_key_parts 77.00 0.93 0.45 0.00 1000
count_group_on_key_parts 61.00 1.09 0.27 0.00 1000
count_on_key 574.00 16.11 3.17 0.00 50100
create+drop 26.00 2.10 0.81 0.00 10000
create_MANY_tables 32.00 1.97 0.49 0.00 10000
create_index 4.00 0.00 0.00 0.00 8
create_key+drop 40.00 3.64 0.72 0.00 10000
create_table 0.00 0.00 0.00 0.00 31
delete_big 21.00 0.00 0.00 0.00 13
delete_big_many_keys 120.00 0.00 0.00 0.00 2
delete_key 4.00 0.50 0.47 0.00 10000
drop_index 4.00 0.00 0.00 0.00 8
drop_table 0.00 0.00 0.00 0.00 28
drop_table_when_MANY_tables 9.00 0.44 0.49 0.00 10000
insert 130.00 20.73 12.97 0.00 350768
insert_duplicates 113.00 18.31 11.27 0.00 300000
insert_key 159.00 8.91 4.08 0.00 100000
insert_many_fields 8.00 0.29 0.08 0.00 2000
min_max 31.00 0.03 0.00 0.00 60
min_max_on_key 213.00 25.00 4.86 0.00 85000
order_by 47.00 19.72 16.45 0.00 10
order_by_key 31.00 19.75 10.54 0.00 10
select_1_row 3.00 0.74 0.62 0.00 10000
select_2_rows 3.00 0.45 0.58 0.00 10000
select_big 37.00 23.09 11.64 0.00 10080
select_column+column 3.00 0.52 0.59 0.00 10000
select_diff_key 210.00 0.28 0.07 0.00 500
select_distinct 12.00 1.70 0.68 0.00 800
select_group 70.00 1.49 0.40 0.00 2711
select_group_when_MANY_tables 14.00 0.68 0.63 0.00 10000
select_join 15.00 4.21 2.20 0.00 200
select_key 129.00 66.05 14.03 0.00 200000
select_key_prefix 130.00 67.36 13.74 0.00 200000
select_many_fields 22.00 7.89 6.66 0.00 2000
select_range 21.00 7.00 1.72 0.00 25420
select_range_prefix 18.00 6.07 1.50 0.00 25010
select_simple 2.00 0.52 0.49 0.00 10000
select_simple_join 2.00 0.63 0.32 0.00 500
update_big 65.00 0.01 0.00 0.00 500
update_of_key 25.00 2.51 2.23 0.00 500
update_of_key_big 33.00 0.06 0.00 0.00 501
update_of_primary_key_many_keys 67.00 0.00 0.01 0.00 256
update_with_key 109.00 13.71 11.48 0.00 100000
wisc_benchmark 4.00 1.75 0.68 0.00 114
TOTALS 3920.00 438.58 200.19 0.00 1594242
Benchmark DBD suite: 2.12
Date of test: 2001-06-05 19:27:31
Running tests on: Linux 2.4.0-64GB-SMP i686
Arguments:
Comments: Intel Xeon, 2x550 Mhz, 512M, key_buffer=16M
Limits from: mysql,pg
Server version: MySQL 3.23.39
ATIS: Total time: 57 wallclock secs ( 9.06 usr 3.94 sys + 0.00 cusr 0.00 csys = 13.00 CPU)
alter-table: Total time: 271 wallclock secs ( 0.18 usr 0.02 sys + 0.00 cusr 0.00 csys = 0.20 CPU)
big-tables: Total time: 33 wallclock secs ( 9.40 usr 7.64 sys + 0.00 cusr 0.00 csys = 17.04 CPU)
connect: Total time: 86 wallclock secs (33.98 usr 18.10 sys + 0.00 cusr 0.00 csys = 52.08 CPU)
create: Total time: 103 wallclock secs ( 7.83 usr 3.60 sys + 0.00 cusr 0.00 csys = 11.43 CPU)
insert: Total time: 2736 wallclock secs (661.21 usr 182.47 sys + 0.00 cusr 0.00 csys = 843.68 CPU)
select: Total time: 1949 wallclock secs (70.03 usr 16.42 sys + 0.00 cusr 0.00 csys = 86.45 CPU)
wisconsin: Total time: 19 wallclock secs ( 3.92 usr 1.70 sys + 0.00 cusr 0.00 csys = 5.62 CPU)
All 8 test executed successfully
Totals per operation:
Operation seconds usr sys cpu tests
alter_table_add 261.00 0.13 0.02 0.15 992
connect 16.00 6.84 2.50 9.34 10000
connect+select_1_row 15.00 7.11 3.70 10.81 10000
connect+select_simple 13.00 6.70 3.21 9.91 10000
count 45.00 0.01 0.00 0.01 100
count_distinct 60.00 0.42 0.08 0.50 1000
count_distinct_2 63.00 0.18 0.03 0.21 1000
count_distinct_big 165.00 7.78 3.16 10.94 120
count_distinct_group 194.00 1.21 0.37 1.58 1000
count_distinct_group_on_key 59.00 0.51 0.07 0.58 1000
count_distinct_group_on_key_parts 194.00 1.12 0.46 1.58 1000
count_distinct_key_prefix 51.00 0.45 0.08 0.53 1000
count_group_on_key_parts 58.00 1.16 0.35 1.51 1000
count_on_key 586.00 16.61 2.71 19.32 50100
create+drop 33.00 2.94 0.82 3.76 10000
create_MANY_tables 18.00 1.02 0.62 1.64 5000
create_index 5.00 0.00 0.00 0.00 8
create_key+drop 41.00 3.05 0.66 3.71 10000
create_table 0.00 0.01 0.00 0.01 31
delete_all 17.00 0.00 0.00 0.00 12
delete_all_many_keys 75.00 0.03 0.00 0.03 1
delete_big 1.00 0.00 0.00 0.00 1
delete_big_many_keys 75.00 0.03 0.00 0.03 128
delete_key 4.00 0.76 0.29 1.05 10000
drop_index 5.00 0.00 0.00 0.00 8
drop_table 0.00 0.00 0.00 0.00 28
drop_table_when_MANY_tables 6.00 0.37 0.63 1.00 5000
insert 144.00 24.06 14.28 38.34 350768
insert_duplicates 31.00 5.06 3.72 8.78 100000
insert_key 137.00 9.91 6.26 16.17 100000
insert_many_fields 10.00 0.54 0.08 0.62 2000
insert_select_1_key 7.00 0.00 0.00 0.00 1
insert_select_2_keys 9.00 0.00 0.00 0.00 1
min_max 30.00 0.04 0.01 0.05 60
min_max_on_key 230.00 28.28 4.43 32.71 85000
order_by_big 78.00 22.39 9.83 32.22 10
order_by_big_key 33.00 23.35 10.15 33.50 10
order_by_big_key2 32.00 22.53 9.81 32.34 10
order_by_big_key_desc 36.00 23.47 10.27 33.74 10
order_by_big_key_diff 74.00 22.66 9.76 32.42 10
order_by_big_key_prefix 33.00 22.18 9.81 31.99 10
order_by_key2_diff 9.00 1.30 0.85 2.15 500
order_by_key_prefix 4.00 0.97 0.57 1.54 500
order_by_range 8.00 1.26 0.49 1.75 500
outer_join 110.00 0.00 0.00 0.00 10
outer_join_found 107.00 0.00 0.00 0.00 10
outer_join_not_found 59.00 0.00 0.00 0.00 500
outer_join_on_key 60.00 0.00 0.00 0.00 10
select_1_row 3.00 0.81 0.69 1.50 10000
select_2_rows 3.00 0.67 0.63 1.30 10000
select_big 63.00 32.72 16.55 49.27 10080
select_column+column 4.00 0.52 0.46 0.98 10000
select_diff_key 193.00 0.32 0.04 0.36 500
select_distinct 15.00 1.75 0.69 2.44 800
select_group 75.00 1.59 0.45 2.04 2711
select_group_when_MANY_tables 5.00 0.43 0.87 1.30 5000
select_join 3.00 0.51 0.20 0.71 100
select_key 132.00 53.98 10.53 64.51 200000
select_key2 139.00 78.61 11.08 89.69 200000
select_key2_return_key 131.00 64.58 9.61 74.19 200000
select_key2_return_prim 134.00 72.33 11.34 83.67 200000
select_key_prefix 141.00 86.32 12.05 98.37 200000
select_key_prefix_join 13.00 4.08 2.01 6.09 100
select_key_return_key 125.00 59.92 12.00 71.92 200000
select_many_fields 23.00 8.85 7.55 16.40 2000
select_query_cache 120.00 3.67 0.53 4.20 10000
select_query_cache2 120.00 3.80 0.57 4.37 10000
select_range 201.00 9.05 3.95 13.00 410
select_range_key2 21.00 7.15 1.40 8.55 25010
select_range_prefix 22.00 6.55 1.40 7.95 25010
select_simple 2.00 0.54 0.49 1.03 10000
select_simple_join 3.00 0.68 0.19 0.87 500
update_big 64.00 0.00 0.00 0.00 10
update_of_key 25.00 2.62 1.44 4.06 50000
update_of_key_big 35.00 0.05 0.04 0.09 501
update_of_primary_key_many_keys 47.00 0.01 0.02 0.03 256
update_with_key 119.00 18.44 12.64 31.08 300000
update_with_key_prefix 36.00 6.23 3.85 10.08 100000
wisc_benchmark 5.00 2.33 0.52 2.85 114
TOTALS 5323.00 795.55 233.87 1029.42 2551551
Benchmark DBD suite: 2.9
Date of test: 2000-08-17 20:19:45
Running tests on: Linux 2.2.14-my-SMP i686
Arguments: --fast
Comments: Intel Xeon, 2x550 Mhz, 1G ram, key_buffer=16M
Limits from: mysql,pg
Server version: MySQL 3.23.22 beta
ATIS: Total time: 42 wallclock secs ( 7.93 usr 3.64 sys + 0.00 cusr 0.00 csys = 0.00 CPU)
alter-table: Total time: 260 wallclock secs ( 0.26 usr 0.13 sys + 0.00 cusr 0.00 csys = 0.00 CPU)
big-tables: Total time: 31 wallclock secs ( 8.32 usr 6.89 sys + 0.00 cusr 0.00 csys = 0.00 CPU)
connect: Total time: 54 wallclock secs (26.60 usr 10.48 sys + 0.00 cusr 0.00 csys = 0.00 CPU)
create: Total time: 122 wallclock secs ( 8.51 usr 3.01 sys + 0.00 cusr 0.00 csys = 0.00 CPU)
insert: Total time: 1332 wallclock secs (254.96 usr 103.83 sys + 0.00 cusr 0.00 csys = 0.00 CPU)
select: Total time: 1696 wallclock secs (113.17 usr 64.93 sys + 0.00 cusr 0.00 csys = 0.00 CPU)
wisconsin: Total time: 6 wallclock secs ( 1.67 usr 0.73 sys + 0.00 cusr 0.00 csys = 0.00 CPU)
All 8 test executed successfully
Totals per operation:
Operation seconds usr sys cpu tests
alter_table_add 252.00 0.20 0.10 0.00 992
connect 11.00 6.50 1.98 0.00 10000
connect+select_1_row 14.00 7.49 2.28 0.00 10000
connect+select_simple 12.00 7.41 2.24 0.00 10000
count 46.00 0.02 0.00 0.00 100
count_distinct 124.00 0.57 0.12 0.00 1000
count_distinct_big 629.00 70.62 55.60 0.00 1020
count_distinct_group 77.00 1.14 0.31 0.00 1000
count_distinct_group_on_key 65.00 0.35 0.14 0.00 1000
count_distinct_group_on_key_parts 77.00 1.07 0.35 0.00 1000
count_group_on_key_parts 61.00 1.03 0.31 0.00 1000
count_on_key 573.00 16.47 3.19 0.00 50100
create+drop 26.00 2.17 1.03 0.00 10000
create_MANY_tables 35.00 1.84 0.58 0.00 10000
create_index 4.00 0.00 0.00 0.00 8
create_key+drop 40.00 3.68 0.86 0.00 10000
create_table 1.00 0.01 0.00 0.00 31
delete_big 18.00 0.00 0.00 0.00 13
delete_big_many_keys 1.00 0.00 0.00 0.00 2
delete_key 3.00 0.44 0.38 0.00 10000
drop_index 4.00 0.00 0.00 0.00 8
drop_table 0.00 0.00 0.00 0.00 28
drop_table_when_MANY_tables 15.00 0.10 0.01 0.00 10000
insert 87.00 18.67 12.96 0.00 350768
insert_duplicates 82.00 17.82 12.50 0.00 300000
insert_key 91.00 8.12 4.12 0.00 100000
insert_many_fields 9.00 0.46 0.10 0.00 2000
min_max 32.00 0.05 0.00 0.00 60
min_max_on_key 210.00 24.91 5.21 0.00 85000
order_by 48.00 20.14 16.88 0.00 10
order_by_key 31.00 20.12 10.64 0.00 10
select_1_row 2.00 0.54 0.83 0.00 10000
select_2_rows 4.00 0.55 0.65 0.00 10000
select_big 37.00 23.14 12.09 0.00 10080
select_column+column 3.00 0.51 0.73 0.00 10000
select_diff_key 205.00 0.19 0.03 0.00 500
select_distinct 11.00 1.74 0.60 0.00 800
select_group 71.00 1.38 0.66 0.00 2711
select_group_when_MANY_tables 6.00 0.71 0.53 0.00 10000
select_join 16.00 4.21 2.17 0.00 200
select_key 125.00 67.84 14.15 0.00 200000
select_key_prefix 127.00 65.92 14.67 0.00 200000
select_many_fields 22.00 7.85 6.78 0.00 2000
select_range 20.00 7.27 1.62 0.00 25420
select_range_prefix 19.00 6.09 1.82 0.00 25010
select_simple 2.00 0.47 0.54 0.00 10000
select_simple_join 1.00 0.64 0.24 0.00 500
update_big 65.00 0.00 0.00 0.00 500
update_of_key 77.00 2.84 2.32 0.00 756
update_of_key_big 33.00 0.02 0.01 0.00 501
update_with_key 97.00 14.16 13.03 0.00 100000
wisc_benchmark 4.00 1.66 0.72 0.00 114
TOTALS 3625.00 439.13 206.08 0.00 1594242
Benchmark DBD suite: 2.10
Date of test: 2000-12-05 5:18:45
Running tests on: Linux 2.2.14-my-SMP i686
Arguments:
Comments: Intel Xeon, 2x550 Mhz 500 Mb, pg started with -o -F
Limits from: mysql,pg
Server version: PostgreSQL version ???
ATIS: Total time: 89 wallclock secs (12.72 usr 0.77 sys + 0.00 cusr 0.00 csys = 0.00 CPU)
alter-table: Total time: 29 wallclock secs ( 0.71 usr 0.09 sys + 0.00 cusr 0.00 csys = 0.00 CPU)
big-tables: Total time: 1248 wallclock secs ( 9.27 usr 0.79 sys + 0.00 cusr 0.00 csys = 0.00 CPU)
connect: Total time: 472 wallclock secs (48.80 usr 17.77 sys + 0.00 cusr 0.00 csys = 0.00 CPU)
create: Total time: 8968 wallclock secs (35.76 usr 5.26 sys + 0.00 cusr 0.00 csys = 0.00 CPU)
insert: Estimated total time: 110214 wallclock secs (659.27 usr 91.88 sys + 0.00 cusr 0.00 csys = 0.00 CPU)
select: Estimated total time: 8255 wallclock secs (54.76 usr 6.93 sys + 0.00 cusr 0.00 csys = 0.00 CPU)
wisconsin: Total time: 813 wallclock secs (12.05 usr 2.14 sys + 0.00 cusr 0.00 csys = 0.00 CPU)
All 8 test executed successfully
Tests with estimated time have a + at end of line
Totals per operation:
Operation seconds usr sys cpu tests
alter_table_add 28.00 0.41 0.03 0.00 992
connect 125.00 9.11 3.79 0.00 10000
connect+select_1_row 173.00 12.56 5.56 0.00 10000
connect+select_simple 140.00 12.15 5.74 0.00 10000
count 130.00 0.01 0.03 0.00 100
count_distinct 235.00 0.76 0.12 0.00 2000
count_distinct_big 200.00 8.26 0.30 0.00 120
count_distinct_group 271.00 1.27 0.10 0.00 1000
count_distinct_group_on_key 174.00 0.44 0.11 0.00 1000
count_distinct_group_on_key_parts 270.00 1.43 0.07 0.00 1000
count_group_on_key_parts 242.00 1.19 0.05 0.00 1000
count_on_key 2544.00 16.73 2.42 0.00 50100 +
create+drop 2954.00 11.24 1.81 0.00 10000
create_MANY_tables 448.00 7.42 0.95 0.00 10000
create_index 1.00 0.00 0.00 0.00 8
create_key+drop 4055.00 10.98 1.30 0.00 10000
create_table 1.00 0.03 0.01 0.00 31
delete_all 341.00 0.00 0.00 0.00 12
delete_all_many_keys 31.00 0.07 0.00 0.00 1
delete_big 0.00 0.00 0.00 0.00 1
delete_big_many_keys 30.00 0.07 0.00 0.00 128
delete_key 283.00 2.91 0.52 0.00 10000
drop_index 0.00 0.00 0.00 0.00 8
drop_table 0.00 0.00 0.00 0.00 28
drop_table_when_MANY_tables 1324.00 3.41 0.51 0.00 10000
insert 8542.00 109.96 19.42 0.00 350768
insert_duplicates 3055.00 60.75 8.53 0.00 100000
insert_key 3693.00 33.29 5.64 0.00 100000
insert_many_fields 357.00 1.18 0.13 0.00 2000
insert_select_1_key 49.00 0.00 0.00 0.00 1
insert_select_2_keys 43.00 0.00 0.00 0.00 1
min_max 58.00 0.02 0.01 0.00 60
min_max_on_key 11172.00 24.56 3.60 0.00 85000 ++
order_by_big 121.00 21.92 0.67 0.00 10
order_by_big_key 115.00 22.06 0.67 0.00 10
order_by_big_key2 118.00 22.07 0.53 0.00 10
order_by_big_key_desc 116.00 22.15 0.66 0.00 10
order_by_big_key_diff 126.00 22.20 0.79 0.00 10
order_by_key 15.00 1.09 0.06 0.00 500
order_by_key2_diff 19.00 2.00 0.06 0.00 500
order_by_range 16.00 1.21 0.02 0.00 500
select_1_row 7.00 3.10 0.50 0.00 10000
select_2_rows 6.00 2.75 0.54 0.00 10000
select_big 64.00 25.86 1.65 0.00 10080
select_column+column 9.00 2.41 0.31 0.00 10000
select_diff_key 13.00 0.24 0.01 0.00 500
select_distinct 17.00 2.21 0.07 0.00 800
select_group 285.00 1.76 0.11 0.00 2711
select_group_when_MANY_tables 187.00 2.71 0.68 0.00 10000
select_join 14.00 5.18 0.20 0.00 200
select_key 4967.00 68.44 12.65 0.00 200000 +
select_key2 4933.00 67.48 11.08 0.00 200000 +
select_key_prefix 4938.00 67.63 10.85 0.00 200000 +
select_many_fields 891.00 8.07 0.66 0.00 2000
select_range 35.00 0.87 0.02 0.00 410
select_range_key2 26862.00 7.62 1.08 0.00 25000 ++
select_range_prefix 24419.00 9.69 0.80 0.00 25000 ++
select_simple 4.00 2.96 0.45 0.00 10000
select_simple_join 3.00 0.69 0.04 0.00 500
update_big 1894.00 0.02 0.00 0.00 10
update_of_key 2460.00 15.33 3.09 0.00 50000
update_of_key_big 444.00 0.20 0.00 0.00 501
update_of_primary_key_many_keys 1164.00 0.08 0.01 0.00 256
update_with_key 14806.00 89.73 16.29 0.00 300000
wisc_benchmark 18.00 3.04 0.25 0.00 114
TOTALS 130055.00 832.98 125.55 0.00 1844991 ++++++++++
Benchmark DBD suite: 2.13
Date of test: 2001-06-03 19:30:53
Running tests on: Linux 2.4.0-64GB-SMP i686
Arguments:
Comments: Intel Xeon, 2x550 Mhz, 512M, pg started with -o -F
Limits from: mysql,pg
Server version: PostgreSQL version 7.1.1
ATIS: Total time: 101 wallclock secs (11.93 usr 0.98 sys + 0.00 cusr 0.00 csys = 12.91 CPU)
alter-table: Total time: 52 wallclock secs ( 0.49 usr 0.14 sys + 0.00 cusr 0.00 csys = 0.63 CPU)
big-tables: Total time: 1324 wallclock secs ( 8.10 usr 0.69 sys + 0.00 cusr 0.00 csys = 8.79 CPU)
connect: Total time: 555 wallclock secs (51.66 usr 14.01 sys + 0.00 cusr 0.00 csys = 65.67 CPU)
create: Total time: 10008 wallclock secs (27.97 usr 5.83 sys + 0.00 cusr 0.00 csys = 33.80 CPU)
insert: Estimated total time: 199360 wallclock secs (879.85 usr 202.59 sys + 0.00 cusr 0.00 csys = 1082.45 CPU)
select: Estimated total time: 13197 wallclock secs (68.30 usr 8.18 sys + 0.00 cusr 0.00 csys = 76.48 CPU)
wisconsin: Total time: 52 wallclock secs (12.40 usr 2.23 sys + 0.00 cusr 0.00 csys = 14.63 CPU)
All 8 test executed successfully
Tests with estimated time have a + at end of line
Totals per operation:
Operation seconds usr sys cpu tests
alter_table_add 49.00 0.26 0.06 0.32 992
connect 143.00 8.01 1.89 9.90 10000
connect+select_1_row 195.00 10.94 2.31 13.25 10000
connect+select_simple 157.00 10.42 2.41 12.83 10000
count 131.00 0.03 0.00 0.03 100
count_distinct 132.00 0.31 0.06 0.37 1000
count_distinct_2 213.00 0.37 0.03 0.40 1000
count_distinct_big 266.00 7.91 0.25 8.16 120
count_distinct_group 384.00 1.07 0.08 1.15 1000
count_distinct_group_on_key 488.00 0.41 0.03 0.44 1000
count_distinct_group_on_key_parts 383.00 1.10 0.07 1.17 1000
count_distinct_key_prefix 179.00 0.28 0.07 0.35 1000
count_group_on_key_parts 331.00 1.13 0.06 1.19 1000
count_on_key 1850.00 15.78 1.99 17.77 50100 +
create+drop 3280.00 10.74 1.89 12.63 10000
create_MANY_tables 160.00 3.67 1.35 5.02 5000
create_index 1.00 0.00 0.00 0.00 8
create_key+drop 5781.00 10.70 1.53 12.23 10000
create_table 1.00 0.01 0.00 0.01 31
delete_all 2478.00 0.01 0.00 0.01 12
delete_all_many_keys 94.00 0.05 0.00 0.05 1
delete_big 0.00 0.01 0.00 0.01 1
delete_big_many_keys 93.00 0.05 0.00 0.05 128
delete_key 85.00 3.19 0.48 3.67 10000
drop_index 0.00 0.01 0.00 0.01 8
drop_table 1.00 0.01 0.00 0.01 28
drop_table_when_MANY_tables 772.00 1.29 0.28 1.57 5000
insert 353.00 104.09 24.32 128.41 350768
insert_duplicates 120.00 30.53 10.61 41.14 100000
insert_key 804.00 47.08 47.06 94.14 100000
insert_many_fields 528.00 1.12 0.21 1.33 2000
insert_select_1_key 86.00 0.00 0.00 0.00 1
insert_select_2_keys 196.00 0.00 0.00 0.00 1
min_max 60.00 0.02 0.00 0.02 60
min_max_on_key 10543.00 25.38 4.37 29.75 85000 ++
order_by_big 148.00 21.11 0.72 21.83 10
order_by_big_key 145.00 24.01 1.27 25.28 10
order_by_big_key2 132.00 21.28 0.64 21.92 10
order_by_big_key_desc 145.00 23.93 1.27 25.20 10
order_by_big_key_diff 138.00 21.30 0.56 21.86 10
order_by_big_key_prefix 133.00 21.16 0.80 21.96 10
order_by_key2_diff 7.00 1.94 0.03 1.97 500
order_by_key_prefix 4.00 1.04 0.08 1.12 500
order_by_range 4.00 1.13 0.06 1.19 500
outer_join 2539.00 0.00 0.01 0.01 10
outer_join_found 2515.00 0.00 0.00 0.00 10
outer_join_not_found 124666.00 0.00 0.00 0.00 500 +
outer_join_on_key 2307.00 0.00 0.00 0.00 10
select_1_row 6.00 2.25 0.46 2.71 10000
select_2_rows 7.00 2.77 0.38 3.15 10000
select_big 93.00 33.23 9.79 43.02 10080
select_column+column 8.00 2.78 0.41 3.19 10000
select_diff_key 0.00 0.21 0.02 0.23 500
select_distinct 22.00 1.95 0.18 2.13 800
select_group 326.00 1.47 0.20 1.67 2711
select_group_when_MANY_tables 15.00 1.57 0.78 2.35 5000
select_join 4.00 0.52 0.13 0.65 100
select_key 243.00 68.03 8.10 76.13 200000
select_key2 208.00 66.48 8.68 75.16 200000
select_key2_return_key 200.00 66.41 7.77 74.18 200000
select_key2_return_prim 204.00 64.75 7.90 72.65 200000
select_key_prefix 208.00 66.62 8.81 75.43 200000
select_key_prefix_join 11.00 4.30 0.16 4.46 100
select_key_return_key 239.00 66.86 8.37 75.23 200000
select_many_fields 795.00 6.97 0.48 7.45 2000
select_query_cache 2549.00 3.25 0.52 3.77 10000
select_query_cache2 2547.00 3.04 0.53 3.57 10000
select_range 465.00 10.41 0.63 11.04 410
select_range_key2 20341.00 4.22 0.52 4.74 25010 ++
select_range_prefix 20344.00 6.32 1.04 7.36 25010 ++
select_simple 5.00 2.73 0.30 3.03 10000
select_simple_join 3.00 0.74 0.03 0.77 500
update_big 6046.00 0.01 0.00 0.01 10
update_of_key 136.00 16.21 11.85 28.06 50000
update_of_key_big 320.00 0.16 0.09 0.25 501
update_of_primary_key_many_keys 5365.00 0.16 0.03 0.19 256
update_with_key 518.00 89.50 33.03 122.53 300000
update_with_key_prefix 186.00 30.32 15.83 46.15 100000
wisc_benchmark 16.00 3.30 0.65 3.95 114
TOTALS 224650.00 1060.42 234.52 1294.94 2551551 ++++++++
Benchmark DBD suite: 2.13
Date of test: 2001-06-12 18:11:16
Running tests on: Linux 2.4.2-64GB-SMP i686
Arguments:
Comments: Intel Xeon, 2x550 Mhz, 512M, pg started with -o -F
Limits from: mysql,pg
Server version: PostgreSQL version 7.1.2
ATIS: Total time: 104 wallclock secs (12.54 usr 1.17 sys + 0.00 cusr 0.00 csys = 13.71 CPU)
alter-table: Total time: 50 wallclock secs ( 0.58 usr 0.08 sys + 0.00 cusr 0.00 csys = 0.66 CPU)
big-tables: Total time: 1355 wallclock secs ( 8.68 usr 0.69 sys + 0.00 cusr 0.00 csys = 9.37 CPU)
connect: Total time: 547 wallclock secs (50.45 usr 14.25 sys + 0.00 cusr 0.00 csys = 64.70 CPU)
create: Total time: 9195 wallclock secs (31.22 usr 11.10 sys + 0.00 cusr 0.00 csys = 42.32 CPU)
insert: Estimated total time: 288864 wallclock secs (887.56 usr 201.43 sys + 0.00 cusr 0.00 csys = 1088.99 CPU)
select: Estimated total time: 13160 wallclock secs (70.90 usr 7.35 sys + 0.00 cusr 0.00 csys = 78.25 CPU)
wisconsin: Total time: 55 wallclock secs (12.69 usr 2.29 sys + 0.00 cusr 0.00 csys = 14.98 CPU)
All 8 test executed successfully
Tests with estimated time have a + at end of line
Totals per operation:
Operation seconds usr sys cpu tests
alter_table_add 48.00 0.31 0.04 0.35 992
connect 141.00 7.82 1.62 9.44 10000
connect+select_1_row 192.00 10.79 2.47 13.26 10000
connect+select_simple 154.00 10.43 2.60 13.03 10000
count 131.00 0.06 0.00 0.06 100
count_distinct 131.00 0.29 0.02 0.31 1000
count_distinct_2 213.00 0.43 0.06 0.49 1000
count_distinct_big 268.00 8.51 0.17 8.68 120
count_distinct_group 384.00 1.12 0.07 1.19 1000
count_distinct_group_on_key 485.00 0.38 0.03 0.41 1000
count_distinct_group_on_key_parts 381.00 1.23 0.05 1.28 1000
count_distinct_key_prefix 188.00 0.33 0.05 0.38 1000
count_group_on_key_parts 332.00 1.20 0.04 1.24 1000
count_on_key 1809.00 15.49 2.15 17.65 50100 +
create+drop 2924.00 11.10 2.41 13.51 10000
create_MANY_tables 194.00 6.27 5.72 11.99 5000
create_index 1.00 0.00 0.00 0.00 8
create_key+drop 5464.00 11.00 2.30 13.30 10000
create_table 1.00 0.05 0.00 0.05 31
delete_all 3191.00 0.01 0.00 0.01 12
delete_all_many_keys 118.00 0.05 0.04 0.09 1
delete_big 0.00 0.00 0.00 0.00 1
delete_big_many_keys 118.00 0.05 0.04 0.09 128
delete_key 136.00 3.08 0.59 3.67 10000
drop_index 0.00 0.00 0.00 0.00 8
drop_table 0.00 0.02 0.00 0.02 28
drop_table_when_MANY_tables 599.00 1.39 0.38 1.77 5000
insert 353.00 103.74 26.20 129.94 350768
insert_duplicates 120.00 29.00 13.77 42.77 100000
insert_key 907.00 45.53 60.49 106.02 100000
insert_many_fields 529.00 1.04 0.19 1.23 2000
insert_select_1_key 111.00 0.00 0.00 0.00 1
insert_select_2_keys 180.00 0.00 0.00 0.00 1
min_max 59.00 0.03 0.00 0.03 60
min_max_on_key 9941.00 25.90 4.02 29.92 85000 ++
order_by_big 146.00 22.57 0.64 23.21 10
order_by_big_key 145.00 26.12 1.23 27.35 10
order_by_big_key2 133.00 22.62 0.93 23.55 10
order_by_big_key_desc 145.00 25.80 1.41 27.21 10
order_by_big_key_diff 139.00 22.46 0.67 23.13 10
order_by_big_key_prefix 132.00 22.46 0.83 23.29 10
order_by_key2_diff 7.00 2.09 0.04 2.13 500
order_by_key_prefix 4.00 1.12 0.06 1.18 500
order_by_range 4.00 1.11 0.04 1.15 500
outer_join 4093.00 0.00 0.00 0.00 10
outer_join_found 4086.00 0.00 0.00 0.00 10
outer_join_not_found 203500.00 0.00 0.00 0.00 500 +
outer_join_on_key 3961.00 0.00 0.00 0.00 10
select_1_row 6.00 2.56 0.45 3.01 10000
select_2_rows 6.00 2.68 0.45 3.13 10000
select_big 62.00 22.48 3.33 25.81 80
select_big_str 35.00 10.82 5.73 16.55 10000
select_column+column 8.00 2.73 0.39 3.12 10000
select_diff_key 0.00 0.16 0.02 0.18 500
select_distinct 22.00 2.10 0.26 2.36 800
select_group 327.00 1.78 0.06 1.84 2711
select_group_when_MANY_tables 14.00 1.46 0.28 1.74 5000
select_join 4.00 0.67 0.09 0.76 100
select_key 245.00 69.03 8.64 77.67 200000
select_key2 209.00 67.94 8.08 76.02 200000
select_key2_return_key 201.00 63.19 8.05 71.24 200000
select_key2_return_prim 204.00 64.84 7.89 72.73 200000
select_key_prefix 210.00 67.51 8.60 76.11 200000
select_key_prefix_join 12.00 4.43 0.15 4.58 100
select_key_return_key 240.00 67.26 8.61 75.87 200000
select_many_fields 825.00 7.63 0.50 8.13 2000
select_query_cache 2623.00 3.22 0.37 3.59 10000
select_query_cache2 2622.00 2.73 0.47 3.20 10000
select_range 491.00 11.40 0.50 11.90 410
select_range_key2 21975.00 5.82 0.10 5.92 25010 ++
select_range_prefix 21993.00 6.20 0.48 6.68 25010 ++
select_simple 5.00 2.59 0.54 3.13 10000
select_simple_join 3.00 0.73 0.10 0.83 500
update_big 6612.00 0.00 0.00 0.00 10
update_of_key 119.00 16.20 10.81 27.01 50000
update_of_key_big 333.00 0.21 0.21 0.42 501
update_of_primary_key_many_keys 6813.00 0.13 0.02 0.15 256
update_with_key 567.00 90.20 25.08 115.28 300000
update_with_key_prefix 244.00 29.03 5.64 34.67 100000
wisc_benchmark 16.00 3.54 1.02 4.56 114
TOTALS 313344.00 1074.27 238.29 1312.57 2551551 ++++++++
Benchmark DBD suite: 2.8
Date of test: 2000-08-17 11:51:48
Running tests on: Linux 2.2.14-my-SMP i686
Arguments: --fast
Comments: Intel Xeon, 2x550 Mhz, 1G, pg started with -o -F
Limits from: mysql,pg
Server version: PostgreSQL version 7.0.2
ATIS: Total time: 87 wallclock secs (12.00 usr 0.99 sys + 0.00 cusr 0.00 csys = 0.00 CPU)
alter-table: Total time: 29 wallclock secs ( 0.58 usr 0.10 sys + 0.00 cusr 0.00 csys = 0.00 CPU)
big-tables: Total time: 1247 wallclock secs ( 8.78 usr 0.92 sys + 0.00 cusr 0.00 csys = 0.00 CPU)
connect: Total time: 484 wallclock secs (47.96 usr 17.77 sys + 0.00 cusr 0.00 csys = 0.00 CPU)
create: Total time: 8745 wallclock secs (32.62 usr 4.94 sys + 0.00 cusr 0.00 csys = 0.00 CPU)
insert: Estimated total time: 16506 wallclock secs (446.80 usr 59.36 sys + 0.00 cusr 0.00 csys = 0.00 CPU)
select: Estimated total time: 5187 wallclock secs (127.12 usr 9.14 sys + 0.00 cusr 0.00 csys = 0.00 CPU)
wisconsin: Total time: 60 wallclock secs (12.14 usr 1.77 sys + 0.00 cusr 0.00 csys = 0.00 CPU)
All 8 test executed successfully
Tests with estimated time have a + at end of line
Totals per operation:
Operation seconds usr sys cpu tests
alter_table_add 27.00 0.32 0.05 0.00 992
book-keeping 2680.00 0.04 0.03 0.00 25
connect 129.00 9.33 3.59 0.00 10000
connect+select_1_row 176.00 12.21 5.95 0.00 10000
connect+select_simple 142.00 11.69 5.72 0.00 10000
count 119.00 0.00 0.00 0.00 100
count_distinct 185.00 0.71 0.16 0.00 1000
count_distinct_big 667.00 82.38 2.86 0.00 1020
count_distinct_group 246.00 1.12 0.06 0.00 1000
count_distinct_group_on_key 145.00 0.33 0.07 0.00 1000
count_distinct_group_on_key_parts 246.00 1.09 0.05 0.00 1000
count_group_on_key_parts 216.00 1.37 0.02 0.00 1000
count_on_key 1213.00 15.61 2.51 0.00 50100 +
create+drop 3022.00 10.18 1.71 0.00 10000
create_MANY_tables 455.00 8.09 1.12 0.00 10000
create_index 1.00 0.00 0.00 0.00 8
create_key+drop 3752.00 8.40 1.09 0.00 10000
create_table 1.00 0.01 0.00 0.00 31
delete_big 102.00 0.00 0.00 0.00 13
delete_big_many_keys 2.00 0.00 0.00 0.00 2
delete_key 15.00 2.84 0.49 0.00 10000
drop_index 0.00 0.00 0.00 0.00 8
drop_table 0.00 0.00 0.00 0.00 28
drop_table_when_MANY_tables 1328.00 2.91 0.56 0.00 10000
insert 375.00 103.83 16.23 0.00 350768
insert_duplicates 321.00 88.94 13.94 0.00 300000
insert_key 1367.00 32.13 5.30 0.00 100000
insert_many_fields 356.00 1.12 0.19 0.00 2000
min_max 53.00 0.02 0.00 0.00 60
min_max_on_key 8723.00 25.11 3.76 0.00 85000 ++
order_by 103.00 22.63 0.73 0.00 10
order_by_key 103.00 22.46 0.65 0.00 10
select_1_row 6.00 2.47 0.51 0.00 10000
select_2_rows 7.00 3.12 0.44 0.00 10000
select_big 61.00 26.33 1.34 0.00 10080
select_column+column 8.00 2.78 0.39 0.00 10000
select_diff_key 1.00 0.23 0.02 0.00 500
select_distinct 17.00 2.06 0.13 0.00 800
select_group 264.00 1.55 0.15 0.00 2711
select_group_when_MANY_tables 188.00 3.03 0.46 0.00 10000
select_join 13.00 4.77 0.26 0.00 200
select_key 188.00 65.70 9.45 0.00 200000
select_key_prefix 188.00 65.88 9.55 0.00 200000
select_many_fields 886.00 7.63 0.72 0.00 2000
select_range 66.00 7.49 0.74 0.00 25420
select_range_prefix 44.00 6.28 0.79 0.00 25010
select_simple 4.00 2.62 0.47 0.00 10000
select_simple_join 3.00 0.79 0.07 0.00 500
update_big 1832.00 0.00 0.00 0.00 500
update_of_key 97.00 14.01 2.17 0.00 500
update_of_key_big 559.00 0.21 0.01 0.00 501
update_of_primary_key_many_keys 1491.00 0.07 0.01 0.00 256
update_with_key 449.00 91.48 14.02 0.00 100000
wisc_benchmark 15.00 3.21 0.28 0.00 114
TOTALS 32657.00 776.58 108.82 0.00 1594267 +++
Benchmark DBD suite: 2.13
Date of test: 2001-06-12 18:14:29
Running tests on: Linux 2.4.2-64GB-SMP i686
Arguments: --fast
Comments: Intel Xeon, 2x550 Mhz, 512M, pg started with -o -F
Limits from: mysql,pg
Server version: PostgreSQL version 7.1.2
ATIS: Total time: 105 wallclock secs (12.13 usr 1.14 sys + 0.00 cusr 0.00 csys = 13.27 CPU)
alter-table: Total time: 51 wallclock secs ( 0.63 usr 0.06 sys + 0.00 cusr 0.00 csys = 0.69 CPU)
big-tables: Total time: 1356 wallclock secs ( 8.41 usr 0.76 sys + 0.00 cusr 0.00 csys = 9.17 CPU)
connect: Total time: 550 wallclock secs (52.92 usr 14.30 sys + 0.00 cusr 0.00 csys = 67.22 CPU)
create: Total time: 9195 wallclock secs (31.22 usr 11.10 sys + 0.00 cusr 0.00 csys = 42.32 CPU)
insert: Estimated total time: 21187 wallclock secs (884.26 usr 225.15 sys + 0.00 cusr 0.00 csys = 1109.40 CPU)
select: Estimated total time: 12852 wallclock secs (74.09 usr 9.62 sys + 0.00 cusr 0.00 csys = 83.71 CPU)
wisconsin: Total time: 64 wallclock secs (13.06 usr 3.32 sys + 0.00 cusr 0.00 csys = 16.38 CPU)
All 8 test executed successfully
Tests with estimated time have a + at end of line
Totals per operation:
Operation seconds usr sys cpu tests
alter_table_add 48.00 0.32 0.03 0.35 992
book-keeping 3262.00 0.03 0.00 0.03 25
connect 140.00 7.94 1.85 9.79 10000
connect+select_1_row 190.00 10.78 2.23 13.01 10000
connect+select_simple 155.00 10.57 2.71 13.28 10000
count 132.00 0.04 0.00 0.04 100
count_distinct 131.00 0.34 0.05 0.39 1000
count_distinct_2 213.00 0.38 0.03 0.41 1000
count_distinct_big 269.00 8.53 0.27 8.80 120
count_distinct_group 385.00 1.14 0.09 1.23 1000
count_distinct_group_on_key 209.00 0.35 0.09 0.44 1000
count_distinct_group_on_key_parts 382.00 1.16 0.06 1.22 1000
count_distinct_key_prefix 188.00 0.38 0.02 0.40 1000
count_group_on_key_parts 332.00 1.14 0.03 1.17 1000
count_on_key 1774.00 14.24 1.80 16.04 50100 +
create+drop 2924.00 11.10 2.41 13.51 10000
create_MANY_tables 194.00 6.27 5.72 11.99 5000
create_index 0.00 0.00 0.00 0.00 8
create_key+drop 5464.00 11.00 2.30 13.30 10000
create_table 1.00 0.03 0.00 0.03 31
delete_all 11.00 0.01 0.01 0.02 12
delete_all_many_keys 3.00 0.05 0.00 0.05 1
delete_big 2.00 0.01 0.00 0.01 1
delete_big_many_keys 3.00 0.05 0.00 0.05 128
delete_key 11.00 3.02 0.37 3.39 10000
drop_index 1.00 0.00 0.00 0.00 8
drop_table 0.00 0.00 0.00 0.00 28
drop_table_when_MANY_tables 599.00 1.39 0.38 1.77 5000
insert 359.00 104.39 28.15 132.54 350768
insert_duplicates 111.00 28.41 9.26 37.67 100000
insert_key 895.00 45.94 68.46 114.40 100000
insert_many_fields 525.00 1.01 0.18 1.19 2000
insert_select_1_key 45.00 0.00 0.00 0.00 1
insert_select_2_keys 77.00 0.01 0.00 0.01 1
min_max 58.00 0.01 0.00 0.01 60
min_max_on_key 9948.00 29.82 5.49 35.30 85000 ++
order_by_big 147.00 22.48 0.61 23.09 10
order_by_big_key 150.00 25.91 1.24 27.15 10
order_by_big_key2 137.00 22.59 0.71 23.30 10
order_by_big_key_desc 147.00 25.81 1.23 27.04 10
order_by_big_key_diff 143.00 22.68 0.55 23.23 10
order_by_big_key_prefix 133.00 22.64 0.62 23.26 10
order_by_key2_diff 7.00 2.07 0.04 2.11 500
order_by_key_prefix 3.00 1.48 0.03 1.51 500
order_by_range 4.00 1.04 0.04 1.08 500
outer_join 253.00 0.00 0.00 0.00 10
outer_join_found 243.00 0.00 0.00 0.00 10
outer_join_not_found 242.00 0.00 0.01 0.01 500
outer_join_on_key 238.00 0.00 0.00 0.00 10
select_1_row 6.00 2.65 0.43 3.08 10000
select_2_rows 7.00 2.81 0.40 3.21 10000
select_big 56.00 22.70 2.29 24.99 80
select_big_str 37.00 12.51 5.97 18.48 10000
select_column+column 8.00 2.90 0.33 3.23 10000
select_diff_key 1.00 0.21 0.00 0.21 500
select_distinct 23.00 1.91 0.34 2.25 800
select_group 318.00 1.54 0.12 1.66 2711
select_group_when_MANY_tables 14.00 1.46 0.28 1.74 5000
select_join 4.00 0.59 0.10 0.69 100
select_key 213.00 67.07 8.38 75.45 200000
select_key2 192.00 67.06 8.24 75.30 200000
select_key2_return_key 183.00 63.93 8.32 72.25 200000
select_key2_return_prim 188.00 64.56 8.71 73.27 200000
select_key_prefix 192.00 67.39 7.56 74.95 200000
select_key_prefix_join 12.00 4.47 0.12 4.59 100
select_key_return_key 208.00 65.98 8.96 74.94 200000
select_many_fields 823.00 7.36 0.55 7.91 2000
select_query_cache 2643.00 3.20 0.43 3.63 10000
select_query_cache2 2642.00 3.26 0.43 3.69 10000
select_range 481.00 11.87 1.04 12.91 410
select_range_key2 47.00 6.56 0.67 7.23 25010
select_range_prefix 48.00 6.63 0.65 7.28 25010
select_simple 5.00 2.74 0.38 3.12 10000
select_simple_join 4.00 0.71 0.18 0.89 500
update_big 3883.00 0.01 0.00 0.01 10
update_of_key 90.00 14.87 5.98 20.85 50000
update_of_key_big 647.00 0.12 0.06 0.18 501
update_of_primary_key_many_keys 835.00 0.10 0.09 0.19 256
update_with_key 470.00 87.85 41.80 129.65 300000
update_with_key_prefix 170.00 31.13 15.28 46.41 100000
wisc_benchmark 18.00 3.58 0.20 3.78 114
TOTALS 45356.00 1076.29 265.36 1341.64 2551576 +++
Testing server 'MySQL 3.23.22 beta' at 2000-08-17 17:47:38
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.06 usr 0.07 sys + 0.00 cusr 0.00 csys = 0.00 CPU)
Time for alter_table_add (992): 252 wallclock secs ( 0.20 usr 0.02 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)
Total time: 260 wallclock secs ( 0.27 usr 0.09 sys + 0.00 cusr 0.00 csys = 0.00 CPU)
Testing server 'MySQL 3.23.39' at 2001-06-05 13:47:22
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.05 usr 0.00 sys + 0.00 cusr 0.00 csys = 0.05 CPU)
Time for alter_table_add (992): 261 wallclock secs ( 0.13 usr 0.02 sys + 0.00 cusr 0.00 csys = 0.15 CPU)
Time for create_index (8): 5 wallclock secs ( 0.00 usr 0.00 sys + 0.00 cusr 0.00 csys = 0.00 CPU)
Time for drop_index (8): 5 wallclock secs ( 0.00 usr 0.00 sys + 0.00 cusr 0.00 csys = 0.00 CPU)
Total time: 271 wallclock secs ( 0.18 usr 0.02 sys + 0.00 cusr 0.00 csys = 0.20 CPU)
Testing server 'MySQL 3.23.22 beta' at 2000-08-17 19:11:37
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.05 usr 0.03 sys + 0.00 cusr 0.00 csys = 0.00 CPU)
Time for alter_table_add (992): 252 wallclock secs ( 0.20 usr 0.10 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)
Total time: 260 wallclock secs ( 0.26 usr 0.13 sys + 0.00 cusr 0.00 csys = 0.00 CPU)
Testing server 'PostgreSQL version ???' at 2000-12-05 5:20:15
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.28 usr 0.06 sys + 0.00 cusr 0.00 csys = 0.00 CPU)
Time for alter_table_add (992): 28 wallclock secs ( 0.41 usr 0.03 sys + 0.00 cusr 0.00 csys = 0.00 CPU)
Time for create_index (8): 1 wallclock secs ( 0.00 usr 0.00 sys + 0.00 cusr 0.00 csys = 0.00 CPU)
Time for drop_index (8): 0 wallclock secs ( 0.00 usr 0.00 sys + 0.00 cusr 0.00 csys = 0.00 CPU)
Total time: 29 wallclock secs ( 0.71 usr 0.09 sys + 0.00 cusr 0.00 csys = 0.00 CPU)
Testing server 'PostgreSQL version ???' at 2001-06-03 4:42:04
Testing of ALTER TABLE
Testing with 1000 columns and 1000 rows in 20 steps
Insert data into the table
Time for insert (1000) 1 wallclock secs ( 0.21 usr 0.08 sys + 0.00 cusr 0.00 csys = 0.29 CPU)
Time for alter_table_add (992): 49 wallclock secs ( 0.26 usr 0.06 sys + 0.00 cusr 0.00 csys = 0.32 CPU)
Time for create_index (8): 1 wallclock secs ( 0.00 usr 0.00 sys + 0.00 cusr 0.00 csys = 0.00 CPU)
Time for drop_index (8): 0 wallclock secs ( 0.01 usr 0.00 sys + 0.00 cusr 0.00 csys = 0.01 CPU)
Total time: 52 wallclock secs ( 0.49 usr 0.14 sys + 0.00 cusr 0.00 csys = 0.63 CPU)
Testing server 'PostgreSQL version 7.0.2' at 2000-08-17 3:09:56
Testing server 'PostgreSQL version 7.1.2' at 2001-06-12 1:16:18
Testing of ALTER TABLE
Testing with 1000 columns and 1000 rows in 20 steps
Insert data into the table
Time for insert (1000) 1 wallclock secs ( 0.26 usr 0.05 sys + 0.00 cusr 0.00 csys = 0.00 CPU)
Time for insert (1000) 0 wallclock secs ( 0.27 usr 0.04 sys + 0.00 cusr 0.00 csys = 0.31 CPU)
Time for alter_table_add (992): 27 wallclock secs ( 0.32 usr 0.05 sys + 0.00 cusr 0.00 csys = 0.00 CPU)
Time for alter_table_add (992): 48 wallclock secs ( 0.31 usr 0.04 sys + 0.00 cusr 0.00 csys = 0.35 CPU)
Time for create_index (8): 1 wallclock secs ( 0.00 usr 0.00 sys + 0.00 cusr 0.00 csys = 0.00 CPU)
Time for drop_index (8): 0 wallclock secs ( 0.00 usr 0.00 sys + 0.00 cusr 0.00 csys = 0.00 CPU)
Total time: 29 wallclock secs ( 0.58 usr 0.10 sys + 0.00 cusr 0.00 csys = 0.00 CPU)
Total time: 50 wallclock secs ( 0.58 usr 0.08 sys + 0.00 cusr 0.00 csys = 0.66 CPU)
Testing server 'PostgreSQL version 7.1.2' at 2001-06-11 17:54:48
Testing of ALTER TABLE
Testing with 1000 columns and 1000 rows in 20 steps
Insert data into the table
Time for insert (1000) 1 wallclock secs ( 0.30 usr 0.03 sys + 0.00 cusr 0.00 csys = 0.33 CPU)
Time for alter_table_add (992): 48 wallclock secs ( 0.32 usr 0.03 sys + 0.00 cusr 0.00 csys = 0.35 CPU)
Time for create_index (8): 0 wallclock secs ( 0.00 usr 0.00 sys + 0.00 cusr 0.00 csys = 0.00 CPU)
Time for drop_index (8): 1 wallclock secs ( 0.00 usr 0.00 sys + 0.00 cusr 0.00 csys = 0.00 CPU)
Total time: 51 wallclock secs ( 0.63 usr 0.06 sys + 0.00 cusr 0.00 csys = 0.69 CPU)
Testing server 'MySQL 3.23.22 beta' at 2000-08-17 17:51:59
Testing server 'MySQL 3.23.39' at 2001-06-05 13:51:53
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): 9 wallclock secs ( 4.07 usr 3.17 sys + 0.00 cusr 0.00 csys = 0.00 CPU)
Time to select_many_fields(1000): 10 wallclock secs ( 4.43 usr 4.17 sys + 0.00 cusr 0.00 csys = 8.60 CPU)
Testing select all_fields from table with 1 record
Time to select_many_fields(1000): 13 wallclock secs ( 3.82 usr 3.49 sys + 0.00 cusr 0.00 csys = 0.00 CPU)
Time to select_many_fields(1000): 13 wallclock secs ( 4.42 usr 3.38 sys + 0.00 cusr 0.00 csys = 7.80 CPU)
Testing insert VALUES()
Time to insert_many_fields(1000): 3 wallclock secs ( 0.23 usr 0.06 sys + 0.00 cusr 0.00 csys = 0.00 CPU)
Time to insert_many_fields(1000): 3 wallclock secs ( 0.46 usr 0.03 sys + 0.00 cusr 0.00 csys = 0.49 CPU)
Testing insert (all_fields) VALUES()
Time to insert_many_fields(1000): 5 wallclock secs ( 0.06 usr 0.02 sys + 0.00 cusr 0.00 csys = 0.00 CPU)
Time to insert_many_fields(1000): 7 wallclock secs ( 0.08 usr 0.05 sys + 0.00 cusr 0.00 csys = 0.13 CPU)
Total time: 30 wallclock secs ( 8.19 usr 6.74 sys + 0.00 cusr 0.00 csys = 0.00 CPU)
Total time: 33 wallclock secs ( 9.40 usr 7.64 sys + 0.00 cusr 0.00 csys = 17.04 CPU)
Testing server 'MySQL 3.23.22 beta' at 2000-08-17 19:15:57
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): 9 wallclock secs ( 3.76 usr 3.45 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): 13 wallclock secs ( 4.09 usr 3.33 sys + 0.00 cusr 0.00 csys = 0.00 CPU)
Testing insert VALUES()
Time to insert_many_fields(1000): 3 wallclock secs ( 0.41 usr 0.06 sys + 0.00 cusr 0.00 csys = 0.00 CPU)
Testing insert (all_fields) VALUES()
Time to insert_many_fields(1000): 6 wallclock secs ( 0.05 usr 0.04 sys + 0.00 cusr 0.00 csys = 0.00 CPU)
Total time: 31 wallclock secs ( 8.32 usr 6.89 sys + 0.00 cusr 0.00 csys = 0.00 CPU)
Testing server 'PostgreSQL version ???' at 2000-12-05 5:20:45
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): 402 wallclock secs ( 3.75 usr 0.32 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): 489 wallclock secs ( 4.32 usr 0.34 sys + 0.00 cusr 0.00 csys = 0.00 CPU)
Testing insert VALUES()
Time to insert_many_fields(1000): 144 wallclock secs ( 0.38 usr 0.08 sys + 0.00 cusr 0.00 csys = 0.00 CPU)
Testing insert (all_fields) VALUES()
Time to insert_many_fields(1000): 213 wallclock secs ( 0.80 usr 0.05 sys + 0.00 cusr 0.00 csys = 0.00 CPU)
Total time: 1248 wallclock secs ( 9.27 usr 0.79 sys + 0.00 cusr 0.00 csys = 0.00 CPU)
Testing server 'PostgreSQL version ???' at 2001-06-03 4:42:56
Testing server 'PostgreSQL version 7.1.2' at 2001-06-12 1:17:10
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): 338 wallclock secs ( 3.28 usr 0.22 sys + 0.00 cusr 0.00 csys = 3.50 CPU)
Time to select_many_fields(1000): 354 wallclock secs ( 3.70 usr 0.19 sys + 0.00 cusr 0.00 csys = 3.89 CPU)
Testing select all_fields from table with 1 record
Time to select_many_fields(1000): 457 wallclock secs ( 3.69 usr 0.26 sys + 0.00 cusr 0.00 csys = 3.95 CPU)
Time to select_many_fields(1000): 471 wallclock secs ( 3.93 usr 0.31 sys + 0.00 cusr 0.00 csys = 4.24 CPU)
Testing insert VALUES()
Time to insert_many_fields(1000): 229 wallclock secs ( 0.40 usr 0.07 sys + 0.00 cusr 0.00 csys = 0.47 CPU)
Time to insert_many_fields(1000): 230 wallclock secs ( 0.34 usr 0.12 sys + 0.00 cusr 0.00 csys = 0.46 CPU)
Testing insert (all_fields) VALUES()
Time to insert_many_fields(1000): 299 wallclock secs ( 0.72 usr 0.14 sys + 0.00 cusr 0.00 csys = 0.86 CPU)
Time to insert_many_fields(1000): 299 wallclock secs ( 0.70 usr 0.07 sys + 0.00 cusr 0.00 csys = 0.77 CPU)
Total time: 1324 wallclock secs ( 8.10 usr 0.69 sys + 0.00 cusr 0.00 csys = 8.79 CPU)
Total time: 1355 wallclock secs ( 8.68 usr 0.69 sys + 0.00 cusr 0.00 csys = 9.37 CPU)
Testing server 'PostgreSQL version 7.0.2' at 2000-08-17 3:10:25
Testing server 'PostgreSQL version 7.1.2' at 2001-06-11 17:55:39
Testing of some unusual tables
All tests are done 1000 times with 1000 fields
Testing table with 1000 fields
NOTICE: Vacuum: table not found
Time for book-keeping (1): 1 wallclock secs ( 0.00 usr 0.00 sys + 0.00 cusr 0.00 csys = 0.00 CPU)
Time for book-keeping (1): 1 wallclock secs ( 0.01 usr 0.00 sys + 0.00 cusr 0.00 csys = 0.01 CPU)
Testing select * from table with 1 record
Time to select_many_fields(1000): 398 wallclock secs ( 3.66 usr 0.36 sys + 0.00 cusr 0.00 csys = 0.00 CPU)
Time to select_many_fields(1000): 353 wallclock secs ( 3.56 usr 0.31 sys + 0.00 cusr 0.00 csys = 3.87 CPU)
Testing select all_fields from table with 1 record
Time to select_many_fields(1000): 488 wallclock secs ( 3.97 usr 0.36 sys + 0.00 cusr 0.00 csys = 0.00 CPU)
Time to select_many_fields(1000): 470 wallclock secs ( 3.80 usr 0.24 sys + 0.00 cusr 0.00 csys = 4.04 CPU)
Testing insert VALUES()
Time to insert_many_fields(1000): 143 wallclock secs ( 0.41 usr 0.10 sys + 0.00 cusr 0.00 csys = 0.00 CPU)
Time to insert_many_fields(1000): 229 wallclock secs ( 0.38 usr 0.07 sys + 0.00 cusr 0.00 csys = 0.45 CPU)
NOTICE: Vacuum: table not found
Time for book-keeping (1): 2 wallclock secs ( 0.00 usr 0.00 sys + 0.00 cusr 0.00 csys = 0.00 CPU)
Time for book-keeping (1): 4 wallclock secs ( 0.00 usr 0.00 sys + 0.00 cusr 0.00 csys = 0.00 CPU)
Testing insert (all_fields) VALUES()
Time to insert_many_fields(1000): 213 wallclock secs ( 0.71 usr 0.09 sys + 0.00 cusr 0.00 csys = 0.00 CPU)
Time to insert_many_fields(1000): 296 wallclock secs ( 0.63 usr 0.11 sys + 0.00 cusr 0.00 csys = 0.74 CPU)
NOTICE: Vacuum: table not found
Time for book-keeping (1): 1 wallclock secs ( 0.01 usr 0.00 sys + 0.00 cusr 0.00 csys = 0.00 CPU)
Time for book-keeping (1): 1 wallclock secs ( 0.00 usr 0.00 sys + 0.00 cusr 0.00 csys = 0.00 CPU)
Total time: 1247 wallclock secs ( 8.78 usr 0.92 sys + 0.00 cusr 0.00 csys = 0.00 CPU)
Total time: 1356 wallclock secs ( 8.41 usr 0.76 sys + 0.00 cusr 0.00 csys = 9.17 CPU)
Testing server 'MySQL 3.23.22 beta' at 2000-08-17 17:52:30
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): 10 wallclock secs ( 6.60 usr 1.51 sys + 0.00 cusr 0.00 csys = 0.00 CPU)
Test connect/simple select/disconnect
Time for connect+select_simple (10000): 13 wallclock secs ( 7.36 usr 2.24 sys + 0.00 cusr 0.00 csys = 0.00 CPU)
Test simple select
Time for select_simple (10000): 2 wallclock secs ( 0.52 usr 0.49 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): 13 wallclock secs ( 7.08 usr 2.47 sys + 0.00 cusr 0.00 csys = 0.00 CPU)
Testing select 1 row from table
Time to select_1_row (10000): 3 wallclock secs ( 0.74 usr 0.62 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.45 usr 0.58 sys + 0.00 cusr 0.00 csys = 0.00 CPU)
Test select with aritmetic (+)
Time for select_column+column (10000): 3 wallclock secs ( 0.52 usr 0.59 sys + 0.00 cusr 0.00 csys = 0.00 CPU)
Testing retrieval of big records (7000 bytes)
Time to select_big (10000): 6 wallclock secs ( 2.98 usr 1.26 sys + 0.00 cusr 0.00 csys = 0.00 CPU)
Total time: 53 wallclock secs (26.25 usr 9.76 sys + 0.00 cusr 0.00 csys = 0.00 CPU)
Testing server 'MySQL 3.23.39' at 2001-06-05 13:52:26
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): 16 wallclock secs ( 6.84 usr 2.50 sys + 0.00 cusr 0.00 csys = 9.34 CPU)
Test connect/simple select/disconnect
Time for connect+select_simple (10000): 13 wallclock secs ( 6.70 usr 3.21 sys + 0.00 cusr 0.00 csys = 9.91 CPU)
Test simple select
Time for select_simple (10000): 2 wallclock secs ( 0.54 usr 0.49 sys + 0.00 cusr 0.00 csys = 1.03 CPU)
Testing connect/select 1 row from table/disconnect
Time to connect+select_1_row (10000): 15 wallclock secs ( 7.11 usr 3.70 sys + 0.00 cusr 0.00 csys = 10.81 CPU)
Testing select 1 row from table
Time to select_1_row (10000): 3 wallclock secs ( 0.81 usr 0.69 sys + 0.00 cusr 0.00 csys = 1.50 CPU)
Testing select 2 rows from table
Time to select_2_rows (10000): 3 wallclock secs ( 0.67 usr 0.63 sys + 0.00 cusr 0.00 csys = 1.30 CPU)
Test select with aritmetic (+)
Time for select_column+column (10000): 4 wallclock secs ( 0.52 usr 0.46 sys + 0.00 cusr 0.00 csys = 0.98 CPU)
Testing retrieval of big records (65000 bytes)
Time to select_big (10000): 30 wallclock secs (10.79 usr 6.41 sys + 0.00 cusr 0.00 csys = 17.20 CPU)
Total time: 86 wallclock secs (33.98 usr 18.10 sys + 0.00 cusr 0.00 csys = 52.08 CPU)
Testing server 'MySQL 3.23.22 beta' at 2000-08-17 19:16:28
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): 11 wallclock secs ( 6.50 usr 1.98 sys + 0.00 cusr 0.00 csys = 0.00 CPU)
Test connect/simple select/disconnect
Time for connect+select_simple (10000): 12 wallclock secs ( 7.41 usr 2.24 sys + 0.00 cusr 0.00 csys = 0.00 CPU)
Test simple select
Time for select_simple (10000): 2 wallclock secs ( 0.47 usr 0.54 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): 14 wallclock secs ( 7.49 usr 2.28 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.54 usr 0.83 sys + 0.00 cusr 0.00 csys = 0.00 CPU)
Testing select 2 rows from table
Time to select_2_rows (10000): 4 wallclock secs ( 0.55 usr 0.65 sys + 0.00 cusr 0.00 csys = 0.00 CPU)
Test select with aritmetic (+)
Time for select_column+column (10000): 3 wallclock secs ( 0.51 usr 0.73 sys + 0.00 cusr 0.00 csys = 0.00 CPU)
Testing retrieval of big records (7000 bytes)
Time to select_big (10000): 6 wallclock secs ( 3.12 usr 1.22 sys + 0.00 cusr 0.00 csys = 0.00 CPU)
Total time: 54 wallclock secs (26.60 usr 10.48 sys + 0.00 cusr 0.00 csys = 0.00 CPU)
Testing server 'PostgreSQL version ???' at 2000-12-05 5:41:34
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): 125 wallclock secs ( 9.11 usr 3.79 sys + 0.00 cusr 0.00 csys = 0.00 CPU)
Test connect/simple select/disconnect
Time for connect+select_simple (10000): 140 wallclock secs (12.15 usr 5.74 sys + 0.00 cusr 0.00 csys = 0.00 CPU)
Test simple select
Time for select_simple (10000): 4 wallclock secs ( 2.96 usr 0.45 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): 173 wallclock secs (12.56 usr 5.56 sys + 0.00 cusr 0.00 csys = 0.00 CPU)
Testing select 1 row from table
Time to select_1_row (10000): 7 wallclock secs ( 3.10 usr 0.50 sys + 0.00 cusr 0.00 csys = 0.00 CPU)
Testing select 2 rows from table
Time to select_2_rows (10000): 6 wallclock secs ( 2.75 usr 0.54 sys + 0.00 cusr 0.00 csys = 0.00 CPU)
Test select with aritmetic (+)
Time for select_column+column (10000): 9 wallclock secs ( 2.41 usr 0.31 sys + 0.00 cusr 0.00 csys = 0.00 CPU)
Testing retrieval of big records (7000 bytes)
Time to select_big (10000): 8 wallclock secs ( 3.74 usr 0.88 sys + 0.00 cusr 0.00 csys = 0.00 CPU)
Total time: 472 wallclock secs (48.80 usr 17.77 sys + 0.00 cusr 0.00 csys = 0.00 CPU)
Testing server 'PostgreSQL version ???' at 2001-06-03 5:05:01
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): 143 wallclock secs ( 8.01 usr 1.89 sys + 0.00 cusr 0.00 csys = 9.90 CPU)
Test connect/simple select/disconnect
Time for connect+select_simple (10000): 157 wallclock secs (10.42 usr 2.41 sys + 0.00 cusr 0.00 csys = 12.83 CPU)
Test simple select
Time for select_simple (10000): 5 wallclock secs ( 2.73 usr 0.30 sys + 0.00 cusr 0.00 csys = 3.03 CPU)
Testing connect/select 1 row from table/disconnect
Time to connect+select_1_row (10000): 195 wallclock secs (10.94 usr 2.31 sys + 0.00 cusr 0.00 csys = 13.25 CPU)
Testing select 1 row from table
Time to select_1_row (10000): 6 wallclock secs ( 2.25 usr 0.46 sys + 0.00 cusr 0.00 csys = 2.71 CPU)
Testing select 2 rows from table
Time to select_2_rows (10000): 7 wallclock secs ( 2.77 usr 0.38 sys + 0.00 cusr 0.00 csys = 3.15 CPU)
Test select with aritmetic (+)
Time for select_column+column (10000): 8 wallclock secs ( 2.78 usr 0.41 sys + 0.00 cusr 0.00 csys = 3.19 CPU)
Testing retrieval of big records (65000 bytes)
Time to select_big (10000): 34 wallclock secs (11.75 usr 5.84 sys + 0.00 cusr 0.00 csys = 17.59 CPU)
Total time: 555 wallclock secs (51.66 usr 14.01 sys + 0.00 cusr 0.00 csys = 65.67 CPU)
Testing server 'PostgreSQL version 7.1.2' at 2001-06-12 1:39:45
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): 141 wallclock secs ( 7.82 usr 1.62 sys + 0.00 cusr 0.00 csys = 9.44 CPU)
Test connect/simple select/disconnect
Time for connect+select_simple (10000): 154 wallclock secs (10.43 usr 2.60 sys + 0.00 cusr 0.00 csys = 13.03 CPU)
Test simple select
Time for select_simple (10000): 5 wallclock secs ( 2.59 usr 0.54 sys + 0.00 cusr 0.00 csys = 3.13 CPU)
Testing connect/select 1 row from table/disconnect
Time to connect+select_1_row (10000): 192 wallclock secs (10.79 usr 2.47 sys + 0.00 cusr 0.00 csys = 13.26 CPU)
Testing select 1 row from table
Time to select_1_row (10000): 6 wallclock secs ( 2.56 usr 0.45 sys + 0.00 cusr 0.00 csys = 3.01 CPU)
Testing select 2 rows from table
Time to select_2_rows (10000): 6 wallclock secs ( 2.68 usr 0.45 sys + 0.00 cusr 0.00 csys = 3.13 CPU)
Test select with aritmetic (+)
Time for select_column+column (10000): 8 wallclock secs ( 2.73 usr 0.39 sys + 0.00 cusr 0.00 csys = 3.12 CPU)
Testing retrieval of big records (65000 bytes)
Time to select_big_str (10000): 35 wallclock secs (10.82 usr 5.73 sys + 0.00 cusr 0.00 csys = 16.55 CPU)
Total time: 547 wallclock secs (50.45 usr 14.25 sys + 0.00 cusr 0.00 csys = 64.70 CPU)
Testing server 'PostgreSQL version 7.0.2' at 2000-08-17 3:31:12
Testing server 'PostgreSQL version 7.1.2' at 2001-06-11 18:18:15
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): 129 wallclock secs ( 9.33 usr 3.59 sys + 0.00 cusr 0.00 csys = 0.00 CPU)
Time to connect (10000): 140 wallclock secs ( 7.94 usr 1.85 sys + 0.00 cusr 0.00 csys = 9.79 CPU)
Test connect/simple select/disconnect
Time for connect+select_simple (10000): 142 wallclock secs (11.69 usr 5.72 sys + 0.00 cusr 0.00 csys = 0.00 CPU)
Time for connect+select_simple (10000): 155 wallclock secs (10.57 usr 2.71 sys + 0.00 cusr 0.00 csys = 13.28 CPU)
Test simple select
Time for select_simple (10000): 4 wallclock secs ( 2.62 usr 0.47 sys + 0.00 cusr 0.00 csys = 0.00 CPU)
Time for select_simple (10000): 5 wallclock secs ( 2.74 usr 0.38 sys + 0.00 cusr 0.00 csys = 3.12 CPU)
NOTICE: Vacuum: table not found
Time for book-keeping (1): 0 wallclock secs ( 0.01 usr 0.00 sys + 0.00 cusr 0.00 csys = 0.00 CPU)
Time for book-keeping (1): 0 wallclock secs ( 0.00 usr 0.00 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): 176 wallclock secs (12.21 usr 5.95 sys + 0.00 cusr 0.00 csys = 0.00 CPU)
Time to connect+select_1_row (10000): 190 wallclock secs (10.78 usr 2.23 sys + 0.00 cusr 0.00 csys = 13.01 CPU)
Testing select 1 row from table
Time to select_1_row (10000): 6 wallclock secs ( 2.47 usr 0.51 sys + 0.00 cusr 0.00 csys = 0.00 CPU)
Time to select_1_row (10000): 6 wallclock secs ( 2.65 usr 0.43 sys + 0.00 cusr 0.00 csys = 3.08 CPU)
Testing select 2 rows from table
Time to select_2_rows (10000): 7 wallclock secs ( 3.12 usr 0.44 sys + 0.00 cusr 0.00 csys = 0.00 CPU)
Time to select_2_rows (10000): 7 wallclock secs ( 2.81 usr 0.40 sys + 0.00 cusr 0.00 csys = 3.21 CPU)
Test select with aritmetic (+)
Time for select_column+column (10000): 8 wallclock secs ( 2.78 usr 0.39 sys + 0.00 cusr 0.00 csys = 0.00 CPU)
Time for select_column+column (10000): 8 wallclock secs ( 2.90 usr 0.33 sys + 0.00 cusr 0.00 csys = 3.23 CPU)
NOTICE: Vacuum: table not found
Time for book-keeping (1): 1 wallclock secs ( 0.00 usr 0.00 sys + 0.00 cusr 0.00 csys = 0.00 CPU)
Testing retrieval of big records (7000 bytes)
NOTICE: Vacuum: table not found
Time for book-keeping (1): 1 wallclock secs ( 0.00 usr 0.00 sys + 0.00 cusr 0.00 csys = 0.00 CPU)
Testing retrieval of big records (65000 bytes)
Time for book-keeping (1): 0 wallclock secs ( 0.00 usr 0.00 sys + 0.00 cusr 0.00 csys = 0.00 CPU)
Time to select_big (10000): 8 wallclock secs ( 3.71 usr 0.70 sys + 0.00 cusr 0.00 csys = 0.00 CPU)
Time to select_big_str (10000): 37 wallclock secs (12.51 usr 5.97 sys + 0.00 cusr 0.00 csys = 18.48 CPU)
NOTICE: Vacuum: table not found
Time for book-keeping (1): 1 wallclock secs ( 0.01 usr 0.00 sys + 0.00 cusr 0.00 csys = 0.00 CPU)
Time for book-keeping (1): 1 wallclock secs ( 0.01 usr 0.00 sys + 0.00 cusr 0.00 csys = 0.01 CPU)
Total time: 484 wallclock secs (47.96 usr 17.77 sys + 0.00 cusr 0.00 csys = 0.00 CPU)
Total time: 550 wallclock secs (52.92 usr 14.30 sys + 0.00 cusr 0.00 csys = 67.22 CPU)
Testing server 'MySQL 3.23.22 beta' at 2000-08-17 17:53:24
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): 32 wallclock secs ( 1.97 usr 0.49 sys + 0.00 cusr 0.00 csys = 0.00 CPU)
Accessing tables
Time to select_group_when_MANY_tables (10000): 14 wallclock secs ( 0.68 usr 0.63 sys + 0.00 cusr 0.00 csys = 0.00 CPU)
Testing drop
Time for drop_table_when_MANY_tables (10000): 9 wallclock secs ( 0.44 usr 0.49 sys + 0.00 cusr 0.00 csys = 0.00 CPU)
Testing create+drop
Time for create+drop (10000): 26 wallclock secs ( 2.10 usr 0.81 sys + 0.00 cusr 0.00 csys = 0.00 CPU)
Time for create_key+drop (10000): 40 wallclock secs ( 3.64 usr 0.72 sys + 0.00 cusr 0.00 csys = 0.00 CPU)
Total time: 121 wallclock secs ( 8.83 usr 3.14 sys + 0.00 cusr 0.00 csys = 0.00 CPU)
Testing server 'MySQL 3.23.39' at 2001-06-05 13:53:52
Testing the speed of creating and droping tables
Testing with 5000 tables and 10000 loop count
Testing create of tables
Time for create_MANY_tables (5000): 18 wallclock secs ( 1.02 usr 0.62 sys + 0.00 cusr 0.00 csys = 1.64 CPU)
Accessing tables
Time to select_group_when_MANY_tables (5000): 5 wallclock secs ( 0.43 usr 0.87 sys + 0.00 cusr 0.00 csys = 1.30 CPU)
Testing drop
Time for drop_table_when_MANY_tables (5000): 6 wallclock secs ( 0.37 usr 0.63 sys + 0.00 cusr 0.00 csys = 1.00 CPU)
Testing create+drop
Time for create+drop (10000): 33 wallclock secs ( 2.94 usr 0.82 sys + 0.00 cusr 0.00 csys = 3.76 CPU)
Time for create_key+drop (10000): 41 wallclock secs ( 3.05 usr 0.66 sys + 0.00 cusr 0.00 csys = 3.71 CPU)
Total time: 103 wallclock secs ( 7.83 usr 3.60 sys + 0.00 cusr 0.00 csys = 11.43 CPU)
Testing server 'MySQL 3.23.22 beta' at 2000-08-17 19:17:23
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): 35 wallclock secs ( 1.84 usr 0.58 sys + 0.00 cusr 0.00 csys = 0.00 CPU)
Accessing tables
Time to select_group_when_MANY_tables (10000): 6 wallclock secs ( 0.71 usr 0.53 sys + 0.00 cusr 0.00 csys = 0.00 CPU)
Testing drop
Time for drop_table_when_MANY_tables (10000): 15 wallclock secs ( 0.10 usr 0.01 sys + 0.00 cusr 0.00 csys = 0.00 CPU)
Testing create+drop
Time for create+drop (10000): 26 wallclock secs ( 2.17 usr 1.03 sys + 0.00 cusr 0.00 csys = 0.00 CPU)
Time for create_key+drop (10000): 40 wallclock secs ( 3.68 usr 0.86 sys + 0.00 cusr 0.00 csys = 0.00 CPU)
Total time: 122 wallclock secs ( 8.51 usr 3.01 sys + 0.00 cusr 0.00 csys = 0.00 CPU)
Testing server 'PostgreSQL version ???' at 2000-12-05 5:49:26
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): 448 wallclock secs ( 7.42 usr 0.95 sys + 0.00 cusr 0.00 csys = 0.00 CPU)
Accessing tables
Time to select_group_when_MANY_tables (10000): 187 wallclock secs ( 2.71 usr 0.68 sys + 0.00 cusr 0.00 csys = 0.00 CPU)
Testing drop
Time for drop_table_when_MANY_tables (10000): 1324 wallclock secs ( 3.41 usr 0.51 sys + 0.00 cusr 0.00 csys = 0.00 CPU)
Testing create+drop
Time for create+drop (10000): 2954 wallclock secs (11.24 usr 1.81 sys + 0.00 cusr 0.00 csys = 0.00 CPU)
Time for create_key+drop (10000): 4055 wallclock secs (10.98 usr 1.30 sys + 0.00 cusr 0.00 csys = 0.00 CPU)
Total time: 8968 wallclock secs (35.76 usr 5.26 sys + 0.00 cusr 0.00 csys = 0.00 CPU)
Testing server 'PostgreSQL version ???' at 2001-06-03 5:14:17
Testing the speed of creating and droping tables
Testing with 5000 tables and 10000 loop count
Testing create of tables
Time for create_MANY_tables (5000): 160 wallclock secs ( 3.67 usr 1.35 sys + 0.00 cusr 0.00 csys = 5.02 CPU)
Accessing tables
Time to select_group_when_MANY_tables (5000): 15 wallclock secs ( 1.57 usr 0.78 sys + 0.00 cusr 0.00 csys = 2.35 CPU)
Testing drop
Time for drop_table_when_MANY_tables (5000): 772 wallclock secs ( 1.29 usr 0.28 sys + 0.00 cusr 0.00 csys = 1.57 CPU)
Testing create+drop
Time for create+drop (10000): 3280 wallclock secs (10.74 usr 1.89 sys + 0.00 cusr 0.00 csys = 12.63 CPU)
Time for create_key+drop (10000): 5781 wallclock secs (10.70 usr 1.53 sys + 0.00 cusr 0.00 csys = 12.23 CPU)
Total time: 10008 wallclock secs (27.97 usr 5.83 sys + 0.00 cusr 0.00 csys = 33.80 CPU)
Testing server 'PostgreSQL version 7.1.2' at 2001-06-12 1:48:52
Testing the speed of creating and droping tables
Testing with 5000 tables and 10000 loop count
Testing create of tables
Time for create_MANY_tables (5000): 194 wallclock secs ( 6.27 usr 5.72 sys + 0.00 cusr 0.00 csys = 11.99 CPU)
Accessing tables
Time to select_group_when_MANY_tables (5000): 14 wallclock secs ( 1.46 usr 0.28 sys + 0.00 cusr 0.00 csys = 1.74 CPU)
Testing drop
Time for drop_table_when_MANY_tables (5000): 599 wallclock secs ( 1.39 usr 0.38 sys + 0.00 cusr 0.00 csys = 1.77 CPU)
Testing create+drop
Time for create+drop (10000): 2924 wallclock secs (11.10 usr 2.41 sys + 0.00 cusr 0.00 csys = 13.51 CPU)
Time for create_key+drop (10000): 5464 wallclock secs (11.00 usr 2.30 sys + 0.00 cusr 0.00 csys = 13.30 CPU)
Total time: 9195 wallclock secs (31.22 usr 11.10 sys + 0.00 cusr 0.00 csys = 42.32 CPU)
Testing server 'PostgreSQL version 7.0.2' at 2000-08-15 17:09:50
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): 455 wallclock secs ( 8.09 usr 1.12 sys + 0.00 cusr 0.00 csys = 0.00 CPU)
Accessing tables
Time to select_group_when_MANY_tables (10000): 188 wallclock secs ( 3.03 usr 0.46 sys + 0.00 cusr 0.00 csys = 0.00 CPU)
Testing drop
Time for drop_table_when_MANY_tables (10000): 1328 wallclock secs ( 2.91 usr 0.56 sys + 0.00 cusr 0.00 csys = 0.00 CPU)
Testing create+drop
Time for create+drop (10000): 3022 wallclock secs (10.18 usr 1.71 sys + 0.00 cusr 0.00 csys = 0.00 CPU)
Time for create_key+drop (10000): 3752 wallclock secs ( 8.40 usr 1.09 sys + 0.00 cusr 0.00 csys = 0.00 CPU)
Total time: 8745 wallclock secs (32.62 usr 4.94 sys + 0.00 cusr 0.00 csys = 0.00 CPU)
Testing server 'PostgreSQL version 7.1.2' at 2001-06-12 1:48:52
Testing the speed of creating and droping tables
Testing with 5000 tables and 10000 loop count
Testing create of tables
Time for create_MANY_tables (5000): 194 wallclock secs ( 6.27 usr 5.72 sys + 0.00 cusr 0.00 csys = 11.99 CPU)
Accessing tables
Time to select_group_when_MANY_tables (5000): 14 wallclock secs ( 1.46 usr 0.28 sys + 0.00 cusr 0.00 csys = 1.74 CPU)
Testing drop
Time for drop_table_when_MANY_tables (5000): 599 wallclock secs ( 1.39 usr 0.38 sys + 0.00 cusr 0.00 csys = 1.77 CPU)
Testing create+drop
Time for create+drop (10000): 2924 wallclock secs (11.10 usr 2.41 sys + 0.00 cusr 0.00 csys = 13.51 CPU)
Time for create_key+drop (10000): 5464 wallclock secs (11.00 usr 2.30 sys + 0.00 cusr 0.00 csys = 13.30 CPU)
Total time: 9195 wallclock secs (31.22 usr 11.10 sys + 0.00 cusr 0.00 csys = 42.32 CPU)
Testing server 'MySQL 3.23.22 beta' at 2000-08-17 17:55:26
Testing the speed of inserting data into 1 table and do some selects on it.
The tests are done with a table that has 100000 rows.
Generating random keys
Creating tables
Inserting 100000 rows in order
Inserting 100000 rows in reverse order
Inserting 100000 rows in random order
Time for insert (300000): 113 wallclock secs (18.31 usr 11.27 sys + 0.00 cusr 0.00 csys = 0.00 CPU)
Time for insert_duplicates (300000): 113 wallclock secs (18.31 usr 11.27 sys + 0.00 cusr 0.00 csys = 0.00 CPU)
Retrieving data from the table
Time for select_big (10:3000000): 30 wallclock secs (19.98 usr 10.32 sys + 0.00 cusr 0.00 csys = 0.00 CPU)
Time for order_by_key (10:3000000): 31 wallclock secs (19.75 usr 10.54 sys + 0.00 cusr 0.00 csys = 0.00 CPU)
Time for order_by (10:3000000): 47 wallclock secs (19.72 usr 16.45 sys + 0.00 cusr 0.00 csys = 0.00 CPU)
Time for select_diff_key (500:1000): 210 wallclock secs ( 0.28 usr 0.07 sys + 0.00 cusr 0.00 csys = 0.00 CPU)
Time for select_range_prefix (5010:42084): 10 wallclock secs ( 2.48 usr 0.55 sys + 0.00 cusr 0.00 csys = 0.00 CPU)
Time for select_range (5010:42084): 11 wallclock secs ( 2.61 usr 0.61 sys + 0.00 cusr 0.00 csys = 0.00 CPU)
Time for select_key_prefix (200000): 130 wallclock secs (67.36 usr 13.74 sys + 0.00 cusr 0.00 csys = 0.00 CPU)
Time for select_key (200000): 129 wallclock secs (66.05 usr 14.03 sys + 0.00 cusr 0.00 csys = 0.00 CPU)
Test of compares with simple ranges
Time for select_range_prefix (20000:43500): 8 wallclock secs ( 3.59 usr 0.95 sys + 0.00 cusr 0.00 csys = 0.00 CPU)
Time for select_range (20000:43500): 8 wallclock secs ( 3.74 usr 0.79 sys + 0.00 cusr 0.00 csys = 0.00 CPU)
Time for select_group (111): 58 wallclock secs ( 0.06 usr 0.01 sys + 0.00 cusr 0.00 csys = 0.00 CPU)
Time for min_max_on_key (15000): 8 wallclock secs ( 4.40 usr 0.88 sys + 0.00 cusr 0.00 csys = 0.00 CPU)
Time for min_max (60): 31 wallclock secs ( 0.03 usr 0.00 sys + 0.00 cusr 0.00 csys = 0.00 CPU)
Time for count_on_key (100): 56 wallclock secs ( 0.03 usr 0.01 sys + 0.00 cusr 0.00 csys = 0.00 CPU)
Time for count (100): 46 wallclock secs ( 0.07 usr 0.00 sys + 0.00 cusr 0.00 csys = 0.00 CPU)
Time for count_distinct_big (20): 64 wallclock secs ( 0.03 usr 0.01 sys + 0.00 cusr 0.00 csys = 0.00 CPU)
Testing update of keys with functions
Time for update_of_key (500): 25 wallclock secs ( 2.51 usr 2.23 sys + 0.00 cusr 0.00 csys = 0.00 CPU)
Time for update_of_key_big (501): 33 wallclock secs ( 0.06 usr 0.00 sys + 0.00 cusr 0.00 csys = 0.00 CPU)
Testing update with key
Time for update_with_key (100000): 109 wallclock secs (13.71 usr 11.48 sys + 0.00 cusr 0.00 csys = 0.00 CPU)
Testing update of all rows
Time for update_big (500): 65 wallclock secs ( 0.01 usr 0.00 sys + 0.00 cusr 0.00 csys = 0.00 CPU)
Testing delete
Time for delete_key (10000): 4 wallclock secs ( 0.50 usr 0.47 sys + 0.00 cusr 0.00 csys = 0.00 CPU)
Time for delete_big (12): 20 wallclock secs ( 0.00 usr 0.00 sys + 0.00 cusr 0.00 csys = 0.00 CPU)
Insert into table with 16 keys and with a primary key with 16 parts
Time for insert_key (100000): 159 wallclock secs ( 8.91 usr 4.08 sys + 0.00 cusr 0.00 csys = 0.00 CPU)
Testing update of keys
Time for update_of_primary_key_many_keys (256): 67 wallclock secs ( 0.00 usr 0.01 sys + 0.00 cusr 0.00 csys = 0.00 CPU)
Deleting everything from table
Time for delete_big_many_keys (2): 120 wallclock secs ( 0.00 usr 0.00 sys + 0.00 cusr 0.00 csys = 0.00 CPU)
Total time: 1592 wallclock secs (254.20 usr 98.51 sys + 0.00 cusr 0.00 csys = 0.00 CPU)
Testing server 'MySQL 3.23.39' at 2001-06-05 13:55:36
Testing the speed of inserting data into 1 table and do some selects on it.
The tests are done with a table that has 100000 rows.
Generating random keys
Creating tables
Inserting 100000 rows in order
Inserting 100000 rows in reverse order
Inserting 100000 rows in random order
Time for insert (300000): 123 wallclock secs (21.22 usr 12.32 sys + 0.00 cusr 0.00 csys = 33.54 CPU)
Testing insert of duplicates
Time for insert_duplicates (100000): 31 wallclock secs ( 5.06 usr 3.72 sys + 0.00 cusr 0.00 csys = 8.78 CPU)
Retrieving data from the table
Time for select_big (10:3000000): 32 wallclock secs (21.78 usr 10.07 sys + 0.00 cusr 0.00 csys = 31.85 CPU)
Time for order_by_big_key (10:3000000): 33 wallclock secs (23.35 usr 10.15 sys + 0.00 cusr 0.00 csys = 33.50 CPU)
Time for order_by_big_key_desc (10:3000000): 36 wallclock secs (23.47 usr 10.27 sys + 0.00 cusr 0.00 csys = 33.74 CPU)
Time for order_by_big_key_prefix (10:3000000): 33 wallclock secs (22.18 usr 9.81 sys + 0.00 cusr 0.00 csys = 31.99 CPU)
Time for order_by_big_key2 (10:3000000): 32 wallclock secs (22.53 usr 9.81 sys + 0.00 cusr 0.00 csys = 32.34 CPU)
Time for order_by_big_key_diff (10:3000000): 74 wallclock secs (22.66 usr 9.76 sys + 0.00 cusr 0.00 csys = 32.42 CPU)
Time for order_by_big (10:3000000): 78 wallclock secs (22.39 usr 9.83 sys + 0.00 cusr 0.00 csys = 32.22 CPU)
Time for order_by_range (500:125750): 8 wallclock secs ( 1.26 usr 0.49 sys + 0.00 cusr 0.00 csys = 1.75 CPU)
Time for order_by_key_prefix (500:125750): 4 wallclock secs ( 0.97 usr 0.57 sys + 0.00 cusr 0.00 csys = 1.54 CPU)
Time for order_by_key2_diff (500:250500): 9 wallclock secs ( 1.30 usr 0.85 sys + 0.00 cusr 0.00 csys = 2.15 CPU)
Time for select_diff_key (500:1000): 193 wallclock secs ( 0.32 usr 0.04 sys + 0.00 cusr 0.00 csys = 0.36 CPU)
Time for select_range_prefix (5010:42084): 13 wallclock secs ( 2.55 usr 0.51 sys + 0.00 cusr 0.00 csys = 3.06 CPU)
Time for select_range_key2 (5010:42084): 12 wallclock secs ( 2.81 usr 0.68 sys + 0.00 cusr 0.00 csys = 3.49 CPU)
Time for select_key_prefix (200000): 141 wallclock secs (86.32 usr 12.05 sys + 0.00 cusr 0.00 csys = 98.37 CPU)
Time for select_key (200000): 132 wallclock secs (53.98 usr 10.53 sys + 0.00 cusr 0.00 csys = 64.51 CPU)
Time for select_key_return_key (200000): 125 wallclock secs (59.92 usr 12.00 sys + 0.00 cusr 0.00 csys = 71.92 CPU)
Time for select_key2 (200000): 139 wallclock secs (78.61 usr 11.08 sys + 0.00 cusr 0.00 csys = 89.69 CPU)
Time for select_key2_return_key (200000): 131 wallclock secs (64.58 usr 9.61 sys + 0.00 cusr 0.00 csys = 74.19 CPU)
Time for select_key2_return_prim (200000): 134 wallclock secs (72.33 usr 11.34 sys + 0.00 cusr 0.00 csys = 83.67 CPU)
Test of compares with simple ranges
Time for select_range_prefix (20000:43500): 9 wallclock secs ( 4.00 usr 0.89 sys + 0.00 cusr 0.00 csys = 4.89 CPU)
Time for select_range_key2 (20000:43500): 9 wallclock secs ( 4.34 usr 0.72 sys + 0.00 cusr 0.00 csys = 5.06 CPU)
Time for select_group (111): 55 wallclock secs ( 0.02 usr 0.04 sys + 0.00 cusr 0.00 csys = 0.06 CPU)
Time for min_max_on_key (15000): 8 wallclock secs ( 5.12 usr 0.76 sys + 0.00 cusr 0.00 csys = 5.88 CPU)
Time for min_max (60): 30 wallclock secs ( 0.04 usr 0.01 sys + 0.00 cusr 0.00 csys = 0.05 CPU)
Time for count_on_key (100): 52 wallclock secs ( 0.03 usr 0.02 sys + 0.00 cusr 0.00 csys = 0.05 CPU)
Time for count (100): 45 wallclock secs ( 0.01 usr 0.00 sys + 0.00 cusr 0.00 csys = 0.01 CPU)
Time for count_distinct_big (20): 98 wallclock secs ( 0.01 usr 0.00 sys + 0.00 cusr 0.00 csys = 0.01 CPU)
Testing update of keys with functions
Time for update_of_key (50000): 25 wallclock secs ( 2.62 usr 1.44 sys + 0.00 cusr 0.00 csys = 4.06 CPU)
Time for update_of_key_big (501): 35 wallclock secs ( 0.05 usr 0.04 sys + 0.00 cusr 0.00 csys = 0.09 CPU)
Testing update with key
Time for update_with_key (300000): 119 wallclock secs (18.44 usr 12.64 sys + 0.00 cusr 0.00 csys = 31.08 CPU)
Time for update_with_key_prefix (100000): 36 wallclock secs ( 6.23 usr 3.85 sys + 0.00 cusr 0.00 csys = 10.08 CPU)
Testing update of all rows
Time for update_big (10): 64 wallclock secs ( 0.00 usr 0.00 sys + 0.00 cusr 0.00 csys = 0.00 CPU)
Testing left outer join
Time for outer_join_on_key (10:10): 60 wallclock secs ( 0.00 usr 0.00 sys + 0.00 cusr 0.00 csys = 0.00 CPU)
Time for outer_join (10:10): 110 wallclock secs ( 0.00 usr 0.00 sys + 0.00 cusr 0.00 csys = 0.00 CPU)
Time for outer_join_found (10:10): 107 wallclock secs ( 0.00 usr 0.00 sys + 0.00 cusr 0.00 csys = 0.00 CPU)
Time for outer_join_not_found (500:10): 59 wallclock secs ( 0.00 usr 0.00 sys + 0.00 cusr 0.00 csys = 0.00 CPU)
Testing INSERT INTO ... SELECT
Time for insert_select_1_key (1): 7 wallclock secs ( 0.00 usr 0.00 sys + 0.00 cusr 0.00 csys = 0.00 CPU)
Time for insert_select_2_keys (1): 9 wallclock secs ( 0.00 usr 0.00 sys + 0.00 cusr 0.00 csys = 0.00 CPU)
Time for drop table(2): 0 wallclock secs ( 0.00 usr 0.00 sys + 0.00 cusr 0.00 csys = 0.00 CPU)
Testing delete
Time for delete_key (10000): 4 wallclock secs ( 0.76 usr 0.29 sys + 0.00 cusr 0.00 csys = 1.05 CPU)
Time for delete_all (12): 17 wallclock secs ( 0.00 usr 0.00 sys + 0.00 cusr 0.00 csys = 0.00 CPU)
Insert into table with 16 keys and with a primary key with 16 parts
Time for insert_key (100000): 137 wallclock secs ( 9.91 usr 6.26 sys + 0.00 cusr 0.00 csys = 16.17 CPU)
Testing update of keys
Time for update_of_primary_key_many_keys (256): 47 wallclock secs ( 0.01 usr 0.02 sys + 0.00 cusr 0.00 csys = 0.03 CPU)
Deleting rows from the table
Time for delete_big_many_keys (128): 75 wallclock secs ( 0.03 usr 0.00 sys + 0.00 cusr 0.00 csys = 0.03 CPU)
Deleting everything from table
Time for delete_all_many_keys (1): 75 wallclock secs ( 0.03 usr 0.00 sys + 0.00 cusr 0.00 csys = 0.03 CPU)
Total time: 2736 wallclock secs (661.21 usr 182.47 sys + 0.00 cusr 0.00 csys = 843.68 CPU)
Testing server 'MySQL 3.23.22 beta' at 2000-08-17 19:19:26
Testing the speed of inserting data into 1 table and do some selects on it.
The tests are done with a table that has 100000 rows.
Generating random keys
Creating tables
Inserting 100000 rows in order
Inserting 100000 rows in reverse order
Inserting 100000 rows in random order
Time for insert (300000): 82 wallclock secs (17.82 usr 12.50 sys + 0.00 cusr 0.00 csys = 0.00 CPU)
Time for insert_duplicates (300000): 82 wallclock secs (17.82 usr 12.50 sys + 0.00 cusr 0.00 csys = 0.00 CPU)
Retrieving data from the table
Time for select_big (10:3000000): 31 wallclock secs (19.92 usr 10.79 sys + 0.00 cusr 0.00 csys = 0.00 CPU)
Time for order_by_key (10:3000000): 31 wallclock secs (20.12 usr 10.64 sys + 0.00 cusr 0.00 csys = 0.00 CPU)
Time for order_by (10:3000000): 48 wallclock secs (20.14 usr 16.88 sys + 0.00 cusr 0.00 csys = 0.00 CPU)
Time for select_diff_key (500:1000): 205 wallclock secs ( 0.19 usr 0.03 sys + 0.00 cusr 0.00 csys = 0.00 CPU)
Time for select_range_prefix (5010:42084): 11 wallclock secs ( 2.64 usr 0.79 sys + 0.00 cusr 0.00 csys = 0.00 CPU)
Time for select_range (5010:42084): 10 wallclock secs ( 2.77 usr 0.54 sys + 0.00 cusr 0.00 csys = 0.00 CPU)
Time for select_key_prefix (200000): 127 wallclock secs (65.92 usr 14.67 sys + 0.00 cusr 0.00 csys = 0.00 CPU)
Time for select_key (200000): 125 wallclock secs (67.84 usr 14.15 sys + 0.00 cusr 0.00 csys = 0.00 CPU)
Test of compares with simple ranges
Time for select_range_prefix (20000:43500): 8 wallclock secs ( 3.45 usr 1.03 sys + 0.00 cusr 0.00 csys = 0.00 CPU)
Time for select_range (20000:43500): 7 wallclock secs ( 3.71 usr 0.90 sys + 0.00 cusr 0.00 csys = 0.00 CPU)
Time for select_group (111): 58 wallclock secs ( 0.04 usr 0.03 sys + 0.00 cusr 0.00 csys = 0.00 CPU)
Time for min_max_on_key (15000): 8 wallclock secs ( 4.68 usr 1.01 sys + 0.00 cusr 0.00 csys = 0.00 CPU)
Time for min_max (60): 32 wallclock secs ( 0.05 usr 0.00 sys + 0.00 cusr 0.00 csys = 0.00 CPU)
Time for count_on_key (100): 56 wallclock secs ( 0.03 usr 0.01 sys + 0.00 cusr 0.00 csys = 0.00 CPU)
Time for count (100): 46 wallclock secs ( 0.02 usr 0.00 sys + 0.00 cusr 0.00 csys = 0.00 CPU)
Time for count_distinct_big (20): 63 wallclock secs ( 0.02 usr 0.00 sys + 0.00 cusr 0.00 csys = 0.00 CPU)
Testing update of keys with functions
Time for update_of_key (500): 23 wallclock secs ( 2.80 usr 2.31 sys + 0.00 cusr 0.00 csys = 0.00 CPU)
Time for update_of_key_big (501): 33 wallclock secs ( 0.02 usr 0.01 sys + 0.00 cusr 0.00 csys = 0.00 CPU)
Testing update with key
Time for update_with_key (100000): 97 wallclock secs (14.16 usr 13.03 sys + 0.00 cusr 0.00 csys = 0.00 CPU)
Testing update of all rows
Time for update_big (500): 65 wallclock secs ( 0.00 usr 0.00 sys + 0.00 cusr 0.00 csys = 0.00 CPU)
Testing delete
Time for delete_key (10000): 3 wallclock secs ( 0.44 usr 0.38 sys + 0.00 cusr 0.00 csys = 0.00 CPU)
Time for delete_big (12): 17 wallclock secs ( 0.00 usr 0.00 sys + 0.00 cusr 0.00 csys = 0.00 CPU)
Insert into table with 16 keys and with a primary key with 16 parts
Time for insert_key (100000): 91 wallclock secs ( 8.12 usr 4.12 sys + 0.00 cusr 0.00 csys = 0.00 CPU)
Testing update of keys
Time for update_of_primary_key_many_keys (256): 54 wallclock secs ( 0.04 usr 0.01 sys + 0.00 cusr 0.00 csys = 0.00 CPU)
Deleting everything from table
Time for delete_big_many_keys (2): 1 wallclock secs ( 0.00 usr 0.00 sys + 0.00 cusr 0.00 csys = 0.00 CPU)
Total time: 1332 wallclock secs (254.96 usr 103.83 sys + 0.00 cusr 0.00 csys = 0.00 CPU)
Testing server 'PostgreSQL version ???' at 2000-12-05 8:18:54
Testing the speed of inserting data into 1 table and do some selects on it.
The tests are done with a table that has 100000 rows.
Generating random keys
Creating tables
Inserting 100000 rows in order
Inserting 100000 rows in reverse order
Inserting 100000 rows in random order
Time for insert (300000): 7486 wallclock secs (94.98 usr 16.58 sys + 0.00 cusr 0.00 csys = 0.00 CPU)
Testing insert of duplicates
Time for insert_duplicates (100000): 3055 wallclock secs (60.75 usr 8.53 sys + 0.00 cusr 0.00 csys = 0.00 CPU)
Retrieving data from the table
Time for select_big (10:3000000): 54 wallclock secs (21.95 usr 0.77 sys + 0.00 cusr 0.00 csys = 0.00 CPU)
Time for order_by_big_key (10:3000000): 115 wallclock secs (22.06 usr 0.67 sys + 0.00 cusr 0.00 csys = 0.00 CPU)
Time for order_by_big_key_desc (10:3000000): 116 wallclock secs (22.15 usr 0.66 sys + 0.00 cusr 0.00 csys = 0.00 CPU)
Time for order_by_big_key2 (10:3000000): 118 wallclock secs (22.07 usr 0.53 sys + 0.00 cusr 0.00 csys = 0.00 CPU)
Time for order_by_big_key_diff (10:3000000): 126 wallclock secs (22.20 usr 0.79 sys + 0.00 cusr 0.00 csys = 0.00 CPU)
Time for order_by_big (10:3000000): 121 wallclock secs (21.92 usr 0.67 sys + 0.00 cusr 0.00 csys = 0.00 CPU)
Time for order_by_range (500:125750): 16 wallclock secs ( 1.21 usr 0.02 sys + 0.00 cusr 0.00 csys = 0.00 CPU)
Time for order_by_key (500:125750): 15 wallclock secs ( 1.09 usr 0.06 sys + 0.00 cusr 0.00 csys = 0.00 CPU)
Time for order_by_key2_diff (500:250500): 19 wallclock secs ( 2.00 usr 0.06 sys + 0.00 cusr 0.00 csys = 0.00 CPU)
Time for select_diff_key (500:1000): 13 wallclock secs ( 0.24 usr 0.01 sys + 0.00 cusr 0.00 csys = 0.00 CPU)
Note: Query took longer then time-limit: 600
Estimating end time based on:
180 queries in 180 loops of 5000 loops took 653 seconds
Estimated time for select_range_prefix (5000:1512): 18138 wallclock secs ( 5.00 usr 0.28 sys + 0.00 cusr 0.00 csys = 0.00 CPU)
Note: Query took longer then time-limit: 600
Estimating end time based on:
165 queries in 165 loops of 5000 loops took 614 seconds
Estimated time for select_range_key2 (5000:1386): 18606 wallclock secs ( 3.03 usr 0.00 sys + 0.00 cusr 0.00 csys = 0.00 CPU)
Note: Query took longer then time-limit: 600
Estimating end time based on:
24340 queries in 12170 loops of 100000 loops took 601 seconds
Estimated time for select_key_prefix (200000): 4938 wallclock secs (67.63 usr 10.85 sys + 0.00 cusr 0.00 csys = 0.00 CPU)
Note: Query took longer then time-limit: 600
Estimating end time based on:
24198 queries in 12099 loops of 100000 loops took 601 seconds
Estimated time for select_key (200000): 4967 wallclock secs (68.44 usr 12.65 sys + 0.00 cusr 0.00 csys = 0.00 CPU)
Note: Query took longer then time-limit: 600
Estimating end time based on:
24362 queries in 12181 loops of 100000 loops took 601 seconds
Estimated time for select_key2 (200000): 4933 wallclock secs (67.48 usr 11.08 sys + 0.00 cusr 0.00 csys = 0.00 CPU)
Test of compares with simple ranges
Note: Query took longer then time-limit: 600
Estimating end time based on:
1920 queries in 48 loops of 500 loops took 603 seconds
Estimated time for select_range_prefix (20000:4176): 6281 wallclock secs ( 4.69 usr 0.52 sys + 0.00 cusr 0.00 csys = 0.00 CPU)
Note: Query took longer then time-limit: 600
Estimating end time based on:
1480 queries in 37 loops of 500 loops took 611 seconds
Estimated time for select_range_key2 (20000:3219): 8256 wallclock secs ( 4.59 usr 1.08 sys + 0.00 cusr 0.00 csys = 0.00 CPU)
Time for select_group (111): 240 wallclock secs ( 0.03 usr 0.01 sys + 0.00 cusr 0.00 csys = 0.00 CPU)
Note: Query took longer then time-limit: 600
Estimating end time based on:
1314 queries in 219 loops of 2500 loops took 603 seconds
Estimated time for min_max_on_key (15000): 6883 wallclock secs ( 4.00 usr 0.46 sys + 0.00 cusr 0.00 csys = 0.00 CPU)
Time for min_max (60): 58 wallclock secs ( 0.02 usr 0.01 sys + 0.00 cusr 0.00 csys = 0.00 CPU)
Time for count_on_key (100): 120 wallclock secs ( 0.03 usr 0.00 sys + 0.00 cusr 0.00 csys = 0.00 CPU)
Time for count (100): 130 wallclock secs ( 0.01 usr 0.03 sys + 0.00 cusr 0.00 csys = 0.00 CPU)
Time for count_distinct_big (20): 143 wallclock secs ( 0.02 usr 0.00 sys + 0.00 cusr 0.00 csys = 0.00 CPU)
Testing update of keys with functions
Time for update_of_key (50000): 2460 wallclock secs (15.33 usr 3.09 sys + 0.00 cusr 0.00 csys = 0.00 CPU)
Time for update_of_key_big (501): 444 wallclock secs ( 0.20 usr 0.00 sys + 0.00 cusr 0.00 csys = 0.00 CPU)
Testing update with key
Time for update_with_key (300000): 14806 wallclock secs (89.73 usr 16.29 sys + 0.00 cusr 0.00 csys = 0.00 CPU)
Testing update of all rows
Time for update_big (10): 1894 wallclock secs ( 0.02 usr 0.00 sys + 0.00 cusr 0.00 csys = 0.00 CPU)
Testing INSERT INTO ... SELECT
Time for insert_select_1_key (1): 49 wallclock secs ( 0.00 usr 0.00 sys + 0.00 cusr 0.00 csys = 0.00 CPU)
Time for insert_select_2_keys (1): 43 wallclock secs ( 0.00 usr 0.00 sys + 0.00 cusr 0.00 csys = 0.00 CPU)
Time for drop table(2): 20 wallclock secs ( 0.01 usr 0.00 sys + 0.00 cusr 0.00 csys = 0.00 CPU)
Testing delete
Time for delete_key (10000): 283 wallclock secs ( 2.91 usr 0.52 sys + 0.00 cusr 0.00 csys = 0.00 CPU)
Time for delete_all (12): 341 wallclock secs ( 0.00 usr 0.00 sys + 0.00 cusr 0.00 csys = 0.00 CPU)
Insert into table with 16 keys and with a primary key with 16 parts
Time for insert_key (100000): 3693 wallclock secs (33.29 usr 5.64 sys + 0.00 cusr 0.00 csys = 0.00 CPU)
Testing update of keys
Time for update_of_primary_key_many_keys (256): 1164 wallclock secs ( 0.08 usr 0.01 sys + 0.00 cusr 0.00 csys = 0.00 CPU)
Deleting rows from the table
Time for delete_big_many_keys (128): 30 wallclock secs ( 0.07 usr 0.00 sys + 0.00 cusr 0.00 csys = 0.00 CPU)
Deleting everything from table
Time for delete_all_many_keys (1): 31 wallclock secs ( 0.07 usr 0.00 sys + 0.00 cusr 0.00 csys = 0.00 CPU)
Estimated total time: 110214 wallclock secs (659.27 usr 91.88 sys + 0.00 cusr 0.00 csys = 0.00 CPU)
Testing server 'PostgreSQL version ???' at 2001-06-03 8:01:05
Testing the speed of inserting data into 1 table and do some selects on it.
The tests are done with a table that has 100000 rows.
Generating random keys
Creating tables
Inserting 100000 rows in order
Inserting 100000 rows in reverse order
Inserting 100000 rows in random order
Time for insert (300000): 302 wallclock secs (89.07 usr 22.07 sys + 0.00 cusr 0.00 csys = 111.14 CPU)
Testing insert of duplicates
Time for insert_duplicates (100000): 120 wallclock secs (30.53 usr 10.61 sys + 0.00 cusr 0.00 csys = 41.14 CPU)
Retrieving data from the table
Time for select_big (10:3000000): 58 wallclock secs (21.31 usr 3.95 sys + 0.00 cusr 0.00 csys = 25.26 CPU)
Time for order_by_big_key (10:3000000): 145 wallclock secs (24.01 usr 1.27 sys + 0.00 cusr 0.00 csys = 25.28 CPU)
Time for order_by_big_key_desc (10:3000000): 145 wallclock secs (23.93 usr 1.27 sys + 0.00 cusr 0.00 csys = 25.20 CPU)
Time for order_by_big_key_prefix (10:3000000): 133 wallclock secs (21.16 usr 0.80 sys + 0.00 cusr 0.00 csys = 21.96 CPU)
Time for order_by_big_key2 (10:3000000): 132 wallclock secs (21.28 usr 0.64 sys + 0.00 cusr 0.00 csys = 21.92 CPU)
Time for order_by_big_key_diff (10:3000000): 138 wallclock secs (21.30 usr 0.56 sys + 0.00 cusr 0.00 csys = 21.86 CPU)
Time for order_by_big (10:3000000): 148 wallclock secs (21.11 usr 0.72 sys + 0.00 cusr 0.00 csys = 21.83 CPU)
Time for order_by_range (500:125750): 4 wallclock secs ( 1.13 usr 0.06 sys + 0.00 cusr 0.00 csys = 1.19 CPU)
Time for order_by_key_prefix (500:125750): 4 wallclock secs ( 1.04 usr 0.08 sys + 0.00 cusr 0.00 csys = 1.12 CPU)
Time for order_by_key2_diff (500:250500): 7 wallclock secs ( 1.94 usr 0.03 sys + 0.00 cusr 0.00 csys = 1.97 CPU)
Time for select_diff_key (500:1000): 0 wallclock secs ( 0.21 usr 0.02 sys + 0.00 cusr 0.00 csys = 0.23 CPU)
Note: Query took longer then time-limit: 600
Estimating end time based on:
210 queries in 210 loops of 5010 loops took 616 seconds
Estimated time for select_range_prefix (5010:1764): 14696 wallclock secs ( 2.62 usr 0.48 sys + 0.00 cusr 0.00 csys = 3.10 CPU)
Note: Query took longer then time-limit: 600
Estimating end time based on:
210 queries in 210 loops of 5010 loops took 615 seconds
Estimated time for select_range_key2 (5010:1764): 14672 wallclock secs ( 1.67 usr 0.24 sys + 0.00 cusr 0.00 csys = 1.91 CPU)
Time for select_key_prefix (200000): 208 wallclock secs (66.62 usr 8.81 sys + 0.00 cusr 0.00 csys = 75.43 CPU)
Time for select_key (200000): 243 wallclock secs (68.03 usr 8.10 sys + 0.00 cusr 0.00 csys = 76.13 CPU)
Time for select_key_return_key (200000): 239 wallclock secs (66.86 usr 8.37 sys + 0.00 cusr 0.00 csys = 75.23 CPU)
Time for select_key2 (200000): 208 wallclock secs (66.48 usr 8.68 sys + 0.00 cusr 0.00 csys = 75.16 CPU)
Time for select_key2_return_key (200000): 200 wallclock secs (66.41 usr 7.77 sys + 0.00 cusr 0.00 csys = 74.18 CPU)
Time for select_key2_return_prim (200000): 204 wallclock secs (64.75 usr 7.90 sys + 0.00 cusr 0.00 csys = 72.65 CPU)
Test of compares with simple ranges
Note: Query took longer then time-limit: 600
Estimating end time based on:
2160 queries in 54 loops of 500 loops took 610 seconds
Estimated time for select_range_prefix (20000:4698): 5648 wallclock secs ( 3.70 usr 0.56 sys + 0.00 cusr 0.00 csys = 4.26 CPU)
Note: Query took longer then time-limit: 600
Estimating end time based on:
2120 queries in 53 loops of 500 loops took 601 seconds
Estimated time for select_range_key2 (20000:4611): 5669 wallclock secs ( 2.55 usr 0.28 sys + 0.00 cusr 0.00 csys = 2.83 CPU)
Time for select_group (111): 274 wallclock secs ( 0.04 usr 0.01 sys + 0.00 cusr 0.00 csys = 0.05 CPU)
Note: Query took longer then time-limit: 600
Estimating end time based on:
1320 queries in 220 loops of 2500 loops took 601 seconds
Estimated time for min_max_on_key (15000): 6829 wallclock secs ( 5.23 usr 0.91 sys + 0.00 cusr 0.00 csys = 6.14 CPU)
Time for min_max (60): 60 wallclock secs ( 0.02 usr 0.00 sys + 0.00 cusr 0.00 csys = 0.02 CPU)
Time for count_on_key (100): 116 wallclock secs ( 0.02 usr 0.00 sys + 0.00 cusr 0.00 csys = 0.02 CPU)
Time for count (100): 131 wallclock secs ( 0.03 usr 0.00 sys + 0.00 cusr 0.00 csys = 0.03 CPU)
Time for count_distinct_big (20): 201 wallclock secs ( 0.03 usr 0.00 sys + 0.00 cusr 0.00 csys = 0.03 CPU)
Testing update of keys with functions
Time for update_of_key (50000): 136 wallclock secs (16.21 usr 11.85 sys + 0.00 cusr 0.00 csys = 28.06 CPU)
Time for update_of_key_big (501): 320 wallclock secs ( 0.16 usr 0.09 sys + 0.00 cusr 0.00 csys = 0.25 CPU)
Testing update with key
Time for update_with_key (300000): 518 wallclock secs (89.50 usr 33.03 sys + 0.00 cusr 0.00 csys = 122.53 CPU)
Time for update_with_key_prefix (100000): 186 wallclock secs (30.32 usr 15.83 sys + 0.00 cusr 0.00 csys = 46.15 CPU)
Testing update of all rows
Time for update_big (10): 6046 wallclock secs ( 0.01 usr 0.00 sys + 0.00 cusr 0.00 csys = 0.01 CPU)
Testing left outer join
Time for outer_join_on_key (10:10): 2307 wallclock secs ( 0.00 usr 0.00 sys + 0.00 cusr 0.00 csys = 0.00 CPU)
Time for outer_join (10:10): 2539 wallclock secs ( 0.00 usr 0.01 sys + 0.00 cusr 0.00 csys = 0.01 CPU)
Time for outer_join_found (10:10): 2515 wallclock secs ( 0.00 usr 0.00 sys + 0.00 cusr 0.00 csys = 0.00 CPU)
Note: Query took longer then time-limit: 600
Estimating end time based on:
3 queries in 3 loops of 500 loops took 748 seconds
Estimated time for outer_join_not_found (500:500): 124666 wallclock secs ( 0.00 usr 0.00 sys + 0.00 cusr 0.00 csys = 0.00 CPU)
Testing INSERT INTO ... SELECT
Time for insert_select_1_key (1): 86 wallclock secs ( 0.00 usr 0.00 sys + 0.00 cusr 0.00 csys = 0.00 CPU)
Time for insert_select_2_keys (1): 196 wallclock secs ( 0.00 usr 0.00 sys + 0.00 cusr 0.00 csys = 0.00 CPU)
Time for drop table(2): 22 wallclock secs ( 0.00 usr 0.00 sys + 0.00 cusr 0.00 csys = 0.00 CPU)
Testing delete
Time for delete_key (10000): 85 wallclock secs ( 3.19 usr 0.48 sys + 0.00 cusr 0.00 csys = 3.67 CPU)
Time for delete_all (12): 2478 wallclock secs ( 0.01 usr 0.00 sys + 0.00 cusr 0.00 csys = 0.01 CPU)
Insert into table with 16 keys and with a primary key with 16 parts
Time for insert_key (100000): 804 wallclock secs (47.08 usr 47.06 sys + 0.00 cusr 0.00 csys = 94.14 CPU)
Testing update of keys
Time for update_of_primary_key_many_keys (256): 5365 wallclock secs ( 0.16 usr 0.03 sys + 0.00 cusr 0.00 csys = 0.19 CPU)
Deleting rows from the table
Time for delete_big_many_keys (128): 93 wallclock secs ( 0.05 usr 0.00 sys + 0.00 cusr 0.00 csys = 0.05 CPU)
Deleting everything from table
Time for delete_all_many_keys (1): 94 wallclock secs ( 0.05 usr 0.00 sys + 0.00 cusr 0.00 csys = 0.05 CPU)
Estimated total time: 199360 wallclock secs (879.85 usr 202.59 sys + 0.00 cusr 0.00 csys = 1082.45 CPU)
Testing server 'PostgreSQL version 7.1.2' at 2001-06-12 4:22:08
Testing the speed of inserting data into 1 table and do some selects on it.
The tests are done with a table that has 100000 rows.
Generating random keys
Creating tables
Inserting 100000 rows in order
Inserting 100000 rows in reverse order
Inserting 100000 rows in random order
Time for insert (300000): 304 wallclock secs (88.91 usr 24.12 sys + 0.00 cusr 0.00 csys = 113.03 CPU)
Testing insert of duplicates
Time for insert_duplicates (100000): 120 wallclock secs (29.00 usr 13.77 sys + 0.00 cusr 0.00 csys = 42.77 CPU)
Retrieving data from the table
Time for select_big (10:3000000): 61 wallclock secs (22.36 usr 3.32 sys + 0.00 cusr 0.00 csys = 25.68 CPU)
Time for order_by_big_key (10:3000000): 145 wallclock secs (26.12 usr 1.23 sys + 0.00 cusr 0.00 csys = 27.35 CPU)
Time for order_by_big_key_desc (10:3000000): 145 wallclock secs (25.80 usr 1.41 sys + 0.00 cusr 0.00 csys = 27.21 CPU)
Time for order_by_big_key_prefix (10:3000000): 132 wallclock secs (22.46 usr 0.83 sys + 0.00 cusr 0.00 csys = 23.29 CPU)
Time for order_by_big_key2 (10:3000000): 133 wallclock secs (22.62 usr 0.93 sys + 0.00 cusr 0.00 csys = 23.55 CPU)
Time for order_by_big_key_diff (10:3000000): 139 wallclock secs (22.46 usr 0.67 sys + 0.00 cusr 0.00 csys = 23.13 CPU)
Time for order_by_big (10:3000000): 146 wallclock secs (22.57 usr 0.64 sys + 0.00 cusr 0.00 csys = 23.21 CPU)
Time for order_by_range (500:125750): 4 wallclock secs ( 1.11 usr 0.04 sys + 0.00 cusr 0.00 csys = 1.15 CPU)
Time for order_by_key_prefix (500:125750): 4 wallclock secs ( 1.12 usr 0.06 sys + 0.00 cusr 0.00 csys = 1.18 CPU)
Time for order_by_key2_diff (500:250500): 7 wallclock secs ( 2.09 usr 0.04 sys + 0.00 cusr 0.00 csys = 2.13 CPU)
Time for select_diff_key (500:1000): 0 wallclock secs ( 0.16 usr 0.02 sys + 0.00 cusr 0.00 csys = 0.18 CPU)
Note: Query took longer then time-limit: 600
Estimating end time based on:
195 queries in 195 loops of 5010 loops took 627 seconds
Estimated time for select_range_prefix (5010:1638): 16109 wallclock secs ( 2.83 usr 0.00 sys + 0.00 cusr 0.00 csys = 2.83 CPU)
Note: Query took longer then time-limit: 600
Estimating end time based on:
195 queries in 195 loops of 5010 loops took 626 seconds
Estimated time for select_range_key2 (5010:1638): 16083 wallclock secs ( 1.80 usr 0.00 sys + 0.00 cusr 0.00 csys = 1.80 CPU)
Time for select_key_prefix (200000): 210 wallclock secs (67.51 usr 8.60 sys + 0.00 cusr 0.00 csys = 76.11 CPU)
Time for select_key (200000): 245 wallclock secs (69.03 usr 8.64 sys + 0.00 cusr 0.00 csys = 77.67 CPU)
Time for select_key_return_key (200000): 240 wallclock secs (67.26 usr 8.61 sys + 0.00 cusr 0.00 csys = 75.87 CPU)
Time for select_key2 (200000): 209 wallclock secs (67.94 usr 8.08 sys + 0.00 cusr 0.00 csys = 76.02 CPU)
Time for select_key2_return_key (200000): 201 wallclock secs (63.19 usr 8.05 sys + 0.00 cusr 0.00 csys = 71.24 CPU)
Time for select_key2_return_prim (200000): 204 wallclock secs (64.84 usr 7.89 sys + 0.00 cusr 0.00 csys = 72.73 CPU)
Test of compares with simple ranges
Note: Query took longer then time-limit: 600
Estimating end time based on:
2080 queries in 52 loops of 500 loops took 612 seconds
Estimated time for select_range_prefix (20000:4524): 5884 wallclock secs ( 3.37 usr 0.48 sys + 0.00 cusr 0.00 csys = 3.85 CPU)
Note: Query took longer then time-limit: 600
Estimating end time based on:
2040 queries in 51 loops of 500 loops took 601 seconds
Estimated time for select_range_key2 (20000:4437): 5892 wallclock secs ( 4.02 usr 0.10 sys + 0.00 cusr 0.00 csys = 4.12 CPU)
Time for select_group (111): 272 wallclock secs ( 0.03 usr 0.00 sys + 0.00 cusr 0.00 csys = 0.03 CPU)
Note: Query took longer then time-limit: 600
Estimating end time based on:
1410 queries in 235 loops of 2500 loops took 602 seconds
Estimated time for min_max_on_key (15000): 6404 wallclock secs ( 4.36 usr 0.96 sys + 0.00 cusr 0.00 csys = 5.32 CPU)
Time for min_max (60): 59 wallclock secs ( 0.03 usr 0.00 sys + 0.00 cusr 0.00 csys = 0.03 CPU)
Time for count_on_key (100): 114 wallclock secs ( 0.00 usr 0.01 sys + 0.00 cusr 0.00 csys = 0.01 CPU)
Time for count (100): 131 wallclock secs ( 0.06 usr 0.00 sys + 0.00 cusr 0.00 csys = 0.06 CPU)
Time for count_distinct_big (20): 203 wallclock secs ( 0.01 usr 0.00 sys + 0.00 cusr 0.00 csys = 0.01 CPU)
Testing update of keys with functions
Time for update_of_key (50000): 119 wallclock secs (16.20 usr 10.81 sys + 0.00 cusr 0.00 csys = 27.01 CPU)
Time for update_of_key_big (501): 333 wallclock secs ( 0.21 usr 0.21 sys + 0.00 cusr 0.00 csys = 0.42 CPU)
Testing update with key
Time for update_with_key (300000): 567 wallclock secs (90.20 usr 25.08 sys + 0.00 cusr 0.00 csys = 115.28 CPU)
Time for update_with_key_prefix (100000): 244 wallclock secs (29.03 usr 5.64 sys + 0.00 cusr 0.00 csys = 34.67 CPU)
Testing update of all rows
Time for update_big (10): 6612 wallclock secs ( 0.00 usr 0.00 sys + 0.00 cusr 0.00 csys = 0.00 CPU)
Testing left outer join
Time for outer_join_on_key (10:10): 3961 wallclock secs ( 0.00 usr 0.00 sys + 0.00 cusr 0.00 csys = 0.00 CPU)
Time for outer_join (10:10): 4093 wallclock secs ( 0.00 usr 0.00 sys + 0.00 cusr 0.00 csys = 0.00 CPU)
Time for outer_join_found (10:10): 4086 wallclock secs ( 0.00 usr 0.00 sys + 0.00 cusr 0.00 csys = 0.00 CPU)
Note: Query took longer then time-limit: 600
Estimating end time based on:
2 queries in 2 loops of 500 loops took 814 seconds
Estimated time for outer_join_not_found (500:500): 203500 wallclock secs ( 0.00 usr 0.00 sys + 0.00 cusr 0.00 csys = 0.00 CPU)
Testing INSERT INTO ... SELECT
Time for insert_select_1_key (1): 111 wallclock secs ( 0.00 usr 0.00 sys + 0.00 cusr 0.00 csys = 0.00 CPU)
Time for insert_select_2_keys (1): 180 wallclock secs ( 0.00 usr 0.00 sys + 0.00 cusr 0.00 csys = 0.00 CPU)
Time for drop table(2): 18 wallclock secs ( 0.00 usr 0.00 sys + 0.00 cusr 0.00 csys = 0.00 CPU)
Testing delete
Time for delete_key (10000): 136 wallclock secs ( 3.08 usr 0.59 sys + 0.00 cusr 0.00 csys = 3.67 CPU)
Time for delete_all (12): 3191 wallclock secs ( 0.01 usr 0.00 sys + 0.00 cusr 0.00 csys = 0.01 CPU)
Insert into table with 16 keys and with a primary key with 16 parts
Time for insert_key (100000): 907 wallclock secs (45.53 usr 60.49 sys + 0.00 cusr 0.00 csys = 106.02 CPU)
Testing update of keys
Time for update_of_primary_key_many_keys (256): 6813 wallclock secs ( 0.13 usr 0.02 sys + 0.00 cusr 0.00 csys = 0.15 CPU)
Deleting rows from the table
Time for delete_big_many_keys (128): 118 wallclock secs ( 0.05 usr 0.04 sys + 0.00 cusr 0.00 csys = 0.09 CPU)
Deleting everything from table
Time for delete_all_many_keys (1): 118 wallclock secs ( 0.05 usr 0.04 sys + 0.00 cusr 0.00 csys = 0.09 CPU)
Estimated total time: 288864 wallclock secs (887.56 usr 201.43 sys + 0.00 cusr 0.00 csys = 1088.99 CPU)
Testing server 'PostgreSQL version 7.0.2' at 2000-08-17 3:39:16
Testing the speed of inserting data into 1 table and do some selects on it.
The tests are done with a table that has 100000 rows.
Generating random keys
Creating tables
Inserting 100000 rows in order
Inserting 100000 rows in reverse order
Inserting 100000 rows in random order
Time for insert (300000): 315 wallclock secs (88.93 usr 13.94 sys + 0.00 cusr 0.00 csys = 0.00 CPU)
NOTICE: Vacuum: table not found
Time for book-keeping (1): 6 wallclock secs ( 0.00 usr 0.00 sys + 0.00 cusr 0.00 csys = 0.00 CPU)
Time for insert_duplicates (300000): 321 wallclock secs (88.94 usr 13.94 sys + 0.00 cusr 0.00 csys = 0.00 CPU)
NOTICE: Vacuum: table not found
Time for book-keeping (1): 3 wallclock secs ( 0.01 usr 0.00 sys + 0.00 cusr 0.00 csys = 0.00 CPU)
Retrieving data from the table
Time for select_big (10:3000000): 52 wallclock secs (22.48 usr 0.64 sys + 0.00 cusr 0.00 csys = 0.00 CPU)
Time for order_by_key (10:3000000): 103 wallclock secs (22.46 usr 0.65 sys + 0.00 cusr 0.00 csys = 0.00 CPU)
Time for order_by (10:3000000): 103 wallclock secs (22.63 usr 0.73 sys + 0.00 cusr 0.00 csys = 0.00 CPU)
Time for select_diff_key (500:1000): 1 wallclock secs ( 0.23 usr 0.02 sys + 0.00 cusr 0.00 csys = 0.00 CPU)
Time for select_range_prefix (5010:42084): 30 wallclock secs ( 2.82 usr 0.26 sys + 0.00 cusr 0.00 csys = 0.00 CPU)
Time for select_range (5010:42084): 29 wallclock secs ( 3.04 usr 0.22 sys + 0.00 cusr 0.00 csys = 0.00 CPU)
Time for select_key_prefix (200000): 188 wallclock secs (65.88 usr 9.55 sys + 0.00 cusr 0.00 csys = 0.00 CPU)
Time for select_key (200000): 188 wallclock secs (65.70 usr 9.45 sys + 0.00 cusr 0.00 csys = 0.00 CPU)
Test of compares with simple ranges
Time for select_range_prefix (20000:43500): 14 wallclock secs ( 3.46 usr 0.53 sys + 0.00 cusr 0.00 csys = 0.00 CPU)
Time for select_range (20000:43500): 13 wallclock secs ( 3.53 usr 0.50 sys + 0.00 cusr 0.00 csys = 0.00 CPU)
Time for select_group (111): 223 wallclock secs ( 0.04 usr 0.00 sys + 0.00 cusr 0.00 csys = 0.00 CPU)
Note: Query took longer then time-limit: 600
Estimating end time based on:
1446 queries in 241 loops of 2500 loops took 602 seconds
Estimated time for min_max_on_key (15000): 6244 wallclock secs ( 4.77 usr 0.83 sys + 0.00 cusr 0.00 csys = 0.00 CPU)
Time for min_max (60): 53 wallclock secs ( 0.02 usr 0.00 sys + 0.00 cusr 0.00 csys = 0.00 CPU)
Time for count_on_key (100): 112 wallclock secs ( 0.01 usr 0.00 sys + 0.00 cusr 0.00 csys = 0.00 CPU)
Time for count (100): 119 wallclock secs ( 0.00 usr 0.00 sys + 0.00 cusr 0.00 csys = 0.00 CPU)
Time for count_distinct_big (20): 138 wallclock secs ( 0.01 usr 0.00 sys + 0.00 cusr 0.00 csys = 0.00 CPU)
Testing update of keys with functions
Time for update_of_key (500): 97 wallclock secs (14.01 usr 2.17 sys + 0.00 cusr 0.00 csys = 0.00 CPU)
NOTICE: Vacuum: table not found
Time for book-keeping (1): 41 wallclock secs ( 0.00 usr 0.00 sys + 0.00 cusr 0.00 csys = 0.00 CPU)
Time for update_of_key_big (501): 559 wallclock secs ( 0.21 usr 0.01 sys + 0.00 cusr 0.00 csys = 0.00 CPU)
NOTICE: Vacuum: table not found
Time for book-keeping (1): 115 wallclock secs ( 0.00 usr 0.01 sys + 0.00 cusr 0.00 csys = 0.00 CPU)
Testing update with key
Time for update_with_key (100000): 449 wallclock secs (91.48 usr 14.02 sys + 0.00 cusr 0.00 csys = 0.00 CPU)
Testing update of all rows
Time for update_big (500): 1832 wallclock secs ( 0.00 usr 0.00 sys + 0.00 cusr 0.00 csys = 0.00 CPU)
Testing delete
Time for delete_key (10000): 15 wallclock secs ( 2.84 usr 0.49 sys + 0.00 cusr 0.00 csys = 0.00 CPU)
Time for delete_big (12): 100 wallclock secs ( 0.00 usr 0.00 sys + 0.00 cusr 0.00 csys = 0.00 CPU)
NOTICE: Vacuum: table not found
Time for book-keeping (1): 1 wallclock secs ( 0.00 usr 0.00 sys + 0.00 cusr 0.00 csys = 0.00 CPU)
Insert into table with 16 keys and with a primary key with 16 parts
Time for insert_key (100000): 1367 wallclock secs (32.13 usr 5.30 sys + 0.00 cusr 0.00 csys = 0.00 CPU)
NOTICE: Vacuum: table not found
Time for book-keeping (1): 8 wallclock secs ( 0.00 usr 0.00 sys + 0.00 cusr 0.00 csys = 0.00 CPU)
Testing update of keys
Time for update_of_primary_key_many_keys (256): 1491 wallclock secs ( 0.07 usr 0.01 sys + 0.00 cusr 0.00 csys = 0.00 CPU)
NOTICE: Vacuum: table not found
Time for book-keeping (1): 2489 wallclock secs ( 0.00 usr 0.00 sys + 0.00 cusr 0.00 csys = 0.00 CPU)
Deleting everything from table
Time for delete_big_many_keys (2): 2 wallclock secs ( 0.00 usr 0.00 sys + 0.00 cusr 0.00 csys = 0.00 CPU)
NOTICE: Vacuum: table not found
Time for book-keeping (1): 0 wallclock secs ( 0.00 usr 0.00 sys + 0.00 cusr 0.00 csys = 0.00 CPU)
Estimated total time: 16506 wallclock secs (446.80 usr 59.36 sys + 0.00 cusr 0.00 csys = 0.00 CPU)
Testing server 'PostgreSQL version 7.1.2' at 2001-06-11 18:27:26
Testing the speed of inserting data into 1 table and do some selects on it.
The tests are done with a table that has 100000 rows.
Generating random keys
Creating tables
Inserting 100000 rows in order
Inserting 100000 rows in reverse order
Inserting 100000 rows in random order
Time for insert (300000): 296 wallclock secs (89.01 usr 24.43 sys + 0.00 cusr 0.00 csys = 113.44 CPU)
Time for book-keeping (1): 8 wallclock secs ( 0.00 usr 0.00 sys + 0.00 cusr 0.00 csys = 0.00 CPU)
Testing insert of duplicates
Time for insert_duplicates (100000): 111 wallclock secs (28.41 usr 9.26 sys + 0.00 cusr 0.00 csys = 37.67 CPU)
Retrieving data from the table
Time for select_big (10:3000000): 55 wallclock secs (22.58 usr 2.28 sys + 0.00 cusr 0.00 csys = 24.86 CPU)
Time for order_by_big_key (10:3000000): 150 wallclock secs (25.91 usr 1.24 sys + 0.00 cusr 0.00 csys = 27.15 CPU)
Time for order_by_big_key_desc (10:3000000): 147 wallclock secs (25.81 usr 1.23 sys + 0.00 cusr 0.00 csys = 27.04 CPU)
Time for order_by_big_key_prefix (10:3000000): 133 wallclock secs (22.64 usr 0.62 sys + 0.00 cusr 0.00 csys = 23.26 CPU)
Time for order_by_big_key2 (10:3000000): 137 wallclock secs (22.59 usr 0.71 sys + 0.00 cusr 0.00 csys = 23.30 CPU)
Time for order_by_big_key_diff (10:3000000): 143 wallclock secs (22.68 usr 0.55 sys + 0.00 cusr 0.00 csys = 23.23 CPU)
Time for order_by_big (10:3000000): 147 wallclock secs (22.48 usr 0.61 sys + 0.00 cusr 0.00 csys = 23.09 CPU)
Time for order_by_range (500:125750): 4 wallclock secs ( 1.04 usr 0.04 sys + 0.00 cusr 0.00 csys = 1.08 CPU)
Time for order_by_key_prefix (500:125750): 3 wallclock secs ( 1.48 usr 0.03 sys + 0.00 cusr 0.00 csys = 1.51 CPU)
Time for order_by_key2_diff (500:250500): 7 wallclock secs ( 2.07 usr 0.04 sys + 0.00 cusr 0.00 csys = 2.11 CPU)
Time for select_diff_key (500:1000): 1 wallclock secs ( 0.21 usr 0.00 sys + 0.00 cusr 0.00 csys = 0.21 CPU)
Time for select_range_prefix (5010:42084): 34 wallclock secs ( 2.90 usr 0.27 sys + 0.00 cusr 0.00 csys = 3.17 CPU)
Time for select_range_key2 (5010:42084): 33 wallclock secs ( 2.72 usr 0.30 sys + 0.00 cusr 0.00 csys = 3.02 CPU)
Time for select_key_prefix (200000): 192 wallclock secs (67.39 usr 7.56 sys + 0.00 cusr 0.00 csys = 74.95 CPU)
Time for select_key (200000): 213 wallclock secs (67.07 usr 8.38 sys + 0.00 cusr 0.00 csys = 75.45 CPU)
Time for select_key_return_key (200000): 208 wallclock secs (65.98 usr 8.96 sys + 0.00 cusr 0.00 csys = 74.94 CPU)
Time for select_key2 (200000): 192 wallclock secs (67.06 usr 8.24 sys + 0.00 cusr 0.00 csys = 75.30 CPU)
Time for select_key2_return_key (200000): 183 wallclock secs (63.93 usr 8.32 sys + 0.00 cusr 0.00 csys = 72.25 CPU)
Time for select_key2_return_prim (200000): 188 wallclock secs (64.56 usr 8.71 sys + 0.00 cusr 0.00 csys = 73.27 CPU)
Test of compares with simple ranges
Time for select_range_prefix (20000:43500): 14 wallclock secs ( 3.73 usr 0.38 sys + 0.00 cusr 0.00 csys = 4.11 CPU)
Time for select_range_key2 (20000:43500): 14 wallclock secs ( 3.84 usr 0.37 sys + 0.00 cusr 0.00 csys = 4.21 CPU)
Time for select_group (111): 267 wallclock secs ( 0.06 usr 0.00 sys + 0.00 cusr 0.00 csys = 0.06 CPU)
Note: Query took longer then time-limit: 600
Estimating end time based on:
1398 queries in 233 loops of 2500 loops took 601 seconds
Estimated time for min_max_on_key (15000): 6448 wallclock secs ( 4.83 usr 0.54 sys + 0.00 cusr 0.00 csys = 5.36 CPU)
Time for min_max (60): 58 wallclock secs ( 0.01 usr 0.00 sys + 0.00 cusr 0.00 csys = 0.01 CPU)
Time for count_on_key (100): 115 wallclock secs ( 0.05 usr 0.00 sys + 0.00 cusr 0.00 csys = 0.05 CPU)
Time for count (100): 132 wallclock secs ( 0.04 usr 0.00 sys + 0.00 cusr 0.00 csys = 0.04 CPU)
Time for count_distinct_big (20): 204 wallclock secs ( 0.00 usr 0.01 sys + 0.00 cusr 0.00 csys = 0.01 CPU)
Testing update of keys with functions
Time for update_of_key (50000): 90 wallclock secs (14.87 usr 5.98 sys + 0.00 cusr 0.00 csys = 20.85 CPU)
Time for book-keeping (1): 58 wallclock secs ( 0.00 usr 0.00 sys + 0.00 cusr 0.00 csys = 0.00 CPU)
Time for update_of_key_big (501): 647 wallclock secs ( 0.12 usr 0.06 sys + 0.00 cusr 0.00 csys = 0.18 CPU)
Time for book-keeping (1): 236 wallclock secs ( 0.00 usr 0.00 sys + 0.00 cusr 0.00 csys = 0.00 CPU)
Testing update with key
Time for update_with_key (300000): 470 wallclock secs (87.85 usr 41.80 sys + 0.00 cusr 0.00 csys = 129.65 CPU)
Time for update_with_key_prefix (100000): 170 wallclock secs (31.13 usr 15.28 sys + 0.00 cusr 0.00 csys = 46.41 CPU)
Testing update of all rows
Time for update_big (10): 3883 wallclock secs ( 0.01 usr 0.00 sys + 0.00 cusr 0.00 csys = 0.01 CPU)
Testing left outer join
Time for outer_join_on_key (10:10): 238 wallclock secs ( 0.00 usr 0.00 sys + 0.00 cusr 0.00 csys = 0.00 CPU)
Time for outer_join (10:10): 253 wallclock secs ( 0.00 usr 0.00 sys + 0.00 cusr 0.00 csys = 0.00 CPU)
Time for outer_join_found (10:10): 243 wallclock secs ( 0.00 usr 0.00 sys + 0.00 cusr 0.00 csys = 0.00 CPU)
Time for outer_join_not_found (500:10): 242 wallclock secs ( 0.00 usr 0.01 sys + 0.00 cusr 0.00 csys = 0.01 CPU)
Testing INSERT INTO ... SELECT
Time for insert_select_1_key (1): 45 wallclock secs ( 0.00 usr 0.00 sys + 0.00 cusr 0.00 csys = 0.00 CPU)
Time for insert_select_2_keys (1): 77 wallclock secs ( 0.01 usr 0.00 sys + 0.00 cusr 0.00 csys = 0.01 CPU)
Time for drop table(2): 0 wallclock secs ( 0.00 usr 0.00 sys + 0.00 cusr 0.00 csys = 0.00 CPU)
Time for book-keeping (1): 1626 wallclock secs ( 0.00 usr 0.00 sys + 0.00 cusr 0.00 csys = 0.00 CPU)
Testing delete
Time for delete_key (10000): 11 wallclock secs ( 3.02 usr 0.37 sys + 0.00 cusr 0.00 csys = 3.39 CPU)
Time for delete_all (12): 11 wallclock secs ( 0.01 usr 0.01 sys + 0.00 cusr 0.00 csys = 0.02 CPU)
Time for book-keeping (1): 0 wallclock secs ( 0.00 usr 0.00 sys + 0.00 cusr 0.00 csys = 0.00 CPU)
Insert into table with 16 keys and with a primary key with 16 parts
Time for insert_key (100000): 895 wallclock secs (45.94 usr 68.46 sys + 0.00 cusr 0.00 csys = 114.40 CPU)
Time for book-keeping (1): 16 wallclock secs ( 0.00 usr 0.00 sys + 0.00 cusr 0.00 csys = 0.00 CPU)
Testing update of keys
Time for update_of_primary_key_many_keys (256): 835 wallclock secs ( 0.10 usr 0.09 sys + 0.00 cusr 0.00 csys = 0.19 CPU)
Time for book-keeping (1): 1298 wallclock secs ( 0.00 usr 0.00 sys + 0.00 cusr 0.00 csys = 0.00 CPU)
Deleting rows from the table
Time for delete_big_many_keys (128): 3 wallclock secs ( 0.05 usr 0.00 sys + 0.00 cusr 0.00 csys = 0.05 CPU)
Deleting everything from table
Time for delete_all_many_keys (1): 3 wallclock secs ( 0.05 usr 0.00 sys + 0.00 cusr 0.00 csys = 0.05 CPU)
Time for book-keeping (1): 1 wallclock secs ( 0.00 usr 0.00 sys + 0.00 cusr 0.00 csys = 0.00 CPU)
Estimated total time: 21187 wallclock secs (884.26 usr 225.15 sys + 0.00 cusr 0.00 csys = 1109.40 CPU)
Testing server 'MySQL 3.23.22 beta' at 2000-08-17 18:22:00
Testing the speed of selecting on keys that consist of many parts
The test-table has 10000 rows and the test is done with 12 ranges.
Creating table
Inserting 10000 rows
Time to insert (10000): 4 wallclock secs ( 0.81 usr 0.43 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.13 usr 0.06 sys + 0.00 cusr 0.00 csys = 0.00 CPU)
Time for select_range (410:75949): 2 wallclock secs ( 0.65 usr 0.32 sys + 0.00 cusr 0.00 csys = 0.00 CPU)
Time for min_max_on_key (70000): 205 wallclock secs (20.60 usr 3.98 sys + 0.00 cusr 0.00 csys = 0.00 CPU)
Time for count_on_key (50000): 518 wallclock secs (16.08 usr 3.16 sys + 0.00 cusr 0.00 csys = 0.00 CPU)
Time for count_group_on_key_parts (1000:0): 61 wallclock secs ( 1.09 usr 0.27 sys + 0.00 cusr 0.00 csys = 0.00 CPU)
Testing count(distinct) on the table
Time for count_distinct (1000:2000): 124 wallclock secs ( 0.65 usr 0.16 sys + 0.00 cusr 0.00 csys = 0.00 CPU)
Time for count_distinct_group_on_key (1000:6000): 64 wallclock secs ( 0.37 usr 0.07 sys + 0.00 cusr 0.00 csys = 0.00 CPU)
Time for count_distinct_group_on_key_parts (1000:100000): 77 wallclock secs ( 0.93 usr 0.45 sys + 0.00 cusr 0.00 csys = 0.00 CPU)
Time for count_distinct_group (1000:100000): 77 wallclock secs ( 0.94 usr 0.33 sys + 0.00 cusr 0.00 csys = 0.00 CPU)
Time for count_distinct_big (1000:10000000): 559 wallclock secs (69.04 usr 55.99 sys + 0.00 cusr 0.00 csys = 0.00 CPU)
Total time: 1692 wallclock secs (111.29 usr 65.22 sys + 0.00 cusr 0.00 csys = 0.00 CPU)
Testing server 'MySQL 3.23.39' at 2001-06-05 14:41:13
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): 5 wallclock secs ( 0.80 usr 0.34 sys + 0.00 cusr 0.00 csys = 1.14 CPU)
Test if the database has a query cache
Time for select_query_cache (10000): 120 wallclock secs ( 3.67 usr 0.53 sys + 0.00 cusr 0.00 csys = 4.20 CPU)
Time for select_query_cache2 (10000): 120 wallclock secs ( 3.80 usr 0.57 sys + 0.00 cusr 0.00 csys = 4.37 CPU)
Testing big selects on the table
Time for select_big (70:17207): 1 wallclock secs ( 0.15 usr 0.07 sys + 0.00 cusr 0.00 csys = 0.22 CPU)
Time for select_range (410:1057904): 201 wallclock secs ( 9.05 usr 3.95 sys + 0.00 cusr 0.00 csys = 13.00 CPU)
Time for min_max_on_key (70000): 222 wallclock secs (23.16 usr 3.67 sys + 0.00 cusr 0.00 csys = 26.83 CPU)
Time for count_on_key (50000): 534 wallclock secs (16.58 usr 2.69 sys + 0.00 cusr 0.00 csys = 19.27 CPU)
Time for count_group_on_key_parts (1000:100000): 58 wallclock secs ( 1.16 usr 0.35 sys + 0.00 cusr 0.00 csys = 1.51 CPU)
Testing count(distinct) on the table
Time for count_distinct_key_prefix (1000:1000): 51 wallclock secs ( 0.45 usr 0.08 sys + 0.00 cusr 0.00 csys = 0.53 CPU)
Time for count_distinct (1000:1000): 60 wallclock secs ( 0.42 usr 0.08 sys + 0.00 cusr 0.00 csys = 0.50 CPU)
Time for count_distinct_2 (1000:1000): 63 wallclock secs ( 0.18 usr 0.03 sys + 0.00 cusr 0.00 csys = 0.21 CPU)
Time for count_distinct_group_on_key (1000:6000): 59 wallclock secs ( 0.51 usr 0.07 sys + 0.00 cusr 0.00 csys = 0.58 CPU)
Time for count_distinct_group_on_key_parts (1000:100000): 194 wallclock secs ( 1.12 usr 0.46 sys + 0.00 cusr 0.00 csys = 1.58 CPU)
Time for count_distinct_group (1000:100000): 194 wallclock secs ( 1.21 usr 0.37 sys + 0.00 cusr 0.00 csys = 1.58 CPU)
Time for count_distinct_big (100:1000000): 67 wallclock secs ( 7.77 usr 3.16 sys + 0.00 cusr 0.00 csys = 10.93 CPU)
Total time: 1949 wallclock secs (70.03 usr 16.42 sys + 0.00 cusr 0.00 csys = 86.45 CPU)
Testing server 'MySQL 3.23.22 beta' at 2000-08-17 19:41:39
Testing the speed of selecting on keys that consist of many parts
The test-table has 10000 rows and the test is done with 12 ranges.
Creating table
Inserting 10000 rows
Time to insert (10000): 4 wallclock secs ( 0.85 usr 0.46 sys + 0.00 cusr 0.00 csys = 0.00 CPU)
Testing big selects on the table
Time for select_big (70:17207): 0 wallclock secs ( 0.10 usr 0.08 sys + 0.00 cusr 0.00 csys = 0.00 CPU)
Time for select_range (410:75949): 3 wallclock secs ( 0.79 usr 0.18 sys + 0.00 cusr 0.00 csys = 0.00 CPU)
Time for min_max_on_key (70000): 202 wallclock secs (20.23 usr 4.20 sys + 0.00 cusr 0.00 csys = 0.00 CPU)
Time for count_on_key (50000): 517 wallclock secs (16.44 usr 3.18 sys + 0.00 cusr 0.00 csys = 0.00 CPU)
Time for count_group_on_key_parts (1000:0): 61 wallclock secs ( 1.03 usr 0.31 sys + 0.00 cusr 0.00 csys = 0.00 CPU)
Testing count(distinct) on the table
Time for count_distinct (1000:2000): 124 wallclock secs ( 0.57 usr 0.12 sys + 0.00 cusr 0.00 csys = 0.00 CPU)
Time for count_distinct_group_on_key (1000:6000): 65 wallclock secs ( 0.35 usr 0.14 sys + 0.00 cusr 0.00 csys = 0.00 CPU)
Time for count_distinct_group_on_key_parts (1000:100000): 77 wallclock secs ( 1.07 usr 0.35 sys + 0.00 cusr 0.00 csys = 0.00 CPU)
Time for count_distinct_group (1000:100000): 77 wallclock secs ( 1.14 usr 0.31 sys + 0.00 cusr 0.00 csys = 0.00 CPU)
Time for count_distinct_big (1000:10000000): 566 wallclock secs (70.60 usr 55.60 sys + 0.00 cusr 0.00 csys = 0.00 CPU)
Total time: 1696 wallclock secs (113.17 usr 64.93 sys + 0.00 cusr 0.00 csys = 0.00 CPU)
Testing server 'PostgreSQL version ???' at 2000-12-05 20:00:31
Testing the speed of selecting on keys that consist of many parts
The test-table has 10000 rows and the test is done with 12 ranges.
Creating table
Inserting 10000 rows
Time to insert (10000): 254 wallclock secs ( 3.11 usr 0.60 sys + 0.00 cusr 0.00 csys = 0.00 CPU)
Testing big selects on the table
Time for select_big (70:17207): 2 wallclock secs ( 0.17 usr 0.00 sys + 0.00 cusr 0.00 csys = 0.00 CPU)
Time for select_range (410:75949): 35 wallclock secs ( 0.87 usr 0.02 sys + 0.00 cusr 0.00 csys = 0.00 CPU)
Note: Query took longer then time-limit: 600
Estimating end time based on:
9807 queries in 1401 loops of 10000 loops took 601 seconds
Estimated time for min_max_on_key (70000): 4289 wallclock secs (20.56 usr 3.14 sys + 0.00 cusr 0.00 csys = 0.00 CPU)
Note: Query took longer then time-limit: 600
Estimating end time based on:
12395 queries in 2479 loops of 10000 loops took 601 seconds
Estimated time for count_on_key (50000): 2424 wallclock secs (16.70 usr 2.42 sys + 0.00 cusr 0.00 csys = 0.00 CPU)
Time for count_group_on_key_parts (1000:100000): 242 wallclock secs ( 1.19 usr 0.05 sys + 0.00 cusr 0.00 csys = 0.00 CPU)
Testing count(distinct) on the table
Time for count_distinct (2000:2000): 235 wallclock secs ( 0.76 usr 0.12 sys + 0.00 cusr 0.00 csys = 0.00 CPU)
Time for count_distinct_group_on_key (1000:6000): 174 wallclock secs ( 0.44 usr 0.11 sys + 0.00 cusr 0.00 csys = 0.00 CPU)
Time for count_distinct_group_on_key_parts (1000:100000): 270 wallclock secs ( 1.43 usr 0.07 sys + 0.00 cusr 0.00 csys = 0.00 CPU)
Time for count_distinct_group (1000:100000): 271 wallclock secs ( 1.27 usr 0.10 sys + 0.00 cusr 0.00 csys = 0.00 CPU)
Time for count_distinct_big (100:1000000): 57 wallclock secs ( 8.24 usr 0.30 sys + 0.00 cusr 0.00 csys = 0.00 CPU)
Estimated total time: 8255 wallclock secs (54.76 usr 6.93 sys + 0.00 cusr 0.00 csys = 0.00 CPU)
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment