MXS-2996 Fix classification of "SELECT ... LOCK IN SHARE MODE"
And also of "SELECT ... FOR SHARE"
This commit is contained in:
parent
1dd06c3ebc
commit
9fb5336615
@ -630,14 +630,14 @@ columnid(A) ::= nm(X). {
|
||||
IF IMMEDIATE INITIALLY INSTEAD
|
||||
/*KEY*/
|
||||
/*LIKE_KW*/
|
||||
MASTER /*MATCH*/ MERGE
|
||||
MASTER /*MATCH*/ MERGE MODE
|
||||
NAMES NEXT
|
||||
NO
|
||||
OF OFFSET OPEN
|
||||
PARTITIONS PASSWORD PREVIOUS
|
||||
QUICK
|
||||
RAISE RECURSIVE /*REINDEX*/ RELEASE /*RENAME*/ /*REPLACE*/ RESTRICT ROLLBACK ROLLUP ROW
|
||||
SAVEPOINT SELECT_OPTIONS_KW /*SEQUENCE*/ SLAVE /*START*/ STATEMENT STATUS
|
||||
SAVEPOINT SELECT_OPTIONS_KW /*SEQUENCE*/ SHARE SLAVE /*START*/ STATEMENT STATUS
|
||||
TABLES TEMP TEMPTABLE /*TRIGGER*/
|
||||
/*TRUNCATE*/
|
||||
// TODO: UNSIGNED is a reserved word and should not automatically convert into an identifer.
|
||||
@ -1036,7 +1036,11 @@ select(A) ::= with(W) selectnowith(X). {
|
||||
%ifdef MAXSCALE
|
||||
selectnowithsuffix(A) ::= selectnowith(X). {A = X;}
|
||||
|
||||
selectnowithsuffix(A) ::= selectnowith(X) FOR UPDATE. {
|
||||
for_something ::= FOR UPDATE.
|
||||
for_something ::= FOR SHARE.
|
||||
for_something ::= LOCK IN SHARE MODE.
|
||||
|
||||
selectnowithsuffix(A) ::= selectnowith(X) for_something. {
|
||||
A = X;
|
||||
maxscale_set_type_mask(QUERY_TYPE_WRITE);
|
||||
}
|
||||
|
@ -348,6 +348,7 @@ static Keyword aKeywordTable[] = {
|
||||
#ifdef MAXSCALE
|
||||
{ "MASTER", "TK_MASTER", ALWAYS },
|
||||
{ "MERGE", "TK_MERGE", ALWAYS },
|
||||
{ "MODE", "TK_MODE", ALWAYS },
|
||||
{ "NAMES", "TK_NAMES", ALWAYS },
|
||||
#endif
|
||||
{ "NATURAL", "TK_JOIN_KW", ALWAYS },
|
||||
@ -436,6 +437,7 @@ static Keyword aKeywordTable[] = {
|
||||
#ifdef MAXSCALE
|
||||
{ "SESSION", "TK_SESSION", ALWAYS },
|
||||
{ "SEPARATOR", "TK_SEPARATOR", ALWAYS },
|
||||
{ "SHARE", "TK_SHARE", ALWAYS },
|
||||
{ "SHOW", "TK_SHOW", ALWAYS },
|
||||
{ "SLAVE", "TK_SLAVE", ALWAYS },
|
||||
{ "SPATIAL", "TK_SPATIAL", ALWAYS },
|
||||
|
Loading…
x
Reference in New Issue
Block a user