3713 Marc Alff 2012-03-12
Manual merge to mysql-5.6.5-m8-release
Ported manually the following fixes to the 5.6.5-m8 release branch:
- WL#5767 post merge cleanup (build break, test suite when building without perfschema)
- Bug#13819132 BROKEN SYNTAX ACCEPTED FOR START TRANSACTION
and related warning cleanup in sql/sql_yacc.yy
modified:
include/mysql/psi/psi.h
include/mysql/psi/psi_abi_v0.h.pp
include/mysql/psi/psi_abi_v1.h.pp
include/mysql/psi/psi_abi_v2.h.pp
mysql-test/r/parser.result
mysql-test/suite/perfschema/t/digest_table_full-master.opt
mysql-test/suite/perfschema/t/start_server_no_digests-master.opt
mysql-test/suite/perfschema/t/statement_digest_consumers-master.opt
mysql-test/suite/perfschema/t/statement_digest_consumers2-master.opt
mysql-test/t/parser.test
sql/sql_yacc.yy
3712 Joerg Bruehe 2012-03-05
This is 2012 - update the copyright year.
modified:
README
=== modified file 'include/mysql/psi/psi.h'
--- a/include/mysql/psi/psi.h 2012-02-23 23:27:02 +0000
+++ b/include/mysql/psi/psi.h 2012-03-12 11:21:16 +0000
@@ -142,6 +142,13 @@ typedef struct PSI_statement_locker PSI_
struct PSI_idle_locker;
typedef struct PSI_idle_locker PSI_idle_locker;
+/**
+ Interface for an instrumented statement digest operation.
+ This is an opaque structure.
+*/
+struct PSI_digest_locker;
+typedef struct PSI_digest_locker PSI_digest_locker;
+
/** Entry point for the performance schema interface. */
struct PSI_bootstrap
{
@@ -349,13 +356,6 @@ typedef struct PSI_file_locker PSI_file_
struct PSI_socket_locker;
typedef struct PSI_socket_locker PSI_socket_locker;
-/**
- Interface for an instrumented statement digest operation.
- This is an opaque structure.
-*/
-struct PSI_digest_locker;
-typedef struct PSI_digest_locker PSI_digest_locker;
-
/** Operation performed on an instrumented mutex. */
enum PSI_mutex_operation
{
=== modified file 'include/mysql/psi/psi_abi_v0.h.pp'
--- a/include/mysql/psi/psi_abi_v0.h.pp 2012-02-09 14:41:43 +0000
+++ b/include/mysql/psi/psi_abi_v0.h.pp 2012-03-12 11:21:16 +0000
@@ -24,6 +24,8 @@ struct PSI_statement_locker;
typedef struct PSI_statement_locker PSI_statement_locker;
struct PSI_idle_locker;
typedef struct PSI_idle_locker PSI_idle_locker;
+struct PSI_digest_locker;
+typedef struct PSI_digest_locker PSI_digest_locker;
struct PSI_bootstrap
{
void* (*get_interface)(int version);
=== modified file 'include/mysql/psi/psi_abi_v1.h.pp'
--- a/include/mysql/psi/psi_abi_v1.h.pp 2012-02-23 23:27:02 +0000
+++ b/include/mysql/psi/psi_abi_v1.h.pp 2012-03-12 11:21:16 +0000
@@ -24,6 +24,8 @@ struct PSI_statement_locker;
typedef struct PSI_statement_locker PSI_statement_locker;
struct PSI_idle_locker;
typedef struct PSI_idle_locker PSI_idle_locker;
+struct PSI_digest_locker;
+typedef struct PSI_digest_locker PSI_digest_locker;
struct PSI_bootstrap
{
void* (*get_interface)(int version);
@@ -39,8 +41,6 @@ struct PSI_file_locker;
typedef struct PSI_file_locker PSI_file_locker;
struct PSI_socket_locker;
typedef struct PSI_socket_locker PSI_socket_locker;
-struct PSI_digest_locker;
-typedef struct PSI_digest_locker PSI_digest_locker;
enum PSI_mutex_operation
{
PSI_MUTEX_LOCK= 0,
=== modified file 'include/mysql/psi/psi_abi_v2.h.pp'
--- a/include/mysql/psi/psi_abi_v2.h.pp 2012-02-21 18:27:58 +0000
+++ b/include/mysql/psi/psi_abi_v2.h.pp 2012-03-12 11:21:16 +0000
@@ -24,6 +24,8 @@ struct PSI_statement_locker;
typedef struct PSI_statement_locker PSI_statement_locker;
struct PSI_idle_locker;
typedef struct PSI_idle_locker PSI_idle_locker;
+struct PSI_digest_locker;
+typedef struct PSI_digest_locker PSI_digest_locker;
struct PSI_bootstrap
{
void* (*get_interface)(int version);
@@ -39,8 +41,6 @@ struct PSI_file_locker;
typedef struct PSI_file_locker PSI_file_locker;
struct PSI_socket_locker;
typedef struct PSI_socket_locker PSI_socket_locker;
-struct PSI_digest_locker;
-typedef struct PSI_digest_locker PSI_digest_locker;
enum PSI_mutex_operation
{
PSI_MUTEX_LOCK= 0,
=== modified file 'mysql-test/r/parser.result'
--- a/mysql-test/r/parser.result 2011-11-01 11:52:24 +0000
+++ b/mysql-test/r/parser.result 2012-03-12 11:21:16 +0000
@@ -655,3 +655,8 @@ CREATE TABLE t (id INT PRIMARY KEY);
ALTER TABLE t RENAME TO `t1';;
ERROR 42000: 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 '`t1'' at line 1
DROP TABLE t;
+#
+# Bug#13819132 BROKEN SYNTAX ACCEPTED FOR START TRANSACTION
+#
+START TRANSACTION ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,, ;
+ERROR 42000: 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 ',,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,' at line 1
=== modified file 'mysql-test/suite/perfschema/t/digest_table_full-master.opt'
--- a/mysql-test/suite/perfschema/t/digest_table_full-master.opt 2012-02-16 14:58:41 +0000
+++ b/mysql-test/suite/perfschema/t/digest_table_full-master.opt 2012-03-12 11:21:16 +0000
@@ -1 +1 @@
---performance-schema-digests-size=2
+--loose-performance-schema-digests-size=2
=== modified file 'mysql-test/suite/perfschema/t/start_server_no_digests-master.opt'
--- a/mysql-test/suite/perfschema/t/start_server_no_digests-master.opt 2012-01-16 19:07:57 +0000
+++ b/mysql-test/suite/perfschema/t/start_server_no_digests-master.opt 2012-03-12 11:21:16 +0000
@@ -1 +1 @@
---performance-schema-digests-size=0
+--loose-performance-schema-digests-size=0
=== modified file 'mysql-test/suite/perfschema/t/statement_digest_consumers-master.opt'
--- a/mysql-test/suite/perfschema/t/statement_digest_consumers-master.opt 2012-02-10 10:13:58 +0000
+++ b/mysql-test/suite/perfschema/t/statement_digest_consumers-master.opt 2012-03-12 11:21:16 +0000
@@ -1,2 +1,2 @@
---performance_schema_consumer_statements_digest=1
---performance_schema_consumer_events_statements_current=0
+--loose-performance_schema_consumer_statements_digest=1
+--loose-performance_schema_consumer_events_statements_current=0
=== modified file 'mysql-test/suite/perfschema/t/statement_digest_consumers2-master.opt'
--- a/mysql-test/suite/perfschema/t/statement_digest_consumers2-master.opt 2012-02-10 10:13:58 +0000
+++ b/mysql-test/suite/perfschema/t/statement_digest_consumers2-master.opt 2012-03-12 11:21:16 +0000
@@ -1,2 +1,2 @@
---performance_schema_consumer_statements_digest=0
---performance_schema_consumer_events_statements_current=1
+--loose-performance_schema_consumer_statements_digest=0
+--loose-performance_schema_consumer_events_statements_current=1
=== modified file 'mysql-test/t/parser.test'
--- a/mysql-test/t/parser.test 2011-07-25 10:54:06 +0000
+++ b/mysql-test/t/parser.test 2012-03-12 11:21:16 +0000
@@ -785,3 +785,11 @@ CREATE TABLE t (id INT PRIMARY KEY);
--error ER_PARSE_ERROR
--query ALTER TABLE t RENAME TO `t1';
DROP TABLE t;
+
+--echo #
+--echo # Bug#13819132 BROKEN SYNTAX ACCEPTED FOR START TRANSACTION
+--echo #
+
+--error ER_PARSE_ERROR
+START TRANSACTION ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,, ;
+
=== modified file 'sql/sql_yacc.yy'
--- a/sql/sql_yacc.yy 2012-03-01 13:53:55 +0000
+++ b/sql/sql_yacc.yy 2012-03-12 11:21:16 +0000
@@ -1656,12 +1656,18 @@ bool my_yyoverflow(short **a, YYSTYPE **
table_option opt_if_not_exists opt_no_write_to_binlog
opt_temporary all_or_any opt_distinct
opt_ignore_leaves fulltext_options spatial_type union_option
- start_transaction_opt_list start_transaction_opt
union_opt select_derived_init transaction_access_mode_types
opt_natural_language_mode opt_query_expansion
opt_ev_status opt_ev_on_completion ev_on_completion opt_ev_comment
ev_alter_on_schedule_completion opt_ev_rename_to opt_ev_sql_stmt
+/*
+ Bit field of MYSQL_START_TRANS_OPT_* flags.
+*/
+%type <num> opt_start_transaction_option_list
+%type <num> start_transaction_option_list
+%type <num> start_transaction_option
+
%type <m_yes_no_unk>
opt_chain opt_release
@@ -7377,7 +7383,7 @@ slave:
;
start:
- START_SYM TRANSACTION_SYM start_transaction_opt_list
+ START_SYM TRANSACTION_SYM opt_start_transaction_option_list
{
LEX *lex= Lex;
lex->sql_command= SQLCOM_BEGIN;
@@ -7392,16 +7398,30 @@ start:
}
;
-start_transaction_opt_list:
- start_transaction_opt
- { $$= $1; }
- | start_transaction_opt_list ',' start_transaction_opt
- { $$= $1 | $3; }
+opt_start_transaction_option_list:
+ /* empty */
+ {
+ $$= 0;
+ }
+ | start_transaction_option_list
+ {
+ $$= $1;
+ }
;
-start_transaction_opt:
- /*empty*/ { $$ = 0; }
- | WITH CONSISTENT_SYM SNAPSHOT_SYM
+start_transaction_option_list:
+ start_transaction_option
+ {
+ $$= $1;
+ }
+ | start_transaction_option_list ',' start_transaction_option
+ {
+ $$= $1 | $3;
+ }
+ ;
+
+start_transaction_option:
+ WITH CONSISTENT_SYM SNAPSHOT_SYM
{
$$= MYSQL_START_TRANS_OPT_WITH_CONS_SNAPSHOT;
}
@@ -13551,6 +13571,7 @@ set:
sp_create_assignment_lex(YYTHD, yychar == YYEMPTY);
}
start_option_value_list
+ {}
;
No bundle (reason: useless for push emails).
| Thread |
|---|
| • bzr push into mysql-trunk branch (marc.alff:3712 to 3713) | Marc Alff | 13 Mar |