mirror of
https://github.com/MariaDB/server.git
synced 2025-01-17 20:42:30 +01:00
Merge mysql.com:/home/mydev/mysql-5.0-bug10932
into mysql.com:/home/mydev/mysql-5.1-bug10932
This commit is contained in:
commit
b5005d4171
16 changed files with 49 additions and 24 deletions
|
@ -693,6 +693,27 @@ dnl ---------------------------------------------------------------------------
|
|||
dnl END OF MYSQL_CHECK_BIG_TABLES SECTION
|
||||
dnl ---------------------------------------------------------------------------
|
||||
|
||||
|
||||
dnl ---------------------------------------------------------------------------
|
||||
dnl Macro: MYSQL_CHECK_MAX_INDEXES
|
||||
dnl Sets MAX_INDEXES
|
||||
dnl ---------------------------------------------------------------------------
|
||||
AC_DEFUN([MYSQL_CHECK_MAX_INDEXES], [
|
||||
AC_ARG_WITH([max-indexes],
|
||||
[
|
||||
--with-max-indexes=\# Sets the maximum number of indexes per table, default 64],
|
||||
[max_indexes="$withval"],
|
||||
[max_indexes=64])
|
||||
AC_MSG_CHECKING([max indexes per table])
|
||||
AC_DEFINE_UNQUOTED([MAX_INDEXES], [$max_indexes],
|
||||
[Maximum number of indexes per table])
|
||||
AC_MSG_RESULT([$max_indexes])
|
||||
])
|
||||
dnl ---------------------------------------------------------------------------
|
||||
dnl END OF MYSQL_CHECK_MAX_INDEXES SECTION
|
||||
dnl ---------------------------------------------------------------------------
|
||||
|
||||
|
||||
dnl MYSQL_NEEDS_MYSYS_NEW
|
||||
AC_DEFUN([MYSQL_NEEDS_MYSYS_NEW],
|
||||
[AC_CACHE_CHECK([needs mysys_new helpers], mysql_use_mysys_new,
|
||||
|
|
|
@ -2365,6 +2365,7 @@ AC_SUBST(readline_link)
|
|||
AC_SUBST(readline_h_ln_cmd)
|
||||
|
||||
MYSQL_CHECK_BIG_TABLES
|
||||
MYSQL_CHECK_MAX_INDEXES
|
||||
|
||||
MYSQL_STORAGE_ENGINE(innobase,,innodb,,,,storage/innobase,ha_innodb.o,[ dnl
|
||||
\$(top_builddir)/storage/innobase/usr/libusr.a dnl
|
||||
|
|
|
@ -34,8 +34,6 @@ extern "C" {
|
|||
#include "my_handler.h"
|
||||
#include <plugin.h>
|
||||
|
||||
/* defines used by myisam-funktions */
|
||||
|
||||
/*
|
||||
There is a hard limit for the maximum number of keys as there are only
|
||||
8 bits in the index file header for the number of keys in a table.
|
||||
|
@ -46,14 +44,19 @@ extern "C" {
|
|||
running myisamchk compiled for 128 keys on a table with 255 keys.
|
||||
*/
|
||||
#define MI_MAX_POSSIBLE_KEY 255 /* For myisam_chk */
|
||||
#if MAX_INDEXES > MI_MAX_POSSIBLE_KEY
|
||||
#define MI_MAX_KEY MI_MAX_POSSIBLE_KEY /* Max allowed keys */
|
||||
#else
|
||||
#define MI_MAX_KEY MAX_INDEXES /* Max allowed keys */
|
||||
#endif
|
||||
|
||||
#define MI_MAX_POSSIBLE_KEY_BUFF (1024+6+6) /* For myisam_chk */
|
||||
/*
|
||||
The following defines can be increased if necessary.
|
||||
BUT: MI_MAX_KEY must be <= MI_MAX_POSSIBLE_KEY.
|
||||
But beware the dependency of MI_MAX_POSSIBLE_KEY_BUFF and MI_MAX_KEY_LENGTH.
|
||||
*/
|
||||
#define MI_MAX_KEY 64 /* Max allowed keys */
|
||||
#define MI_MAX_KEY_LENGTH 1000 /* Max length in bytes */
|
||||
#define MI_MAX_KEY_SEG 16 /* Max segments for key */
|
||||
#define MI_MAX_KEY_LENGTH 1000
|
||||
|
||||
#define MI_MAX_KEY_BUFF (MI_MAX_KEY_LENGTH+MI_MAX_KEY_SEG*6+8+8)
|
||||
#define MI_MAX_MSG_BUF 1024 /* used in CHECK TABLE, REPAIR TABLE */
|
||||
|
|
|
@ -391,7 +391,7 @@ root@localhost
|
|||
--------------------------------------------------------------------------------
|
||||
this will be executed
|
||||
this will be executed
|
||||
mysqltest: At line 2: query 'create table t1 (a int primary key);
|
||||
mysqltest: At line 3: query 'create table t1 (a int primary key);
|
||||
insert into t1 values (1);
|
||||
select 'select-me';
|
||||
insertz 'error query'' failed: 1064: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'insertz 'error query'' at line 1
|
||||
|
|
|
@ -83,5 +83,5 @@ a
|
|||
22
|
||||
show slave status;
|
||||
Slave_IO_State Master_Host Master_User Master_Port Connect_Retry Master_Log_File Read_Master_Log_Pos Relay_Log_File Relay_Log_Pos Relay_Master_Log_File Slave_IO_Running Slave_SQL_Running Replicate_Do_DB Replicate_Ignore_DB Replicate_Do_Table Replicate_Ignore_Table Replicate_Wild_Do_Table Replicate_Wild_Ignore_Table Last_Errno Last_Error Skip_Counter Exec_Master_Log_Pos Relay_Log_Space Until_Condition Until_Log_File Until_Log_Pos Master_SSL_Allowed Master_SSL_CA_File Master_SSL_CA_Path Master_SSL_Cert Master_SSL_Cipher Master_SSL_Key Seconds_Behind_Master
|
||||
# 127.0.0.1 root MASTER_MYPORT 1 master-bin.000001 18911 # # master-bin.000001 Yes Yes 0 0 18911 # None 0 No #
|
||||
# 127.0.0.1 root MASTER_MYPORT 1 master-bin.000001 18911 # # master-bin.000001 # Yes 0 0 18911 # None 0 No #
|
||||
drop table t1,t2,t3,t4;
|
||||
|
|
|
@ -16,7 +16,4 @@ master_pos_wait('master-bin.001',3000)>=0
|
|||
select max(a) from t1;
|
||||
max(a)
|
||||
8000
|
||||
show slave status;
|
||||
Slave_IO_State Master_Host Master_User Master_Port Connect_Retry Master_Log_File Read_Master_Log_Pos Relay_Log_File Relay_Log_Pos Relay_Master_Log_File Slave_IO_Running Slave_SQL_Running Replicate_Do_DB Replicate_Ignore_DB Replicate_Do_Table Replicate_Ignore_Table Replicate_Wild_Do_Table Replicate_Wild_Ignore_Table Last_Errno Last_Error Skip_Counter Exec_Master_Log_Pos Relay_Log_Space Until_Condition Until_Log_File Until_Log_Pos Master_SSL_Allowed Master_SSL_CA_File Master_SSL_CA_Path Master_SSL_Cert Master_SSL_Cipher Master_SSL_Key Seconds_Behind_Master
|
||||
# 127.0.0.1 root MASTER_MYPORT 1 master-bin.000001 735186 # # master-bin.000001 Yes Yes 0 0 735186 # None 0 No #
|
||||
drop table t1;
|
||||
|
|
|
@ -49,7 +49,7 @@ n
|
|||
2
|
||||
show slave status;
|
||||
Slave_IO_State Master_Host Master_User Master_Port Connect_Retry Master_Log_File Read_Master_Log_Pos Relay_Log_File Relay_Log_Pos Relay_Master_Log_File Slave_IO_Running Slave_SQL_Running Replicate_Do_DB Replicate_Ignore_DB Replicate_Do_Table Replicate_Ignore_Table Replicate_Wild_Do_Table Replicate_Wild_Ignore_Table Last_Errno Last_Error Skip_Counter Exec_Master_Log_Pos Relay_Log_Space Until_Condition Until_Log_File Until_Log_Pos Master_SSL_Allowed Master_SSL_CA_File Master_SSL_CA_Path Master_SSL_Cert Master_SSL_Cipher Master_SSL_Key Seconds_Behind_Master
|
||||
# 127.0.0.1 root MASTER_MYPORT 1 master-bin.000001 776 slave-relay-bin.000004 # master-bin.000001 Yes No 0 0 608 # Relay slave-relay-bin.000004 746 No #
|
||||
# 127.0.0.1 root MASTER_MYPORT 1 master-bin.000001 776 slave-relay-bin.000004 # master-bin.000001 # No 0 0 608 # Relay slave-relay-bin.000004 746 No #
|
||||
start slave;
|
||||
stop slave;
|
||||
start slave until master_log_file='master-bin.000001', master_log_pos=776;
|
||||
|
|
|
@ -11,9 +11,6 @@
|
|||
##############################################################################
|
||||
|
||||
sp-goto : GOTO is currently is disabled - will be fixed in the future
|
||||
rpl_relayrotate : Unstable test case, bug#12429
|
||||
rpl_until : Unstable test case, bug#12429
|
||||
rpl_deadlock : Unstable test case, bug#12429
|
||||
kill : Unstable test case, bug#9712
|
||||
ndb_cache2 : Bug #15004
|
||||
ndb_cache_multi2: Bug #15004
|
||||
|
|
|
@ -953,7 +953,9 @@ select "this will be executed";
|
|||
#
|
||||
|
||||
# Failing multi statement query
|
||||
--exec echo "delimiter ||||;" > var/tmp/bug11731.sql
|
||||
# PS does not support multi statement
|
||||
--exec echo "--disable_ps_protocol" > var/tmp/bug11731.sql
|
||||
--exec echo "delimiter ||||;" >> var/tmp/bug11731.sql
|
||||
--exec echo "create table t1 (a int primary key);" >> var/tmp/bug11731.sql
|
||||
--exec echo "insert into t1 values (1);" >> var/tmp/bug11731.sql
|
||||
--exec echo "select 'select-me';" >> var/tmp/bug11731.sql
|
||||
|
@ -973,7 +975,9 @@ drop table t1;
|
|||
|
||||
|
||||
# Using expected error
|
||||
--exec echo "delimiter ||||;" > var/tmp/bug11731.sql
|
||||
# PS does not support multi statement
|
||||
--exec echo "--disable_ps_protocol" > var/tmp/bug11731.sql
|
||||
--exec echo "delimiter ||||;" >> var/tmp/bug11731.sql
|
||||
--exec echo "--error 1064" >> var/tmp/bug11731.sql
|
||||
--exec echo "create table t1 (a int primary key);" >> var/tmp/bug11731.sql
|
||||
--exec echo "insert into t1 values (1);" >> var/tmp/bug11731.sql
|
||||
|
|
|
@ -102,7 +102,7 @@ commit;
|
|||
sync_with_master;
|
||||
select * from t1;
|
||||
select * from t2;
|
||||
--replace_column 1 # 8 # 9 # 23 # 33 #
|
||||
--replace_column 1 # 8 # 9 # 11 # 23 # 33 #
|
||||
--replace_result $MASTER_MYPORT MASTER_MYPORT
|
||||
show slave status;
|
||||
|
||||
|
|
|
@ -56,9 +56,6 @@ start slave;
|
|||
# (the only statement with position>=3000 is COMMIT).
|
||||
select master_pos_wait('master-bin.001',3000)>=0;
|
||||
select max(a) from t1;
|
||||
--replace_column 1 # 8 # 9 # 23 # 33 #
|
||||
--replace_result $MASTER_MYPORT MASTER_MYPORT
|
||||
show slave status;
|
||||
connection master;
|
||||
|
||||
# The following DROP is a very important cleaning task:
|
||||
|
|
|
@ -49,7 +49,7 @@ sleep 2;
|
|||
wait_for_slave_to_stop;
|
||||
select * from t2;
|
||||
--replace_result $MASTER_MYPORT MASTER_MYPORT
|
||||
--replace_column 1 # 9 # 23 # 33 #
|
||||
--replace_column 1 # 9 # 11 # 23 # 33 #
|
||||
show slave status;
|
||||
|
||||
# clean up
|
||||
|
|
|
@ -42,7 +42,11 @@
|
|||
|
||||
/* TODO convert all these three maps to Bitmap classes */
|
||||
typedef ulonglong table_map; /* Used for table bits in join */
|
||||
typedef Bitmap<64> key_map; /* Used for finding keys */
|
||||
#if MAX_INDEXES <= 64
|
||||
typedef Bitmap<64> key_map; /* Used for finding keys */
|
||||
#else
|
||||
typedef Bitmap<((MAX_INDEXES+7)/8*8)> key_map; /* Used for finding keys */
|
||||
#endif
|
||||
typedef ulong key_part_map; /* Used for finding key parts */
|
||||
/*
|
||||
Used to identify NESTED_JOIN structures within a join (applicable only to
|
||||
|
|
|
@ -3178,6 +3178,7 @@ TRP_ROR_INTERSECT *get_best_covering_ror_intersect(PARAM *param,
|
|||
trp->is_covering= TRUE;
|
||||
trp->read_cost= total_cost;
|
||||
trp->records= records;
|
||||
trp->cpk_scan= NULL;
|
||||
|
||||
DBUG_PRINT("info",
|
||||
("Returning covering ROR-intersect plan: cost %g, records %lu",
|
||||
|
|
|
@ -51,7 +51,7 @@
|
|||
#define MAX_ALIAS_NAME 256
|
||||
#define MAX_FIELD_NAME 34 /* Max colum name length +2 */
|
||||
#define MAX_SYS_VAR_LENGTH 32
|
||||
#define MAX_KEY 64 /* Max used keys */
|
||||
#define MAX_KEY MAX_INDEXES /* Max used keys */
|
||||
#define MAX_REF_PARTS 16 /* Max parts used as ref */
|
||||
#define MAX_KEY_LENGTH 3072 /* max possible key */
|
||||
#if SIZEOF_OFF_T > 4
|
||||
|
|
|
@ -36,7 +36,7 @@
|
|||
|
||||
#define VER "2.1"
|
||||
#define MAX_TEST_QUERY_LENGTH 300 /* MAX QUERY BUFFER LENGTH */
|
||||
#define MAX_KEY 64
|
||||
#define MAX_KEY MAX_INDEXES
|
||||
#define MAX_SERVER_ARGS 64
|
||||
|
||||
/* set default options */
|
||||
|
|
Loading…
Reference in a new issue