merge from mysql-trunk-bugfixing
This commit is contained in:
commit
2801a2a054
@ -3084,3 +3084,4 @@ libmysqld/keycaches.cc
|
|||||||
client/dtoa.c
|
client/dtoa.c
|
||||||
libmysqld/sql_audit.cc
|
libmysqld/sql_audit.cc
|
||||||
configure.am
|
configure.am
|
||||||
|
libmysqld/des_key_file.cc
|
||||||
|
@ -640,9 +640,9 @@ call p_verify_status_increment(2, 0, 1, 0);
|
|||||||
--echo # 25. DDL: DROP TEMPORARY TABLE, does not start a transaction
|
--echo # 25. DDL: DROP TEMPORARY TABLE, does not start a transaction
|
||||||
--echo #
|
--echo #
|
||||||
drop temporary table t2;
|
drop temporary table t2;
|
||||||
call p_verify_status_increment(1, 0, 0, 0);
|
call p_verify_status_increment(1, 0, 1, 0);
|
||||||
commit;
|
commit;
|
||||||
call p_verify_status_increment(1, 0, 0, 0);
|
call p_verify_status_increment(1, 0, 1, 0);
|
||||||
|
|
||||||
--echo # 26. Verify that SET AUTOCOMMIT issues an implicit commit
|
--echo # 26. Verify that SET AUTOCOMMIT issues an implicit commit
|
||||||
--echo #
|
--echo #
|
||||||
|
@ -709,11 +709,11 @@ SUCCESS
|
|||||||
# 25. DDL: DROP TEMPORARY TABLE, does not start a transaction
|
# 25. DDL: DROP TEMPORARY TABLE, does not start a transaction
|
||||||
#
|
#
|
||||||
drop temporary table t2;
|
drop temporary table t2;
|
||||||
call p_verify_status_increment(1, 0, 0, 0);
|
call p_verify_status_increment(1, 0, 1, 0);
|
||||||
SUCCESS
|
SUCCESS
|
||||||
|
|
||||||
commit;
|
commit;
|
||||||
call p_verify_status_increment(1, 0, 0, 0);
|
call p_verify_status_increment(1, 0, 1, 0);
|
||||||
SUCCESS
|
SUCCESS
|
||||||
|
|
||||||
# 26. Verify that SET AUTOCOMMIT issues an implicit commit
|
# 26. Verify that SET AUTOCOMMIT issues an implicit commit
|
||||||
|
@ -78,11 +78,7 @@ CREATE TABLE t1 (b VARCHAR(2));
|
|||||||
INSERT INTO t1 VALUES ('0'),('1'),('2'),('3'),('4'),('5'),('6'),('7');
|
INSERT INTO t1 VALUES ('0'),('1'),('2'),('3'),('4'),('5'),('6'),('7');
|
||||||
INSERT INTO t1 VALUES ('8'),('9'),('A'),('B'),('C'),('D'),('E'),('F');
|
INSERT INTO t1 VALUES ('8'),('9'),('A'),('B'),('C'),('D'),('E'),('F');
|
||||||
CREATE TEMPORARY TABLE head AS SELECT concat(b1.b, b2.b) AS head FROM t1 b1, t1 b2;
|
CREATE TEMPORARY TABLE head AS SELECT concat(b1.b, b2.b) AS head FROM t1 b1, t1 b2;
|
||||||
Warnings:
|
|
||||||
Note 1592 Unsafe statement binlogged in statement format since BINLOG_FORMAT = STATEMENT. Reason for unsafeness: Statements that read from both transactional (or a temporary table of any engine type) and non-transactional tables and write to any of them are unsafe.
|
|
||||||
CREATE TEMPORARY TABLE tail AS SELECT concat(b1.b, b2.b) AS tail FROM t1 b1, t1 b2;
|
CREATE TEMPORARY TABLE tail AS SELECT concat(b1.b, b2.b) AS tail FROM t1 b1, t1 b2;
|
||||||
Warnings:
|
|
||||||
Note 1592 Unsafe statement binlogged in statement format since BINLOG_FORMAT = STATEMENT. Reason for unsafeness: Statements that read from both transactional (or a temporary table of any engine type) and non-transactional tables and write to any of them are unsafe.
|
|
||||||
DROP TABLE t1;
|
DROP TABLE t1;
|
||||||
CREATE TABLE t1 AS
|
CREATE TABLE t1 AS
|
||||||
SELECT concat(head, tail) AS code, ' ' AS a
|
SELECT concat(head, tail) AS code, ' ' AS a
|
||||||
|
@ -64,8 +64,10 @@ INSERT INTO t1 VALUES ('8'),('9'),('A'),('B'),('C'),('D'),('E'),('F');
|
|||||||
#
|
#
|
||||||
# Populate tables head and tail with values '00'-'FF'
|
# Populate tables head and tail with values '00'-'FF'
|
||||||
#
|
#
|
||||||
|
--disable_warnings
|
||||||
CREATE TEMPORARY TABLE head AS SELECT concat(b1.b, b2.b) AS head FROM t1 b1, t1 b2;
|
CREATE TEMPORARY TABLE head AS SELECT concat(b1.b, b2.b) AS head FROM t1 b1, t1 b2;
|
||||||
CREATE TEMPORARY TABLE tail AS SELECT concat(b1.b, b2.b) AS tail FROM t1 b1, t1 b2;
|
CREATE TEMPORARY TABLE tail AS SELECT concat(b1.b, b2.b) AS tail FROM t1 b1, t1 b2;
|
||||||
|
--enable_warnings
|
||||||
DROP TABLE t1;
|
DROP TABLE t1;
|
||||||
#
|
#
|
||||||
# Populate table t1 with all codes [80..FF][20..FF]
|
# Populate table t1 with all codes [80..FF][20..FF]
|
||||||
|
@ -145,7 +145,14 @@ EOF
|
|||||||
# must be digestable for both client and server. In 4.1 the client
|
# must be digestable for both client and server. In 4.1 the client
|
||||||
# should use default-character-set same as the server.
|
# should use default-character-set same as the server.
|
||||||
flush logs;
|
flush logs;
|
||||||
--exec $MYSQL_BINLOG --short-form $MYSQLD_DATADIR/master-bin.000004 | $MYSQL
|
# Due to BUG#18337 that wrongly suppresses the BINLOG EVENTS when
|
||||||
|
# --short-form is used, the "insert into t5 select * from `äöüÄÖÜ`"
|
||||||
|
# which is unsafe and thus written to the binary log in the row
|
||||||
|
# format is not executed. This makes the assertion select * from t5
|
||||||
|
# /* must be (1),(1) */; to fail. To temporary fix the bug, we
|
||||||
|
# removed the option --short-form.
|
||||||
|
#--exec $MYSQL_BINLOG --short-form $MYSQLD_DATADIR/master-bin.000004 | $MYSQL
|
||||||
|
--exec $MYSQL_BINLOG $MYSQLD_DATADIR/master-bin.000004 | $MYSQL
|
||||||
select * from t5 /* must be (1),(1) */;
|
select * from t5 /* must be (1),(1) */;
|
||||||
drop table t5;
|
drop table t5;
|
||||||
|
|
||||||
|
@ -29,6 +29,13 @@
|
|||||||
#pragma implementation // gcc: Class implementation
|
#pragma implementation // gcc: Class implementation
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
/*
|
||||||
|
NOTE: zlib.h must be included *before* my_global.h because my_global.h
|
||||||
|
may undef some HAVE_ macros. Including zlib.h after my_global.h may lead
|
||||||
|
to re-defining undefined macros, thus to compile errors.
|
||||||
|
*/
|
||||||
|
#include <zlib.h> // Must be before my_global.h
|
||||||
|
|
||||||
/* May include caustic 3rd-party defs. Use early, so it can override nothing. */
|
/* May include caustic 3rd-party defs. Use early, so it can override nothing. */
|
||||||
#include "sha2.h"
|
#include "sha2.h"
|
||||||
#include "my_global.h" // HAVE_*
|
#include "my_global.h" // HAVE_*
|
||||||
@ -51,7 +58,6 @@
|
|||||||
#include "my_md5.h"
|
#include "my_md5.h"
|
||||||
#include "sha1.h"
|
#include "sha1.h"
|
||||||
#include "my_aes.h"
|
#include "my_aes.h"
|
||||||
#include <zlib.h>
|
|
||||||
C_MODE_START
|
C_MODE_START
|
||||||
#include "../mysys/my_static.h" // For soundex_map
|
#include "../mysys/my_static.h" // For soundex_map
|
||||||
C_MODE_END
|
C_MODE_END
|
||||||
|
Loading…
x
Reference in New Issue
Block a user