summaryrefslogtreecommitdiff
path: root/sql/sql_yacc.yy
diff options
context:
space:
mode:
Diffstat (limited to 'sql/sql_yacc.yy')
-rw-r--r--sql/sql_yacc.yy22
1 files changed, 22 insertions, 0 deletions
diff --git a/sql/sql_yacc.yy b/sql/sql_yacc.yy
index 9664aad1e19..5bd02c39231 100644
--- a/sql/sql_yacc.yy
+++ b/sql/sql_yacc.yy
@@ -835,6 +835,7 @@ bool my_yyoverflow(short **a, YYSTYPE **b, ulong *yystacksize);
%token AUTHORS_SYM
%token AUTOEXTEND_SIZE_SYM
%token AUTO_INC
+%token AUTO_SYM
%token AVG_ROW_LENGTH
%token AVG_SYM /* SQL-2003-N */
%token BACKUP_SYM
@@ -1094,6 +1095,7 @@ bool my_yyoverflow(short **a, YYSTYPE **b, ulong *yystacksize);
%token LOW_PRIORITY
%token LT /* OPERATOR */
%token MASTER_CONNECT_RETRY_SYM
+%token MASTER_GTID_POS_SYM
%token MASTER_HOST_SYM
%token MASTER_LOG_FILE_SYM
%token MASTER_LOG_POS_SYM
@@ -2058,6 +2060,24 @@ master_file_def:
/* Adjust if < BIN_LOG_HEADER_SIZE (same comment as Lex->mi.pos) */
Lex->mi.relay_log_pos = max(BIN_LOG_HEADER_SIZE, Lex->mi.relay_log_pos);
}
+ | MASTER_GTID_POS_SYM EQ TEXT_STRING_sys
+ {
+ if (Lex->mi.gtid_pos_str.str || Lex->mi.gtid_pos_auto)
+ {
+ my_error(ER_DUP_ARGUMENT, MYF(0), "MASTER_GTID_POS");
+ MYSQL_YYABORT;
+ }
+ Lex->mi.gtid_pos_str = $3;
+ }
+ | MASTER_GTID_POS_SYM EQ AUTO_SYM
+ {
+ if (Lex->mi.gtid_pos_str.str || Lex->mi.gtid_pos_auto)
+ {
+ my_error(ER_DUP_ARGUMENT, MYF(0), "MASTER_GTID_POS");
+ MYSQL_YYABORT;
+ }
+ Lex->mi.gtid_pos_auto = true;
+ }
;
optional_connection_name:
@@ -13182,6 +13202,7 @@ keyword_sp:
| AUTHORS_SYM {}
| AUTO_INC {}
| AUTOEXTEND_SIZE_SYM {}
+ | AUTO_SYM {}
| AVG_ROW_LENGTH {}
| AVG_SYM {}
| BINLOG_SYM {}
@@ -13292,6 +13313,7 @@ keyword_sp:
| MAX_ROWS {}
| MASTER_SYM {}
| MASTER_HEARTBEAT_PERIOD_SYM {}
+ | MASTER_GTID_POS_SYM {}
| MASTER_HOST_SYM {}
| MASTER_PORT_SYM {}
| MASTER_LOG_FILE_SYM {}