mirror of
https://github.com/MariaDB/server.git
synced 2025-09-02 09:41:40 +03:00
Merge
mysql-test/chew_on_this/select.res: ***MISSING WEAVE***
This commit is contained in:
@@ -39360,6 +39360,11 @@ though, so Version 3.23 is not released as a stable version yet.
|
|||||||
@appendixsubsec Changes in release 3.23.29
|
@appendixsubsec Changes in release 3.23.29
|
||||||
@itemize @bullet
|
@itemize @bullet
|
||||||
@item
|
@item
|
||||||
|
Fixed a bug with @code{HEAP} type tables; the variable
|
||||||
|
@code{max_heap_table_size} wasn't used. Now either @code{MAX_ROWS} or
|
||||||
|
@code[max_heap_table_size} can be used to limit the size of a @code{HEAP}
|
||||||
|
type table.
|
||||||
|
@item
|
||||||
Renamed variable @code{bdb_lock_max} to @code{bdb_max_lock}.
|
Renamed variable @code{bdb_lock_max} to @code{bdb_max_lock}.
|
||||||
@item
|
@item
|
||||||
Changed the default server-id to 1 for masters and 2 for slaves
|
Changed the default server-id to 1 for masters and 2 for slaves
|
||||||
|
59
sql-bench/Comments/FrontBase.benchmark
Normal file
59
sql-bench/Comments/FrontBase.benchmark
Normal file
@@ -0,0 +1,59 @@
|
|||||||
|
# This file describes how to run benchmarks and crash-me with FrontBase
|
||||||
|
|
||||||
|
Installed components:
|
||||||
|
|
||||||
|
- FrontBase-2.1-8.rpm
|
||||||
|
(had to run with rpm -i --nodeps; the rpm wanted libreadline.so.4.0,
|
||||||
|
but only libreadline.so.4.1 was available)
|
||||||
|
|
||||||
|
- DBD-FB-0.03.tar.gz
|
||||||
|
(perl Makefile.Pl;
|
||||||
|
make;
|
||||||
|
make test;
|
||||||
|
make install;)
|
||||||
|
|
||||||
|
- DBI-1.14.tar.gz
|
||||||
|
(perl Makefile.Pl;
|
||||||
|
make;
|
||||||
|
make test;
|
||||||
|
make install;)
|
||||||
|
|
||||||
|
- Msql-Mysql-modules-1.2215.tar.gz
|
||||||
|
(perl Makefile.Pl;
|
||||||
|
make;
|
||||||
|
make test;
|
||||||
|
make install;)
|
||||||
|
|
||||||
|
After installations:
|
||||||
|
|
||||||
|
- cd /etc/rc.d
|
||||||
|
FBWeb start
|
||||||
|
FrontBase start
|
||||||
|
|
||||||
|
- cd /usr/local/mysql/sql-bench
|
||||||
|
- FBExec &
|
||||||
|
- FrontBase test
|
||||||
|
|
||||||
|
crash-me:
|
||||||
|
|
||||||
|
There were a lot of troubles running the crash-me; FrontBase core
|
||||||
|
dumped several tens of times while crash-me was trying to determine
|
||||||
|
the maximum values in different areas.
|
||||||
|
|
||||||
|
The crash-me program itself was also needed to be tuned quite a lot
|
||||||
|
for FB. There were also some bugs/lacking features in the crash-me
|
||||||
|
program, which are now fixed to the new version.
|
||||||
|
|
||||||
|
After we finally got the limits, we runned the benchmarks.
|
||||||
|
|
||||||
|
benchmarks:
|
||||||
|
|
||||||
|
Problems again. Frontbase core dumped with every part of the
|
||||||
|
benchmark (8/8) tests. After a lot of fine-tuning we got the
|
||||||
|
benchmarks to run through. The maximum values had to be dropped
|
||||||
|
down a lot in many of the tests.
|
||||||
|
|
||||||
|
The benchmarks were run with the following command:
|
||||||
|
|
||||||
|
perl run-all-tests --server=frontbase --host=prima
|
||||||
|
--cmp=frontbase,mysql --tcpip --log
|
@@ -33,7 +33,8 @@ const char **ha_heap::bas_ext() const
|
|||||||
|
|
||||||
int ha_heap::open(const char *name, int mode, uint test_if_locked)
|
int ha_heap::open(const char *name, int mode, uint test_if_locked)
|
||||||
{
|
{
|
||||||
uint key,part,parts;
|
uint key,part,parts,mem_per_row=0;
|
||||||
|
ulong max_rows;
|
||||||
HP_KEYDEF *keydef;
|
HP_KEYDEF *keydef;
|
||||||
HP_KEYSEG *seg;
|
HP_KEYSEG *seg;
|
||||||
|
|
||||||
@@ -47,7 +48,8 @@ int ha_heap::open(const char *name, int mode, uint test_if_locked)
|
|||||||
for (key=0 ; key < table->keys ; key++)
|
for (key=0 ; key < table->keys ; key++)
|
||||||
{
|
{
|
||||||
KEY *pos=table->key_info+key;
|
KEY *pos=table->key_info+key;
|
||||||
|
mem_per_row += (pos->key_length + (sizeof(char*) * 2));
|
||||||
|
|
||||||
keydef[key].keysegs=(uint) pos->key_parts;
|
keydef[key].keysegs=(uint) pos->key_parts;
|
||||||
keydef[key].flag = (pos->flags & HA_NOSAME);
|
keydef[key].flag = (pos->flags & HA_NOSAME);
|
||||||
keydef[key].seg=seg;
|
keydef[key].seg=seg;
|
||||||
@@ -66,9 +68,13 @@ int ha_heap::open(const char *name, int mode, uint test_if_locked)
|
|||||||
seg++;
|
seg++;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
mem_per_row += MY_ALIGN(table->reclength+1, sizeof(char*));
|
||||||
|
max_rows = (ulong) (max_heap_table_size / mem_per_row);
|
||||||
file=heap_open(table->path,mode,
|
file=heap_open(table->path,mode,
|
||||||
table->keys,keydef,
|
table->keys,keydef,
|
||||||
table->reclength,table->max_rows,
|
table->reclength,
|
||||||
|
((table->max_rows < max_rows && table->max_rows) ?
|
||||||
|
table->max_rows : max_rows),
|
||||||
table->min_rows);
|
table->min_rows);
|
||||||
my_free((gptr) keydef,MYF(0));
|
my_free((gptr) keydef,MYF(0));
|
||||||
info(HA_STATUS_NO_LOCK | HA_STATUS_CONST | HA_STATUS_VARIABLE);
|
info(HA_STATUS_NO_LOCK | HA_STATUS_CONST | HA_STATUS_VARIABLE);
|
||||||
|
Reference in New Issue
Block a user