summaryrefslogtreecommitdiff
path: root/sql/sql_lex.h
diff options
context:
space:
mode:
author <Dao-Gang.Qu@sun.com>2010-08-30 14:03:28 +0800
committer <Dao-Gang.Qu@sun.com>2010-08-30 14:03:28 +0800
commit0688c086a0739333bf642f77f85f9f36cc0dcbef (patch)
tree312b96bab339ccfd6d986901ceed2fe87e7ccb8d /sql/sql_lex.h
parent19908377b81d867e65b01c4cfdc8ae28ebe7c846 (diff)
downloadmariadb-git-0688c086a0739333bf642f77f85f9f36cc0dcbef.tar.gz
Bug #54579 Wrong unsafe warning for INSERT DELAYED in SBR
The lock_type is upgrade to TL_WRITE from TL_WRITE_DELAYED for INSERT DELAYED when inserting multi values in one statement. It's safe. But it causes an unsafe warning in SBR. Make INSERT DELAYED safe by logging it as INSERT without DELAYED.
Diffstat (limited to 'sql/sql_lex.h')
-rw-r--r--sql/sql_lex.h8
1 files changed, 7 insertions, 1 deletions
diff --git a/sql/sql_lex.h b/sql/sql_lex.h
index 121b7622597..1f4c9420102 100644
--- a/sql/sql_lex.h
+++ b/sql/sql_lex.h
@@ -2354,8 +2354,14 @@ struct LEX: public Query_tables_list
This pointer is required to add possibly omitted DEFINER-clause to the
DDL-statement before dumping it to the binlog.
+
+ keyword_delayed_begin points to the begin of the DELAYED keyword in
+ INSERT DELAYED statement.
*/
- const char *stmt_definition_begin;
+ union {
+ const char *stmt_definition_begin;
+ const char *keyword_delayed_begin;
+ };
const char *stmt_definition_end;