Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
taosdata
TDengine
提交
1a709b5c
T
TDengine
项目概览
taosdata
/
TDengine
大约 2 年 前同步成功
通知
1192
Star
22018
Fork
4786
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
1
列表
看板
标记
里程碑
合并请求
0
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
T
TDengine
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
1
Issue
1
列表
看板
标记
里程碑
合并请求
0
合并请求
0
Pages
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
提交
Issue看板
提交
1a709b5c
编写于
12月 23, 2020
作者:
D
dapan1121
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
add cachelast db option
上级
6ff69bf1
变更
7
隐藏空白更改
内联
并排
Showing
7 changed file
with
1442 addition
and
1439 deletion
+1442
-1439
src/client/src/tscSQLParser.c
src/client/src/tscSQLParser.c
+1
-0
src/inc/ttokendef.h
src/inc/ttokendef.h
+109
-108
src/query/inc/qSqlparser.h
src/query/inc/qSqlparser.h
+2
-1
src/query/inc/sql.y
src/query/inc/sql.y
+87
-84
src/query/src/qParserImpl.c
src/query/src/qParserImpl.c
+1
-0
src/query/src/qTokenizer.c
src/query/src/qTokenizer.c
+1
-0
src/query/src/sql.c
src/query/src/sql.c
+1241
-1246
未找到文件。
src/client/src/tscSQLParser.c
浏览文件 @
1a709b5c
...
...
@@ -5442,6 +5442,7 @@ static void setCreateDBOption(SCreateDbMsg* pMsg, SCreateDBInfo* pCreateDb) {
pMsg
->
quorum
=
pCreateDb
->
quorum
;
pMsg
->
ignoreExist
=
pCreateDb
->
ignoreExists
;
pMsg
->
update
=
pCreateDb
->
update
;
pMsg
->
cacheLastRow
=
pCreateDb
->
cachelast
;
}
int32_t
parseCreateDBOptions
(
SSqlCmd
*
pCmd
,
SCreateDBInfo
*
pCreateDbSql
)
{
...
...
src/inc/ttokendef.h
浏览文件 @
1a709b5c
...
...
@@ -114,114 +114,115 @@
#define TK_COMP 96
#define TK_PRECISION 97
#define TK_UPDATE 98
#define TK_LP 99
#define TK_RP 100
#define TK_TAGS 101
#define TK_USING 102
#define TK_AS 103
#define TK_COMMA 104
#define TK_NULL 105
#define TK_SELECT 106
#define TK_UNION 107
#define TK_ALL 108
#define TK_FROM 109
#define TK_VARIABLE 110
#define TK_INTERVAL 111
#define TK_FILL 112
#define TK_SLIDING 113
#define TK_ORDER 114
#define TK_BY 115
#define TK_ASC 116
#define TK_DESC 117
#define TK_GROUP 118
#define TK_HAVING 119
#define TK_LIMIT 120
#define TK_OFFSET 121
#define TK_SLIMIT 122
#define TK_SOFFSET 123
#define TK_WHERE 124
#define TK_NOW 125
#define TK_RESET 126
#define TK_QUERY 127
#define TK_ADD 128
#define TK_COLUMN 129
#define TK_TAG 130
#define TK_CHANGE 131
#define TK_SET 132
#define TK_KILL 133
#define TK_CONNECTION 134
#define TK_STREAM 135
#define TK_COLON 136
#define TK_ABORT 137
#define TK_AFTER 138
#define TK_ATTACH 139
#define TK_BEFORE 140
#define TK_BEGIN 141
#define TK_CASCADE 142
#define TK_CLUSTER 143
#define TK_CONFLICT 144
#define TK_COPY 145
#define TK_DEFERRED 146
#define TK_DELIMITERS 147
#define TK_DETACH 148
#define TK_EACH 149
#define TK_END 150
#define TK_EXPLAIN 151
#define TK_FAIL 152
#define TK_FOR 153
#define TK_IGNORE 154
#define TK_IMMEDIATE 155
#define TK_INITIALLY 156
#define TK_INSTEAD 157
#define TK_MATCH 158
#define TK_KEY 159
#define TK_OF 160
#define TK_RAISE 161
#define TK_REPLACE 162
#define TK_RESTRICT 163
#define TK_ROW 164
#define TK_STATEMENT 165
#define TK_TRIGGER 166
#define TK_VIEW 167
#define TK_COUNT 168
#define TK_SUM 169
#define TK_AVG 170
#define TK_MIN 171
#define TK_MAX 172
#define TK_FIRST 173
#define TK_LAST 174
#define TK_TOP 175
#define TK_BOTTOM 176
#define TK_STDDEV 177
#define TK_PERCENTILE 178
#define TK_APERCENTILE 179
#define TK_LEASTSQUARES 180
#define TK_HISTOGRAM 181
#define TK_DIFF 182
#define TK_SPREAD 183
#define TK_TWA 184
#define TK_INTERP 185
#define TK_LAST_ROW 186
#define TK_RATE 187
#define TK_IRATE 188
#define TK_SUM_RATE 189
#define TK_SUM_IRATE 190
#define TK_AVG_RATE 191
#define TK_AVG_IRATE 192
#define TK_TBID 193
#define TK_SEMI 194
#define TK_NONE 195
#define TK_PREV 196
#define TK_LINEAR 197
#define TK_IMPORT 198
#define TK_METRIC 199
#define TK_TBNAME 200
#define TK_JOIN 201
#define TK_METRICS 202
#define TK_STABLE 203
#define TK_INSERT 204
#define TK_INTO 205
#define TK_VALUES 206
#define TK_CACHELAST 99
#define TK_LP 100
#define TK_RP 101
#define TK_TAGS 102
#define TK_USING 103
#define TK_AS 104
#define TK_COMMA 105
#define TK_NULL 106
#define TK_SELECT 107
#define TK_UNION 108
#define TK_ALL 109
#define TK_FROM 110
#define TK_VARIABLE 111
#define TK_INTERVAL 112
#define TK_FILL 113
#define TK_SLIDING 114
#define TK_ORDER 115
#define TK_BY 116
#define TK_ASC 117
#define TK_DESC 118
#define TK_GROUP 119
#define TK_HAVING 120
#define TK_LIMIT 121
#define TK_OFFSET 122
#define TK_SLIMIT 123
#define TK_SOFFSET 124
#define TK_WHERE 125
#define TK_NOW 126
#define TK_RESET 127
#define TK_QUERY 128
#define TK_ADD 129
#define TK_COLUMN 130
#define TK_TAG 131
#define TK_CHANGE 132
#define TK_SET 133
#define TK_KILL 134
#define TK_CONNECTION 135
#define TK_STREAM 136
#define TK_COLON 137
#define TK_ABORT 138
#define TK_AFTER 139
#define TK_ATTACH 140
#define TK_BEFORE 141
#define TK_BEGIN 142
#define TK_CASCADE 143
#define TK_CLUSTER 144
#define TK_CONFLICT 145
#define TK_COPY 146
#define TK_DEFERRED 147
#define TK_DELIMITERS 148
#define TK_DETACH 149
#define TK_EACH 150
#define TK_END 151
#define TK_EXPLAIN 152
#define TK_FAIL 153
#define TK_FOR 154
#define TK_IGNORE 155
#define TK_IMMEDIATE 156
#define TK_INITIALLY 157
#define TK_INSTEAD 158
#define TK_MATCH 159
#define TK_KEY 160
#define TK_OF 161
#define TK_RAISE 162
#define TK_REPLACE 163
#define TK_RESTRICT 164
#define TK_ROW 165
#define TK_STATEMENT 166
#define TK_TRIGGER 167
#define TK_VIEW 168
#define TK_COUNT 169
#define TK_SUM 170
#define TK_AVG 171
#define TK_MIN 172
#define TK_MAX 173
#define TK_FIRST 174
#define TK_LAST 175
#define TK_TOP 176
#define TK_BOTTOM 177
#define TK_STDDEV 178
#define TK_PERCENTILE 179
#define TK_APERCENTILE 180
#define TK_LEASTSQUARES 181
#define TK_HISTOGRAM 182
#define TK_DIFF 183
#define TK_SPREAD 184
#define TK_TWA 185
#define TK_INTERP 186
#define TK_LAST_ROW 187
#define TK_RATE 188
#define TK_IRATE 189
#define TK_SUM_RATE 190
#define TK_SUM_IRATE 191
#define TK_AVG_RATE 192
#define TK_AVG_IRATE 193
#define TK_TBID 194
#define TK_SEMI 195
#define TK_NONE 196
#define TK_PREV 197
#define TK_LINEAR 198
#define TK_IMPORT 199
#define TK_METRIC 200
#define TK_TBNAME 201
#define TK_JOIN 202
#define TK_METRICS 203
#define TK_STABLE 204
#define TK_INSERT 205
#define TK_INTO 206
#define TK_VALUES 207
#define TK_SPACE 300
...
...
src/query/inc/qSqlparser.h
浏览文件 @
1a709b5c
...
...
@@ -120,7 +120,8 @@ typedef struct SCreateDBInfo {
int32_t
compressionLevel
;
SStrToken
precision
;
bool
ignoreExists
;
int8_t
update
;
int8_t
update
;
int8_t
cachelast
;
SArray
*
keep
;
}
SCreateDBInfo
;
...
...
src/query/inc/sql.y
浏览文件 @
1a709b5c
...
...
@@ -112,29 +112,29 @@ cmd ::= SHOW dbPrefix(X) STABLES. {
cmd ::= SHOW dbPrefix(X) STABLES LIKE ids(Y). {
SStrToken token;
setD
B
Name(&token, &X);
setD
b
Name(&token, &X);
setShowOptions(pInfo, TSDB_MGMT_TABLE_METRIC, &token, &Y);
}
cmd ::= SHOW dbPrefix(X) VGROUPS. {
SStrToken token;
setD
B
Name(&token, &X);
setD
b
Name(&token, &X);
setShowOptions(pInfo, TSDB_MGMT_TABLE_VGROUP, &token, 0);
}
cmd ::= SHOW dbPrefix(X) VGROUPS ids(Y). {
SStrToken token;
setD
BName(&token, &X);
setD
bName(&token, &X);
setShowOptions(pInfo, TSDB_MGMT_TABLE_VGROUP, &token, &Y);
}
//drop configure for tables
cmd ::= DROP TABLE ifexists(Y) ids(X) cpxName(Z). {
X.n += Z.n;
setDropD
B
TableInfo(pInfo, TSDB_SQL_DROP_TABLE, &X, &Y);
setDropD
b
TableInfo(pInfo, TSDB_SQL_DROP_TABLE, &X, &Y);
}
cmd ::= DROP DATABASE ifexists(Y) ids(X). { setDropD
B
TableInfo(pInfo, TSDB_SQL_DROP_DB, &X, &Y); }
cmd ::= DROP DATABASE ifexists(Y) ids(X). { setDropD
b
TableInfo(pInfo, TSDB_SQL_DROP_DB, &X, &Y); }
cmd ::= DROP DNODE ids(X). { setDCLSQLElems(pInfo, TSDB_SQL_DROP_DNODE, 1, &X); }
cmd ::= DROP USER ids(X). { setDCLSQLElems(pInfo, TSDB_SQL_DROP_USER, 1, &X); }
cmd ::= DROP ACCOUNT ids(X). { setDCLSQLElems(pInfo, TSDB_SQL_DROP_ACCT, 1, &X); }
...
...
@@ -149,16 +149,16 @@ cmd ::= DESCRIBE ids(X) cpxName(Y). {
}
/////////////////////////////////THE ALTER STATEMENT////////////////////////////////////////
cmd ::= ALTER USER ids(X) PASS ids(Y). { setAlterUserS
QL
(pInfo, TSDB_ALTER_USER_PASSWD, &X, &Y, NULL); }
cmd ::= ALTER USER ids(X) PRIVILEGE ids(Y). { setAlterUserS
QL
(pInfo, TSDB_ALTER_USER_PRIVILEGES, &X, NULL, &Y);}
cmd ::= ALTER USER ids(X) PASS ids(Y). { setAlterUserS
ql
(pInfo, TSDB_ALTER_USER_PASSWD, &X, &Y, NULL); }
cmd ::= ALTER USER ids(X) PRIVILEGE ids(Y). { setAlterUserS
ql
(pInfo, TSDB_ALTER_USER_PRIVILEGES, &X, NULL, &Y);}
cmd ::= ALTER DNODE ids(X) ids(Y). { setDCLSQLElems(pInfo, TSDB_SQL_CFG_DNODE, 2, &X, &Y); }
cmd ::= ALTER DNODE ids(X) ids(Y) ids(Z). { setDCLSQLElems(pInfo, TSDB_SQL_CFG_DNODE, 3, &X, &Y, &Z); }
cmd ::= ALTER LOCAL ids(X). { setDCLSQLElems(pInfo, TSDB_SQL_CFG_LOCAL, 1, &X); }
cmd ::= ALTER LOCAL ids(X) ids(Y). { setDCLSQLElems(pInfo, TSDB_SQL_CFG_LOCAL, 2, &X, &Y); }
cmd ::= ALTER DATABASE ids(X) alter_db_optr(Y). { SStrToken t = {0}; setCreateDBSQL(pInfo, TSDB_SQL_ALTER_DB, &X, &Y, &t);}
cmd ::= ALTER ACCOUNT ids(X) acct_optr(Z). { setCreateAcctS
QL
(pInfo, TSDB_SQL_ALTER_ACCT, &X, NULL, &Z);}
cmd ::= ALTER ACCOUNT ids(X) PASS ids(Y) acct_optr(Z). { setCreateAcctS
QL
(pInfo, TSDB_SQL_ALTER_ACCT, &X, &Y, &Z);}
cmd ::= ALTER ACCOUNT ids(X) acct_optr(Z). { setCreateAcctS
ql
(pInfo, TSDB_SQL_ALTER_ACCT, &X, NULL, &Z);}
cmd ::= ALTER ACCOUNT ids(X) PASS ids(Y) acct_optr(Z). { setCreateAcctS
ql
(pInfo, TSDB_SQL_ALTER_ACCT, &X, &Y, &Z);}
// An IDENTIFIER can be a generic identifier, or one of several keywords.
// Any non-standard keyword can also be an identifier.
...
...
@@ -179,9 +179,9 @@ ifnotexists(X) ::= . { X.n = 0;}
//create option for dnode/db/user/account
cmd ::= CREATE DNODE ids(X). { setDCLSQLElems(pInfo, TSDB_SQL_CREATE_DNODE, 1, &X);}
cmd ::= CREATE ACCOUNT ids(X) PASS ids(Y) acct_optr(Z).
{ setCreateAcctS
QL
(pInfo, TSDB_SQL_CREATE_ACCT, &X, &Y, &Z);}
{ setCreateAcctS
ql
(pInfo, TSDB_SQL_CREATE_ACCT, &X, &Y, &Z);}
cmd ::= CREATE DATABASE ifnotexists(Z) ids(X) db_optr(Y). { setCreateDBSQL(pInfo, TSDB_SQL_CREATE_DB, &X, &Y, &Z);}
cmd ::= CREATE USER ids(X) PASS ids(Y). { setCreateUserS
QL
(pInfo, &X, &Y);}
cmd ::= CREATE USER ids(X) PASS ids(Y). { setCreateUserS
ql
(pInfo, &X, &Y);}
pps(Y) ::= . { Y.n = 0; }
pps(Y) ::= PPS INTEGER(X). { Y = X; }
...
...
@@ -240,6 +240,7 @@ fsync(Y) ::= FSYNC INTEGER(X). { Y = X; }
comp(Y) ::= COMP INTEGER(X). { Y = X; }
prec(Y) ::= PRECISION STRING(X). { Y = X; }
update(Y) ::= UPDATE INTEGER(X). { Y = X; }
cachelast(Y) ::= CACHELAST INTEGER(X). { Y = X; }
%type db_optr {SCreateDBInfo}
db_optr(Y) ::= . {setDefaultCreateDbOption(&Y);}
...
...
@@ -258,6 +259,7 @@ db_optr(Y) ::= db_optr(Z) comp(X). { Y = Z; Y.compressionLevel = strto
db_optr(Y) ::= db_optr(Z) prec(X). { Y = Z; Y.precision = X; }
db_optr(Y) ::= db_optr(Z) keep(X). { Y = Z; Y.keep = X; }
db_optr(Y) ::= db_optr(Z) update(X). { Y = Z; Y.update = strtol(X.z, NULL, 10); }
db_optr(Y) ::= db_optr(Z) cachelast(X). { Y = Z; Y.cachelast = strtol(X.z, NULL, 10); }
%type alter_db_optr {SCreateDBInfo}
alter_db_optr(Y) ::= . { setDefaultCreateDbOption(&Y);}
...
...
@@ -270,21 +272,22 @@ alter_db_optr(Y) ::= alter_db_optr(Z) comp(X). { Y = Z; Y.compressionLeve
alter_db_optr(Y) ::= alter_db_optr(Z) wal(X). { Y = Z; Y.walLevel = strtol(X.z, NULL, 10); }
alter_db_optr(Y) ::= alter_db_optr(Z) fsync(X). { Y = Z; Y.fsyncPeriod = strtol(X.z, NULL, 10); }
alter_db_optr(Y) ::= alter_db_optr(Z) update(X). { Y = Z; Y.update = strtol(X.z, NULL, 10); }
alter_db_optr(Y) ::= alter_db_optr(Z) cachelast(X). { Y = Z; Y.cachelast = strtol(X.z, NULL, 10); }
%type typename {TAOS_FIELD}
typename(A) ::= ids(X). {
X.type = 0;
tS
QLSetColumnType (&A, &X);
tS
qlSetColumnType (&A, &X);
}
//define binary type, e.g., binary(10), nchar(10)
typename(A) ::= ids(X) LP signed(Y) RP. {
if (Y <= 0) {
X.type = 0;
tS
QL
SetColumnType(&A, &X);
tS
ql
SetColumnType(&A, &X);
} else {
X.type = -Y; // negative value of name length
tS
QL
SetColumnType(&A, &X);
tS
ql
SetColumnType(&A, &X);
}
}
...
...
@@ -315,8 +318,8 @@ create_table_list(A) ::= create_table_list(X) create_from_stable(Z). {
%type create_table_args{SCreateTableSQL*}
create_table_args(A) ::= ifnotexists(U) ids(V) cpxName(Z) LP columnlist(X) RP. {
A = tSetCreateS
QL
Elems(X, NULL, NULL, TSQL_CREATE_TABLE);
setS
QL
Info(pInfo, A, NULL, TSDB_SQL_CREATE_TABLE);
A = tSetCreateS
ql
Elems(X, NULL, NULL, TSQL_CREATE_TABLE);
setS
ql
Info(pInfo, A, NULL, TSDB_SQL_CREATE_TABLE);
V.n += Z.n;
setCreatedTableName(pInfo, &V, &U);
...
...
@@ -324,8 +327,8 @@ create_table_args(A) ::= ifnotexists(U) ids(V) cpxName(Z) LP columnlist(X) RP. {
// create super table
create_table_args(A) ::= ifnotexists(U) ids(V) cpxName(Z) LP columnlist(X) RP TAGS LP columnlist(Y) RP. {
A = tSetCreateS
QL
Elems(X, Y, NULL, TSQL_CREATE_STABLE);
setS
QL
Info(pInfo, A, NULL, TSDB_SQL_CREATE_TABLE);
A = tSetCreateS
ql
Elems(X, Y, NULL, TSQL_CREATE_STABLE);
setS
ql
Info(pInfo, A, NULL, TSDB_SQL_CREATE_TABLE);
V.n += Z.n;
setCreatedTableName(pInfo, &V, &U);
...
...
@@ -343,8 +346,8 @@ create_from_stable(A) ::= ifnotexists(U) ids(V) cpxName(Z) USING ids(X) cpxName(
// create stream
// create table table_name as select count(*) from super_table_name interval(time)
create_table_args(A) ::= ifnotexists(U) ids(V) cpxName(Z) AS select(S). {
A = tSetCreateS
QL
Elems(NULL, NULL, S, TSQL_CREATE_STREAM);
setS
QL
Info(pInfo, A, NULL, TSDB_SQL_CREATE_TABLE);
A = tSetCreateS
ql
Elems(NULL, NULL, S, TSQL_CREATE_STREAM);
setS
ql
Info(pInfo, A, NULL, TSDB_SQL_CREATE_TABLE);
V.n += Z.n;
setCreatedTableName(pInfo, &V, &U);
...
...
@@ -359,7 +362,7 @@ columnlist(A) ::= column(X). {A = taosArrayInit(4, sizeof(T
// The information used for a column is the name and type of column:
// tinyint smallint int bigint float double bool timestamp binary(x) nchar(x)
column(A) ::= ids(X) typename(Y). {
tS
QL
SetColumnInfo(&A, &X, &Y);
tS
ql
SetColumnInfo(&A, &X, &Y);
}
%type tagitemlist {SArray*}
...
...
@@ -407,7 +410,7 @@ tagitem(A) ::= PLUS(X) FLOAT(Y). {
%type select {SQuerySQL*}
%destructor select {doDestroyQuerySql($$);}
select(A) ::= SELECT(T) selcollist(W) from(X) where_opt(Y) interval_opt(K) fill_opt(F) sliding_opt(S) groupby_opt(P) orderby_opt(Z) having_opt(N) slimit_opt(G) limit_opt(L). {
A = tSetQueryS
QL
Elems(&T, W, X, Y, P, Z, &K, &S, F, &L, &G);
A = tSetQueryS
ql
Elems(&T, W, X, Y, P, Z, &K, &S, F, &L, &G);
}
%type union {SSubclauseInfo*}
...
...
@@ -418,33 +421,33 @@ union(Y) ::= LP union(X) RP. { Y = X; }
union(Y) ::= union(Z) UNION ALL select(X). { Y = appendSelectClause(Z, X); }
union(Y) ::= union(Z) UNION ALL LP select(X) RP. { Y = appendSelectClause(Z, X); }
cmd ::= union(X). { setS
QL
Info(pInfo, X, NULL, TSDB_SQL_SELECT); }
cmd ::= union(X). { setS
ql
Info(pInfo, X, NULL, TSDB_SQL_SELECT); }
// Support for the SQL exprssion without from & where subclauses, e.g.,
// select current_database(),
// select server_version(), select client_version(),
// select server_state();
select(A) ::= SELECT(T) selcollist(W). {
A = tSetQueryS
QL
Elems(&T, W, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL);
A = tSetQueryS
ql
Elems(&T, W, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL);
}
// selcollist is a list of expressions that are to become the return
// values of the SELECT statement. The "*" in statements like
// "SELECT * FROM ..." is encoded as a special expression with an opcode of TK_ALL.
%type selcollist {tSQLExprList*}
%destructor selcollist {tS
QL
ExprListDestroy($$);}
%destructor selcollist {tS
ql
ExprListDestroy($$);}
%type sclp {tSQLExprList*}
%destructor sclp {tS
QL
ExprListDestroy($$);}
%destructor sclp {tS
ql
ExprListDestroy($$);}
sclp(A) ::= selcollist(X) COMMA. {A = X;}
sclp(A) ::= . {A = 0;}
selcollist(A) ::= sclp(P) expr(X) as(Y). {
A = tS
QL
ExprListAppend(P, X, Y.n?&Y:0);
A = tS
ql
ExprListAppend(P, X, Y.n?&Y:0);
}
selcollist(A) ::= sclp(P) STAR. {
tSQLExpr *pNode = tS
QL
ExprIdValueCreate(NULL, TK_ALL);
A = tS
QL
ExprListAppend(P, pNode, 0);
tSQLExpr *pNode = tS
ql
ExprIdValueCreate(NULL, TK_ALL);
A = tS
ql
ExprListAppend(P, pNode, 0);
}
// An option "AS <id>" phrase that can follow one of the expressions that
...
...
@@ -573,7 +576,7 @@ grouplist(A) ::= item(X). {
//having clause, ignore the input condition in having
%type having_opt {tSQLExpr*}
%destructor having_opt {tS
QL
ExprDestroy($$);}
%destructor having_opt {tS
ql
ExprDestroy($$);}
having_opt(A) ::=. {A = 0;}
having_opt(A) ::= HAVING expr(X). {A = X;}
...
...
@@ -595,7 +598,7 @@ slimit_opt(A) ::= SLIMIT signed(X) COMMA signed(Y).
{A.limit = Y; A.offset = X;}
%type where_opt {tSQLExpr*}
%destructor where_opt {tS
QL
ExprDestroy($$);}
%destructor where_opt {tS
ql
ExprDestroy($$);}
where_opt(A) ::= . {A = 0;}
where_opt(A) ::= WHERE expr(X). {A = X;}
...
...
@@ -603,67 +606,67 @@ where_opt(A) ::= WHERE expr(X). {A = X;}
/////////////////////////// Expression Processing /////////////////////////////
//
%type expr {tSQLExpr*}
%destructor expr {tS
QL
ExprDestroy($$);}
%destructor expr {tS
ql
ExprDestroy($$);}
expr(A) ::= LP(X) expr(Y) RP(Z). {A = Y; A->token.z = X.z; A->token.n = (Z.z - X.z + 1);}
expr(A) ::= ID(X). { A = tS
QL
ExprIdValueCreate(&X, TK_ID);}
expr(A) ::= ID(X) DOT ID(Y). { X.n += (1+Y.n); A = tS
QL
ExprIdValueCreate(&X, TK_ID);}
expr(A) ::= ID(X) DOT STAR(Y). { X.n += (1+Y.n); A = tS
QL
ExprIdValueCreate(&X, TK_ALL);}
expr(A) ::= INTEGER(X). { A = tS
QL
ExprIdValueCreate(&X, TK_INTEGER);}
expr(A) ::= MINUS(X) INTEGER(Y). { X.n += Y.n; X.type = TK_INTEGER; A = tS
QL
ExprIdValueCreate(&X, TK_INTEGER);}
expr(A) ::= PLUS(X) INTEGER(Y). { X.n += Y.n; X.type = TK_INTEGER; A = tS
QL
ExprIdValueCreate(&X, TK_INTEGER);}
expr(A) ::= FLOAT(X). { A = tS
QL
ExprIdValueCreate(&X, TK_FLOAT);}
expr(A) ::= MINUS(X) FLOAT(Y). { X.n += Y.n; X.type = TK_FLOAT; A = tS
QL
ExprIdValueCreate(&X, TK_FLOAT);}
expr(A) ::= PLUS(X) FLOAT(Y). { X.n += Y.n; X.type = TK_FLOAT; A = tS
QL
ExprIdValueCreate(&X, TK_FLOAT);}
expr(A) ::= STRING(X). { A = tS
QL
ExprIdValueCreate(&X, TK_STRING);}
expr(A) ::= NOW(X). { A = tS
QL
ExprIdValueCreate(&X, TK_NOW); }
expr(A) ::= VARIABLE(X). { A = tS
QL
ExprIdValueCreate(&X, TK_VARIABLE);}
expr(A) ::= BOOL(X). { A = tS
QL
ExprIdValueCreate(&X, TK_BOOL);}
expr(A) ::= ID(X). { A = tS
ql
ExprIdValueCreate(&X, TK_ID);}
expr(A) ::= ID(X) DOT ID(Y). { X.n += (1+Y.n); A = tS
ql
ExprIdValueCreate(&X, TK_ID);}
expr(A) ::= ID(X) DOT STAR(Y). { X.n += (1+Y.n); A = tS
ql
ExprIdValueCreate(&X, TK_ALL);}
expr(A) ::= INTEGER(X). { A = tS
ql
ExprIdValueCreate(&X, TK_INTEGER);}
expr(A) ::= MINUS(X) INTEGER(Y). { X.n += Y.n; X.type = TK_INTEGER; A = tS
ql
ExprIdValueCreate(&X, TK_INTEGER);}
expr(A) ::= PLUS(X) INTEGER(Y). { X.n += Y.n; X.type = TK_INTEGER; A = tS
ql
ExprIdValueCreate(&X, TK_INTEGER);}
expr(A) ::= FLOAT(X). { A = tS
ql
ExprIdValueCreate(&X, TK_FLOAT);}
expr(A) ::= MINUS(X) FLOAT(Y). { X.n += Y.n; X.type = TK_FLOAT; A = tS
ql
ExprIdValueCreate(&X, TK_FLOAT);}
expr(A) ::= PLUS(X) FLOAT(Y). { X.n += Y.n; X.type = TK_FLOAT; A = tS
ql
ExprIdValueCreate(&X, TK_FLOAT);}
expr(A) ::= STRING(X). { A = tS
ql
ExprIdValueCreate(&X, TK_STRING);}
expr(A) ::= NOW(X). { A = tS
ql
ExprIdValueCreate(&X, TK_NOW); }
expr(A) ::= VARIABLE(X). { A = tS
ql
ExprIdValueCreate(&X, TK_VARIABLE);}
expr(A) ::= BOOL(X). { A = tS
ql
ExprIdValueCreate(&X, TK_BOOL);}
// ordinary functions: min(x), max(x), top(k, 20)
expr(A) ::= ID(X) LP exprlist(Y) RP(E). { A = tS
QL
ExprCreateFunction(Y, &X, &E, X.type); }
expr(A) ::= ID(X) LP exprlist(Y) RP(E). { A = tS
ql
ExprCreateFunction(Y, &X, &E, X.type); }
// for parsing sql functions with wildcard for parameters. e.g., count(*)/first(*)/last(*) operation
expr(A) ::= ID(X) LP STAR RP(Y). { A = tS
QL
ExprCreateFunction(NULL, &X, &Y, X.type); }
expr(A) ::= ID(X) LP STAR RP(Y). { A = tS
ql
ExprCreateFunction(NULL, &X, &Y, X.type); }
// is (not) null expression
expr(A) ::= expr(X) IS NULL. {A = tS
QL
ExprCreate(X, NULL, TK_ISNULL);}
expr(A) ::= expr(X) IS NOT NULL. {A = tS
QL
ExprCreate(X, NULL, TK_NOTNULL);}
expr(A) ::= expr(X) IS NULL. {A = tS
ql
ExprCreate(X, NULL, TK_ISNULL);}
expr(A) ::= expr(X) IS NOT NULL. {A = tS
ql
ExprCreate(X, NULL, TK_NOTNULL);}
// relational expression
expr(A) ::= expr(X) LT expr(Y). {A = tS
QL
ExprCreate(X, Y, TK_LT);}
expr(A) ::= expr(X) GT expr(Y). {A = tS
QL
ExprCreate(X, Y, TK_GT);}
expr(A) ::= expr(X) LE expr(Y). {A = tS
QL
ExprCreate(X, Y, TK_LE);}
expr(A) ::= expr(X) GE expr(Y). {A = tS
QL
ExprCreate(X, Y, TK_GE);}
expr(A) ::= expr(X) NE expr(Y). {A = tS
QL
ExprCreate(X, Y, TK_NE);}
expr(A) ::= expr(X) EQ expr(Y). {A = tS
QL
ExprCreate(X, Y, TK_EQ);}
expr(A) ::= expr(X) LT expr(Y). {A = tS
ql
ExprCreate(X, Y, TK_LT);}
expr(A) ::= expr(X) GT expr(Y). {A = tS
ql
ExprCreate(X, Y, TK_GT);}
expr(A) ::= expr(X) LE expr(Y). {A = tS
ql
ExprCreate(X, Y, TK_LE);}
expr(A) ::= expr(X) GE expr(Y). {A = tS
ql
ExprCreate(X, Y, TK_GE);}
expr(A) ::= expr(X) NE expr(Y). {A = tS
ql
ExprCreate(X, Y, TK_NE);}
expr(A) ::= expr(X) EQ expr(Y). {A = tS
ql
ExprCreate(X, Y, TK_EQ);}
expr(A) ::= expr(X) AND expr(Y). {A = tS
QL
ExprCreate(X, Y, TK_AND);}
expr(A) ::= expr(X) OR expr(Y). {A = tS
QL
ExprCreate(X, Y, TK_OR); }
expr(A) ::= expr(X) AND expr(Y). {A = tS
ql
ExprCreate(X, Y, TK_AND);}
expr(A) ::= expr(X) OR expr(Y). {A = tS
ql
ExprCreate(X, Y, TK_OR); }
// binary arithmetic expression
expr(A) ::= expr(X) PLUS expr(Y). {A = tS
QL
ExprCreate(X, Y, TK_PLUS); }
expr(A) ::= expr(X) MINUS expr(Y). {A = tS
QL
ExprCreate(X, Y, TK_MINUS); }
expr(A) ::= expr(X) STAR expr(Y). {A = tS
QL
ExprCreate(X, Y, TK_STAR); }
expr(A) ::= expr(X) SLASH expr(Y). {A = tS
QL
ExprCreate(X, Y, TK_DIVIDE);}
expr(A) ::= expr(X) REM expr(Y). {A = tS
QL
ExprCreate(X, Y, TK_REM); }
expr(A) ::= expr(X) PLUS expr(Y). {A = tS
ql
ExprCreate(X, Y, TK_PLUS); }
expr(A) ::= expr(X) MINUS expr(Y). {A = tS
ql
ExprCreate(X, Y, TK_MINUS); }
expr(A) ::= expr(X) STAR expr(Y). {A = tS
ql
ExprCreate(X, Y, TK_STAR); }
expr(A) ::= expr(X) SLASH expr(Y). {A = tS
ql
ExprCreate(X, Y, TK_DIVIDE);}
expr(A) ::= expr(X) REM expr(Y). {A = tS
ql
ExprCreate(X, Y, TK_REM); }
// like expression
expr(A) ::= expr(X) LIKE expr(Y). {A = tS
QL
ExprCreate(X, Y, TK_LIKE); }
expr(A) ::= expr(X) LIKE expr(Y). {A = tS
ql
ExprCreate(X, Y, TK_LIKE); }
//in expression
expr(A) ::= expr(X) IN LP exprlist(Y) RP. {A = tS
QL
ExprCreate(X, (tSQLExpr*)Y, TK_IN); }
expr(A) ::= expr(X) IN LP exprlist(Y) RP. {A = tS
ql
ExprCreate(X, (tSQLExpr*)Y, TK_IN); }
%type exprlist {tSQLExprList*}
%destructor exprlist {tS
QL
ExprListDestroy($$);}
%destructor exprlist {tS
ql
ExprListDestroy($$);}
%type expritem {tSQLExpr*}
%destructor expritem {tS
QL
ExprDestroy($$);}
%destructor expritem {tS
ql
ExprDestroy($$);}
exprlist(A) ::= exprlist(X) COMMA expritem(Y). {A = tS
QL
ExprListAppend(X,Y,0);}
exprlist(A) ::= expritem(X). {A = tS
QL
ExprListAppend(0,X,0);}
exprlist(A) ::= exprlist(X) COMMA expritem(Y). {A = tS
ql
ExprListAppend(X,Y,0);}
exprlist(A) ::= expritem(X). {A = tS
ql
ExprListAppend(0,X,0);}
expritem(A) ::= expr(X). {A = X;}
expritem(A) ::= . {A = 0;}
...
...
@@ -673,8 +676,8 @@ cmd ::= RESET QUERY CACHE. { setDCLSQLElems(pInfo, TSDB_SQL_RESET_CACHE, 0);}
///////////////////////////////////ALTER TABLE statement//////////////////////////////////
cmd ::= ALTER TABLE ids(X) cpxName(F) ADD COLUMN columnlist(A). {
X.n += F.n;
SAlterTableSQL* pAlterTable = tAlterTableS
QL
Elems(&X, A, NULL, TSDB_ALTER_TABLE_ADD_COLUMN);
setS
QL
Info(pInfo, pAlterTable, NULL, TSDB_SQL_ALTER_TABLE);
SAlterTableSQL* pAlterTable = tAlterTableS
ql
Elems(&X, A, NULL, TSDB_ALTER_TABLE_ADD_COLUMN);
setS
ql
Info(pInfo, pAlterTable, NULL, TSDB_SQL_ALTER_TABLE);
}
cmd ::= ALTER TABLE ids(X) cpxName(F) DROP COLUMN ids(A). {
...
...
@@ -683,15 +686,15 @@ cmd ::= ALTER TABLE ids(X) cpxName(F) DROP COLUMN ids(A). {
toTSDBType(A.type);
SArray* K = tVariantListAppendToken(NULL, &A, -1);
SAlterTableSQL* pAlterTable = tAlterTableS
QL
Elems(&X, NULL, K, TSDB_ALTER_TABLE_DROP_COLUMN);
setS
QL
Info(pInfo, pAlterTable, NULL, TSDB_SQL_ALTER_TABLE);
SAlterTableSQL* pAlterTable = tAlterTableS
ql
Elems(&X, NULL, K, TSDB_ALTER_TABLE_DROP_COLUMN);
setS
ql
Info(pInfo, pAlterTable, NULL, TSDB_SQL_ALTER_TABLE);
}
//////////////////////////////////ALTER TAGS statement/////////////////////////////////////
cmd ::= ALTER TABLE ids(X) cpxName(Y) ADD TAG columnlist(A). {
X.n += Y.n;
SAlterTableSQL* pAlterTable = tAlterTableS
QL
Elems(&X, A, NULL, TSDB_ALTER_TABLE_ADD_TAG_COLUMN);
setS
QL
Info(pInfo, pAlterTable, NULL, TSDB_SQL_ALTER_TABLE);
SAlterTableSQL* pAlterTable = tAlterTableS
ql
Elems(&X, A, NULL, TSDB_ALTER_TABLE_ADD_TAG_COLUMN);
setS
ql
Info(pInfo, pAlterTable, NULL, TSDB_SQL_ALTER_TABLE);
}
cmd ::= ALTER TABLE ids(X) cpxName(Z) DROP TAG ids(Y). {
X.n += Z.n;
...
...
@@ -699,8 +702,8 @@ cmd ::= ALTER TABLE ids(X) cpxName(Z) DROP TAG ids(Y). {
toTSDBType(Y.type);
SArray* A = tVariantListAppendToken(NULL, &Y, -1);
SAlterTableSQL* pAlterTable = tAlterTableS
QL
Elems(&X, NULL, A, TSDB_ALTER_TABLE_DROP_TAG_COLUMN);
setS
QL
Info(pInfo, pAlterTable, NULL, TSDB_SQL_ALTER_TABLE);
SAlterTableSQL* pAlterTable = tAlterTableS
ql
Elems(&X, NULL, A, TSDB_ALTER_TABLE_DROP_TAG_COLUMN);
setS
ql
Info(pInfo, pAlterTable, NULL, TSDB_SQL_ALTER_TABLE);
}
cmd ::= ALTER TABLE ids(X) cpxName(F) CHANGE TAG ids(Y) ids(Z). {
...
...
@@ -712,8 +715,8 @@ cmd ::= ALTER TABLE ids(X) cpxName(F) CHANGE TAG ids(Y) ids(Z). {
toTSDBType(Z.type);
A = tVariantListAppendToken(A, &Z, -1);
SAlterTableSQL* pAlterTable = tAlterTableS
QL
Elems(&X, NULL, A, TSDB_ALTER_TABLE_CHANGE_TAG_COLUMN);
setS
QL
Info(pInfo, pAlterTable, NULL, TSDB_SQL_ALTER_TABLE);
SAlterTableSQL* pAlterTable = tAlterTableS
ql
Elems(&X, NULL, A, TSDB_ALTER_TABLE_CHANGE_TAG_COLUMN);
setS
ql
Info(pInfo, pAlterTable, NULL, TSDB_SQL_ALTER_TABLE);
}
cmd ::= ALTER TABLE ids(X) cpxName(F) SET TAG ids(Y) EQ tagitem(Z). {
...
...
@@ -723,14 +726,14 @@ cmd ::= ALTER TABLE ids(X) cpxName(F) SET TAG ids(Y) EQ tagitem(Z). {
SArray* A = tVariantListAppendToken(NULL, &Y, -1);
A = tVariantListAppend(A, &Z, -1);
SAlterTableSQL* pAlterTable = tAlterTableS
QL
Elems(&X, NULL, A, TSDB_ALTER_TABLE_UPDATE_TAG_VAL);
setS
QL
Info(pInfo, pAlterTable, NULL, TSDB_SQL_ALTER_TABLE);
SAlterTableSQL* pAlterTable = tAlterTableS
ql
Elems(&X, NULL, A, TSDB_ALTER_TABLE_UPDATE_TAG_VAL);
setS
ql
Info(pInfo, pAlterTable, NULL, TSDB_SQL_ALTER_TABLE);
}
////////////////////////////////////////kill statement///////////////////////////////////////
cmd ::= KILL CONNECTION INTEGER(Y). {setKillS
QL
(pInfo, TSDB_SQL_KILL_CONNECTION, &Y);}
cmd ::= KILL STREAM INTEGER(X) COLON(Z) INTEGER(Y). {X.n += (Z.n + Y.n); setKillS
QL
(pInfo, TSDB_SQL_KILL_STREAM, &X);}
cmd ::= KILL QUERY INTEGER(X) COLON(Z) INTEGER(Y). {X.n += (Z.n + Y.n); setKillS
QL
(pInfo, TSDB_SQL_KILL_QUERY, &X);}
cmd ::= KILL CONNECTION INTEGER(Y). {setKillS
ql
(pInfo, TSDB_SQL_KILL_CONNECTION, &Y);}
cmd ::= KILL STREAM INTEGER(X) COLON(Z) INTEGER(Y). {X.n += (Z.n + Y.n); setKillS
ql
(pInfo, TSDB_SQL_KILL_STREAM, &X);}
cmd ::= KILL QUERY INTEGER(X) COLON(Z) INTEGER(Y). {X.n += (Z.n + Y.n); setKillS
ql
(pInfo, TSDB_SQL_KILL_QUERY, &X);}
%fallback ID ABORT AFTER ASC ATTACH BEFORE BEGIN CASCADE CLUSTER CONFLICT COPY DATABASE DEFERRED
DELIMITERS DESC DETACH EACH END EXPLAIN FAIL FOR GLOB IGNORE IMMEDIATE INITIALLY INSTEAD
...
...
src/query/src/qParserImpl.c
浏览文件 @
1a709b5c
...
...
@@ -841,5 +841,6 @@ void setDefaultCreateDbOption(SCreateDBInfo *pDBInfo) {
pDBInfo
->
keep
=
NULL
;
pDBInfo
->
update
=
-
1
;
pDBInfo
->
cachelast
=
0
;
memset
(
&
pDBInfo
->
precision
,
0
,
sizeof
(
SStrToken
));
}
src/query/src/qTokenizer.c
浏览文件 @
1a709b5c
...
...
@@ -238,6 +238,7 @@ static SKeyword keywordTable[] = {
{
"SUM_IRATE"
,
TK_SUM_IRATE
},
{
"AVG_RATE"
,
TK_AVG_RATE
},
{
"AVG_IRATE"
,
TK_AVG_IRATE
},
{
"CACHELAST"
,
TK_CACHELAST
},
};
static
const
char
isIdChar
[]
=
{
...
...
src/query/src/sql.c
浏览文件 @
1a709b5c
...
...
@@ -97,27 +97,27 @@
#endif
/************* Begin control #defines *****************************************/
#define YYCODETYPE unsigned short int
#define YYNOCODE 27
6
#define YYNOCODE 27
8
#define YYACTIONTYPE unsigned short int
#define ParseTOKENTYPE SStrToken
typedef
union
{
int
yyinit
;
ParseTOKENTYPE
yy0
;
int
yy42
;
S
QuerySQL
*
yy84
;
SCreatedTableInfo
yy96
;
S
Array
*
yy131
;
S
CreateDBInfo
yy148
;
TAOS_FIELD
yy
1
63
;
SLimitVal
yy284
;
SCreateAcctSQL
yy309
;
tSQLExpr
*
yy420
;
int64_t
yy459
;
tSQLExprList
*
yy478
;
S
SubclauseInfo
*
yy51
3
;
tVariant
yy516
;
SIntervalVal
yy530
;
SCreateTableSQL
*
yy538
;
SQuerySQL
*
yy4
;
S
SubclauseInfo
*
yy13
;
int
yy70
;
S
CreatedTableInfo
yy84
;
S
IntervalVal
yy222
;
TAOS_FIELD
yy
3
63
;
tSQLExprList
*
yy382
;
int64_t
yy387
;
SArray
*
yy403
;
SLimitVal
yy404
;
SCreateTableSQL
*
yy436
;
S
CreateAcctSQL
yy46
3
;
SCreateDBInfo
yy478
;
tVariant
yy488
;
tSQLExpr
*
yy522
;
}
YYMINORTYPE
;
#ifndef YYSTACKDEPTH
#define YYSTACKDEPTH 100
...
...
@@ -127,17 +127,17 @@ typedef union {
#define ParseARG_FETCH SSqlInfo* pInfo = yypParser->pInfo
#define ParseARG_STORE yypParser->pInfo = pInfo
#define YYFALLBACK 1
#define YYNSTATE 25
7
#define YYNRULE 23
6
#define YYNTOKEN 20
7
#define YY_MAX_SHIFT 25
6
#define YY_MIN_SHIFTREDUCE 4
26
#define YY_MAX_SHIFTREDUCE 66
1
#define YY_ERROR_ACTION 66
2
#define YY_ACCEPT_ACTION 6
63
#define YY_NO_ACTION 6
64
#define YY_MIN_REDUCE 6
65
#define YY_MAX_REDUCE 9
0
0
#define YYNSTATE 25
8
#define YYNRULE 23
9
#define YYNTOKEN 20
8
#define YY_MAX_SHIFT 25
7
#define YY_MIN_SHIFTREDUCE 4
30
#define YY_MAX_SHIFTREDUCE 66
8
#define YY_ERROR_ACTION 66
9
#define YY_ACCEPT_ACTION 6
70
#define YY_NO_ACTION 6
71
#define YY_MIN_REDUCE 6
72
#define YY_MAX_REDUCE 9
1
0
/************* End control #defines *******************************************/
/* Define the yytestcase() macro to be a no-op if is not already defined
...
...
@@ -203,226 +203,228 @@ typedef union {
** yy_default[] Default action for each state.
**
*********** Begin parsing tables **********************************************/
#define YY_ACTTAB_COUNT (5
79
)
#define YY_ACTTAB_COUNT (5
85
)
static
const
YYACTIONTYPE
yy_action
[]
=
{
/* 0 */
143
,
469
,
663
,
256
,
469
,
162
,
254
,
12
,
814
,
470
,
/* 10 */
887
,
142
,
470
,
37
,
38
,
147
,
39
,
40
,
803
,
233
,
/* 20 */
173
,
31
,
884
,
469
,
209
,
43
,
41
,
45
,
42
,
64
,
/* 30 */
883
,
470
,
163
,
36
,
35
,
105
,
143
,
34
,
33
,
32
,
/* 40 */
37
,
38
,
803
,
39
,
40
,
168
,
888
,
173
,
31
,
110
,
/* 50 */
790
,
209
,
43
,
41
,
45
,
42
,
194
,
780
,
22
,
782
,
/* 60 */
36
,
35
,
811
,
882
,
34
,
33
,
32
,
427
,
428
,
429
,
/* 70 */
430
,
431
,
432
,
433
,
434
,
435
,
436
,
437
,
438
,
255
,
/* 80 */
37
,
38
,
184
,
39
,
40
,
538
,
224
,
173
,
31
,
143
,
/* 90 */
197
,
209
,
43
,
41
,
45
,
42
,
165
,
23
,
167
,
888
,
/* 100 */
36
,
35
,
242
,
57
,
34
,
33
,
32
,
179
,
841
,
38
,
/* 110 */
204
,
39
,
40
,
231
,
230
,
173
,
31
,
49
,
792
,
209
,
/* 120 */
43
,
41
,
45
,
42
,
253
,
252
,
98
,
615
,
36
,
35
,
/* 130 */
178
,
781
,
34
,
33
,
32
,
788
,
50
,
17
,
222
,
249
,
/* 140 */
248
,
221
,
220
,
219
,
247
,
218
,
246
,
245
,
244
,
217
,
/* 150 */
243
,
764
,
792
,
752
,
753
,
754
,
755
,
756
,
757
,
758
,
/* 160 */
759
,
760
,
761
,
762
,
763
,
765
,
39
,
40
,
110
,
180
,
/* 170 */
173
,
31
,
228
,
227
,
209
,
43
,
41
,
45
,
42
,
34
,
/* 180 */
33
,
32
,
9
,
36
,
35
,
65
,
120
,
34
,
33
,
32
,
/* 190 */
172
,
628
,
18
,
13
,
619
,
110
,
622
,
210
,
625
,
28
,
/* 200 */
172
,
628
,
110
,
159
,
619
,
187
,
622
,
224
,
625
,
155
,
/* 210 */
172
,
628
,
191
,
190
,
619
,
156
,
622
,
66
,
625
,
92
,
/* 220 */
91
,
150
,
169
,
170
,
36
,
35
,
208
,
840
,
34
,
33
,
/* 230 */
32
,
160
,
169
,
170
,
617
,
250
,
573
,
43
,
41
,
45
,
/* 240 */
42
,
706
,
169
,
170
,
133
,
36
,
35
,
783
,
18
,
34
,
/* 250 */
33
,
32
,
206
,
104
,
61
,
28
,
17
,
792
,
249
,
248
,
/* 260 */
28
,
62
,
145
,
247
,
23
,
246
,
245
,
244
,
146
,
243
,
/* 270 */
618
,
715
,
78
,
82
,
133
,
193
,
565
,
23
,
87
,
90
,
/* 280 */
81
,
769
,
158
,
196
,
767
,
768
,
84
,
631
,
44
,
770
,
/* 290 */
23
,
772
,
773
,
771
,
148
,
774
,
80
,
149
,
44
,
627
,
/* 300 */
176
,
242
,
789
,
707
,
3
,
124
,
133
,
23
,
44
,
627
,
/* 310 */
72
,
68
,
71
,
177
,
626
,
789
,
596
,
597
,
570
,
627
,
/* 320 */
805
,
63
,
557
,
19
,
626
,
554
,
229
,
555
,
789
,
556
,
/* 330 */
171
,
137
,
135
,
29
,
626
,
153
,
583
,
95
,
94
,
93
,
/* 340 */
107
,
154
,
587
,
234
,
588
,
789
,
48
,
647
,
15
,
52
,
/* 350 */
152
,
14
,
629
,
181
,
182
,
141
,
14
,
621
,
620
,
624
,
/* 360 */
623
,
546
,
89
,
88
,
212
,
24
,
53
,
547
,
24
,
151
,
/* 370 */
4
,
48
,
561
,
144
,
562
,
77
,
76
,
11
,
10
,
897
,
/* 380 */
559
,
851
,
560
,
103
,
101
,
791
,
850
,
174
,
847
,
846
,
/* 390 */
175
,
232
,
813
,
833
,
818
,
820
,
106
,
832
,
121
,
122
,
/* 400 */
28
,
123
,
102
,
119
,
717
,
216
,
139
,
26
,
225
,
714
,
/* 410 */
195
,
582
,
226
,
896
,
74
,
895
,
893
,
125
,
735
,
27
,
/* 420 */
198
,
25
,
164
,
202
,
140
,
558
,
704
,
83
,
702
,
85
,
/* 430 */
86
,
700
,
699
,
183
,
54
,
134
,
697
,
696
,
695
,
694
,
/* 440 */
693
,
136
,
691
,
689
,
46
,
687
,
685
,
802
,
683
,
138
,
/* 450 */
51
,
58
,
59
,
834
,
207
,
205
,
199
,
203
,
201
,
30
,
/* 460 */
79
,
235
,
236
,
237
,
238
,
239
,
240
,
241
,
251
,
161
,
/* 470 */
661
,
214
,
215
,
186
,
185
,
660
,
189
,
157
,
188
,
69
,
/* 480 */
659
,
652
,
192
,
60
,
196
,
166
,
567
,
698
,
56
,
128
,
/* 490 */
96
,
692
,
736
,
126
,
130
,
97
,
127
,
129
,
131
,
132
,
/* 500 */
684
,
1
,
584
,
787
,
2
,
108
,
200
,
117
,
113
,
111
,
/* 510 */
112
,
114
,
115
,
116
,
589
,
118
,
109
,
5
,
6
,
20
,
/* 520 */
21
,
630
,
8
,
7
,
632
,
211
,
16
,
213
,
67
,
510
,
/* 530 */
65
,
506
,
504
,
503
,
502
,
499
,
473
,
223
,
24
,
70
,
/* 540 */
47
,
73
,
540
,
539
,
537
,
55
,
494
,
492
,
484
,
490
,
/* 550 */
75
,
486
,
488
,
482
,
480
,
511
,
509
,
508
,
507
,
505
,
/* 560 */
501
,
500
,
48
,
471
,
442
,
440
,
99
,
665
,
664
,
664
,
/* 570 */
664
,
664
,
664
,
664
,
664
,
664
,
664
,
664
,
100
,
/* 0 */
143
,
473
,
143
,
23
,
670
,
257
,
165
,
545
,
824
,
474
,
/* 10 */
897
,
168
,
898
,
37
,
38
,
12
,
39
,
40
,
813
,
23
,
/* 20 */
173
,
31
,
473
,
473
,
209
,
43
,
41
,
45
,
42
,
802
,
/* 30 */
474
,
474
,
163
,
36
,
35
,
231
,
230
,
34
,
33
,
32
,
/* 40 */
37
,
38
,
798
,
39
,
40
,
813
,
105
,
173
,
31
,
162
,
/* 50 */
255
,
209
,
43
,
41
,
45
,
42
,
176
,
178
,
799
,
194
,
/* 60 */
36
,
35
,
233
,
821
,
34
,
33
,
32
,
431
,
432
,
433
,
/* 70 */
434
,
435
,
436
,
437
,
438
,
439
,
440
,
441
,
442
,
256
,
/* 80 */
802
,
143
,
184
,
63
,
179
,
37
,
38
,
224
,
39
,
40
,
/* 90 */
167
,
898
,
173
,
31
,
800
,
29
,
209
,
43
,
41
,
45
,
/* 100 */
42
,
110
,
197
,
791
,
57
,
36
,
35
,
251
,
210
,
34
,
/* 110 */
33
,
32
,
110
,
17
,
222
,
250
,
249
,
221
,
220
,
219
,
/* 120 */
248
,
218
,
247
,
246
,
245
,
217
,
244
,
243
,
622
,
772
,
/* 130 */
802
,
760
,
761
,
762
,
763
,
764
,
765
,
766
,
767
,
768
,
/* 140 */
769
,
770
,
771
,
773
,
774
,
242
,
38
,
180
,
39
,
40
,
/* 150 */
228
,
227
,
173
,
31
,
110
,
18
,
209
,
43
,
41
,
45
,
/* 160 */
42
,
851
,
28
,
204
,
110
,
36
,
35
,
23
,
187
,
34
,
/* 170 */
33
,
32
,
850
,
39
,
40
,
191
,
190
,
173
,
31
,
224
,
/* 180 */
624
,
209
,
43
,
41
,
45
,
42
,
34
,
33
,
32
,
9
,
/* 190 */
36
,
35
,
65
,
120
,
34
,
33
,
32
,
172
,
635
,
638
,
/* 200 */
66
,
626
,
104
,
629
,
177
,
632
,
799
,
172
,
635
,
28
,
/* 210 */
13
,
626
,
206
,
629
,
61
,
632
,
625
,
172
,
635
,
142
,
/* 220 */
572
,
626
,
23
,
629
,
62
,
632
,
155
,
196
,
147
,
169
,
/* 230 */
170
,
793
,
156
,
208
,
603
,
604
,
92
,
91
,
150
,
169
,
/* 240 */
170
,
894
,
713
,
580
,
17
,
133
,
250
,
249
,
893
,
169
,
/* 250 */
170
,
248
,
64
,
247
,
246
,
245
,
892
,
244
,
243
,
229
,
/* 260 */
778
,
799
,
80
,
776
,
777
,
590
,
18
,
242
,
779
,
107
,
/* 270 */
781
,
782
,
780
,
28
,
783
,
784
,
43
,
41
,
45
,
42
,
/* 280 */
159
,
790
,
22
,
792
,
36
,
35
,
160
,
171
,
34
,
33
,
/* 290 */
32
,
722
,
564
,
193
,
133
,
561
,
44
,
562
,
52
,
563
,
/* 300 */
158
,
254
,
253
,
98
,
36
,
35
,
44
,
634
,
34
,
33
,
/* 310 */
32
,
23
,
145
,
3
,
124
,
53
,
44
,
634
,
146
,
72
,
/* 320 */
68
,
71
,
633
,
181
,
182
,
148
,
714
,
634
,
4
,
133
,
/* 330 */
78
,
82
,
633
,
137
,
135
,
149
,
87
,
90
,
81
,
95
,
/* 340 */
94
,
93
,
633
,
153
,
84
,
594
,
577
,
154
,
234
,
48
,
/* 350 */
799
,
19
,
49
,
152
,
595
,
654
,
636
,
141
,
15
,
14
,
/* 360 */
14
,
628
,
627
,
631
,
630
,
553
,
212
,
151
,
554
,
24
,
/* 370 */
24
,
50
,
48
,
77
,
76
,
11
,
10
,
568
,
566
,
569
,
/* 380 */
567
,
89
,
88
,
103
,
101
,
907
,
144
,
801
,
861
,
860
,
/* 390 */
174
,
857
,
856
,
175
,
823
,
232
,
565
,
828
,
830
,
106
,
/* 400 */
843
,
815
,
842
,
121
,
122
,
28
,
119
,
123
,
195
,
724
,
/* 410 */
216
,
139
,
26
,
225
,
721
,
226
,
906
,
74
,
102
,
905
,
/* 420 */
903
,
125
,
742
,
27
,
25
,
140
,
711
,
83
,
589
,
709
,
/* 430 */
85
,
86
,
707
,
706
,
183
,
134
,
704
,
703
,
702
,
701
,
/* 440 */
198
,
700
,
136
,
698
,
696
,
694
,
692
,
690
,
138
,
164
,
/* 450 */
58
,
54
,
59
,
202
,
51
,
844
,
46
,
812
,
207
,
205
,
/* 460 */
203
,
201
,
199
,
30
,
79
,
235
,
236
,
237
,
238
,
239
,
/* 470 */
240
,
161
,
214
,
241
,
252
,
215
,
668
,
186
,
185
,
157
,
/* 480 */
69
,
667
,
188
,
189
,
666
,
659
,
192
,
196
,
166
,
574
,
/* 490 */
705
,
591
,
56
,
96
,
132
,
743
,
126
,
128
,
127
,
129
,
/* 500 */
130
,
699
,
111
,
131
,
1
,
97
,
116
,
112
,
113
,
114
,
/* 510 */
691
,
797
,
60
,
117
,
115
,
118
,
2
,
20
,
108
,
200
,
/* 520 */
6
,
596
,
109
,
5
,
7
,
637
,
21
,
8
,
211
,
16
,
/* 530 */
213
,
639
,
67
,
65
,
514
,
510
,
508
,
507
,
506
,
503
,
/* 540 */
477
,
223
,
70
,
47
,
73
,
75
,
24
,
547
,
546
,
544
,
/* 550 */
55
,
498
,
496
,
488
,
494
,
490
,
492
,
486
,
484
,
516
,
/* 560 */
515
,
513
,
512
,
511
,
509
,
505
,
504
,
48
,
475
,
446
,
/* 570 */
444
,
672
,
671
,
671
,
671
,
671
,
671
,
671
,
671
,
671
,
/* 580 */
671
,
671
,
671
,
99
,
100
,
};
static
const
YYCODETYPE
yy_lookahead
[]
=
{
/* 0 */
26
4
,
1
,
208
,
209
,
1
,
210
,
211
,
264
,
211
,
9
,
/* 10 */
27
4
,
264
,
9
,
13
,
14
,
264
,
16
,
17
,
248
,
211
,
/* 20 */
20
,
21
,
264
,
1
,
24
,
25
,
26
,
27
,
28
,
216
,
/* 30 */
264
,
9
,
262
,
33
,
34
,
211
,
26
4
,
37
,
38
,
39
,
/* 40 */
13
,
14
,
2
48
,
16
,
17
,
273
,
274
,
20
,
21
,
211
,
/* 50 */
2
42
,
24
,
25
,
26
,
27
,
28
,
262
,
244
,
245
,
246
,
/* 60 */
33
,
34
,
2
65
,
264
,
37
,
38
,
39
,
45
,
46
,
47
,
/* 0 */
26
6
,
1
,
266
,
212
,
209
,
210
,
229
,
5
,
212
,
9
,
/* 10 */
27
6
,
275
,
276
,
13
,
14
,
266
,
16
,
17
,
250
,
212
,
/* 20 */
20
,
21
,
1
,
1
,
24
,
25
,
26
,
27
,
28
,
252
,
/* 30 */
9
,
9
,
264
,
33
,
34
,
33
,
3
4
,
37
,
38
,
39
,
/* 40 */
13
,
14
,
2
51
,
16
,
17
,
250
,
212
,
20
,
21
,
211
,
/* 50 */
2
12
,
24
,
25
,
26
,
27
,
28
,
249
,
229
,
251
,
264
,
/* 60 */
33
,
34
,
2
12
,
267
,
37
,
38
,
39
,
45
,
46
,
47
,
/* 70 */
48
,
49
,
50
,
51
,
52
,
53
,
54
,
55
,
56
,
57
,
/* 80 */
13
,
14
,
60
,
16
,
17
,
5
,
76
,
20
,
21
,
264
,
/* 90 */
266
,
24
,
25
,
26
,
27
,
28
,
228
,
211
,
273
,
274
,
/* 100 */
33
,
34
,
78
,
103
,
37
,
38
,
39
,
66
,
270
,
14
,
/* 110 */
272
,
16
,
17
,
33
,
34
,
20
,
21
,
104
,
250
,
24
,
/* 120 */
25
,
26
,
27
,
28
,
63
,
64
,
65
,
100
,
33
,
34
,
/* 130 */
228
,
0
,
37
,
38
,
39
,
249
,
123
,
85
,
86
,
87
,
/* 140 */
88
,
89
,
90
,
91
,
92
,
93
,
94
,
95
,
96
,
97
,
/* 150 */
98
,
227
,
250
,
229
,
230
,
231
,
232
,
233
,
234
,
235
,
/* 160 */
236
,
237
,
238
,
239
,
240
,
241
,
16
,
17
,
211
,
128
,
/* 170 */
20
,
21
,
131
,
132
,
24
,
25
,
26
,
27
,
28
,
37
,
/* 180 */
38
,
39
,
99
,
33
,
34
,
102
,
103
,
37
,
38
,
39
,
/* 190 */
1
,
2
,
99
,
44
,
5
,
211
,
7
,
15
,
9
,
106
,
/* 200 */
1
,
2
,
211
,
264
,
5
,
127
,
7
,
76
,
9
,
60
,
/* 210 */
1
,
2
,
134
,
135
,
5
,
66
,
7
,
216
,
9
,
70
,
/* 220 */
71
,
72
,
33
,
34
,
33
,
34
,
37
,
270
,
37
,
38
,
/* 230 */
39
,
264
,
33
,
34
,
1
,
228
,
37
,
25
,
26
,
27
,
/* 240 */
28
,
215
,
33
,
34
,
218
,
33
,
34
,
246
,
99
,
37
,
/* 250 */
38
,
39
,
268
,
99
,
270
,
106
,
85
,
250
,
87
,
88
,
/* 260 */
106
,
270
,
264
,
92
,
211
,
94
,
95
,
96
,
264
,
98
,
/* 270 */
37
,
215
,
61
,
62
,
218
,
126
,
100
,
211
,
67
,
68
,
/* 280 */
69
,
227
,
133
,
107
,
230
,
231
,
75
,
105
,
99
,
235
,
/* 290 */
211
,
237
,
238
,
239
,
264
,
241
,
73
,
264
,
99
,
110
,
/* 300 */
247
,
78
,
249
,
215
,
61
,
62
,
218
,
211
,
99
,
110
,
/* 310 */
67
,
68
,
69
,
247
,
125
,
249
,
116
,
117
,
104
,
110
,
/* 320 */
248
,
251
,
2
,
109
,
125
,
5
,
247
,
7
,
249
,
9
,
/* 330 */
59
,
61
,
62
,
263
,
125
,
264
,
100
,
67
,
68
,
69
,
/* 340 */
104
,
264
,
100
,
247
,
100
,
249
,
104
,
100
,
104
,
104
,
/* 350 */
264
,
104
,
100
,
33
,
34
,
264
,
104
,
5
,
5
,
7
,
/* 360 */
7
,
100
,
73
,
74
,
100
,
104
,
121
,
100
,
104
,
264
,
/* 370 */
99
,
104
,
5
,
264
,
7
,
129
,
130
,
129
,
130
,
250
,
/* 380 */
5
,
243
,
7
,
61
,
62
,
250
,
243
,
243
,
243
,
243
,
/* 390 */
243
,
243
,
211
,
271
,
211
,
211
,
211
,
271
,
211
,
211
,
/* 400 */
106
,
211
,
59
,
252
,
211
,
211
,
211
,
211
,
211
,
211
,
/* 410 */
248
,
110
,
211
,
211
,
211
,
211
,
211
,
211
,
211
,
211
,
/* 420 */
267
,
211
,
267
,
267
,
211
,
105
,
211
,
211
,
211
,
211
,
/* 430 */
211
,
211
,
211
,
211
,
120
,
211
,
211
,
211
,
211
,
211
,
/* 440 */
211
,
211
,
211
,
211
,
119
,
211
,
211
,
261
,
211
,
211
,
/* 450 */
122
,
212
,
212
,
212
,
114
,
118
,
111
,
113
,
112
,
124
,
/* 460 */
84
,
83
,
49
,
80
,
82
,
53
,
81
,
79
,
76
,
212
,
/* 470 */
5
,
212
,
212
,
5
,
136
,
5
,
5
,
212
,
136
,
216
,
/* 480 */
5
,
86
,
127
,
104
,
107
,
1
,
100
,
212
,
108
,
220
,
/* 490 */
213
,
212
,
226
,
225
,
221
,
213
,
224
,
223
,
222
,
219
,
/* 500 */
212
,
217
,
100
,
248
,
214
,
99
,
99
,
254
,
258
,
260
,
/* 510 */
259
,
257
,
256
,
255
,
100
,
253
,
99
,
99
,
115
,
104
,
/* 520 */
104
,
100
,
99
,
115
,
105
,
101
,
99
,
101
,
73
,
9
,
/* 530 */
102
,
5
,
5
,
5
,
5
,
5
,
77
,
15
,
104
,
73
,
/* 540 */
16
,
130
,
5
,
5
,
100
,
99
,
5
,
5
,
5
,
5
,
/* 550 */
130
,
5
,
5
,
5
,
5
,
5
,
5
,
5
,
5
,
5
,
/* 560 */
5
,
5
,
104
,
77
,
59
,
58
,
21
,
0
,
275
,
275
,
/* 570 */
275
,
275
,
275
,
275
,
275
,
275
,
275
,
275
,
21
,
275
,
/* 580 */
275
,
275
,
275
,
275
,
275
,
275
,
275
,
275
,
275
,
275
,
/* 590 */
275
,
275
,
275
,
275
,
275
,
275
,
275
,
275
,
275
,
275
,
/* 600 */
275
,
275
,
275
,
275
,
275
,
275
,
275
,
275
,
275
,
275
,
/* 610 */
275
,
275
,
275
,
275
,
275
,
275
,
275
,
275
,
275
,
275
,
/* 620 */
275
,
275
,
275
,
275
,
275
,
275
,
275
,
275
,
275
,
275
,
/* 630 */
275
,
275
,
275
,
275
,
275
,
275
,
275
,
275
,
275
,
275
,
/* 640 */
275
,
275
,
275
,
275
,
275
,
275
,
275
,
275
,
275
,
275
,
/* 650 */
275
,
275
,
275
,
275
,
275
,
275
,
275
,
275
,
275
,
275
,
/* 660 */
275
,
275
,
275
,
275
,
275
,
275
,
275
,
275
,
275
,
275
,
/* 670 */
275
,
275
,
275
,
275
,
275
,
275
,
275
,
275
,
275
,
275
,
/* 680 */
275
,
275
,
275
,
275
,
275
,
275
,
275
,
275
,
275
,
275
,
/* 690 */
275
,
275
,
275
,
275
,
275
,
275
,
275
,
275
,
275
,
275
,
/* 700 */
275
,
275
,
275
,
275
,
275
,
275
,
275
,
275
,
275
,
275
,
/* 710 */
275
,
275
,
275
,
275
,
275
,
275
,
275
,
275
,
275
,
275
,
/* 720 */
275
,
275
,
275
,
275
,
275
,
275
,
275
,
275
,
275
,
275
,
/* 730 */
275
,
275
,
275
,
275
,
275
,
275
,
275
,
275
,
275
,
275
,
/* 740 */
275
,
275
,
275
,
275
,
275
,
275
,
275
,
275
,
275
,
275
,
/* 750 */
275
,
275
,
275
,
275
,
275
,
275
,
275
,
275
,
275
,
275
,
/* 760 */
275
,
275
,
275
,
275
,
275
,
275
,
275
,
275
,
275
,
275
,
/* 770 */
275
,
275
,
275
,
275
,
275
,
275
,
275
,
275
,
275
,
275
,
/* 780 */
275
,
275
,
275
,
275
,
275
,
275
,
/* 80 */
252
,
266
,
60
,
253
,
66
,
13
,
14
,
76
,
16
,
17
,
/* 90 */
275
,
276
,
20
,
21
,
244
,
265
,
24
,
25
,
26
,
27
,
/* 100 */
28
,
212
,
268
,
0
,
104
,
33
,
34
,
229
,
15
,
37
,
/* 110 */
38
,
39
,
212
,
85
,
86
,
87
,
88
,
89
,
90
,
91
,
/* 120 */
92
,
93
,
94
,
95
,
96
,
97
,
98
,
99
,
101
,
228
,
/* 130 */
252
,
230
,
231
,
232
,
233
,
234
,
235
,
236
,
237
,
238
,
/* 140 */
239
,
240
,
241
,
242
,
243
,
78
,
14
,
129
,
16
,
17
,
/* 150 */
132
,
133
,
20
,
21
,
212
,
100
,
24
,
25
,
26
,
27
,
/* 160 */
28
,
272
,
107
,
274
,
212
,
33
,
34
,
212
,
128
,
37
,
/* 170 */
38
,
39
,
272
,
16
,
17
,
135
,
136
,
20
,
21
,
76
,
/* 180 */
1
,
24
,
25
,
26
,
27
,
28
,
37
,
38
,
39
,
100
,
/* 190 */
33
,
34
,
103
,
104
,
37
,
38
,
39
,
1
,
2
,
106
,
/* 200 */
217
,
5
,
100
,
7
,
249
,
9
,
251
,
1
,
2
,
107
,
/* 210 */
44
,
5
,
270
,
7
,
272
,
9
,
37
,
1
,
2
,
266
,
/* 220 */
101
,
5
,
212
,
7
,
272
,
9
,
60
,
108
,
266
,
33
,
/* 230 */
34
,
248
,
66
,
37
,
117
,
118
,
70
,
71
,
72
,
33
,
/* 240 */
34
,
266
,
216
,
37
,
85
,
219
,
87
,
88
,
266
,
33
,
/* 250 */
34
,
92
,
217
,
94
,
95
,
96
,
266
,
98
,
99
,
249
,
/* 260 */
228
,
251
,
73
,
231
,
232
,
101
,
100
,
78
,
236
,
105
,
/* 270 */
238
,
239
,
240
,
107
,
242
,
243
,
25
,
26
,
27
,
28
,
/* 280 */
266
,
246
,
247
,
248
,
33
,
34
,
266
,
59
,
37
,
38
,
/* 290 */
39
,
216
,
2
,
127
,
219
,
5
,
100
,
7
,
105
,
9
,
/* 300 */
134
,
63
,
64
,
65
,
33
,
34
,
100
,
111
,
37
,
38
,
/* 310 */
39
,
212
,
266
,
61
,
62
,
122
,
100
,
111
,
266
,
67
,
/* 320 */
68
,
69
,
126
,
33
,
34
,
266
,
216
,
111
,
100
,
219
,
/* 330 */
61
,
62
,
126
,
61
,
62
,
266
,
67
,
68
,
69
,
67
,
/* 340 */
68
,
69
,
126
,
266
,
75
,
101
,
105
,
266
,
249
,
105
,
/* 350 */
251
,
110
,
105
,
266
,
101
,
101
,
101
,
266
,
105
,
105
,
/* 360 */
105
,
5
,
5
,
7
,
7
,
101
,
101
,
266
,
101
,
105
,
/* 370 */
105
,
124
,
105
,
130
,
131
,
130
,
131
,
5
,
5
,
7
,
/* 380 */
7
,
73
,
74
,
61
,
62
,
252
,
266
,
252
,
245
,
245
,
/* 390 */
245
,
245
,
245
,
245
,
212
,
245
,
106
,
212
,
212
,
212
,
/* 400 */
273
,
250
,
273
,
212
,
212
,
107
,
254
,
212
,
250
,
212
,
/* 410 */
212
,
212
,
212
,
212
,
212
,
212
,
212
,
212
,
59
,
212
,
/* 420 */
212
,
212
,
212
,
212
,
212
,
212
,
212
,
212
,
111
,
212
,
/* 430 */
212
,
212
,
212
,
212
,
212
,
212
,
212
,
212
,
212
,
212
,
/* 440 */
269
,
212
,
212
,
212
,
212
,
212
,
212
,
212
,
212
,
269
,
/* 450 */
213
,
121
,
213
,
269
,
123
,
213
,
120
,
263
,
115
,
119
,
/* 460 */
114
,
113
,
112
,
125
,
84
,
83
,
49
,
80
,
82
,
53
,
/* 470 */
81
,
213
,
213
,
79
,
76
,
213
,
5
,
5
,
137
,
213
,
/* 480 */
217
,
5
,
137
,
5
,
5
,
86
,
128
,
108
,
1
,
101
,
/* 490 */
213
,
101
,
109
,
214
,
220
,
227
,
226
,
221
,
225
,
224
,
/* 500 */
222
,
213
,
262
,
223
,
218
,
214
,
257
,
261
,
260
,
259
,
/* 510 */
213
,
250
,
105
,
256
,
258
,
255
,
215
,
105
,
100
,
100
,
/* 520 */
116
,
101
,
100
,
100
,
116
,
101
,
105
,
100
,
102
,
100
,
/* 530 */
102
,
106
,
73
,
103
,
9
,
5
,
5
,
5
,
5
,
5
,
/* 540 */
77
,
15
,
73
,
16
,
131
,
131
,
105
,
5
,
5
,
101
,
/* 550 */
100
,
5
,
5
,
5
,
5
,
5
,
5
,
5
,
5
,
5
,
/* 560 */
5
,
5
,
5
,
5
,
5
,
5
,
5
,
105
,
77
,
59
,
/* 570 */
58
,
0
,
277
,
277
,
277
,
277
,
277
,
277
,
277
,
277
,
/* 580 */
277
,
277
,
277
,
21
,
21
,
277
,
277
,
277
,
277
,
277
,
/* 590 */
277
,
277
,
277
,
277
,
277
,
277
,
277
,
277
,
277
,
277
,
/* 600 */
277
,
277
,
277
,
277
,
277
,
277
,
277
,
277
,
277
,
277
,
/* 610 */
277
,
277
,
277
,
277
,
277
,
277
,
277
,
277
,
277
,
277
,
/* 620 */
277
,
277
,
277
,
277
,
277
,
277
,
277
,
277
,
277
,
277
,
/* 630 */
277
,
277
,
277
,
277
,
277
,
277
,
277
,
277
,
277
,
277
,
/* 640 */
277
,
277
,
277
,
277
,
277
,
277
,
277
,
277
,
277
,
277
,
/* 650 */
277
,
277
,
277
,
277
,
277
,
277
,
277
,
277
,
277
,
277
,
/* 660 */
277
,
277
,
277
,
277
,
277
,
277
,
277
,
277
,
277
,
277
,
/* 670 */
277
,
277
,
277
,
277
,
277
,
277
,
277
,
277
,
277
,
277
,
/* 680 */
277
,
277
,
277
,
277
,
277
,
277
,
277
,
277
,
277
,
277
,
/* 690 */
277
,
277
,
277
,
277
,
277
,
277
,
277
,
277
,
277
,
277
,
/* 700 */
277
,
277
,
277
,
277
,
277
,
277
,
277
,
277
,
277
,
277
,
/* 710 */
277
,
277
,
277
,
277
,
277
,
277
,
277
,
277
,
277
,
277
,
/* 720 */
277
,
277
,
277
,
277
,
277
,
277
,
277
,
277
,
277
,
277
,
/* 730 */
277
,
277
,
277
,
277
,
277
,
277
,
277
,
277
,
277
,
277
,
/* 740 */
277
,
277
,
277
,
277
,
277
,
277
,
277
,
277
,
277
,
277
,
/* 750 */
277
,
277
,
277
,
277
,
277
,
277
,
277
,
277
,
277
,
277
,
/* 760 */
277
,
277
,
277
,
277
,
277
,
277
,
277
,
277
,
277
,
277
,
/* 770 */
277
,
277
,
277
,
277
,
277
,
277
,
277
,
277
,
277
,
277
,
/* 780 */
277
,
277
,
277
,
277
,
277
,
277
,
277
,
277
,
277
,
277
,
/* 790 */
277
,
277
,
277
,
};
#define YY_SHIFT_COUNT (25
6
)
#define YY_SHIFT_COUNT (25
7
)
#define YY_SHIFT_MIN (0)
#define YY_SHIFT_MAX (5
67
)
#define YY_SHIFT_MAX (5
71
)
static
const
unsigned
short
int
yy_shift_ofst
[]
=
{
/* 0 */
1
49
,
52
,
171
,
10
,
189
,
209
,
3
,
3
,
3
,
3
,
/* 10 */
3
,
3
,
0
,
22
,
209
,
320
,
320
,
320
,
93
,
3
,
/* 20 */
3
,
3
,
131
,
3
,
3
,
223
,
24
,
24
,
579
,
199
,
/* 30 */
2
09
,
209
,
209
,
209
,
209
,
209
,
209
,
209
,
209
,
209
,
/* 40 */
2
09
,
209
,
209
,
209
,
209
,
209
,
209
,
320
,
320
,
80
,
/* 50 */
80
,
80
,
80
,
80
,
80
,
80
,
154
,
3
,
3
,
3
,
/* 60 */
3
,
200
,
200
,
214
,
3
,
3
,
3
,
3
,
3
,
3
,
/* 70 */
3
,
3
,
3
,
3
,
3
,
3
,
3
,
3
,
3
,
3
,
/* 80 */
3
,
3
,
3
,
3
,
3
,
3
,
3
,
3
,
3
,
3
,
/* 90 */
3
,
3
,
3
,
3
,
3
,
3
,
3
,
3
,
3
,
3
,
/* 100 */
3
,
3
,
3
,
3
,
294
,
343
,
343
,
301
,
301
,
301
,
/* 110 */
3
43
,
314
,
328
,
325
,
340
,
337
,
344
,
346
,
345
,
335
,
/* 120 */
29
4
,
343
,
343
,
343
,
10
,
343
,
376
,
378
,
413
,
383
,
/* 130 */
38
2
,
412
,
385
,
388
,
343
,
392
,
343
,
392
,
343
,
579
,
/* 140 */
5
79
,
27
,
67
,
67
,
67
,
95
,
150
,
212
,
212
,
212
,
/* 150 */
2
11
,
191
,
191
,
191
,
191
,
243
,
270
,
41
,
78
,
142
,
/* 160 */
14
2
,
83
,
61
,
176
,
236
,
242
,
244
,
247
,
252
,
352
,
/* 170 */
35
3
,
233
,
271
,
182
,
13
,
245
,
261
,
264
,
267
,
246
,
/* 180 */
24
8
,
367
,
375
,
289
,
322
,
465
,
338
,
468
,
470
,
342
,
/* 190 */
47
1
,
475
,
395
,
355
,
377
,
386
,
380
,
379
,
402
,
406
,
/* 200 */
48
4
,
407
,
414
,
417
,
415
,
403
,
416
,
408
,
421
,
418
,
/* 210 */
4
19
,
423
,
424
,
427
,
426
,
428
,
455
,
520
,
526
,
527
,
/* 220 */
5
28
,
529
,
530
,
459
,
522
,
466
,
524
,
411
,
420
,
434
,
/* 230 */
5
37
,
538
,
444
,
446
,
434
,
541
,
542
,
543
,
544
,
546
,
/* 240 */
5
47
,
548
,
549
,
550
,
551
,
552
,
553
,
554
,
555
,
556
,
/* 250 */
458
,
486
,
545
,
557
,
505
,
507
,
567
,
/* 0 */
1
66
,
28
,
159
,
11
,
196
,
216
,
21
,
21
,
21
,
21
,
/* 10 */
21
,
21
,
0
,
22
,
216
,
290
,
290
,
290
,
55
,
21
,
/* 20 */
21
,
21
,
103
,
21
,
21
,
189
,
67
,
67
,
585
,
206
,
/* 30 */
2
16
,
216
,
216
,
216
,
216
,
216
,
216
,
216
,
216
,
216
,
/* 40 */
2
16
,
216
,
216
,
216
,
216
,
216
,
216
,
290
,
290
,
2
,
/* 50 */
2
,
2
,
2
,
2
,
2
,
2
,
102
,
21
,
21
,
21
,
/* 60 */
21
,
117
,
117
,
241
,
21
,
21
,
21
,
21
,
21
,
21
,
/* 70 */
21
,
21
,
21
,
21
,
21
,
21
,
21
,
21
,
21
,
21
,
/* 80 */
21
,
21
,
21
,
21
,
21
,
21
,
21
,
21
,
21
,
21
,
/* 90 */
21
,
21
,
21
,
21
,
21
,
21
,
21
,
21
,
21
,
21
,
/* 100 */
21
,
21
,
21
,
21
,
298
,
359
,
359
,
317
,
317
,
317
,
/* 110 */
3
59
,
330
,
331
,
336
,
343
,
340
,
346
,
348
,
350
,
338
,
/* 120 */
29
8
,
359
,
359
,
359
,
11
,
359
,
380
,
382
,
417
,
387
,
/* 130 */
38
6
,
416
,
389
,
394
,
359
,
398
,
359
,
398
,
359
,
585
,
/* 140 */
5
85
,
27
,
72
,
72
,
72
,
132
,
157
,
251
,
251
,
251
,
/* 150 */
2
69
,
271
,
271
,
271
,
271
,
252
,
272
,
18
,
40
,
149
,
/* 160 */
14
9
,
89
,
238
,
119
,
164
,
244
,
253
,
254
,
255
,
356
,
/* 170 */
35
7
,
179
,
228
,
93
,
247
,
193
,
264
,
265
,
267
,
243
,
/* 180 */
24
5
,
372
,
373
,
308
,
322
,
471
,
341
,
472
,
476
,
345
,
/* 190 */
47
8
,
479
,
399
,
358
,
379
,
388
,
383
,
407
,
390
,
418
,
/* 200 */
48
7
,
419
,
420
,
422
,
412
,
404
,
421
,
408
,
424
,
423
,
/* 210 */
4
25
,
427
,
426
,
429
,
428
,
430
,
459
,
525
,
530
,
531
,
/* 220 */
5
32
,
533
,
534
,
463
,
526
,
469
,
527
,
413
,
414
,
441
,
/* 230 */
5
42
,
543
,
448
,
450
,
441
,
546
,
547
,
548
,
549
,
550
,
/* 240 */
5
51
,
552
,
553
,
554
,
555
,
556
,
557
,
558
,
559
,
560
,
/* 250 */
561
,
462
,
491
,
562
,
563
,
510
,
512
,
571
,
};
#define YY_REDUCE_COUNT (140)
#define YY_REDUCE_MIN (-26
4
)
#define YY_REDUCE_MAX (
290
)
#define YY_REDUCE_MIN (-26
6
)
#define YY_REDUCE_MAX (
301
)
static
const
short
yy_reduce_ofst
[]
=
{
/* 0 */
-
20
6
,
-
76
,
54
,
-
187
,
-
228
,
-
175
,
-
162
,
-
16
,
53
,
66
,
/* 10 */
79
,
96
,
-
203
,
-
205
,
-
264
,
-
132
,
-
98
,
7
,
-
230
,
-
17
6
,
/* 20 */
-
43
,
-
9
,
1
,
-
192
,
-
114
,
26
,
56
,
88
,
70
,
-
257
,
/* 30 */
-
253
,
-
249
,
-
242
,
-
234
,
-
201
,
-
61
,
-
33
,
-
2
,
4
,
30
,
/* 40 */
33
,
71
,
77
,
86
,
91
,
105
,
109
,
129
,
135
,
138
,
/* 50 */
14
3
,
144
,
145
,
146
,
147
,
148
,
72
,
181
,
183
,
184
,
/* 60 */
18
5
,
122
,
126
,
151
,
187
,
188
,
190
,
193
,
194
,
195
,
/* 70 */
196
,
197
,
198
,
201
,
202
,
203
,
204
,
205
,
206
,
207
,
/* 80 */
2
08
,
210
,
213
,
215
,
216
,
217
,
218
,
219
,
220
,
221
,
/* 90 */
222
,
22
4
,
225
,
226
,
227
,
228
,
229
,
230
,
231
,
232
,
/* 100 */
23
4
,
235
,
237
,
238
,
162
,
239
,
240
,
153
,
155
,
156
,
/* 110 */
24
1
,
186
,
249
,
251
,
250
,
254
,
256
,
258
,
253
,
262
,
/* 120 */
2
55
,
257
,
259
,
260
,
263
,
265
,
266
,
268
,
272
,
269
,
/* 130 */
27
4
,
273
,
276
,
280
,
275
,
277
,
279
,
282
,
288
,
284
,
/* 140 */
290
,
/* 0 */
-
20
5
,
-
99
,
32
,
35
,
-
264
,
-
185
,
-
111
,
-
58
,
-
193
,
-
45
,
/* 10 */
10
,
99
,
-
204
,
-
162
,
-
266
,
-
223
,
-
172
,
-
122
,
-
232
,
-
16
6
,
/* 20 */
-
100
,
-
48
,
-
17
,
-
150
,
-
209
,
26
,
75
,
110
,
-
170
,
-
251
,
/* 30 */
-
47
,
-
38
,
-
25
,
-
18
,
-
10
,
14
,
20
,
46
,
52
,
59
,
/* 40 */
69
,
77
,
81
,
87
,
91
,
101
,
120
,
133
,
135
,
143
,
/* 50 */
14
4
,
145
,
146
,
147
,
148
,
150
,
151
,
182
,
185
,
186
,
/* 60 */
18
7
,
127
,
129
,
152
,
191
,
192
,
195
,
197
,
198
,
199
,
/* 70 */
200
,
201
,
202
,
203
,
204
,
205
,
207
,
208
,
209
,
210
,
/* 80 */
2
11
,
212
,
213
,
214
,
215
,
217
,
218
,
219
,
220
,
221
,
/* 90 */
222
,
22
3
,
224
,
225
,
226
,
227
,
229
,
230
,
231
,
232
,
/* 100 */
23
3
,
234
,
235
,
236
,
158
,
237
,
239
,
171
,
180
,
184
,
/* 110 */
24
2
,
194
,
240
,
246
,
248
,
250
,
256
,
249
,
257
,
260
,
/* 120 */
2
61
,
258
,
259
,
262
,
263
,
266
,
268
,
270
,
273
,
276
,
/* 130 */
27
5
,
278
,
280
,
274
,
277
,
279
,
288
,
291
,
297
,
286
,
/* 140 */
301
,
};
static
const
YYACTIONTYPE
yy_default
[]
=
{
/* 0 */
66
2
,
716
,
705
,
713
,
890
,
890
,
662
,
662
,
662
,
662
,
/* 10 */
66
2
,
662
,
815
,
680
,
890
,
662
,
662
,
662
,
662
,
662
,
/* 20 */
66
2
,
662
,
713
,
662
,
662
,
718
,
718
,
718
,
810
,
662
,
/* 30 */
66
2
,
662
,
662
,
662
,
662
,
662
,
662
,
662
,
662
,
662
,
/* 40 */
66
2
,
662
,
662
,
662
,
662
,
662
,
662
,
662
,
662
,
662
,
/* 50 */
66
2
,
662
,
662
,
662
,
662
,
662
,
662
,
662
,
817
,
81
9
,
/* 60 */
66
2
,
837
,
837
,
808
,
662
,
662
,
662
,
662
,
662
,
662
,
/* 70 */
66
2
,
662
,
662
,
662
,
662
,
662
,
662
,
662
,
662
,
662
,
/* 80 */
66
2
,
662
,
662
,
703
,
662
,
701
,
662
,
662
,
662
,
662
,
/* 90 */
66
2
,
662
,
662
,
662
,
662
,
662
,
662
,
662
,
690
,
662
,
/* 100 */
66
2
,
662
,
662
,
662
,
662
,
682
,
682
,
662
,
662
,
662
,
/* 110 */
68
2
,
844
,
848
,
842
,
830
,
838
,
829
,
825
,
824
,
85
2
,
/* 120 */
66
2
,
682
,
682
,
682
,
713
,
682
,
734
,
732
,
730
,
722
,
/* 130 */
7
28
,
724
,
726
,
720
,
682
,
711
,
682
,
711
,
682
,
751
,
/* 140 */
7
66
,
662
,
853
,
889
,
843
,
879
,
878
,
885
,
877
,
87
6
,
/* 150 */
66
2
,
872
,
873
,
875
,
874
,
662
,
662
,
662
,
662
,
88
1
,
/* 160 */
8
80
,
662
,
662
,
662
,
662
,
662
,
662
,
662
,
662
,
662
,
/* 170 */
66
2
,
662
,
855
,
662
,
849
,
845
,
662
,
662
,
662
,
662
,
/* 180 */
66
2
,
662
,
662
,
662
,
662
,
662
,
662
,
662
,
662
,
662
,
/* 190 */
66
2
,
662
,
662
,
662
,
807
,
662
,
662
,
816
,
662
,
662
,
/* 200 */
66
2
,
662
,
662
,
662
,
839
,
662
,
831
,
662
,
662
,
662
,
/* 210 */
66
2
,
662
,
784
,
662
,
662
,
662
,
662
,
662
,
662
,
662
,
/* 220 */
66
2
,
662
,
662
,
662
,
662
,
662
,
662
,
662
,
662
,
89
4
,
/* 230 */
66
2
,
662
,
662
,
775
,
892
,
662
,
662
,
662
,
662
,
662
,
/* 240 */
66
2
,
662
,
662
,
662
,
662
,
662
,
662
,
662
,
662
,
662
,
/* 250 */
737
,
662
,
688
,
686
,
662
,
678
,
662
,
/* 0 */
66
9
,
723
,
712
,
720
,
900
,
900
,
669
,
669
,
669
,
669
,
/* 10 */
66
9
,
669
,
825
,
687
,
900
,
669
,
669
,
669
,
669
,
669
,
/* 20 */
66
9
,
669
,
720
,
669
,
669
,
725
,
725
,
725
,
820
,
669
,
/* 30 */
66
9
,
669
,
669
,
669
,
669
,
669
,
669
,
669
,
669
,
669
,
/* 40 */
66
9
,
669
,
669
,
669
,
669
,
669
,
669
,
669
,
669
,
669
,
/* 50 */
66
9
,
669
,
669
,
669
,
669
,
669
,
669
,
669
,
827
,
82
9
,
/* 60 */
66
9
,
847
,
847
,
818
,
669
,
669
,
669
,
669
,
669
,
669
,
/* 70 */
66
9
,
669
,
669
,
669
,
669
,
669
,
669
,
669
,
669
,
669
,
/* 80 */
66
9
,
669
,
669
,
710
,
669
,
708
,
669
,
669
,
669
,
669
,
/* 90 */
66
9
,
669
,
669
,
669
,
669
,
669
,
669
,
669
,
697
,
669
,
/* 100 */
66
9
,
669
,
669
,
669
,
669
,
689
,
689
,
669
,
669
,
669
,
/* 110 */
68
9
,
854
,
858
,
852
,
840
,
848
,
839
,
835
,
834
,
86
2
,
/* 120 */
66
9
,
689
,
689
,
689
,
720
,
689
,
741
,
739
,
737
,
729
,
/* 130 */
7
35
,
731
,
733
,
727
,
689
,
718
,
689
,
718
,
689
,
759
,
/* 140 */
7
75
,
669
,
863
,
899
,
853
,
889
,
888
,
895
,
887
,
88
6
,
/* 150 */
66
9
,
882
,
883
,
885
,
884
,
669
,
669
,
669
,
669
,
89
1
,
/* 160 */
8
90
,
669
,
669
,
669
,
669
,
669
,
669
,
669
,
669
,
669
,
/* 170 */
66
9
,
669
,
865
,
669
,
859
,
855
,
669
,
669
,
669
,
669
,
/* 180 */
66
9
,
669
,
669
,
669
,
669
,
669
,
669
,
669
,
669
,
669
,
/* 190 */
66
9
,
669
,
669
,
669
,
817
,
669
,
669
,
826
,
669
,
669
,
/* 200 */
66
9
,
669
,
669
,
669
,
849
,
669
,
841
,
669
,
669
,
669
,
/* 210 */
66
9
,
669
,
794
,
669
,
669
,
669
,
669
,
669
,
669
,
669
,
/* 220 */
66
9
,
669
,
669
,
669
,
669
,
669
,
669
,
669
,
669
,
90
4
,
/* 230 */
66
9
,
669
,
669
,
785
,
902
,
669
,
669
,
669
,
669
,
669
,
/* 240 */
66
9
,
669
,
669
,
669
,
669
,
669
,
669
,
669
,
669
,
669
,
/* 250 */
669
,
744
,
669
,
695
,
693
,
669
,
685
,
669
,
};
/********** End of lemon-generated parsing tables *****************************/
...
...
@@ -541,6 +543,7 @@ static const YYCODETYPE yyFallback[] = {
0
,
/* COMP => nothing */
0
,
/* PRECISION => nothing */
0
,
/* UPDATE => nothing */
0
,
/* CACHELAST => nothing */
0
,
/* LP => nothing */
0
,
/* RP => nothing */
0
,
/* TAGS => nothing */
...
...
@@ -834,182 +837,184 @@ static const char *const yyTokenName[] = {
/* 96 */
"COMP"
,
/* 97 */
"PRECISION"
,
/* 98 */
"UPDATE"
,
/* 99 */
"LP"
,
/* 100 */
"RP"
,
/* 101 */
"TAGS"
,
/* 102 */
"USING"
,
/* 103 */
"AS"
,
/* 104 */
"COMMA"
,
/* 105 */
"NULL"
,
/* 106 */
"SELECT"
,
/* 107 */
"UNION"
,
/* 108 */
"ALL"
,
/* 109 */
"FROM"
,
/* 110 */
"VARIABLE"
,
/* 111 */
"INTERVAL"
,
/* 112 */
"FILL"
,
/* 113 */
"SLIDING"
,
/* 114 */
"ORDER"
,
/* 115 */
"BY"
,
/* 116 */
"ASC"
,
/* 117 */
"DESC"
,
/* 118 */
"GROUP"
,
/* 119 */
"HAVING"
,
/* 120 */
"LIMIT"
,
/* 121 */
"OFFSET"
,
/* 122 */
"SLIMIT"
,
/* 123 */
"SOFFSET"
,
/* 124 */
"WHERE"
,
/* 125 */
"NOW"
,
/* 126 */
"RESET"
,
/* 127 */
"QUERY"
,
/* 128 */
"ADD"
,
/* 129 */
"COLUMN"
,
/* 130 */
"TAG"
,
/* 131 */
"CHANGE"
,
/* 132 */
"SET"
,
/* 133 */
"KILL"
,
/* 134 */
"CONNECTION"
,
/* 135 */
"STREAM"
,
/* 136 */
"COLON"
,
/* 137 */
"ABORT"
,
/* 138 */
"AFTER"
,
/* 139 */
"ATTACH"
,
/* 140 */
"BEFORE"
,
/* 141 */
"BEGIN"
,
/* 142 */
"CASCADE"
,
/* 143 */
"CLUSTER"
,
/* 144 */
"CONFLICT"
,
/* 145 */
"COPY"
,
/* 146 */
"DEFERRED"
,
/* 147 */
"DELIMITERS"
,
/* 148 */
"DETACH"
,
/* 149 */
"EACH"
,
/* 150 */
"END"
,
/* 151 */
"EXPLAIN"
,
/* 152 */
"FAIL"
,
/* 153 */
"FOR"
,
/* 154 */
"IGNORE"
,
/* 155 */
"IMMEDIATE"
,
/* 156 */
"INITIALLY"
,
/* 157 */
"INSTEAD"
,
/* 158 */
"MATCH"
,
/* 159 */
"KEY"
,
/* 160 */
"OF"
,
/* 161 */
"RAISE"
,
/* 162 */
"REPLACE"
,
/* 163 */
"RESTRICT"
,
/* 164 */
"ROW"
,
/* 165 */
"STATEMENT"
,
/* 166 */
"TRIGGER"
,
/* 167 */
"VIEW"
,
/* 168 */
"COUNT"
,
/* 169 */
"SUM"
,
/* 170 */
"AVG"
,
/* 171 */
"MIN"
,
/* 172 */
"MAX"
,
/* 173 */
"FIRST"
,
/* 174 */
"LAST"
,
/* 175 */
"TOP"
,
/* 176 */
"BOTTOM"
,
/* 177 */
"STDDEV"
,
/* 178 */
"PERCENTILE"
,
/* 179 */
"APERCENTILE"
,
/* 180 */
"LEASTSQUARES"
,
/* 181 */
"HISTOGRAM"
,
/* 182 */
"DIFF"
,
/* 183 */
"SPREAD"
,
/* 184 */
"TWA"
,
/* 185 */
"INTERP"
,
/* 186 */
"LAST_ROW"
,
/* 187 */
"RATE"
,
/* 188 */
"IRATE"
,
/* 189 */
"SUM_RATE"
,
/* 190 */
"SUM_IRATE"
,
/* 191 */
"AVG_RATE"
,
/* 192 */
"AVG_IRATE"
,
/* 193 */
"TBID"
,
/* 194 */
"SEMI"
,
/* 195 */
"NONE"
,
/* 196 */
"PREV"
,
/* 197 */
"LINEAR"
,
/* 198 */
"IMPORT"
,
/* 199 */
"METRIC"
,
/* 200 */
"TBNAME"
,
/* 201 */
"JOIN"
,
/* 202 */
"METRICS"
,
/* 203 */
"STABLE"
,
/* 204 */
"INSERT"
,
/* 205 */
"INTO"
,
/* 206 */
"VALUES"
,
/* 207 */
"error"
,
/* 208 */
"program"
,
/* 209 */
"cmd"
,
/* 210 */
"dbPrefix"
,
/* 211 */
"ids"
,
/* 212 */
"cpxName"
,
/* 213 */
"ifexists"
,
/* 214 */
"alter_db_optr"
,
/* 215 */
"acct_optr"
,
/* 216 */
"ifnotexists"
,
/* 217 */
"db_optr"
,
/* 218 */
"pps"
,
/* 219 */
"tseries"
,
/* 220 */
"dbs"
,
/* 221 */
"streams"
,
/* 222 */
"storage"
,
/* 223 */
"qtime"
,
/* 224 */
"users"
,
/* 225 */
"conns"
,
/* 226 */
"state"
,
/* 227 */
"keep"
,
/* 228 */
"tagitemlist"
,
/* 229 */
"cache"
,
/* 230 */
"replica"
,
/* 231 */
"quorum"
,
/* 232 */
"days"
,
/* 233 */
"minrows"
,
/* 234 */
"maxrows"
,
/* 235 */
"blocks"
,
/* 236 */
"ctime"
,
/* 237 */
"wal"
,
/* 238 */
"fsync"
,
/* 239 */
"comp"
,
/* 240 */
"prec"
,
/* 241 */
"update"
,
/* 242 */
"typename"
,
/* 243 */
"signed"
,
/* 244 */
"create_table_args"
,
/* 245 */
"create_table_list"
,
/* 246 */
"create_from_stable"
,
/* 247 */
"columnlist"
,
/* 248 */
"select"
,
/* 249 */
"column"
,
/* 250 */
"tagitem"
,
/* 251 */
"selcollist"
,
/* 252 */
"from"
,
/* 253 */
"where_opt"
,
/* 254 */
"interval_opt"
,
/* 255 */
"fill_opt"
,
/* 256 */
"sliding_opt"
,
/* 257 */
"groupby_opt"
,
/* 258 */
"orderby_opt"
,
/* 259 */
"having_opt"
,
/* 260 */
"slimit_opt"
,
/* 261 */
"limit_opt"
,
/* 262 */
"union"
,
/* 263 */
"sclp"
,
/* 264 */
"expr"
,
/* 265 */
"as"
,
/* 266 */
"tablelist"
,
/* 267 */
"tmvar"
,
/* 268 */
"sortlist"
,
/* 269 */
"sortitem"
,
/* 270 */
"item"
,
/* 271 */
"sortorder"
,
/* 272 */
"grouplist"
,
/* 273 */
"exprlist"
,
/* 274 */
"expritem"
,
/* 99 */
"CACHELAST"
,
/* 100 */
"LP"
,
/* 101 */
"RP"
,
/* 102 */
"TAGS"
,
/* 103 */
"USING"
,
/* 104 */
"AS"
,
/* 105 */
"COMMA"
,
/* 106 */
"NULL"
,
/* 107 */
"SELECT"
,
/* 108 */
"UNION"
,
/* 109 */
"ALL"
,
/* 110 */
"FROM"
,
/* 111 */
"VARIABLE"
,
/* 112 */
"INTERVAL"
,
/* 113 */
"FILL"
,
/* 114 */
"SLIDING"
,
/* 115 */
"ORDER"
,
/* 116 */
"BY"
,
/* 117 */
"ASC"
,
/* 118 */
"DESC"
,
/* 119 */
"GROUP"
,
/* 120 */
"HAVING"
,
/* 121 */
"LIMIT"
,
/* 122 */
"OFFSET"
,
/* 123 */
"SLIMIT"
,
/* 124 */
"SOFFSET"
,
/* 125 */
"WHERE"
,
/* 126 */
"NOW"
,
/* 127 */
"RESET"
,
/* 128 */
"QUERY"
,
/* 129 */
"ADD"
,
/* 130 */
"COLUMN"
,
/* 131 */
"TAG"
,
/* 132 */
"CHANGE"
,
/* 133 */
"SET"
,
/* 134 */
"KILL"
,
/* 135 */
"CONNECTION"
,
/* 136 */
"STREAM"
,
/* 137 */
"COLON"
,
/* 138 */
"ABORT"
,
/* 139 */
"AFTER"
,
/* 140 */
"ATTACH"
,
/* 141 */
"BEFORE"
,
/* 142 */
"BEGIN"
,
/* 143 */
"CASCADE"
,
/* 144 */
"CLUSTER"
,
/* 145 */
"CONFLICT"
,
/* 146 */
"COPY"
,
/* 147 */
"DEFERRED"
,
/* 148 */
"DELIMITERS"
,
/* 149 */
"DETACH"
,
/* 150 */
"EACH"
,
/* 151 */
"END"
,
/* 152 */
"EXPLAIN"
,
/* 153 */
"FAIL"
,
/* 154 */
"FOR"
,
/* 155 */
"IGNORE"
,
/* 156 */
"IMMEDIATE"
,
/* 157 */
"INITIALLY"
,
/* 158 */
"INSTEAD"
,
/* 159 */
"MATCH"
,
/* 160 */
"KEY"
,
/* 161 */
"OF"
,
/* 162 */
"RAISE"
,
/* 163 */
"REPLACE"
,
/* 164 */
"RESTRICT"
,
/* 165 */
"ROW"
,
/* 166 */
"STATEMENT"
,
/* 167 */
"TRIGGER"
,
/* 168 */
"VIEW"
,
/* 169 */
"COUNT"
,
/* 170 */
"SUM"
,
/* 171 */
"AVG"
,
/* 172 */
"MIN"
,
/* 173 */
"MAX"
,
/* 174 */
"FIRST"
,
/* 175 */
"LAST"
,
/* 176 */
"TOP"
,
/* 177 */
"BOTTOM"
,
/* 178 */
"STDDEV"
,
/* 179 */
"PERCENTILE"
,
/* 180 */
"APERCENTILE"
,
/* 181 */
"LEASTSQUARES"
,
/* 182 */
"HISTOGRAM"
,
/* 183 */
"DIFF"
,
/* 184 */
"SPREAD"
,
/* 185 */
"TWA"
,
/* 186 */
"INTERP"
,
/* 187 */
"LAST_ROW"
,
/* 188 */
"RATE"
,
/* 189 */
"IRATE"
,
/* 190 */
"SUM_RATE"
,
/* 191 */
"SUM_IRATE"
,
/* 192 */
"AVG_RATE"
,
/* 193 */
"AVG_IRATE"
,
/* 194 */
"TBID"
,
/* 195 */
"SEMI"
,
/* 196 */
"NONE"
,
/* 197 */
"PREV"
,
/* 198 */
"LINEAR"
,
/* 199 */
"IMPORT"
,
/* 200 */
"METRIC"
,
/* 201 */
"TBNAME"
,
/* 202 */
"JOIN"
,
/* 203 */
"METRICS"
,
/* 204 */
"STABLE"
,
/* 205 */
"INSERT"
,
/* 206 */
"INTO"
,
/* 207 */
"VALUES"
,
/* 208 */
"error"
,
/* 209 */
"program"
,
/* 210 */
"cmd"
,
/* 211 */
"dbPrefix"
,
/* 212 */
"ids"
,
/* 213 */
"cpxName"
,
/* 214 */
"ifexists"
,
/* 215 */
"alter_db_optr"
,
/* 216 */
"acct_optr"
,
/* 217 */
"ifnotexists"
,
/* 218 */
"db_optr"
,
/* 219 */
"pps"
,
/* 220 */
"tseries"
,
/* 221 */
"dbs"
,
/* 222 */
"streams"
,
/* 223 */
"storage"
,
/* 224 */
"qtime"
,
/* 225 */
"users"
,
/* 226 */
"conns"
,
/* 227 */
"state"
,
/* 228 */
"keep"
,
/* 229 */
"tagitemlist"
,
/* 230 */
"cache"
,
/* 231 */
"replica"
,
/* 232 */
"quorum"
,
/* 233 */
"days"
,
/* 234 */
"minrows"
,
/* 235 */
"maxrows"
,
/* 236 */
"blocks"
,
/* 237 */
"ctime"
,
/* 238 */
"wal"
,
/* 239 */
"fsync"
,
/* 240 */
"comp"
,
/* 241 */
"prec"
,
/* 242 */
"update"
,
/* 243 */
"cachelast"
,
/* 244 */
"typename"
,
/* 245 */
"signed"
,
/* 246 */
"create_table_args"
,
/* 247 */
"create_table_list"
,
/* 248 */
"create_from_stable"
,
/* 249 */
"columnlist"
,
/* 250 */
"select"
,
/* 251 */
"column"
,
/* 252 */
"tagitem"
,
/* 253 */
"selcollist"
,
/* 254 */
"from"
,
/* 255 */
"where_opt"
,
/* 256 */
"interval_opt"
,
/* 257 */
"fill_opt"
,
/* 258 */
"sliding_opt"
,
/* 259 */
"groupby_opt"
,
/* 260 */
"orderby_opt"
,
/* 261 */
"having_opt"
,
/* 262 */
"slimit_opt"
,
/* 263 */
"limit_opt"
,
/* 264 */
"union"
,
/* 265 */
"sclp"
,
/* 266 */
"expr"
,
/* 267 */
"as"
,
/* 268 */
"tablelist"
,
/* 269 */
"tmvar"
,
/* 270 */
"sortlist"
,
/* 271 */
"sortitem"
,
/* 272 */
"item"
,
/* 273 */
"sortorder"
,
/* 274 */
"grouplist"
,
/* 275 */
"exprlist"
,
/* 276 */
"expritem"
,
};
#endif
/* defined(YYCOVERAGE) || !defined(NDEBUG) */
...
...
@@ -1103,156 +1108,159 @@ static const char *const yyRuleName[] = {
/* 83 */
"comp ::= COMP INTEGER"
,
/* 84 */
"prec ::= PRECISION STRING"
,
/* 85 */
"update ::= UPDATE INTEGER"
,
/* 86 */
"db_optr ::="
,
/* 87 */
"db_optr ::= db_optr cache"
,
/* 88 */
"db_optr ::= db_optr replica"
,
/* 89 */
"db_optr ::= db_optr quorum"
,
/* 90 */
"db_optr ::= db_optr days"
,
/* 91 */
"db_optr ::= db_optr minrows"
,
/* 92 */
"db_optr ::= db_optr maxrows"
,
/* 93 */
"db_optr ::= db_optr blocks"
,
/* 94 */
"db_optr ::= db_optr ctime"
,
/* 95 */
"db_optr ::= db_optr wal"
,
/* 96 */
"db_optr ::= db_optr fsync"
,
/* 97 */
"db_optr ::= db_optr comp"
,
/* 98 */
"db_optr ::= db_optr prec"
,
/* 99 */
"db_optr ::= db_optr keep"
,
/* 100 */
"db_optr ::= db_optr update"
,
/* 101 */
"alter_db_optr ::="
,
/* 102 */
"alter_db_optr ::= alter_db_optr replica"
,
/* 103 */
"alter_db_optr ::= alter_db_optr quorum"
,
/* 104 */
"alter_db_optr ::= alter_db_optr keep"
,
/* 105 */
"alter_db_optr ::= alter_db_optr blocks"
,
/* 106 */
"alter_db_optr ::= alter_db_optr comp"
,
/* 107 */
"alter_db_optr ::= alter_db_optr wal"
,
/* 108 */
"alter_db_optr ::= alter_db_optr fsync"
,
/* 109 */
"alter_db_optr ::= alter_db_optr update"
,
/* 110 */
"typename ::= ids"
,
/* 111 */
"typename ::= ids LP signed RP"
,
/* 112 */
"signed ::= INTEGER"
,
/* 113 */
"signed ::= PLUS INTEGER"
,
/* 114 */
"signed ::= MINUS INTEGER"
,
/* 115 */
"cmd ::= CREATE TABLE create_table_args"
,
/* 116 */
"cmd ::= CREATE TABLE create_table_list"
,
/* 117 */
"create_table_list ::= create_from_stable"
,
/* 118 */
"create_table_list ::= create_table_list create_from_stable"
,
/* 119 */
"create_table_args ::= ifnotexists ids cpxName LP columnlist RP"
,
/* 120 */
"create_table_args ::= ifnotexists ids cpxName LP columnlist RP TAGS LP columnlist RP"
,
/* 121 */
"create_from_stable ::= ifnotexists ids cpxName USING ids cpxName TAGS LP tagitemlist RP"
,
/* 122 */
"create_table_args ::= ifnotexists ids cpxName AS select"
,
/* 123 */
"columnlist ::= columnlist COMMA column"
,
/* 124 */
"columnlist ::= column"
,
/* 125 */
"column ::= ids typename"
,
/* 126 */
"tagitemlist ::= tagitemlist COMMA tagitem"
,
/* 127 */
"tagitemlist ::= tagitem"
,
/* 128 */
"tagitem ::= INTEGER"
,
/* 129 */
"tagitem ::= FLOAT"
,
/* 130 */
"tagitem ::= STRING"
,
/* 131 */
"tagitem ::= BOOL"
,
/* 132 */
"tagitem ::= NULL"
,
/* 133 */
"tagitem ::= MINUS INTEGER"
,
/* 134 */
"tagitem ::= MINUS FLOAT"
,
/* 135 */
"tagitem ::= PLUS INTEGER"
,
/* 136 */
"tagitem ::= PLUS FLOAT"
,
/* 137 */
"select ::= SELECT selcollist from where_opt interval_opt fill_opt sliding_opt groupby_opt orderby_opt having_opt slimit_opt limit_opt"
,
/* 138 */
"union ::= select"
,
/* 139 */
"union ::= LP union RP"
,
/* 140 */
"union ::= union UNION ALL select"
,
/* 141 */
"union ::= union UNION ALL LP select RP"
,
/* 142 */
"cmd ::= union"
,
/* 143 */
"select ::= SELECT selcollist"
,
/* 144 */
"sclp ::= selcollist COMMA"
,
/* 145 */
"sclp ::="
,
/* 146 */
"selcollist ::= sclp expr as"
,
/* 147 */
"selcollist ::= sclp STAR"
,
/* 148 */
"as ::= AS ids"
,
/* 149 */
"as ::= ids"
,
/* 150 */
"as ::="
,
/* 151 */
"from ::= FROM tablelist"
,
/* 152 */
"tablelist ::= ids cpxName"
,
/* 153 */
"tablelist ::= ids cpxName ids"
,
/* 154 */
"tablelist ::= tablelist COMMA ids cpxName"
,
/* 155 */
"tablelist ::= tablelist COMMA ids cpxName ids"
,
/* 156 */
"tmvar ::= VARIABLE"
,
/* 157 */
"interval_opt ::= INTERVAL LP tmvar RP"
,
/* 158 */
"interval_opt ::= INTERVAL LP tmvar COMMA tmvar RP"
,
/* 159 */
"interval_opt ::="
,
/* 160 */
"fill_opt ::="
,
/* 161 */
"fill_opt ::= FILL LP ID COMMA tagitemlist RP"
,
/* 162 */
"fill_opt ::= FILL LP ID RP"
,
/* 163 */
"sliding_opt ::= SLIDING LP tmvar RP"
,
/* 164 */
"sliding_opt ::="
,
/* 165 */
"orderby_opt ::="
,
/* 166 */
"orderby_opt ::= ORDER BY sortlist"
,
/* 167 */
"sortlist ::= sortlist COMMA item sortorder"
,
/* 168 */
"sortlist ::= item sortorder"
,
/* 169 */
"item ::= ids cpxName"
,
/* 170 */
"sortorder ::= ASC"
,
/* 171 */
"sortorder ::= DESC"
,
/* 172 */
"sortorder ::="
,
/* 173 */
"groupby_opt ::="
,
/* 174 */
"groupby_opt ::= GROUP BY grouplist"
,
/* 175 */
"grouplist ::= grouplist COMMA item"
,
/* 176 */
"grouplist ::= item"
,
/* 177 */
"having_opt ::="
,
/* 178 */
"having_opt ::= HAVING expr"
,
/* 179 */
"limit_opt ::="
,
/* 180 */
"limit_opt ::= LIMIT signed"
,
/* 181 */
"limit_opt ::= LIMIT signed OFFSET signed"
,
/* 182 */
"limit_opt ::= LIMIT signed COMMA signed"
,
/* 183 */
"slimit_opt ::="
,
/* 184 */
"slimit_opt ::= SLIMIT signed"
,
/* 185 */
"slimit_opt ::= SLIMIT signed SOFFSET signed"
,
/* 186 */
"slimit_opt ::= SLIMIT signed COMMA signed"
,
/* 187 */
"where_opt ::="
,
/* 188 */
"where_opt ::= WHERE expr"
,
/* 189 */
"expr ::= LP expr RP"
,
/* 190 */
"expr ::= ID"
,
/* 191 */
"expr ::= ID DOT ID"
,
/* 192 */
"expr ::= ID DOT STAR"
,
/* 193 */
"expr ::= INTEGER"
,
/* 194 */
"expr ::= MINUS INTEGER"
,
/* 195 */
"expr ::= PLUS INTEGER"
,
/* 196 */
"expr ::= FLOAT"
,
/* 197 */
"expr ::= MINUS FLOAT"
,
/* 198 */
"expr ::= PLUS FLOAT"
,
/* 199 */
"expr ::= STRING"
,
/* 200 */
"expr ::= NOW"
,
/* 201 */
"expr ::= VARIABLE"
,
/* 202 */
"expr ::= BOOL"
,
/* 203 */
"expr ::= ID LP exprlist RP"
,
/* 204 */
"expr ::= ID LP STAR RP"
,
/* 205 */
"expr ::= expr IS NULL"
,
/* 206 */
"expr ::= expr IS NOT NULL"
,
/* 207 */
"expr ::= expr LT expr"
,
/* 208 */
"expr ::= expr GT expr"
,
/* 209 */
"expr ::= expr LE expr"
,
/* 210 */
"expr ::= expr GE expr"
,
/* 211 */
"expr ::= expr NE expr"
,
/* 212 */
"expr ::= expr EQ expr"
,
/* 213 */
"expr ::= expr AND expr"
,
/* 214 */
"expr ::= expr OR expr"
,
/* 215 */
"expr ::= expr PLUS expr"
,
/* 216 */
"expr ::= expr MINUS expr"
,
/* 217 */
"expr ::= expr STAR expr"
,
/* 218 */
"expr ::= expr SLASH expr"
,
/* 219 */
"expr ::= expr REM expr"
,
/* 220 */
"expr ::= expr LIKE expr"
,
/* 221 */
"expr ::= expr IN LP exprlist RP"
,
/* 222 */
"exprlist ::= exprlist COMMA expritem"
,
/* 223 */
"exprlist ::= expritem"
,
/* 224 */
"expritem ::= expr"
,
/* 225 */
"expritem ::="
,
/* 226 */
"cmd ::= RESET QUERY CACHE"
,
/* 227 */
"cmd ::= ALTER TABLE ids cpxName ADD COLUMN columnlist"
,
/* 228 */
"cmd ::= ALTER TABLE ids cpxName DROP COLUMN ids"
,
/* 229 */
"cmd ::= ALTER TABLE ids cpxName ADD TAG columnlist"
,
/* 230 */
"cmd ::= ALTER TABLE ids cpxName DROP TAG ids"
,
/* 231 */
"cmd ::= ALTER TABLE ids cpxName CHANGE TAG ids ids"
,
/* 232 */
"cmd ::= ALTER TABLE ids cpxName SET TAG ids EQ tagitem"
,
/* 233 */
"cmd ::= KILL CONNECTION INTEGER"
,
/* 234 */
"cmd ::= KILL STREAM INTEGER COLON INTEGER"
,
/* 235 */
"cmd ::= KILL QUERY INTEGER COLON INTEGER"
,
/* 86 */
"cachelast ::= CACHELAST INTEGER"
,
/* 87 */
"db_optr ::="
,
/* 88 */
"db_optr ::= db_optr cache"
,
/* 89 */
"db_optr ::= db_optr replica"
,
/* 90 */
"db_optr ::= db_optr quorum"
,
/* 91 */
"db_optr ::= db_optr days"
,
/* 92 */
"db_optr ::= db_optr minrows"
,
/* 93 */
"db_optr ::= db_optr maxrows"
,
/* 94 */
"db_optr ::= db_optr blocks"
,
/* 95 */
"db_optr ::= db_optr ctime"
,
/* 96 */
"db_optr ::= db_optr wal"
,
/* 97 */
"db_optr ::= db_optr fsync"
,
/* 98 */
"db_optr ::= db_optr comp"
,
/* 99 */
"db_optr ::= db_optr prec"
,
/* 100 */
"db_optr ::= db_optr keep"
,
/* 101 */
"db_optr ::= db_optr update"
,
/* 102 */
"db_optr ::= db_optr cachelast"
,
/* 103 */
"alter_db_optr ::="
,
/* 104 */
"alter_db_optr ::= alter_db_optr replica"
,
/* 105 */
"alter_db_optr ::= alter_db_optr quorum"
,
/* 106 */
"alter_db_optr ::= alter_db_optr keep"
,
/* 107 */
"alter_db_optr ::= alter_db_optr blocks"
,
/* 108 */
"alter_db_optr ::= alter_db_optr comp"
,
/* 109 */
"alter_db_optr ::= alter_db_optr wal"
,
/* 110 */
"alter_db_optr ::= alter_db_optr fsync"
,
/* 111 */
"alter_db_optr ::= alter_db_optr update"
,
/* 112 */
"alter_db_optr ::= alter_db_optr cachelast"
,
/* 113 */
"typename ::= ids"
,
/* 114 */
"typename ::= ids LP signed RP"
,
/* 115 */
"signed ::= INTEGER"
,
/* 116 */
"signed ::= PLUS INTEGER"
,
/* 117 */
"signed ::= MINUS INTEGER"
,
/* 118 */
"cmd ::= CREATE TABLE create_table_args"
,
/* 119 */
"cmd ::= CREATE TABLE create_table_list"
,
/* 120 */
"create_table_list ::= create_from_stable"
,
/* 121 */
"create_table_list ::= create_table_list create_from_stable"
,
/* 122 */
"create_table_args ::= ifnotexists ids cpxName LP columnlist RP"
,
/* 123 */
"create_table_args ::= ifnotexists ids cpxName LP columnlist RP TAGS LP columnlist RP"
,
/* 124 */
"create_from_stable ::= ifnotexists ids cpxName USING ids cpxName TAGS LP tagitemlist RP"
,
/* 125 */
"create_table_args ::= ifnotexists ids cpxName AS select"
,
/* 126 */
"columnlist ::= columnlist COMMA column"
,
/* 127 */
"columnlist ::= column"
,
/* 128 */
"column ::= ids typename"
,
/* 129 */
"tagitemlist ::= tagitemlist COMMA tagitem"
,
/* 130 */
"tagitemlist ::= tagitem"
,
/* 131 */
"tagitem ::= INTEGER"
,
/* 132 */
"tagitem ::= FLOAT"
,
/* 133 */
"tagitem ::= STRING"
,
/* 134 */
"tagitem ::= BOOL"
,
/* 135 */
"tagitem ::= NULL"
,
/* 136 */
"tagitem ::= MINUS INTEGER"
,
/* 137 */
"tagitem ::= MINUS FLOAT"
,
/* 138 */
"tagitem ::= PLUS INTEGER"
,
/* 139 */
"tagitem ::= PLUS FLOAT"
,
/* 140 */
"select ::= SELECT selcollist from where_opt interval_opt fill_opt sliding_opt groupby_opt orderby_opt having_opt slimit_opt limit_opt"
,
/* 141 */
"union ::= select"
,
/* 142 */
"union ::= LP union RP"
,
/* 143 */
"union ::= union UNION ALL select"
,
/* 144 */
"union ::= union UNION ALL LP select RP"
,
/* 145 */
"cmd ::= union"
,
/* 146 */
"select ::= SELECT selcollist"
,
/* 147 */
"sclp ::= selcollist COMMA"
,
/* 148 */
"sclp ::="
,
/* 149 */
"selcollist ::= sclp expr as"
,
/* 150 */
"selcollist ::= sclp STAR"
,
/* 151 */
"as ::= AS ids"
,
/* 152 */
"as ::= ids"
,
/* 153 */
"as ::="
,
/* 154 */
"from ::= FROM tablelist"
,
/* 155 */
"tablelist ::= ids cpxName"
,
/* 156 */
"tablelist ::= ids cpxName ids"
,
/* 157 */
"tablelist ::= tablelist COMMA ids cpxName"
,
/* 158 */
"tablelist ::= tablelist COMMA ids cpxName ids"
,
/* 159 */
"tmvar ::= VARIABLE"
,
/* 160 */
"interval_opt ::= INTERVAL LP tmvar RP"
,
/* 161 */
"interval_opt ::= INTERVAL LP tmvar COMMA tmvar RP"
,
/* 162 */
"interval_opt ::="
,
/* 163 */
"fill_opt ::="
,
/* 164 */
"fill_opt ::= FILL LP ID COMMA tagitemlist RP"
,
/* 165 */
"fill_opt ::= FILL LP ID RP"
,
/* 166 */
"sliding_opt ::= SLIDING LP tmvar RP"
,
/* 167 */
"sliding_opt ::="
,
/* 168 */
"orderby_opt ::="
,
/* 169 */
"orderby_opt ::= ORDER BY sortlist"
,
/* 170 */
"sortlist ::= sortlist COMMA item sortorder"
,
/* 171 */
"sortlist ::= item sortorder"
,
/* 172 */
"item ::= ids cpxName"
,
/* 173 */
"sortorder ::= ASC"
,
/* 174 */
"sortorder ::= DESC"
,
/* 175 */
"sortorder ::="
,
/* 176 */
"groupby_opt ::="
,
/* 177 */
"groupby_opt ::= GROUP BY grouplist"
,
/* 178 */
"grouplist ::= grouplist COMMA item"
,
/* 179 */
"grouplist ::= item"
,
/* 180 */
"having_opt ::="
,
/* 181 */
"having_opt ::= HAVING expr"
,
/* 182 */
"limit_opt ::="
,
/* 183 */
"limit_opt ::= LIMIT signed"
,
/* 184 */
"limit_opt ::= LIMIT signed OFFSET signed"
,
/* 185 */
"limit_opt ::= LIMIT signed COMMA signed"
,
/* 186 */
"slimit_opt ::="
,
/* 187 */
"slimit_opt ::= SLIMIT signed"
,
/* 188 */
"slimit_opt ::= SLIMIT signed SOFFSET signed"
,
/* 189 */
"slimit_opt ::= SLIMIT signed COMMA signed"
,
/* 190 */
"where_opt ::="
,
/* 191 */
"where_opt ::= WHERE expr"
,
/* 192 */
"expr ::= LP expr RP"
,
/* 193 */
"expr ::= ID"
,
/* 194 */
"expr ::= ID DOT ID"
,
/* 195 */
"expr ::= ID DOT STAR"
,
/* 196 */
"expr ::= INTEGER"
,
/* 197 */
"expr ::= MINUS INTEGER"
,
/* 198 */
"expr ::= PLUS INTEGER"
,
/* 199 */
"expr ::= FLOAT"
,
/* 200 */
"expr ::= MINUS FLOAT"
,
/* 201 */
"expr ::= PLUS FLOAT"
,
/* 202 */
"expr ::= STRING"
,
/* 203 */
"expr ::= NOW"
,
/* 204 */
"expr ::= VARIABLE"
,
/* 205 */
"expr ::= BOOL"
,
/* 206 */
"expr ::= ID LP exprlist RP"
,
/* 207 */
"expr ::= ID LP STAR RP"
,
/* 208 */
"expr ::= expr IS NULL"
,
/* 209 */
"expr ::= expr IS NOT NULL"
,
/* 210 */
"expr ::= expr LT expr"
,
/* 211 */
"expr ::= expr GT expr"
,
/* 212 */
"expr ::= expr LE expr"
,
/* 213 */
"expr ::= expr GE expr"
,
/* 214 */
"expr ::= expr NE expr"
,
/* 215 */
"expr ::= expr EQ expr"
,
/* 216 */
"expr ::= expr AND expr"
,
/* 217 */
"expr ::= expr OR expr"
,
/* 218 */
"expr ::= expr PLUS expr"
,
/* 219 */
"expr ::= expr MINUS expr"
,
/* 220 */
"expr ::= expr STAR expr"
,
/* 221 */
"expr ::= expr SLASH expr"
,
/* 222 */
"expr ::= expr REM expr"
,
/* 223 */
"expr ::= expr LIKE expr"
,
/* 224 */
"expr ::= expr IN LP exprlist RP"
,
/* 225 */
"exprlist ::= exprlist COMMA expritem"
,
/* 226 */
"exprlist ::= expritem"
,
/* 227 */
"expritem ::= expr"
,
/* 228 */
"expritem ::="
,
/* 229 */
"cmd ::= RESET QUERY CACHE"
,
/* 230 */
"cmd ::= ALTER TABLE ids cpxName ADD COLUMN columnlist"
,
/* 231 */
"cmd ::= ALTER TABLE ids cpxName DROP COLUMN ids"
,
/* 232 */
"cmd ::= ALTER TABLE ids cpxName ADD TAG columnlist"
,
/* 233 */
"cmd ::= ALTER TABLE ids cpxName DROP TAG ids"
,
/* 234 */
"cmd ::= ALTER TABLE ids cpxName CHANGE TAG ids ids"
,
/* 235 */
"cmd ::= ALTER TABLE ids cpxName SET TAG ids EQ tagitem"
,
/* 236 */
"cmd ::= KILL CONNECTION INTEGER"
,
/* 237 */
"cmd ::= KILL STREAM INTEGER COLON INTEGER"
,
/* 238 */
"cmd ::= KILL QUERY INTEGER COLON INTEGER"
,
};
#endif
/* NDEBUG */
...
...
@@ -1373,51 +1381,51 @@ static void yy_destructor(
** inside the C code.
*/
/********* Begin destructor definitions ***************************************/
case
22
7
:
/* keep */
case
22
8
:
/* tagitemlist */
case
24
7
:
/* columnlist */
case
25
5
:
/* fill_opt */
case
25
7
:
/* groupby_opt */
case
2
58
:
/* orderby_opt */
case
2
68
:
/* sortlist */
case
27
2
:
/* grouplist */
case
22
8
:
/* keep */
case
22
9
:
/* tagitemlist */
case
24
9
:
/* columnlist */
case
25
7
:
/* fill_opt */
case
25
9
:
/* groupby_opt */
case
2
60
:
/* orderby_opt */
case
2
70
:
/* sortlist */
case
27
4
:
/* grouplist */
{
taosArrayDestroy
((
yypminor
->
yy
131
));
taosArrayDestroy
((
yypminor
->
yy
403
));
}
break
;
case
24
5
:
/* create_table_list */
case
24
7
:
/* create_table_list */
{
destroyCreateTableSql
((
yypminor
->
yy
538
));
destroyCreateTableSql
((
yypminor
->
yy
436
));
}
break
;
case
2
48
:
/* select */
case
2
50
:
/* select */
{
doDestroyQuerySql
((
yypminor
->
yy
8
4
));
doDestroyQuerySql
((
yypminor
->
yy4
));
}
break
;
case
25
1
:
/* selcollist */
case
26
3
:
/* sclp */
case
27
3
:
/* exprlist */
case
25
3
:
/* selcollist */
case
26
5
:
/* sclp */
case
27
5
:
/* exprlist */
{
tSqlExprListDestroy
((
yypminor
->
yy478
));
tSqlExprListDestroy
((
yypminor
->
yy382
));
}
break
;
case
25
3
:
/* where_opt */
case
2
59
:
/* having_opt */
case
26
4
:
/* expr */
case
27
4
:
/* expritem */
case
25
5
:
/* where_opt */
case
2
61
:
/* having_opt */
case
26
6
:
/* expr */
case
27
6
:
/* expritem */
{
tSqlExprDestroy
((
yypminor
->
yy420
));
tSqlExprDestroy
((
yypminor
->
yy522
));
}
break
;
case
26
2
:
/* union */
case
26
4
:
/* union */
{
destroyAllSelectClause
((
yypminor
->
yy
5
13
));
destroyAllSelectClause
((
yypminor
->
yy13
));
}
break
;
case
2
69
:
/* sortitem */
case
2
71
:
/* sortitem */
{
tVariantDestroy
(
&
(
yypminor
->
yy
516
));
tVariantDestroy
(
&
(
yypminor
->
yy
488
));
}
break
;
/********* End destructor definitions *****************************************/
...
...
@@ -1711,242 +1719,245 @@ static const struct {
YYCODETYPE
lhs
;
/* Symbol on the left-hand side of the rule */
signed
char
nrhs
;
/* Negative of the number of RHS symbols in the rule */
}
yyRuleInfo
[]
=
{
{
208
,
-
1
},
/* (0) program ::= cmd */
{
209
,
-
2
},
/* (1) cmd ::= SHOW DATABASES */
{
209
,
-
2
},
/* (2) cmd ::= SHOW MNODES */
{
209
,
-
2
},
/* (3) cmd ::= SHOW DNODES */
{
209
,
-
2
},
/* (4) cmd ::= SHOW ACCOUNTS */
{
209
,
-
2
},
/* (5) cmd ::= SHOW USERS */
{
209
,
-
2
},
/* (6) cmd ::= SHOW MODULES */
{
209
,
-
2
},
/* (7) cmd ::= SHOW QUERIES */
{
209
,
-
2
},
/* (8) cmd ::= SHOW CONNECTIONS */
{
209
,
-
2
},
/* (9) cmd ::= SHOW STREAMS */
{
209
,
-
2
},
/* (10) cmd ::= SHOW VARIABLES */
{
209
,
-
2
},
/* (11) cmd ::= SHOW SCORES */
{
209
,
-
2
},
/* (12) cmd ::= SHOW GRANTS */
{
209
,
-
2
},
/* (13) cmd ::= SHOW VNODES */
{
209
,
-
3
},
/* (14) cmd ::= SHOW VNODES IPTOKEN */
{
210
,
0
},
/* (15) dbPrefix ::= */
{
210
,
-
2
},
/* (16) dbPrefix ::= ids DOT */
{
212
,
0
},
/* (17) cpxName ::= */
{
212
,
-
2
},
/* (18) cpxName ::= DOT ids */
{
209
,
-
5
},
/* (19) cmd ::= SHOW CREATE TABLE ids cpxName */
{
209
,
-
4
},
/* (20) cmd ::= SHOW CREATE DATABASE ids */
{
209
,
-
3
},
/* (21) cmd ::= SHOW dbPrefix TABLES */
{
209
,
-
5
},
/* (22) cmd ::= SHOW dbPrefix TABLES LIKE ids */
{
209
,
-
3
},
/* (23) cmd ::= SHOW dbPrefix STABLES */
{
209
,
-
5
},
/* (24) cmd ::= SHOW dbPrefix STABLES LIKE ids */
{
209
,
-
3
},
/* (25) cmd ::= SHOW dbPrefix VGROUPS */
{
209
,
-
4
},
/* (26) cmd ::= SHOW dbPrefix VGROUPS ids */
{
209
,
-
5
},
/* (27) cmd ::= DROP TABLE ifexists ids cpxName */
{
209
,
-
4
},
/* (28) cmd ::= DROP DATABASE ifexists ids */
{
209
,
-
3
},
/* (29) cmd ::= DROP DNODE ids */
{
209
,
-
3
},
/* (30) cmd ::= DROP USER ids */
{
209
,
-
3
},
/* (31) cmd ::= DROP ACCOUNT ids */
{
209
,
-
2
},
/* (32) cmd ::= USE ids */
{
209
,
-
3
},
/* (33) cmd ::= DESCRIBE ids cpxName */
{
209
,
-
5
},
/* (34) cmd ::= ALTER USER ids PASS ids */
{
209
,
-
5
},
/* (35) cmd ::= ALTER USER ids PRIVILEGE ids */
{
209
,
-
4
},
/* (36) cmd ::= ALTER DNODE ids ids */
{
209
,
-
5
},
/* (37) cmd ::= ALTER DNODE ids ids ids */
{
209
,
-
3
},
/* (38) cmd ::= ALTER LOCAL ids */
{
209
,
-
4
},
/* (39) cmd ::= ALTER LOCAL ids ids */
{
209
,
-
4
},
/* (40) cmd ::= ALTER DATABASE ids alter_db_optr */
{
209
,
-
4
},
/* (41) cmd ::= ALTER ACCOUNT ids acct_optr */
{
209
,
-
6
},
/* (42) cmd ::= ALTER ACCOUNT ids PASS ids acct_optr */
{
211
,
-
1
},
/* (43) ids ::= ID */
{
211
,
-
1
},
/* (44) ids ::= STRING */
{
213
,
-
2
},
/* (45) ifexists ::= IF EXISTS */
{
213
,
0
},
/* (46) ifexists ::= */
{
216
,
-
3
},
/* (47) ifnotexists ::= IF NOT EXISTS */
{
216
,
0
},
/* (48) ifnotexists ::= */
{
209
,
-
3
},
/* (49) cmd ::= CREATE DNODE ids */
{
209
,
-
6
},
/* (50) cmd ::= CREATE ACCOUNT ids PASS ids acct_optr */
{
209
,
-
5
},
/* (51) cmd ::= CREATE DATABASE ifnotexists ids db_optr */
{
209
,
-
5
},
/* (52) cmd ::= CREATE USER ids PASS ids */
{
218
,
0
},
/* (53) pps ::= */
{
218
,
-
2
},
/* (54) pps ::= PPS INTEGER */
{
219
,
0
},
/* (55) tseries ::= */
{
219
,
-
2
},
/* (56) tseries ::= TSERIES INTEGER */
{
220
,
0
},
/* (57) dbs ::= */
{
220
,
-
2
},
/* (58) dbs ::= DBS INTEGER */
{
221
,
0
},
/* (59) streams ::= */
{
221
,
-
2
},
/* (60) streams ::= STREAMS INTEGER */
{
222
,
0
},
/* (61) storage ::= */
{
222
,
-
2
},
/* (62) storage ::= STORAGE INTEGER */
{
223
,
0
},
/* (63) qtime ::= */
{
223
,
-
2
},
/* (64) qtime ::= QTIME INTEGER */
{
224
,
0
},
/* (65) users ::= */
{
224
,
-
2
},
/* (66) users ::= USERS INTEGER */
{
225
,
0
},
/* (67) conns ::= */
{
225
,
-
2
},
/* (68) conns ::= CONNS INTEGER */
{
226
,
0
},
/* (69) state ::= */
{
226
,
-
2
},
/* (70) state ::= STATE ids */
{
215
,
-
9
},
/* (71) acct_optr ::= pps tseries storage streams qtime dbs users conns state */
{
227
,
-
2
},
/* (72) keep ::= KEEP tagitemlist */
{
229
,
-
2
},
/* (73) cache ::= CACHE INTEGER */
{
230
,
-
2
},
/* (74) replica ::= REPLICA INTEGER */
{
231
,
-
2
},
/* (75) quorum ::= QUORUM INTEGER */
{
232
,
-
2
},
/* (76) days ::= DAYS INTEGER */
{
233
,
-
2
},
/* (77) minrows ::= MINROWS INTEGER */
{
234
,
-
2
},
/* (78) maxrows ::= MAXROWS INTEGER */
{
235
,
-
2
},
/* (79) blocks ::= BLOCKS INTEGER */
{
236
,
-
2
},
/* (80) ctime ::= CTIME INTEGER */
{
237
,
-
2
},
/* (81) wal ::= WAL INTEGER */
{
238
,
-
2
},
/* (82) fsync ::= FSYNC INTEGER */
{
239
,
-
2
},
/* (83) comp ::= COMP INTEGER */
{
240
,
-
2
},
/* (84) prec ::= PRECISION STRING */
{
241
,
-
2
},
/* (85) update ::= UPDATE INTEGER */
{
217
,
0
},
/* (86) db_optr ::= */
{
217
,
-
2
},
/* (87) db_optr ::= db_optr cache */
{
217
,
-
2
},
/* (88) db_optr ::= db_optr replica */
{
217
,
-
2
},
/* (89) db_optr ::= db_optr quorum */
{
217
,
-
2
},
/* (90) db_optr ::= db_optr days */
{
217
,
-
2
},
/* (91) db_optr ::= db_optr minrows */
{
217
,
-
2
},
/* (92) db_optr ::= db_optr maxrows */
{
217
,
-
2
},
/* (93) db_optr ::= db_optr blocks */
{
217
,
-
2
},
/* (94) db_optr ::= db_optr ctime */
{
217
,
-
2
},
/* (95) db_optr ::= db_optr wal */
{
217
,
-
2
},
/* (96) db_optr ::= db_optr fsync */
{
217
,
-
2
},
/* (97) db_optr ::= db_optr comp */
{
217
,
-
2
},
/* (98) db_optr ::= db_optr prec */
{
217
,
-
2
},
/* (99) db_optr ::= db_optr keep */
{
217
,
-
2
},
/* (100) db_optr ::= db_optr update */
{
214
,
0
},
/* (101) alter_db_optr ::= */
{
214
,
-
2
},
/* (102) alter_db_optr ::= alter_db_optr replica */
{
214
,
-
2
},
/* (103) alter_db_optr ::= alter_db_optr quorum */
{
214
,
-
2
},
/* (104) alter_db_optr ::= alter_db_optr keep */
{
214
,
-
2
},
/* (105) alter_db_optr ::= alter_db_optr blocks */
{
214
,
-
2
},
/* (106) alter_db_optr ::= alter_db_optr comp */
{
214
,
-
2
},
/* (107) alter_db_optr ::= alter_db_optr wal */
{
214
,
-
2
},
/* (108) alter_db_optr ::= alter_db_optr fsync */
{
214
,
-
2
},
/* (109) alter_db_optr ::= alter_db_optr update */
{
242
,
-
1
},
/* (110) typename ::= ids */
{
242
,
-
4
},
/* (111) typename ::= ids LP signed RP */
{
243
,
-
1
},
/* (112) signed ::= INTEGER */
{
243
,
-
2
},
/* (113) signed ::= PLUS INTEGER */
{
243
,
-
2
},
/* (114) signed ::= MINUS INTEGER */
{
209
,
-
3
},
/* (115) cmd ::= CREATE TABLE create_table_args */
{
209
,
-
3
},
/* (116) cmd ::= CREATE TABLE create_table_list */
{
245
,
-
1
},
/* (117) create_table_list ::= create_from_stable */
{
245
,
-
2
},
/* (118) create_table_list ::= create_table_list create_from_stable */
{
244
,
-
6
},
/* (119) create_table_args ::= ifnotexists ids cpxName LP columnlist RP */
{
244
,
-
10
},
/* (120) create_table_args ::= ifnotexists ids cpxName LP columnlist RP TAGS LP columnlist RP */
{
246
,
-
10
},
/* (121) create_from_stable ::= ifnotexists ids cpxName USING ids cpxName TAGS LP tagitemlist RP */
{
244
,
-
5
},
/* (122) create_table_args ::= ifnotexists ids cpxName AS select */
{
247
,
-
3
},
/* (123) columnlist ::= columnlist COMMA column */
{
247
,
-
1
},
/* (124) columnlist ::= column */
{
249
,
-
2
},
/* (125) column ::= ids typename */
{
228
,
-
3
},
/* (126) tagitemlist ::= tagitemlist COMMA tagitem */
{
228
,
-
1
},
/* (127) tagitemlist ::= tagitem */
{
250
,
-
1
},
/* (128) tagitem ::= INTEGER */
{
250
,
-
1
},
/* (129) tagitem ::= FLOAT */
{
250
,
-
1
},
/* (130) tagitem ::= STRING */
{
250
,
-
1
},
/* (131) tagitem ::= BOOL */
{
250
,
-
1
},
/* (132) tagitem ::= NULL */
{
250
,
-
2
},
/* (133) tagitem ::= MINUS INTEGER */
{
250
,
-
2
},
/* (134) tagitem ::= MINUS FLOAT */
{
250
,
-
2
},
/* (135) tagitem ::= PLUS INTEGER */
{
250
,
-
2
},
/* (136) tagitem ::= PLUS FLOAT */
{
248
,
-
12
},
/* (137) select ::= SELECT selcollist from where_opt interval_opt fill_opt sliding_opt groupby_opt orderby_opt having_opt slimit_opt limit_opt */
{
262
,
-
1
},
/* (138) union ::= select */
{
262
,
-
3
},
/* (139) union ::= LP union RP */
{
262
,
-
4
},
/* (140) union ::= union UNION ALL select */
{
262
,
-
6
},
/* (141) union ::= union UNION ALL LP select RP */
{
209
,
-
1
},
/* (142) cmd ::= union */
{
248
,
-
2
},
/* (143) select ::= SELECT selcollist */
{
263
,
-
2
},
/* (144) sclp ::= selcollist COMMA */
{
263
,
0
},
/* (145) sclp ::= */
{
251
,
-
3
},
/* (146) selcollist ::= sclp expr as */
{
251
,
-
2
},
/* (147) selcollist ::= sclp STAR */
{
265
,
-
2
},
/* (148) as ::= AS ids */
{
265
,
-
1
},
/* (149) as ::= ids */
{
265
,
0
},
/* (150) as ::= */
{
252
,
-
2
},
/* (151) from ::= FROM tablelist */
{
266
,
-
2
},
/* (152) tablelist ::= ids cpxName */
{
266
,
-
3
},
/* (153) tablelist ::= ids cpxName ids */
{
266
,
-
4
},
/* (154) tablelist ::= tablelist COMMA ids cpxName */
{
266
,
-
5
},
/* (155) tablelist ::= tablelist COMMA ids cpxName ids */
{
267
,
-
1
},
/* (156) tmvar ::= VARIABLE */
{
254
,
-
4
},
/* (157) interval_opt ::= INTERVAL LP tmvar RP */
{
254
,
-
6
},
/* (158) interval_opt ::= INTERVAL LP tmvar COMMA tmvar RP */
{
254
,
0
},
/* (159) interval_opt ::= */
{
255
,
0
},
/* (160) fill_opt ::= */
{
255
,
-
6
},
/* (161) fill_opt ::= FILL LP ID COMMA tagitemlist RP */
{
255
,
-
4
},
/* (162) fill_opt ::= FILL LP ID RP */
{
256
,
-
4
},
/* (163) sliding_opt ::= SLIDING LP tmvar RP */
{
256
,
0
},
/* (164) sliding_opt ::= */
{
258
,
0
},
/* (165) orderby_opt ::= */
{
258
,
-
3
},
/* (166) orderby_opt ::= ORDER BY sortlist */
{
268
,
-
4
},
/* (167) sortlist ::= sortlist COMMA item sortorder */
{
268
,
-
2
},
/* (168) sortlist ::= item sortorder */
{
270
,
-
2
},
/* (169) item ::= ids cpxName */
{
271
,
-
1
},
/* (170) sortorder ::= ASC */
{
271
,
-
1
},
/* (171) sortorder ::= DESC */
{
271
,
0
},
/* (172) sortorder ::= */
{
257
,
0
},
/* (173) groupby_opt ::= */
{
257
,
-
3
},
/* (174) groupby_opt ::= GROUP BY grouplist */
{
272
,
-
3
},
/* (175) grouplist ::= grouplist COMMA item */
{
272
,
-
1
},
/* (176) grouplist ::= item */
{
259
,
0
},
/* (177) having_opt ::= */
{
259
,
-
2
},
/* (178) having_opt ::= HAVING expr */
{
261
,
0
},
/* (179) limit_opt ::= */
{
261
,
-
2
},
/* (180) limit_opt ::= LIMIT signed */
{
261
,
-
4
},
/* (181) limit_opt ::= LIMIT signed OFFSET signed */
{
261
,
-
4
},
/* (182) limit_opt ::= LIMIT signed COMMA signed */
{
260
,
0
},
/* (183) slimit_opt ::= */
{
260
,
-
2
},
/* (184) slimit_opt ::= SLIMIT signed */
{
260
,
-
4
},
/* (185) slimit_opt ::= SLIMIT signed SOFFSET signed */
{
260
,
-
4
},
/* (186) slimit_opt ::= SLIMIT signed COMMA signed */
{
253
,
0
},
/* (187) where_opt ::= */
{
253
,
-
2
},
/* (188) where_opt ::= WHERE expr */
{
264
,
-
3
},
/* (189) expr ::= LP expr RP */
{
264
,
-
1
},
/* (190) expr ::= ID */
{
264
,
-
3
},
/* (191) expr ::= ID DOT ID */
{
264
,
-
3
},
/* (192) expr ::= ID DOT STAR */
{
264
,
-
1
},
/* (193) expr ::= INTEGER */
{
264
,
-
2
},
/* (194) expr ::= MINUS INTEGER */
{
264
,
-
2
},
/* (195) expr ::= PLUS INTEGER */
{
264
,
-
1
},
/* (196) expr ::= FLOAT */
{
264
,
-
2
},
/* (197) expr ::= MINUS FLOAT */
{
264
,
-
2
},
/* (198) expr ::= PLUS FLOAT */
{
264
,
-
1
},
/* (199) expr ::= STRING */
{
264
,
-
1
},
/* (200) expr ::= NOW */
{
264
,
-
1
},
/* (201) expr ::= VARIABLE */
{
264
,
-
1
},
/* (202) expr ::= BOOL */
{
264
,
-
4
},
/* (203) expr ::= ID LP exprlist RP */
{
264
,
-
4
},
/* (204) expr ::= ID LP STAR RP */
{
264
,
-
3
},
/* (205) expr ::= expr IS NULL */
{
264
,
-
4
},
/* (206) expr ::= expr IS NOT NULL */
{
264
,
-
3
},
/* (207) expr ::= expr LT expr */
{
264
,
-
3
},
/* (208) expr ::= expr GT expr */
{
264
,
-
3
},
/* (209) expr ::= expr LE expr */
{
264
,
-
3
},
/* (210) expr ::= expr GE expr */
{
264
,
-
3
},
/* (211) expr ::= expr NE expr */
{
264
,
-
3
},
/* (212) expr ::= expr EQ expr */
{
264
,
-
3
},
/* (213) expr ::= expr AND expr */
{
264
,
-
3
},
/* (214) expr ::= expr OR expr */
{
264
,
-
3
},
/* (215) expr ::= expr PLUS expr */
{
264
,
-
3
},
/* (216) expr ::= expr MINUS expr */
{
264
,
-
3
},
/* (217) expr ::= expr STAR expr */
{
264
,
-
3
},
/* (218) expr ::= expr SLASH expr */
{
264
,
-
3
},
/* (219) expr ::= expr REM expr */
{
264
,
-
3
},
/* (220) expr ::= expr LIKE expr */
{
264
,
-
5
},
/* (221) expr ::= expr IN LP exprlist RP */
{
273
,
-
3
},
/* (222) exprlist ::= exprlist COMMA expritem */
{
273
,
-
1
},
/* (223) exprlist ::= expritem */
{
274
,
-
1
},
/* (224) expritem ::= expr */
{
274
,
0
},
/* (225) expritem ::= */
{
209
,
-
3
},
/* (226) cmd ::= RESET QUERY CACHE */
{
209
,
-
7
},
/* (227) cmd ::= ALTER TABLE ids cpxName ADD COLUMN columnlist */
{
209
,
-
7
},
/* (228) cmd ::= ALTER TABLE ids cpxName DROP COLUMN ids */
{
209
,
-
7
},
/* (229) cmd ::= ALTER TABLE ids cpxName ADD TAG columnlist */
{
209
,
-
7
},
/* (230) cmd ::= ALTER TABLE ids cpxName DROP TAG ids */
{
209
,
-
8
},
/* (231) cmd ::= ALTER TABLE ids cpxName CHANGE TAG ids ids */
{
209
,
-
9
},
/* (232) cmd ::= ALTER TABLE ids cpxName SET TAG ids EQ tagitem */
{
209
,
-
3
},
/* (233) cmd ::= KILL CONNECTION INTEGER */
{
209
,
-
5
},
/* (234) cmd ::= KILL STREAM INTEGER COLON INTEGER */
{
209
,
-
5
},
/* (235) cmd ::= KILL QUERY INTEGER COLON INTEGER */
{
209
,
-
1
},
/* (0) program ::= cmd */
{
210
,
-
2
},
/* (1) cmd ::= SHOW DATABASES */
{
210
,
-
2
},
/* (2) cmd ::= SHOW MNODES */
{
210
,
-
2
},
/* (3) cmd ::= SHOW DNODES */
{
210
,
-
2
},
/* (4) cmd ::= SHOW ACCOUNTS */
{
210
,
-
2
},
/* (5) cmd ::= SHOW USERS */
{
210
,
-
2
},
/* (6) cmd ::= SHOW MODULES */
{
210
,
-
2
},
/* (7) cmd ::= SHOW QUERIES */
{
210
,
-
2
},
/* (8) cmd ::= SHOW CONNECTIONS */
{
210
,
-
2
},
/* (9) cmd ::= SHOW STREAMS */
{
210
,
-
2
},
/* (10) cmd ::= SHOW VARIABLES */
{
210
,
-
2
},
/* (11) cmd ::= SHOW SCORES */
{
210
,
-
2
},
/* (12) cmd ::= SHOW GRANTS */
{
210
,
-
2
},
/* (13) cmd ::= SHOW VNODES */
{
210
,
-
3
},
/* (14) cmd ::= SHOW VNODES IPTOKEN */
{
211
,
0
},
/* (15) dbPrefix ::= */
{
211
,
-
2
},
/* (16) dbPrefix ::= ids DOT */
{
213
,
0
},
/* (17) cpxName ::= */
{
213
,
-
2
},
/* (18) cpxName ::= DOT ids */
{
210
,
-
5
},
/* (19) cmd ::= SHOW CREATE TABLE ids cpxName */
{
210
,
-
4
},
/* (20) cmd ::= SHOW CREATE DATABASE ids */
{
210
,
-
3
},
/* (21) cmd ::= SHOW dbPrefix TABLES */
{
210
,
-
5
},
/* (22) cmd ::= SHOW dbPrefix TABLES LIKE ids */
{
210
,
-
3
},
/* (23) cmd ::= SHOW dbPrefix STABLES */
{
210
,
-
5
},
/* (24) cmd ::= SHOW dbPrefix STABLES LIKE ids */
{
210
,
-
3
},
/* (25) cmd ::= SHOW dbPrefix VGROUPS */
{
210
,
-
4
},
/* (26) cmd ::= SHOW dbPrefix VGROUPS ids */
{
210
,
-
5
},
/* (27) cmd ::= DROP TABLE ifexists ids cpxName */
{
210
,
-
4
},
/* (28) cmd ::= DROP DATABASE ifexists ids */
{
210
,
-
3
},
/* (29) cmd ::= DROP DNODE ids */
{
210
,
-
3
},
/* (30) cmd ::= DROP USER ids */
{
210
,
-
3
},
/* (31) cmd ::= DROP ACCOUNT ids */
{
210
,
-
2
},
/* (32) cmd ::= USE ids */
{
210
,
-
3
},
/* (33) cmd ::= DESCRIBE ids cpxName */
{
210
,
-
5
},
/* (34) cmd ::= ALTER USER ids PASS ids */
{
210
,
-
5
},
/* (35) cmd ::= ALTER USER ids PRIVILEGE ids */
{
210
,
-
4
},
/* (36) cmd ::= ALTER DNODE ids ids */
{
210
,
-
5
},
/* (37) cmd ::= ALTER DNODE ids ids ids */
{
210
,
-
3
},
/* (38) cmd ::= ALTER LOCAL ids */
{
210
,
-
4
},
/* (39) cmd ::= ALTER LOCAL ids ids */
{
210
,
-
4
},
/* (40) cmd ::= ALTER DATABASE ids alter_db_optr */
{
210
,
-
4
},
/* (41) cmd ::= ALTER ACCOUNT ids acct_optr */
{
210
,
-
6
},
/* (42) cmd ::= ALTER ACCOUNT ids PASS ids acct_optr */
{
212
,
-
1
},
/* (43) ids ::= ID */
{
212
,
-
1
},
/* (44) ids ::= STRING */
{
214
,
-
2
},
/* (45) ifexists ::= IF EXISTS */
{
214
,
0
},
/* (46) ifexists ::= */
{
217
,
-
3
},
/* (47) ifnotexists ::= IF NOT EXISTS */
{
217
,
0
},
/* (48) ifnotexists ::= */
{
210
,
-
3
},
/* (49) cmd ::= CREATE DNODE ids */
{
210
,
-
6
},
/* (50) cmd ::= CREATE ACCOUNT ids PASS ids acct_optr */
{
210
,
-
5
},
/* (51) cmd ::= CREATE DATABASE ifnotexists ids db_optr */
{
210
,
-
5
},
/* (52) cmd ::= CREATE USER ids PASS ids */
{
219
,
0
},
/* (53) pps ::= */
{
219
,
-
2
},
/* (54) pps ::= PPS INTEGER */
{
220
,
0
},
/* (55) tseries ::= */
{
220
,
-
2
},
/* (56) tseries ::= TSERIES INTEGER */
{
221
,
0
},
/* (57) dbs ::= */
{
221
,
-
2
},
/* (58) dbs ::= DBS INTEGER */
{
222
,
0
},
/* (59) streams ::= */
{
222
,
-
2
},
/* (60) streams ::= STREAMS INTEGER */
{
223
,
0
},
/* (61) storage ::= */
{
223
,
-
2
},
/* (62) storage ::= STORAGE INTEGER */
{
224
,
0
},
/* (63) qtime ::= */
{
224
,
-
2
},
/* (64) qtime ::= QTIME INTEGER */
{
225
,
0
},
/* (65) users ::= */
{
225
,
-
2
},
/* (66) users ::= USERS INTEGER */
{
226
,
0
},
/* (67) conns ::= */
{
226
,
-
2
},
/* (68) conns ::= CONNS INTEGER */
{
227
,
0
},
/* (69) state ::= */
{
227
,
-
2
},
/* (70) state ::= STATE ids */
{
216
,
-
9
},
/* (71) acct_optr ::= pps tseries storage streams qtime dbs users conns state */
{
228
,
-
2
},
/* (72) keep ::= KEEP tagitemlist */
{
230
,
-
2
},
/* (73) cache ::= CACHE INTEGER */
{
231
,
-
2
},
/* (74) replica ::= REPLICA INTEGER */
{
232
,
-
2
},
/* (75) quorum ::= QUORUM INTEGER */
{
233
,
-
2
},
/* (76) days ::= DAYS INTEGER */
{
234
,
-
2
},
/* (77) minrows ::= MINROWS INTEGER */
{
235
,
-
2
},
/* (78) maxrows ::= MAXROWS INTEGER */
{
236
,
-
2
},
/* (79) blocks ::= BLOCKS INTEGER */
{
237
,
-
2
},
/* (80) ctime ::= CTIME INTEGER */
{
238
,
-
2
},
/* (81) wal ::= WAL INTEGER */
{
239
,
-
2
},
/* (82) fsync ::= FSYNC INTEGER */
{
240
,
-
2
},
/* (83) comp ::= COMP INTEGER */
{
241
,
-
2
},
/* (84) prec ::= PRECISION STRING */
{
242
,
-
2
},
/* (85) update ::= UPDATE INTEGER */
{
243
,
-
2
},
/* (86) cachelast ::= CACHELAST INTEGER */
{
218
,
0
},
/* (87) db_optr ::= */
{
218
,
-
2
},
/* (88) db_optr ::= db_optr cache */
{
218
,
-
2
},
/* (89) db_optr ::= db_optr replica */
{
218
,
-
2
},
/* (90) db_optr ::= db_optr quorum */
{
218
,
-
2
},
/* (91) db_optr ::= db_optr days */
{
218
,
-
2
},
/* (92) db_optr ::= db_optr minrows */
{
218
,
-
2
},
/* (93) db_optr ::= db_optr maxrows */
{
218
,
-
2
},
/* (94) db_optr ::= db_optr blocks */
{
218
,
-
2
},
/* (95) db_optr ::= db_optr ctime */
{
218
,
-
2
},
/* (96) db_optr ::= db_optr wal */
{
218
,
-
2
},
/* (97) db_optr ::= db_optr fsync */
{
218
,
-
2
},
/* (98) db_optr ::= db_optr comp */
{
218
,
-
2
},
/* (99) db_optr ::= db_optr prec */
{
218
,
-
2
},
/* (100) db_optr ::= db_optr keep */
{
218
,
-
2
},
/* (101) db_optr ::= db_optr update */
{
218
,
-
2
},
/* (102) db_optr ::= db_optr cachelast */
{
215
,
0
},
/* (103) alter_db_optr ::= */
{
215
,
-
2
},
/* (104) alter_db_optr ::= alter_db_optr replica */
{
215
,
-
2
},
/* (105) alter_db_optr ::= alter_db_optr quorum */
{
215
,
-
2
},
/* (106) alter_db_optr ::= alter_db_optr keep */
{
215
,
-
2
},
/* (107) alter_db_optr ::= alter_db_optr blocks */
{
215
,
-
2
},
/* (108) alter_db_optr ::= alter_db_optr comp */
{
215
,
-
2
},
/* (109) alter_db_optr ::= alter_db_optr wal */
{
215
,
-
2
},
/* (110) alter_db_optr ::= alter_db_optr fsync */
{
215
,
-
2
},
/* (111) alter_db_optr ::= alter_db_optr update */
{
215
,
-
2
},
/* (112) alter_db_optr ::= alter_db_optr cachelast */
{
244
,
-
1
},
/* (113) typename ::= ids */
{
244
,
-
4
},
/* (114) typename ::= ids LP signed RP */
{
245
,
-
1
},
/* (115) signed ::= INTEGER */
{
245
,
-
2
},
/* (116) signed ::= PLUS INTEGER */
{
245
,
-
2
},
/* (117) signed ::= MINUS INTEGER */
{
210
,
-
3
},
/* (118) cmd ::= CREATE TABLE create_table_args */
{
210
,
-
3
},
/* (119) cmd ::= CREATE TABLE create_table_list */
{
247
,
-
1
},
/* (120) create_table_list ::= create_from_stable */
{
247
,
-
2
},
/* (121) create_table_list ::= create_table_list create_from_stable */
{
246
,
-
6
},
/* (122) create_table_args ::= ifnotexists ids cpxName LP columnlist RP */
{
246
,
-
10
},
/* (123) create_table_args ::= ifnotexists ids cpxName LP columnlist RP TAGS LP columnlist RP */
{
248
,
-
10
},
/* (124) create_from_stable ::= ifnotexists ids cpxName USING ids cpxName TAGS LP tagitemlist RP */
{
246
,
-
5
},
/* (125) create_table_args ::= ifnotexists ids cpxName AS select */
{
249
,
-
3
},
/* (126) columnlist ::= columnlist COMMA column */
{
249
,
-
1
},
/* (127) columnlist ::= column */
{
251
,
-
2
},
/* (128) column ::= ids typename */
{
229
,
-
3
},
/* (129) tagitemlist ::= tagitemlist COMMA tagitem */
{
229
,
-
1
},
/* (130) tagitemlist ::= tagitem */
{
252
,
-
1
},
/* (131) tagitem ::= INTEGER */
{
252
,
-
1
},
/* (132) tagitem ::= FLOAT */
{
252
,
-
1
},
/* (133) tagitem ::= STRING */
{
252
,
-
1
},
/* (134) tagitem ::= BOOL */
{
252
,
-
1
},
/* (135) tagitem ::= NULL */
{
252
,
-
2
},
/* (136) tagitem ::= MINUS INTEGER */
{
252
,
-
2
},
/* (137) tagitem ::= MINUS FLOAT */
{
252
,
-
2
},
/* (138) tagitem ::= PLUS INTEGER */
{
252
,
-
2
},
/* (139) tagitem ::= PLUS FLOAT */
{
250
,
-
12
},
/* (140) select ::= SELECT selcollist from where_opt interval_opt fill_opt sliding_opt groupby_opt orderby_opt having_opt slimit_opt limit_opt */
{
264
,
-
1
},
/* (141) union ::= select */
{
264
,
-
3
},
/* (142) union ::= LP union RP */
{
264
,
-
4
},
/* (143) union ::= union UNION ALL select */
{
264
,
-
6
},
/* (144) union ::= union UNION ALL LP select RP */
{
210
,
-
1
},
/* (145) cmd ::= union */
{
250
,
-
2
},
/* (146) select ::= SELECT selcollist */
{
265
,
-
2
},
/* (147) sclp ::= selcollist COMMA */
{
265
,
0
},
/* (148) sclp ::= */
{
253
,
-
3
},
/* (149) selcollist ::= sclp expr as */
{
253
,
-
2
},
/* (150) selcollist ::= sclp STAR */
{
267
,
-
2
},
/* (151) as ::= AS ids */
{
267
,
-
1
},
/* (152) as ::= ids */
{
267
,
0
},
/* (153) as ::= */
{
254
,
-
2
},
/* (154) from ::= FROM tablelist */
{
268
,
-
2
},
/* (155) tablelist ::= ids cpxName */
{
268
,
-
3
},
/* (156) tablelist ::= ids cpxName ids */
{
268
,
-
4
},
/* (157) tablelist ::= tablelist COMMA ids cpxName */
{
268
,
-
5
},
/* (158) tablelist ::= tablelist COMMA ids cpxName ids */
{
269
,
-
1
},
/* (159) tmvar ::= VARIABLE */
{
256
,
-
4
},
/* (160) interval_opt ::= INTERVAL LP tmvar RP */
{
256
,
-
6
},
/* (161) interval_opt ::= INTERVAL LP tmvar COMMA tmvar RP */
{
256
,
0
},
/* (162) interval_opt ::= */
{
257
,
0
},
/* (163) fill_opt ::= */
{
257
,
-
6
},
/* (164) fill_opt ::= FILL LP ID COMMA tagitemlist RP */
{
257
,
-
4
},
/* (165) fill_opt ::= FILL LP ID RP */
{
258
,
-
4
},
/* (166) sliding_opt ::= SLIDING LP tmvar RP */
{
258
,
0
},
/* (167) sliding_opt ::= */
{
260
,
0
},
/* (168) orderby_opt ::= */
{
260
,
-
3
},
/* (169) orderby_opt ::= ORDER BY sortlist */
{
270
,
-
4
},
/* (170) sortlist ::= sortlist COMMA item sortorder */
{
270
,
-
2
},
/* (171) sortlist ::= item sortorder */
{
272
,
-
2
},
/* (172) item ::= ids cpxName */
{
273
,
-
1
},
/* (173) sortorder ::= ASC */
{
273
,
-
1
},
/* (174) sortorder ::= DESC */
{
273
,
0
},
/* (175) sortorder ::= */
{
259
,
0
},
/* (176) groupby_opt ::= */
{
259
,
-
3
},
/* (177) groupby_opt ::= GROUP BY grouplist */
{
274
,
-
3
},
/* (178) grouplist ::= grouplist COMMA item */
{
274
,
-
1
},
/* (179) grouplist ::= item */
{
261
,
0
},
/* (180) having_opt ::= */
{
261
,
-
2
},
/* (181) having_opt ::= HAVING expr */
{
263
,
0
},
/* (182) limit_opt ::= */
{
263
,
-
2
},
/* (183) limit_opt ::= LIMIT signed */
{
263
,
-
4
},
/* (184) limit_opt ::= LIMIT signed OFFSET signed */
{
263
,
-
4
},
/* (185) limit_opt ::= LIMIT signed COMMA signed */
{
262
,
0
},
/* (186) slimit_opt ::= */
{
262
,
-
2
},
/* (187) slimit_opt ::= SLIMIT signed */
{
262
,
-
4
},
/* (188) slimit_opt ::= SLIMIT signed SOFFSET signed */
{
262
,
-
4
},
/* (189) slimit_opt ::= SLIMIT signed COMMA signed */
{
255
,
0
},
/* (190) where_opt ::= */
{
255
,
-
2
},
/* (191) where_opt ::= WHERE expr */
{
266
,
-
3
},
/* (192) expr ::= LP expr RP */
{
266
,
-
1
},
/* (193) expr ::= ID */
{
266
,
-
3
},
/* (194) expr ::= ID DOT ID */
{
266
,
-
3
},
/* (195) expr ::= ID DOT STAR */
{
266
,
-
1
},
/* (196) expr ::= INTEGER */
{
266
,
-
2
},
/* (197) expr ::= MINUS INTEGER */
{
266
,
-
2
},
/* (198) expr ::= PLUS INTEGER */
{
266
,
-
1
},
/* (199) expr ::= FLOAT */
{
266
,
-
2
},
/* (200) expr ::= MINUS FLOAT */
{
266
,
-
2
},
/* (201) expr ::= PLUS FLOAT */
{
266
,
-
1
},
/* (202) expr ::= STRING */
{
266
,
-
1
},
/* (203) expr ::= NOW */
{
266
,
-
1
},
/* (204) expr ::= VARIABLE */
{
266
,
-
1
},
/* (205) expr ::= BOOL */
{
266
,
-
4
},
/* (206) expr ::= ID LP exprlist RP */
{
266
,
-
4
},
/* (207) expr ::= ID LP STAR RP */
{
266
,
-
3
},
/* (208) expr ::= expr IS NULL */
{
266
,
-
4
},
/* (209) expr ::= expr IS NOT NULL */
{
266
,
-
3
},
/* (210) expr ::= expr LT expr */
{
266
,
-
3
},
/* (211) expr ::= expr GT expr */
{
266
,
-
3
},
/* (212) expr ::= expr LE expr */
{
266
,
-
3
},
/* (213) expr ::= expr GE expr */
{
266
,
-
3
},
/* (214) expr ::= expr NE expr */
{
266
,
-
3
},
/* (215) expr ::= expr EQ expr */
{
266
,
-
3
},
/* (216) expr ::= expr AND expr */
{
266
,
-
3
},
/* (217) expr ::= expr OR expr */
{
266
,
-
3
},
/* (218) expr ::= expr PLUS expr */
{
266
,
-
3
},
/* (219) expr ::= expr MINUS expr */
{
266
,
-
3
},
/* (220) expr ::= expr STAR expr */
{
266
,
-
3
},
/* (221) expr ::= expr SLASH expr */
{
266
,
-
3
},
/* (222) expr ::= expr REM expr */
{
266
,
-
3
},
/* (223) expr ::= expr LIKE expr */
{
266
,
-
5
},
/* (224) expr ::= expr IN LP exprlist RP */
{
275
,
-
3
},
/* (225) exprlist ::= exprlist COMMA expritem */
{
275
,
-
1
},
/* (226) exprlist ::= expritem */
{
276
,
-
1
},
/* (227) expritem ::= expr */
{
276
,
0
},
/* (228) expritem ::= */
{
210
,
-
3
},
/* (229) cmd ::= RESET QUERY CACHE */
{
210
,
-
7
},
/* (230) cmd ::= ALTER TABLE ids cpxName ADD COLUMN columnlist */
{
210
,
-
7
},
/* (231) cmd ::= ALTER TABLE ids cpxName DROP COLUMN ids */
{
210
,
-
7
},
/* (232) cmd ::= ALTER TABLE ids cpxName ADD TAG columnlist */
{
210
,
-
7
},
/* (233) cmd ::= ALTER TABLE ids cpxName DROP TAG ids */
{
210
,
-
8
},
/* (234) cmd ::= ALTER TABLE ids cpxName CHANGE TAG ids ids */
{
210
,
-
9
},
/* (235) cmd ::= ALTER TABLE ids cpxName SET TAG ids EQ tagitem */
{
210
,
-
3
},
/* (236) cmd ::= KILL CONNECTION INTEGER */
{
210
,
-
5
},
/* (237) cmd ::= KILL STREAM INTEGER COLON INTEGER */
{
210
,
-
5
},
/* (238) cmd ::= KILL QUERY INTEGER COLON INTEGER */
};
static
void
yy_accept
(
yyParser
*
);
/* Forward Declaration */
...
...
@@ -2027,7 +2038,7 @@ static void yy_reduce(
/********** Begin reduce actions **********************************************/
YYMINORTYPE
yylhsminor
;
case
0
:
/* program ::= cmd */
case
11
5
:
/* cmd ::= CREATE TABLE create_table_args */
yytestcase
(
yyruleno
==
115
);
case
11
8
:
/* cmd ::= CREATE TABLE create_table_args */
yytestcase
(
yyruleno
==
118
);
{}
break
;
case
1
:
/* cmd ::= SHOW DATABASES */
...
...
@@ -2139,8 +2150,7 @@ static void yy_reduce(
}
break
;
case
28
:
/* cmd ::= DROP DATABASE ifexists ids */
{
setDropDbTableInfo
(
pInfo
,
TSDB_SQL_DROP_DB
,
&
yymsp
[
0
].
minor
.
yy0
,
&
yymsp
[
-
1
].
minor
.
yy0
);
}
{
setDropDbTableInfo
(
pInfo
,
TSDB_SQL_DROP_DB
,
&
yymsp
[
0
].
minor
.
yy0
,
&
yymsp
[
-
1
].
minor
.
yy0
);
}
break
;
case
29
:
/* cmd ::= DROP DNODE ids */
{
setDCLSQLElems
(
pInfo
,
TSDB_SQL_DROP_DNODE
,
1
,
&
yymsp
[
0
].
minor
.
yy0
);
}
...
...
@@ -2161,12 +2171,10 @@ static void yy_reduce(
}
break
;
case
34
:
/* cmd ::= ALTER USER ids PASS ids */
{
setAlterUserSql
(
pInfo
,
TSDB_ALTER_USER_PASSWD
,
&
yymsp
[
-
2
].
minor
.
yy0
,
&
yymsp
[
0
].
minor
.
yy0
,
NULL
);
}
{
setAlterUserSql
(
pInfo
,
TSDB_ALTER_USER_PASSWD
,
&
yymsp
[
-
2
].
minor
.
yy0
,
&
yymsp
[
0
].
minor
.
yy0
,
NULL
);
}
break
;
case
35
:
/* cmd ::= ALTER USER ids PRIVILEGE ids */
{
setAlterUserSql
(
pInfo
,
TSDB_ALTER_USER_PRIVILEGES
,
&
yymsp
[
-
2
].
minor
.
yy0
,
NULL
,
&
yymsp
[
0
].
minor
.
yy0
);}
{
setAlterUserSql
(
pInfo
,
TSDB_ALTER_USER_PRIVILEGES
,
&
yymsp
[
-
2
].
minor
.
yy0
,
NULL
,
&
yymsp
[
0
].
minor
.
yy0
);}
break
;
case
36
:
/* cmd ::= ALTER DNODE ids ids */
{
setDCLSQLElems
(
pInfo
,
TSDB_SQL_CFG_DNODE
,
2
,
&
yymsp
[
-
1
].
minor
.
yy0
,
&
yymsp
[
0
].
minor
.
yy0
);
}
...
...
@@ -2181,15 +2189,13 @@ static void yy_reduce(
{
setDCLSQLElems
(
pInfo
,
TSDB_SQL_CFG_LOCAL
,
2
,
&
yymsp
[
-
1
].
minor
.
yy0
,
&
yymsp
[
0
].
minor
.
yy0
);
}
break
;
case
40
:
/* cmd ::= ALTER DATABASE ids alter_db_optr */
{
SStrToken
t
=
{
0
};
setCreateDBSQL
(
pInfo
,
TSDB_SQL_ALTER_DB
,
&
yymsp
[
-
1
].
minor
.
yy0
,
&
yymsp
[
0
].
minor
.
yy
14
8
,
&
t
);}
{
SStrToken
t
=
{
0
};
setCreateDBSQL
(
pInfo
,
TSDB_SQL_ALTER_DB
,
&
yymsp
[
-
1
].
minor
.
yy0
,
&
yymsp
[
0
].
minor
.
yy
47
8
,
&
t
);}
break
;
case
41
:
/* cmd ::= ALTER ACCOUNT ids acct_optr */
{
setCreateAcctSql
(
pInfo
,
TSDB_SQL_ALTER_ACCT
,
&
yymsp
[
-
1
].
minor
.
yy0
,
NULL
,
&
yymsp
[
0
].
minor
.
yy309
);}
{
setCreateAcctSql
(
pInfo
,
TSDB_SQL_ALTER_ACCT
,
&
yymsp
[
-
1
].
minor
.
yy0
,
NULL
,
&
yymsp
[
0
].
minor
.
yy463
);}
break
;
case
42
:
/* cmd ::= ALTER ACCOUNT ids PASS ids acct_optr */
{
setCreateAcctSql
(
pInfo
,
TSDB_SQL_ALTER_ACCT
,
&
yymsp
[
-
3
].
minor
.
yy0
,
&
yymsp
[
-
1
].
minor
.
yy0
,
&
yymsp
[
0
].
minor
.
yy309
);}
{
setCreateAcctSql
(
pInfo
,
TSDB_SQL_ALTER_ACCT
,
&
yymsp
[
-
3
].
minor
.
yy0
,
&
yymsp
[
-
1
].
minor
.
yy0
,
&
yymsp
[
0
].
minor
.
yy463
);}
break
;
case
43
:
/* ids ::= ID */
case
44
:
/* ids ::= STRING */
yytestcase
(
yyruleno
==
44
);
...
...
@@ -2210,16 +2216,13 @@ static void yy_reduce(
{
setDCLSQLElems
(
pInfo
,
TSDB_SQL_CREATE_DNODE
,
1
,
&
yymsp
[
0
].
minor
.
yy0
);}
break
;
case
50
:
/* cmd ::= CREATE ACCOUNT ids PASS ids acct_optr */
{
setCreateAcctSql
(
pInfo
,
TSDB_SQL_CREATE_ACCT
,
&
yymsp
[
-
3
].
minor
.
yy0
,
&
yymsp
[
-
1
].
minor
.
yy0
,
&
yymsp
[
0
].
minor
.
yy309
);}
{
setCreateAcctSql
(
pInfo
,
TSDB_SQL_CREATE_ACCT
,
&
yymsp
[
-
3
].
minor
.
yy0
,
&
yymsp
[
-
1
].
minor
.
yy0
,
&
yymsp
[
0
].
minor
.
yy463
);}
break
;
case
51
:
/* cmd ::= CREATE DATABASE ifnotexists ids db_optr */
{
setCreateDBSQL
(
pInfo
,
TSDB_SQL_CREATE_DB
,
&
yymsp
[
-
1
].
minor
.
yy0
,
&
yymsp
[
0
].
minor
.
yy
14
8
,
&
yymsp
[
-
2
].
minor
.
yy0
);}
{
setCreateDBSQL
(
pInfo
,
TSDB_SQL_CREATE_DB
,
&
yymsp
[
-
1
].
minor
.
yy0
,
&
yymsp
[
0
].
minor
.
yy
47
8
,
&
yymsp
[
-
2
].
minor
.
yy0
);}
break
;
case
52
:
/* cmd ::= CREATE USER ids PASS ids */
{
setCreateUserSql
(
pInfo
,
&
yymsp
[
-
2
].
minor
.
yy0
,
&
yymsp
[
0
].
minor
.
yy0
);}
{
setCreateUserSql
(
pInfo
,
&
yymsp
[
-
2
].
minor
.
yy0
,
&
yymsp
[
0
].
minor
.
yy0
);}
break
;
case
53
:
/* pps ::= */
case
55
:
/* tseries ::= */
yytestcase
(
yyruleno
==
55
);
...
...
@@ -2245,20 +2248,20 @@ static void yy_reduce(
break
;
case
71
:
/* acct_optr ::= pps tseries storage streams qtime dbs users conns state */
{
yylhsminor
.
yy
309
.
maxUsers
=
(
yymsp
[
-
2
].
minor
.
yy0
.
n
>
0
)
?
atoi
(
yymsp
[
-
2
].
minor
.
yy0
.
z
)
:-
1
;
yylhsminor
.
yy
309
.
maxDbs
=
(
yymsp
[
-
3
].
minor
.
yy0
.
n
>
0
)
?
atoi
(
yymsp
[
-
3
].
minor
.
yy0
.
z
)
:-
1
;
yylhsminor
.
yy
309
.
maxTimeSeries
=
(
yymsp
[
-
7
].
minor
.
yy0
.
n
>
0
)
?
atoi
(
yymsp
[
-
7
].
minor
.
yy0
.
z
)
:-
1
;
yylhsminor
.
yy
309
.
maxStreams
=
(
yymsp
[
-
5
].
minor
.
yy0
.
n
>
0
)
?
atoi
(
yymsp
[
-
5
].
minor
.
yy0
.
z
)
:-
1
;
yylhsminor
.
yy
309
.
maxPointsPerSecond
=
(
yymsp
[
-
8
].
minor
.
yy0
.
n
>
0
)
?
atoi
(
yymsp
[
-
8
].
minor
.
yy0
.
z
)
:-
1
;
yylhsminor
.
yy
309
.
maxStorage
=
(
yymsp
[
-
6
].
minor
.
yy0
.
n
>
0
)
?
strtoll
(
yymsp
[
-
6
].
minor
.
yy0
.
z
,
NULL
,
10
)
:-
1
;
yylhsminor
.
yy
309
.
maxQueryTime
=
(
yymsp
[
-
4
].
minor
.
yy0
.
n
>
0
)
?
strtoll
(
yymsp
[
-
4
].
minor
.
yy0
.
z
,
NULL
,
10
)
:-
1
;
yylhsminor
.
yy
309
.
maxConnections
=
(
yymsp
[
-
1
].
minor
.
yy0
.
n
>
0
)
?
atoi
(
yymsp
[
-
1
].
minor
.
yy0
.
z
)
:-
1
;
yylhsminor
.
yy
309
.
stat
=
yymsp
[
0
].
minor
.
yy0
;
}
yymsp
[
-
8
].
minor
.
yy
309
=
yylhsminor
.
yy309
;
yylhsminor
.
yy
463
.
maxUsers
=
(
yymsp
[
-
2
].
minor
.
yy0
.
n
>
0
)
?
atoi
(
yymsp
[
-
2
].
minor
.
yy0
.
z
)
:-
1
;
yylhsminor
.
yy
463
.
maxDbs
=
(
yymsp
[
-
3
].
minor
.
yy0
.
n
>
0
)
?
atoi
(
yymsp
[
-
3
].
minor
.
yy0
.
z
)
:-
1
;
yylhsminor
.
yy
463
.
maxTimeSeries
=
(
yymsp
[
-
7
].
minor
.
yy0
.
n
>
0
)
?
atoi
(
yymsp
[
-
7
].
minor
.
yy0
.
z
)
:-
1
;
yylhsminor
.
yy
463
.
maxStreams
=
(
yymsp
[
-
5
].
minor
.
yy0
.
n
>
0
)
?
atoi
(
yymsp
[
-
5
].
minor
.
yy0
.
z
)
:-
1
;
yylhsminor
.
yy
463
.
maxPointsPerSecond
=
(
yymsp
[
-
8
].
minor
.
yy0
.
n
>
0
)
?
atoi
(
yymsp
[
-
8
].
minor
.
yy0
.
z
)
:-
1
;
yylhsminor
.
yy
463
.
maxStorage
=
(
yymsp
[
-
6
].
minor
.
yy0
.
n
>
0
)
?
strtoll
(
yymsp
[
-
6
].
minor
.
yy0
.
z
,
NULL
,
10
)
:-
1
;
yylhsminor
.
yy
463
.
maxQueryTime
=
(
yymsp
[
-
4
].
minor
.
yy0
.
n
>
0
)
?
strtoll
(
yymsp
[
-
4
].
minor
.
yy0
.
z
,
NULL
,
10
)
:-
1
;
yylhsminor
.
yy
463
.
maxConnections
=
(
yymsp
[
-
1
].
minor
.
yy0
.
n
>
0
)
?
atoi
(
yymsp
[
-
1
].
minor
.
yy0
.
z
)
:-
1
;
yylhsminor
.
yy
463
.
stat
=
yymsp
[
0
].
minor
.
yy0
;
}
yymsp
[
-
8
].
minor
.
yy
463
=
yylhsminor
.
yy463
;
break
;
case
72
:
/* keep ::= KEEP tagitemlist */
{
yymsp
[
-
1
].
minor
.
yy
131
=
yymsp
[
0
].
minor
.
yy131
;
}
{
yymsp
[
-
1
].
minor
.
yy
403
=
yymsp
[
0
].
minor
.
yy403
;
}
break
;
case
73
:
/* cache ::= CACHE INTEGER */
case
74
:
/* replica ::= REPLICA INTEGER */
yytestcase
(
yyruleno
==
74
);
...
...
@@ -2273,591 +2276,588 @@ static void yy_reduce(
case
83
:
/* comp ::= COMP INTEGER */
yytestcase
(
yyruleno
==
83
);
case
84
:
/* prec ::= PRECISION STRING */
yytestcase
(
yyruleno
==
84
);
case
85
:
/* update ::= UPDATE INTEGER */
yytestcase
(
yyruleno
==
85
);
case
86
:
/* cachelast ::= CACHELAST INTEGER */
yytestcase
(
yyruleno
==
86
);
{
yymsp
[
-
1
].
minor
.
yy0
=
yymsp
[
0
].
minor
.
yy0
;
}
break
;
case
86
:
/* db_optr ::= */
{
setDefaultCreateDbOption
(
&
yymsp
[
1
].
minor
.
yy148
);}
break
;
case
87
:
/* db_optr ::= db_optr cache */
{
yylhsminor
.
yy148
=
yymsp
[
-
1
].
minor
.
yy148
;
yylhsminor
.
yy148
.
cacheBlockSize
=
strtol
(
yymsp
[
0
].
minor
.
yy0
.
z
,
NULL
,
10
);
}
yymsp
[
-
1
].
minor
.
yy148
=
yylhsminor
.
yy148
;
break
;
case
88
:
/* db_optr ::= db_optr replica */
case
102
:
/* alter_db_optr ::= alter_db_optr replica */
yytestcase
(
yyruleno
==
102
);
{
yylhsminor
.
yy148
=
yymsp
[
-
1
].
minor
.
yy148
;
yylhsminor
.
yy148
.
replica
=
strtol
(
yymsp
[
0
].
minor
.
yy0
.
z
,
NULL
,
10
);
}
yymsp
[
-
1
].
minor
.
yy148
=
yylhsminor
.
yy148
;
break
;
case
89
:
/* db_optr ::= db_optr quorum */
case
103
:
/* alter_db_optr ::= alter_db_optr quorum */
yytestcase
(
yyruleno
==
103
);
{
yylhsminor
.
yy148
=
yymsp
[
-
1
].
minor
.
yy148
;
yylhsminor
.
yy148
.
quorum
=
strtol
(
yymsp
[
0
].
minor
.
yy0
.
z
,
NULL
,
10
);
}
yymsp
[
-
1
].
minor
.
yy148
=
yylhsminor
.
yy148
;
break
;
case
90
:
/* db_optr ::= db_optr days */
{
yylhsminor
.
yy148
=
yymsp
[
-
1
].
minor
.
yy148
;
yylhsminor
.
yy148
.
daysPerFile
=
strtol
(
yymsp
[
0
].
minor
.
yy0
.
z
,
NULL
,
10
);
}
yymsp
[
-
1
].
minor
.
yy148
=
yylhsminor
.
yy148
;
break
;
case
91
:
/* db_optr ::= db_optr minrows */
{
yylhsminor
.
yy148
=
yymsp
[
-
1
].
minor
.
yy148
;
yylhsminor
.
yy148
.
minRowsPerBlock
=
strtod
(
yymsp
[
0
].
minor
.
yy0
.
z
,
NULL
);
}
yymsp
[
-
1
].
minor
.
yy148
=
yylhsminor
.
yy148
;
break
;
case
92
:
/* db_optr ::= db_optr maxrows */
{
yylhsminor
.
yy148
=
yymsp
[
-
1
].
minor
.
yy148
;
yylhsminor
.
yy148
.
maxRowsPerBlock
=
strtod
(
yymsp
[
0
].
minor
.
yy0
.
z
,
NULL
);
}
yymsp
[
-
1
].
minor
.
yy148
=
yylhsminor
.
yy148
;
break
;
case
93
:
/* db_optr ::= db_optr blocks */
case
105
:
/* alter_db_optr ::= alter_db_optr blocks */
yytestcase
(
yyruleno
==
105
);
{
yylhsminor
.
yy148
=
yymsp
[
-
1
].
minor
.
yy148
;
yylhsminor
.
yy148
.
numOfBlocks
=
strtol
(
yymsp
[
0
].
minor
.
yy0
.
z
,
NULL
,
10
);
}
yymsp
[
-
1
].
minor
.
yy148
=
yylhsminor
.
yy148
;
break
;
case
94
:
/* db_optr ::= db_optr ctime */
{
yylhsminor
.
yy148
=
yymsp
[
-
1
].
minor
.
yy148
;
yylhsminor
.
yy148
.
commitTime
=
strtol
(
yymsp
[
0
].
minor
.
yy0
.
z
,
NULL
,
10
);
}
yymsp
[
-
1
].
minor
.
yy148
=
yylhsminor
.
yy148
;
break
;
case
95
:
/* db_optr ::= db_optr wal */
case
107
:
/* alter_db_optr ::= alter_db_optr wal */
yytestcase
(
yyruleno
==
107
);
{
yylhsminor
.
yy148
=
yymsp
[
-
1
].
minor
.
yy148
;
yylhsminor
.
yy148
.
walLevel
=
strtol
(
yymsp
[
0
].
minor
.
yy0
.
z
,
NULL
,
10
);
}
yymsp
[
-
1
].
minor
.
yy148
=
yylhsminor
.
yy148
;
break
;
case
96
:
/* db_optr ::= db_optr fsync */
case
108
:
/* alter_db_optr ::= alter_db_optr fsync */
yytestcase
(
yyruleno
==
108
);
{
yylhsminor
.
yy148
=
yymsp
[
-
1
].
minor
.
yy148
;
yylhsminor
.
yy148
.
fsyncPeriod
=
strtol
(
yymsp
[
0
].
minor
.
yy0
.
z
,
NULL
,
10
);
}
yymsp
[
-
1
].
minor
.
yy148
=
yylhsminor
.
yy148
;
break
;
case
97
:
/* db_optr ::= db_optr comp */
case
106
:
/* alter_db_optr ::= alter_db_optr comp */
yytestcase
(
yyruleno
==
106
);
{
yylhsminor
.
yy148
=
yymsp
[
-
1
].
minor
.
yy148
;
yylhsminor
.
yy148
.
compressionLevel
=
strtol
(
yymsp
[
0
].
minor
.
yy0
.
z
,
NULL
,
10
);
}
yymsp
[
-
1
].
minor
.
yy148
=
yylhsminor
.
yy148
;
break
;
case
98
:
/* db_optr ::= db_optr prec */
{
yylhsminor
.
yy148
=
yymsp
[
-
1
].
minor
.
yy148
;
yylhsminor
.
yy148
.
precision
=
yymsp
[
0
].
minor
.
yy0
;
}
yymsp
[
-
1
].
minor
.
yy148
=
yylhsminor
.
yy148
;
break
;
case
99
:
/* db_optr ::= db_optr keep */
case
104
:
/* alter_db_optr ::= alter_db_optr keep */
yytestcase
(
yyruleno
==
104
);
{
yylhsminor
.
yy148
=
yymsp
[
-
1
].
minor
.
yy148
;
yylhsminor
.
yy148
.
keep
=
yymsp
[
0
].
minor
.
yy131
;
}
yymsp
[
-
1
].
minor
.
yy148
=
yylhsminor
.
yy148
;
break
;
case
100
:
/* db_optr ::= db_optr update */
case
109
:
/* alter_db_optr ::= alter_db_optr update */
yytestcase
(
yyruleno
==
109
);
{
yylhsminor
.
yy148
=
yymsp
[
-
1
].
minor
.
yy148
;
yylhsminor
.
yy148
.
update
=
strtol
(
yymsp
[
0
].
minor
.
yy0
.
z
,
NULL
,
10
);
}
yymsp
[
-
1
].
minor
.
yy148
=
yylhsminor
.
yy148
;
break
;
case
101
:
/* alter_db_optr ::= */
{
setDefaultCreateDbOption
(
&
yymsp
[
1
].
minor
.
yy148
);}
break
;
case
110
:
/* typename ::= ids */
case
87
:
/* db_optr ::= */
{
setDefaultCreateDbOption
(
&
yymsp
[
1
].
minor
.
yy478
);}
break
;
case
88
:
/* db_optr ::= db_optr cache */
{
yylhsminor
.
yy478
=
yymsp
[
-
1
].
minor
.
yy478
;
yylhsminor
.
yy478
.
cacheBlockSize
=
strtol
(
yymsp
[
0
].
minor
.
yy0
.
z
,
NULL
,
10
);
}
yymsp
[
-
1
].
minor
.
yy478
=
yylhsminor
.
yy478
;
break
;
case
89
:
/* db_optr ::= db_optr replica */
case
104
:
/* alter_db_optr ::= alter_db_optr replica */
yytestcase
(
yyruleno
==
104
);
{
yylhsminor
.
yy478
=
yymsp
[
-
1
].
minor
.
yy478
;
yylhsminor
.
yy478
.
replica
=
strtol
(
yymsp
[
0
].
minor
.
yy0
.
z
,
NULL
,
10
);
}
yymsp
[
-
1
].
minor
.
yy478
=
yylhsminor
.
yy478
;
break
;
case
90
:
/* db_optr ::= db_optr quorum */
case
105
:
/* alter_db_optr ::= alter_db_optr quorum */
yytestcase
(
yyruleno
==
105
);
{
yylhsminor
.
yy478
=
yymsp
[
-
1
].
minor
.
yy478
;
yylhsminor
.
yy478
.
quorum
=
strtol
(
yymsp
[
0
].
minor
.
yy0
.
z
,
NULL
,
10
);
}
yymsp
[
-
1
].
minor
.
yy478
=
yylhsminor
.
yy478
;
break
;
case
91
:
/* db_optr ::= db_optr days */
{
yylhsminor
.
yy478
=
yymsp
[
-
1
].
minor
.
yy478
;
yylhsminor
.
yy478
.
daysPerFile
=
strtol
(
yymsp
[
0
].
minor
.
yy0
.
z
,
NULL
,
10
);
}
yymsp
[
-
1
].
minor
.
yy478
=
yylhsminor
.
yy478
;
break
;
case
92
:
/* db_optr ::= db_optr minrows */
{
yylhsminor
.
yy478
=
yymsp
[
-
1
].
minor
.
yy478
;
yylhsminor
.
yy478
.
minRowsPerBlock
=
strtod
(
yymsp
[
0
].
minor
.
yy0
.
z
,
NULL
);
}
yymsp
[
-
1
].
minor
.
yy478
=
yylhsminor
.
yy478
;
break
;
case
93
:
/* db_optr ::= db_optr maxrows */
{
yylhsminor
.
yy478
=
yymsp
[
-
1
].
minor
.
yy478
;
yylhsminor
.
yy478
.
maxRowsPerBlock
=
strtod
(
yymsp
[
0
].
minor
.
yy0
.
z
,
NULL
);
}
yymsp
[
-
1
].
minor
.
yy478
=
yylhsminor
.
yy478
;
break
;
case
94
:
/* db_optr ::= db_optr blocks */
case
107
:
/* alter_db_optr ::= alter_db_optr blocks */
yytestcase
(
yyruleno
==
107
);
{
yylhsminor
.
yy478
=
yymsp
[
-
1
].
minor
.
yy478
;
yylhsminor
.
yy478
.
numOfBlocks
=
strtol
(
yymsp
[
0
].
minor
.
yy0
.
z
,
NULL
,
10
);
}
yymsp
[
-
1
].
minor
.
yy478
=
yylhsminor
.
yy478
;
break
;
case
95
:
/* db_optr ::= db_optr ctime */
{
yylhsminor
.
yy478
=
yymsp
[
-
1
].
minor
.
yy478
;
yylhsminor
.
yy478
.
commitTime
=
strtol
(
yymsp
[
0
].
minor
.
yy0
.
z
,
NULL
,
10
);
}
yymsp
[
-
1
].
minor
.
yy478
=
yylhsminor
.
yy478
;
break
;
case
96
:
/* db_optr ::= db_optr wal */
case
109
:
/* alter_db_optr ::= alter_db_optr wal */
yytestcase
(
yyruleno
==
109
);
{
yylhsminor
.
yy478
=
yymsp
[
-
1
].
minor
.
yy478
;
yylhsminor
.
yy478
.
walLevel
=
strtol
(
yymsp
[
0
].
minor
.
yy0
.
z
,
NULL
,
10
);
}
yymsp
[
-
1
].
minor
.
yy478
=
yylhsminor
.
yy478
;
break
;
case
97
:
/* db_optr ::= db_optr fsync */
case
110
:
/* alter_db_optr ::= alter_db_optr fsync */
yytestcase
(
yyruleno
==
110
);
{
yylhsminor
.
yy478
=
yymsp
[
-
1
].
minor
.
yy478
;
yylhsminor
.
yy478
.
fsyncPeriod
=
strtol
(
yymsp
[
0
].
minor
.
yy0
.
z
,
NULL
,
10
);
}
yymsp
[
-
1
].
minor
.
yy478
=
yylhsminor
.
yy478
;
break
;
case
98
:
/* db_optr ::= db_optr comp */
case
108
:
/* alter_db_optr ::= alter_db_optr comp */
yytestcase
(
yyruleno
==
108
);
{
yylhsminor
.
yy478
=
yymsp
[
-
1
].
minor
.
yy478
;
yylhsminor
.
yy478
.
compressionLevel
=
strtol
(
yymsp
[
0
].
minor
.
yy0
.
z
,
NULL
,
10
);
}
yymsp
[
-
1
].
minor
.
yy478
=
yylhsminor
.
yy478
;
break
;
case
99
:
/* db_optr ::= db_optr prec */
{
yylhsminor
.
yy478
=
yymsp
[
-
1
].
minor
.
yy478
;
yylhsminor
.
yy478
.
precision
=
yymsp
[
0
].
minor
.
yy0
;
}
yymsp
[
-
1
].
minor
.
yy478
=
yylhsminor
.
yy478
;
break
;
case
100
:
/* db_optr ::= db_optr keep */
case
106
:
/* alter_db_optr ::= alter_db_optr keep */
yytestcase
(
yyruleno
==
106
);
{
yylhsminor
.
yy478
=
yymsp
[
-
1
].
minor
.
yy478
;
yylhsminor
.
yy478
.
keep
=
yymsp
[
0
].
minor
.
yy403
;
}
yymsp
[
-
1
].
minor
.
yy478
=
yylhsminor
.
yy478
;
break
;
case
101
:
/* db_optr ::= db_optr update */
case
111
:
/* alter_db_optr ::= alter_db_optr update */
yytestcase
(
yyruleno
==
111
);
{
yylhsminor
.
yy478
=
yymsp
[
-
1
].
minor
.
yy478
;
yylhsminor
.
yy478
.
update
=
strtol
(
yymsp
[
0
].
minor
.
yy0
.
z
,
NULL
,
10
);
}
yymsp
[
-
1
].
minor
.
yy478
=
yylhsminor
.
yy478
;
break
;
case
102
:
/* db_optr ::= db_optr cachelast */
case
112
:
/* alter_db_optr ::= alter_db_optr cachelast */
yytestcase
(
yyruleno
==
112
);
{
yylhsminor
.
yy478
=
yymsp
[
-
1
].
minor
.
yy478
;
yylhsminor
.
yy478
.
cachelast
=
strtol
(
yymsp
[
0
].
minor
.
yy0
.
z
,
NULL
,
10
);
}
yymsp
[
-
1
].
minor
.
yy478
=
yylhsminor
.
yy478
;
break
;
case
103
:
/* alter_db_optr ::= */
{
setDefaultCreateDbOption
(
&
yymsp
[
1
].
minor
.
yy478
);}
break
;
case
113
:
/* typename ::= ids */
{
yymsp
[
0
].
minor
.
yy0
.
type
=
0
;
tSqlSetColumnType
(
&
yylhsminor
.
yy1
63
,
&
yymsp
[
0
].
minor
.
yy0
);
tSqlSetColumnType
(
&
yylhsminor
.
yy3
63
,
&
yymsp
[
0
].
minor
.
yy0
);
}
yymsp
[
0
].
minor
.
yy
163
=
yylhsminor
.
yy1
63
;
yymsp
[
0
].
minor
.
yy
363
=
yylhsminor
.
yy3
63
;
break
;
case
11
1
:
/* typename ::= ids LP signed RP */
case
11
4
:
/* typename ::= ids LP signed RP */
{
if
(
yymsp
[
-
1
].
minor
.
yy
459
<=
0
)
{
if
(
yymsp
[
-
1
].
minor
.
yy
387
<=
0
)
{
yymsp
[
-
3
].
minor
.
yy0
.
type
=
0
;
tSqlSetColumnType
(
&
yylhsminor
.
yy
1
63
,
&
yymsp
[
-
3
].
minor
.
yy0
);
tSqlSetColumnType
(
&
yylhsminor
.
yy
3
63
,
&
yymsp
[
-
3
].
minor
.
yy0
);
}
else
{
yymsp
[
-
3
].
minor
.
yy0
.
type
=
-
yymsp
[
-
1
].
minor
.
yy
459
;
// negative value of name length
tSqlSetColumnType
(
&
yylhsminor
.
yy
1
63
,
&
yymsp
[
-
3
].
minor
.
yy0
);
yymsp
[
-
3
].
minor
.
yy0
.
type
=
-
yymsp
[
-
1
].
minor
.
yy
387
;
// negative value of name length
tSqlSetColumnType
(
&
yylhsminor
.
yy
3
63
,
&
yymsp
[
-
3
].
minor
.
yy0
);
}
}
yymsp
[
-
3
].
minor
.
yy
163
=
yylhsminor
.
yy1
63
;
yymsp
[
-
3
].
minor
.
yy
363
=
yylhsminor
.
yy3
63
;
break
;
case
11
2
:
/* signed ::= INTEGER */
{
yylhsminor
.
yy
459
=
strtol
(
yymsp
[
0
].
minor
.
yy0
.
z
,
NULL
,
10
);
}
yymsp
[
0
].
minor
.
yy
459
=
yylhsminor
.
yy459
;
case
11
5
:
/* signed ::= INTEGER */
{
yylhsminor
.
yy
387
=
strtol
(
yymsp
[
0
].
minor
.
yy0
.
z
,
NULL
,
10
);
}
yymsp
[
0
].
minor
.
yy
387
=
yylhsminor
.
yy387
;
break
;
case
11
3
:
/* signed ::= PLUS INTEGER */
{
yymsp
[
-
1
].
minor
.
yy
459
=
strtol
(
yymsp
[
0
].
minor
.
yy0
.
z
,
NULL
,
10
);
}
case
11
6
:
/* signed ::= PLUS INTEGER */
{
yymsp
[
-
1
].
minor
.
yy
387
=
strtol
(
yymsp
[
0
].
minor
.
yy0
.
z
,
NULL
,
10
);
}
break
;
case
11
4
:
/* signed ::= MINUS INTEGER */
{
yymsp
[
-
1
].
minor
.
yy
459
=
-
strtol
(
yymsp
[
0
].
minor
.
yy0
.
z
,
NULL
,
10
);}
case
11
7
:
/* signed ::= MINUS INTEGER */
{
yymsp
[
-
1
].
minor
.
yy
387
=
-
strtol
(
yymsp
[
0
].
minor
.
yy0
.
z
,
NULL
,
10
);}
break
;
case
11
6
:
/* cmd ::= CREATE TABLE create_table_list */
{
pInfo
->
type
=
TSDB_SQL_CREATE_TABLE
;
pInfo
->
pCreateTableInfo
=
yymsp
[
0
].
minor
.
yy
538
;}
case
11
9
:
/* cmd ::= CREATE TABLE create_table_list */
{
pInfo
->
type
=
TSDB_SQL_CREATE_TABLE
;
pInfo
->
pCreateTableInfo
=
yymsp
[
0
].
minor
.
yy
436
;}
break
;
case
1
17
:
/* create_table_list ::= create_from_stable */
case
1
20
:
/* create_table_list ::= create_from_stable */
{
SCreateTableSQL
*
pCreateTable
=
calloc
(
1
,
sizeof
(
SCreateTableSQL
));
pCreateTable
->
childTableInfo
=
taosArrayInit
(
4
,
sizeof
(
SCreatedTableInfo
));
taosArrayPush
(
pCreateTable
->
childTableInfo
,
&
yymsp
[
0
].
minor
.
yy
96
);
taosArrayPush
(
pCreateTable
->
childTableInfo
,
&
yymsp
[
0
].
minor
.
yy
84
);
pCreateTable
->
type
=
TSQL_CREATE_TABLE_FROM_STABLE
;
yylhsminor
.
yy
538
=
pCreateTable
;
yylhsminor
.
yy
436
=
pCreateTable
;
}
yymsp
[
0
].
minor
.
yy
538
=
yylhsminor
.
yy538
;
yymsp
[
0
].
minor
.
yy
436
=
yylhsminor
.
yy436
;
break
;
case
1
18
:
/* create_table_list ::= create_table_list create_from_stable */
case
1
21
:
/* create_table_list ::= create_table_list create_from_stable */
{
taosArrayPush
(
yymsp
[
-
1
].
minor
.
yy
538
->
childTableInfo
,
&
yymsp
[
0
].
minor
.
yy96
);
yylhsminor
.
yy
538
=
yymsp
[
-
1
].
minor
.
yy538
;
taosArrayPush
(
yymsp
[
-
1
].
minor
.
yy
436
->
childTableInfo
,
&
yymsp
[
0
].
minor
.
yy84
);
yylhsminor
.
yy
436
=
yymsp
[
-
1
].
minor
.
yy436
;
}
yymsp
[
-
1
].
minor
.
yy
538
=
yylhsminor
.
yy538
;
yymsp
[
-
1
].
minor
.
yy
436
=
yylhsminor
.
yy436
;
break
;
case
1
19
:
/* create_table_args ::= ifnotexists ids cpxName LP columnlist RP */
case
1
22
:
/* create_table_args ::= ifnotexists ids cpxName LP columnlist RP */
{
yylhsminor
.
yy
538
=
tSetCreateSqlElems
(
yymsp
[
-
1
].
minor
.
yy131
,
NULL
,
NULL
,
TSQL_CREATE_TABLE
);
setSqlInfo
(
pInfo
,
yylhsminor
.
yy
538
,
NULL
,
TSDB_SQL_CREATE_TABLE
);
yylhsminor
.
yy
436
=
tSetCreateSqlElems
(
yymsp
[
-
1
].
minor
.
yy403
,
NULL
,
NULL
,
TSQL_CREATE_TABLE
);
setSqlInfo
(
pInfo
,
yylhsminor
.
yy
436
,
NULL
,
TSDB_SQL_CREATE_TABLE
);
yymsp
[
-
4
].
minor
.
yy0
.
n
+=
yymsp
[
-
3
].
minor
.
yy0
.
n
;
setCreatedTableName
(
pInfo
,
&
yymsp
[
-
4
].
minor
.
yy0
,
&
yymsp
[
-
5
].
minor
.
yy0
);
}
yymsp
[
-
5
].
minor
.
yy
538
=
yylhsminor
.
yy538
;
yymsp
[
-
5
].
minor
.
yy
436
=
yylhsminor
.
yy436
;
break
;
case
12
0
:
/* create_table_args ::= ifnotexists ids cpxName LP columnlist RP TAGS LP columnlist RP */
case
12
3
:
/* create_table_args ::= ifnotexists ids cpxName LP columnlist RP TAGS LP columnlist RP */
{
yylhsminor
.
yy
538
=
tSetCreateSqlElems
(
yymsp
[
-
5
].
minor
.
yy131
,
yymsp
[
-
1
].
minor
.
yy131
,
NULL
,
TSQL_CREATE_STABLE
);
setSqlInfo
(
pInfo
,
yylhsminor
.
yy
538
,
NULL
,
TSDB_SQL_CREATE_TABLE
);
yylhsminor
.
yy
436
=
tSetCreateSqlElems
(
yymsp
[
-
5
].
minor
.
yy403
,
yymsp
[
-
1
].
minor
.
yy403
,
NULL
,
TSQL_CREATE_STABLE
);
setSqlInfo
(
pInfo
,
yylhsminor
.
yy
436
,
NULL
,
TSDB_SQL_CREATE_TABLE
);
yymsp
[
-
8
].
minor
.
yy0
.
n
+=
yymsp
[
-
7
].
minor
.
yy0
.
n
;
setCreatedTableName
(
pInfo
,
&
yymsp
[
-
8
].
minor
.
yy0
,
&
yymsp
[
-
9
].
minor
.
yy0
);
}
yymsp
[
-
9
].
minor
.
yy
538
=
yylhsminor
.
yy538
;
yymsp
[
-
9
].
minor
.
yy
436
=
yylhsminor
.
yy436
;
break
;
case
12
1
:
/* create_from_stable ::= ifnotexists ids cpxName USING ids cpxName TAGS LP tagitemlist RP */
case
12
4
:
/* create_from_stable ::= ifnotexists ids cpxName USING ids cpxName TAGS LP tagitemlist RP */
{
yymsp
[
-
5
].
minor
.
yy0
.
n
+=
yymsp
[
-
4
].
minor
.
yy0
.
n
;
yymsp
[
-
8
].
minor
.
yy0
.
n
+=
yymsp
[
-
7
].
minor
.
yy0
.
n
;
yylhsminor
.
yy
96
=
createNewChildTableInfo
(
&
yymsp
[
-
5
].
minor
.
yy0
,
yymsp
[
-
1
].
minor
.
yy131
,
&
yymsp
[
-
8
].
minor
.
yy0
,
&
yymsp
[
-
9
].
minor
.
yy0
);
yylhsminor
.
yy
84
=
createNewChildTableInfo
(
&
yymsp
[
-
5
].
minor
.
yy0
,
yymsp
[
-
1
].
minor
.
yy403
,
&
yymsp
[
-
8
].
minor
.
yy0
,
&
yymsp
[
-
9
].
minor
.
yy0
);
}
yymsp
[
-
9
].
minor
.
yy
96
=
yylhsminor
.
yy96
;
yymsp
[
-
9
].
minor
.
yy
84
=
yylhsminor
.
yy84
;
break
;
case
12
2
:
/* create_table_args ::= ifnotexists ids cpxName AS select */
case
12
5
:
/* create_table_args ::= ifnotexists ids cpxName AS select */
{
yylhsminor
.
yy
538
=
tSetCreateSqlElems
(
NULL
,
NULL
,
yymsp
[
0
].
minor
.
yy8
4
,
TSQL_CREATE_STREAM
);
setSqlInfo
(
pInfo
,
yylhsminor
.
yy
538
,
NULL
,
TSDB_SQL_CREATE_TABLE
);
yylhsminor
.
yy
436
=
tSetCreateSqlElems
(
NULL
,
NULL
,
yymsp
[
0
].
minor
.
yy
4
,
TSQL_CREATE_STREAM
);
setSqlInfo
(
pInfo
,
yylhsminor
.
yy
436
,
NULL
,
TSDB_SQL_CREATE_TABLE
);
yymsp
[
-
3
].
minor
.
yy0
.
n
+=
yymsp
[
-
2
].
minor
.
yy0
.
n
;
setCreatedTableName
(
pInfo
,
&
yymsp
[
-
3
].
minor
.
yy0
,
&
yymsp
[
-
4
].
minor
.
yy0
);
}
yymsp
[
-
4
].
minor
.
yy
538
=
yylhsminor
.
yy538
;
yymsp
[
-
4
].
minor
.
yy
436
=
yylhsminor
.
yy436
;
break
;
case
12
3
:
/* columnlist ::= columnlist COMMA column */
{
taosArrayPush
(
yymsp
[
-
2
].
minor
.
yy
131
,
&
yymsp
[
0
].
minor
.
yy163
);
yylhsminor
.
yy131
=
yymsp
[
-
2
].
minor
.
yy131
;
}
yymsp
[
-
2
].
minor
.
yy
131
=
yylhsminor
.
yy131
;
case
12
6
:
/* columnlist ::= columnlist COMMA column */
{
taosArrayPush
(
yymsp
[
-
2
].
minor
.
yy
403
,
&
yymsp
[
0
].
minor
.
yy363
);
yylhsminor
.
yy403
=
yymsp
[
-
2
].
minor
.
yy403
;
}
yymsp
[
-
2
].
minor
.
yy
403
=
yylhsminor
.
yy403
;
break
;
case
12
4
:
/* columnlist ::= column */
{
yylhsminor
.
yy
131
=
taosArrayInit
(
4
,
sizeof
(
TAOS_FIELD
));
taosArrayPush
(
yylhsminor
.
yy131
,
&
yymsp
[
0
].
minor
.
yy1
63
);}
yymsp
[
0
].
minor
.
yy
131
=
yylhsminor
.
yy131
;
case
12
7
:
/* columnlist ::= column */
{
yylhsminor
.
yy
403
=
taosArrayInit
(
4
,
sizeof
(
TAOS_FIELD
));
taosArrayPush
(
yylhsminor
.
yy403
,
&
yymsp
[
0
].
minor
.
yy3
63
);}
yymsp
[
0
].
minor
.
yy
403
=
yylhsminor
.
yy403
;
break
;
case
12
5
:
/* column ::= ids typename */
case
12
8
:
/* column ::= ids typename */
{
tSqlSetColumnInfo
(
&
yylhsminor
.
yy163
,
&
yymsp
[
-
1
].
minor
.
yy0
,
&
yymsp
[
0
].
minor
.
yy1
63
);
tSqlSetColumnInfo
(
&
yylhsminor
.
yy363
,
&
yymsp
[
-
1
].
minor
.
yy0
,
&
yymsp
[
0
].
minor
.
yy3
63
);
}
yymsp
[
-
1
].
minor
.
yy
163
=
yylhsminor
.
yy1
63
;
yymsp
[
-
1
].
minor
.
yy
363
=
yylhsminor
.
yy3
63
;
break
;
case
12
6
:
/* tagitemlist ::= tagitemlist COMMA tagitem */
{
yylhsminor
.
yy
131
=
tVariantListAppend
(
yymsp
[
-
2
].
minor
.
yy131
,
&
yymsp
[
0
].
minor
.
yy516
,
-
1
);
}
yymsp
[
-
2
].
minor
.
yy
131
=
yylhsminor
.
yy131
;
case
12
9
:
/* tagitemlist ::= tagitemlist COMMA tagitem */
{
yylhsminor
.
yy
403
=
tVariantListAppend
(
yymsp
[
-
2
].
minor
.
yy403
,
&
yymsp
[
0
].
minor
.
yy488
,
-
1
);
}
yymsp
[
-
2
].
minor
.
yy
403
=
yylhsminor
.
yy403
;
break
;
case
1
27
:
/* tagitemlist ::= tagitem */
{
yylhsminor
.
yy
131
=
tVariantListAppend
(
NULL
,
&
yymsp
[
0
].
minor
.
yy516
,
-
1
);
}
yymsp
[
0
].
minor
.
yy
131
=
yylhsminor
.
yy131
;
case
1
30
:
/* tagitemlist ::= tagitem */
{
yylhsminor
.
yy
403
=
tVariantListAppend
(
NULL
,
&
yymsp
[
0
].
minor
.
yy488
,
-
1
);
}
yymsp
[
0
].
minor
.
yy
403
=
yylhsminor
.
yy403
;
break
;
case
1
28
:
/* tagitem ::= INTEGER */
case
1
29
:
/* tagitem ::= FLOAT */
yytestcase
(
yyruleno
==
129
);
case
13
0
:
/* tagitem ::= STRING */
yytestcase
(
yyruleno
==
130
);
case
13
1
:
/* tagitem ::= BOOL */
yytestcase
(
yyruleno
==
131
);
{
toTSDBType
(
yymsp
[
0
].
minor
.
yy0
.
type
);
tVariantCreate
(
&
yylhsminor
.
yy
516
,
&
yymsp
[
0
].
minor
.
yy0
);
}
yymsp
[
0
].
minor
.
yy
516
=
yylhsminor
.
yy516
;
case
1
31
:
/* tagitem ::= INTEGER */
case
1
32
:
/* tagitem ::= FLOAT */
yytestcase
(
yyruleno
==
132
);
case
13
3
:
/* tagitem ::= STRING */
yytestcase
(
yyruleno
==
133
);
case
13
4
:
/* tagitem ::= BOOL */
yytestcase
(
yyruleno
==
134
);
{
toTSDBType
(
yymsp
[
0
].
minor
.
yy0
.
type
);
tVariantCreate
(
&
yylhsminor
.
yy
488
,
&
yymsp
[
0
].
minor
.
yy0
);
}
yymsp
[
0
].
minor
.
yy
488
=
yylhsminor
.
yy488
;
break
;
case
13
2
:
/* tagitem ::= NULL */
{
yymsp
[
0
].
minor
.
yy0
.
type
=
0
;
tVariantCreate
(
&
yylhsminor
.
yy
516
,
&
yymsp
[
0
].
minor
.
yy0
);
}
yymsp
[
0
].
minor
.
yy
516
=
yylhsminor
.
yy516
;
case
13
5
:
/* tagitem ::= NULL */
{
yymsp
[
0
].
minor
.
yy0
.
type
=
0
;
tVariantCreate
(
&
yylhsminor
.
yy
488
,
&
yymsp
[
0
].
minor
.
yy0
);
}
yymsp
[
0
].
minor
.
yy
488
=
yylhsminor
.
yy488
;
break
;
case
13
3
:
/* tagitem ::= MINUS INTEGER */
case
13
4
:
/* tagitem ::= MINUS FLOAT */
yytestcase
(
yyruleno
==
134
);
case
13
5
:
/* tagitem ::= PLUS INTEGER */
yytestcase
(
yyruleno
==
135
);
case
13
6
:
/* tagitem ::= PLUS FLOAT */
yytestcase
(
yyruleno
==
136
);
case
13
6
:
/* tagitem ::= MINUS INTEGER */
case
13
7
:
/* tagitem ::= MINUS FLOAT */
yytestcase
(
yyruleno
==
137
);
case
13
8
:
/* tagitem ::= PLUS INTEGER */
yytestcase
(
yyruleno
==
138
);
case
13
9
:
/* tagitem ::= PLUS FLOAT */
yytestcase
(
yyruleno
==
139
);
{
yymsp
[
-
1
].
minor
.
yy0
.
n
+=
yymsp
[
0
].
minor
.
yy0
.
n
;
yymsp
[
-
1
].
minor
.
yy0
.
type
=
yymsp
[
0
].
minor
.
yy0
.
type
;
toTSDBType
(
yymsp
[
-
1
].
minor
.
yy0
.
type
);
tVariantCreate
(
&
yylhsminor
.
yy
516
,
&
yymsp
[
-
1
].
minor
.
yy0
);
tVariantCreate
(
&
yylhsminor
.
yy
488
,
&
yymsp
[
-
1
].
minor
.
yy0
);
}
yymsp
[
-
1
].
minor
.
yy
516
=
yylhsminor
.
yy516
;
yymsp
[
-
1
].
minor
.
yy
488
=
yylhsminor
.
yy488
;
break
;
case
1
37
:
/* select ::= SELECT selcollist from where_opt interval_opt fill_opt sliding_opt groupby_opt orderby_opt having_opt slimit_opt limit_opt */
case
1
40
:
/* select ::= SELECT selcollist from where_opt interval_opt fill_opt sliding_opt groupby_opt orderby_opt having_opt slimit_opt limit_opt */
{
yylhsminor
.
yy84
=
tSetQuerySqlElems
(
&
yymsp
[
-
11
].
minor
.
yy0
,
yymsp
[
-
10
].
minor
.
yy478
,
yymsp
[
-
9
].
minor
.
yy131
,
yymsp
[
-
8
].
minor
.
yy420
,
yymsp
[
-
4
].
minor
.
yy131
,
yymsp
[
-
3
].
minor
.
yy131
,
&
yymsp
[
-
7
].
minor
.
yy530
,
&
yymsp
[
-
5
].
minor
.
yy0
,
yymsp
[
-
6
].
minor
.
yy131
,
&
yymsp
[
0
].
minor
.
yy284
,
&
yymsp
[
-
1
].
minor
.
yy284
);
yylhsminor
.
yy4
=
tSetQuerySqlElems
(
&
yymsp
[
-
11
].
minor
.
yy0
,
yymsp
[
-
10
].
minor
.
yy382
,
yymsp
[
-
9
].
minor
.
yy403
,
yymsp
[
-
8
].
minor
.
yy522
,
yymsp
[
-
4
].
minor
.
yy403
,
yymsp
[
-
3
].
minor
.
yy403
,
&
yymsp
[
-
7
].
minor
.
yy222
,
&
yymsp
[
-
5
].
minor
.
yy0
,
yymsp
[
-
6
].
minor
.
yy403
,
&
yymsp
[
0
].
minor
.
yy404
,
&
yymsp
[
-
1
].
minor
.
yy404
);
}
yymsp
[
-
11
].
minor
.
yy
84
=
yylhsminor
.
yy8
4
;
yymsp
[
-
11
].
minor
.
yy
4
=
yylhsminor
.
yy
4
;
break
;
case
1
38
:
/* union ::= select */
{
yylhsminor
.
yy
513
=
setSubclause
(
NULL
,
yymsp
[
0
].
minor
.
yy8
4
);
}
yymsp
[
0
].
minor
.
yy
513
=
yylhsminor
.
yy5
13
;
case
1
41
:
/* union ::= select */
{
yylhsminor
.
yy
13
=
setSubclause
(
NULL
,
yymsp
[
0
].
minor
.
yy
4
);
}
yymsp
[
0
].
minor
.
yy
13
=
yylhsminor
.
yy
13
;
break
;
case
1
39
:
/* union ::= LP union RP */
{
yymsp
[
-
2
].
minor
.
yy
513
=
yymsp
[
-
1
].
minor
.
yy5
13
;
}
case
1
42
:
/* union ::= LP union RP */
{
yymsp
[
-
2
].
minor
.
yy
13
=
yymsp
[
-
1
].
minor
.
yy
13
;
}
break
;
case
14
0
:
/* union ::= union UNION ALL select */
{
yylhsminor
.
yy
513
=
appendSelectClause
(
yymsp
[
-
3
].
minor
.
yy513
,
yymsp
[
0
].
minor
.
yy8
4
);
}
yymsp
[
-
3
].
minor
.
yy
513
=
yylhsminor
.
yy5
13
;
case
14
3
:
/* union ::= union UNION ALL select */
{
yylhsminor
.
yy
13
=
appendSelectClause
(
yymsp
[
-
3
].
minor
.
yy13
,
yymsp
[
0
].
minor
.
yy
4
);
}
yymsp
[
-
3
].
minor
.
yy
13
=
yylhsminor
.
yy
13
;
break
;
case
14
1
:
/* union ::= union UNION ALL LP select RP */
{
yylhsminor
.
yy
513
=
appendSelectClause
(
yymsp
[
-
5
].
minor
.
yy513
,
yymsp
[
-
1
].
minor
.
yy8
4
);
}
yymsp
[
-
5
].
minor
.
yy
513
=
yylhsminor
.
yy5
13
;
case
14
4
:
/* union ::= union UNION ALL LP select RP */
{
yylhsminor
.
yy
13
=
appendSelectClause
(
yymsp
[
-
5
].
minor
.
yy13
,
yymsp
[
-
1
].
minor
.
yy
4
);
}
yymsp
[
-
5
].
minor
.
yy
13
=
yylhsminor
.
yy
13
;
break
;
case
142
:
/* cmd ::= union */
{
setSqlInfo
(
pInfo
,
yymsp
[
0
].
minor
.
yy513
,
NULL
,
TSDB_SQL_SELECT
);
}
case
145
:
/* cmd ::= union */
{
setSqlInfo
(
pInfo
,
yymsp
[
0
].
minor
.
yy13
,
NULL
,
TSDB_SQL_SELECT
);
}
break
;
case
14
3
:
/* select ::= SELECT selcollist */
case
14
6
:
/* select ::= SELECT selcollist */
{
yylhsminor
.
yy84
=
tSetQuerySqlElems
(
&
yymsp
[
-
1
].
minor
.
yy0
,
yymsp
[
0
].
minor
.
yy478
,
NULL
,
NULL
,
NULL
,
NULL
,
NULL
,
NULL
,
NULL
,
NULL
,
NULL
);
yylhsminor
.
yy4
=
tSetQuerySqlElems
(
&
yymsp
[
-
1
].
minor
.
yy0
,
yymsp
[
0
].
minor
.
yy382
,
NULL
,
NULL
,
NULL
,
NULL
,
NULL
,
NULL
,
NULL
,
NULL
,
NULL
);
}
yymsp
[
-
1
].
minor
.
yy
84
=
yylhsminor
.
yy8
4
;
yymsp
[
-
1
].
minor
.
yy
4
=
yylhsminor
.
yy
4
;
break
;
case
14
4
:
/* sclp ::= selcollist COMMA */
{
yylhsminor
.
yy
478
=
yymsp
[
-
1
].
minor
.
yy478
;}
yymsp
[
-
1
].
minor
.
yy
478
=
yylhsminor
.
yy478
;
case
14
7
:
/* sclp ::= selcollist COMMA */
{
yylhsminor
.
yy
382
=
yymsp
[
-
1
].
minor
.
yy382
;}
yymsp
[
-
1
].
minor
.
yy
382
=
yylhsminor
.
yy382
;
break
;
case
14
5
:
/* sclp ::= */
{
yymsp
[
1
].
minor
.
yy
478
=
0
;}
case
14
8
:
/* sclp ::= */
{
yymsp
[
1
].
minor
.
yy
382
=
0
;}
break
;
case
14
6
:
/* selcollist ::= sclp expr as */
case
14
9
:
/* selcollist ::= sclp expr as */
{
yylhsminor
.
yy478
=
tSqlExprListAppend
(
yymsp
[
-
2
].
minor
.
yy478
,
yymsp
[
-
1
].
minor
.
yy420
,
yymsp
[
0
].
minor
.
yy0
.
n
?
&
yymsp
[
0
].
minor
.
yy0
:
0
);
yylhsminor
.
yy382
=
tSqlExprListAppend
(
yymsp
[
-
2
].
minor
.
yy382
,
yymsp
[
-
1
].
minor
.
yy522
,
yymsp
[
0
].
minor
.
yy0
.
n
?&
yymsp
[
0
].
minor
.
yy0
:
0
);
}
yymsp
[
-
2
].
minor
.
yy
478
=
yylhsminor
.
yy478
;
yymsp
[
-
2
].
minor
.
yy
382
=
yylhsminor
.
yy382
;
break
;
case
1
47
:
/* selcollist ::= sclp STAR */
case
1
50
:
/* selcollist ::= sclp STAR */
{
tSQLExpr
*
pNode
=
tSqlExprIdValueCreate
(
NULL
,
TK_ALL
);
yylhsminor
.
yy
478
=
tSqlExprListAppend
(
yymsp
[
-
1
].
minor
.
yy478
,
pNode
,
0
);
yylhsminor
.
yy
382
=
tSqlExprListAppend
(
yymsp
[
-
1
].
minor
.
yy382
,
pNode
,
0
);
}
yymsp
[
-
1
].
minor
.
yy
478
=
yylhsminor
.
yy478
;
yymsp
[
-
1
].
minor
.
yy
382
=
yylhsminor
.
yy382
;
break
;
case
1
48
:
/* as ::= AS ids */
case
1
51
:
/* as ::= AS ids */
{
yymsp
[
-
1
].
minor
.
yy0
=
yymsp
[
0
].
minor
.
yy0
;
}
break
;
case
1
49
:
/* as ::= ids */
case
1
52
:
/* as ::= ids */
{
yylhsminor
.
yy0
=
yymsp
[
0
].
minor
.
yy0
;
}
yymsp
[
0
].
minor
.
yy0
=
yylhsminor
.
yy0
;
break
;
case
15
0
:
/* as ::= */
case
15
3
:
/* as ::= */
{
yymsp
[
1
].
minor
.
yy0
.
n
=
0
;
}
break
;
case
15
1
:
/* from ::= FROM tablelist */
{
yymsp
[
-
1
].
minor
.
yy
131
=
yymsp
[
0
].
minor
.
yy131
;}
case
15
4
:
/* from ::= FROM tablelist */
{
yymsp
[
-
1
].
minor
.
yy
403
=
yymsp
[
0
].
minor
.
yy403
;}
break
;
case
15
2
:
/* tablelist ::= ids cpxName */
case
15
5
:
/* tablelist ::= ids cpxName */
{
toTSDBType
(
yymsp
[
-
1
].
minor
.
yy0
.
type
);
yymsp
[
-
1
].
minor
.
yy0
.
n
+=
yymsp
[
0
].
minor
.
yy0
.
n
;
yylhsminor
.
yy
131
=
tVariantListAppendToken
(
NULL
,
&
yymsp
[
-
1
].
minor
.
yy0
,
-
1
);
yylhsminor
.
yy
131
=
tVariantListAppendToken
(
yylhsminor
.
yy131
,
&
yymsp
[
-
1
].
minor
.
yy0
,
-
1
);
// table alias name
yylhsminor
.
yy
403
=
tVariantListAppendToken
(
NULL
,
&
yymsp
[
-
1
].
minor
.
yy0
,
-
1
);
yylhsminor
.
yy
403
=
tVariantListAppendToken
(
yylhsminor
.
yy403
,
&
yymsp
[
-
1
].
minor
.
yy0
,
-
1
);
// table alias name
}
yymsp
[
-
1
].
minor
.
yy
131
=
yylhsminor
.
yy131
;
yymsp
[
-
1
].
minor
.
yy
403
=
yylhsminor
.
yy403
;
break
;
case
15
3
:
/* tablelist ::= ids cpxName ids */
case
15
6
:
/* tablelist ::= ids cpxName ids */
{
toTSDBType
(
yymsp
[
-
2
].
minor
.
yy0
.
type
);
toTSDBType
(
yymsp
[
0
].
minor
.
yy0
.
type
);
yymsp
[
-
2
].
minor
.
yy0
.
n
+=
yymsp
[
-
1
].
minor
.
yy0
.
n
;
yylhsminor
.
yy
131
=
tVariantListAppendToken
(
NULL
,
&
yymsp
[
-
2
].
minor
.
yy0
,
-
1
);
yylhsminor
.
yy
131
=
tVariantListAppendToken
(
yylhsminor
.
yy131
,
&
yymsp
[
0
].
minor
.
yy0
,
-
1
);
yylhsminor
.
yy
403
=
tVariantListAppendToken
(
NULL
,
&
yymsp
[
-
2
].
minor
.
yy0
,
-
1
);
yylhsminor
.
yy
403
=
tVariantListAppendToken
(
yylhsminor
.
yy403
,
&
yymsp
[
0
].
minor
.
yy0
,
-
1
);
}
yymsp
[
-
2
].
minor
.
yy
131
=
yylhsminor
.
yy131
;
yymsp
[
-
2
].
minor
.
yy
403
=
yylhsminor
.
yy403
;
break
;
case
15
4
:
/* tablelist ::= tablelist COMMA ids cpxName */
case
15
7
:
/* tablelist ::= tablelist COMMA ids cpxName */
{
toTSDBType
(
yymsp
[
-
1
].
minor
.
yy0
.
type
);
yymsp
[
-
1
].
minor
.
yy0
.
n
+=
yymsp
[
0
].
minor
.
yy0
.
n
;
yylhsminor
.
yy
131
=
tVariantListAppendToken
(
yymsp
[
-
3
].
minor
.
yy131
,
&
yymsp
[
-
1
].
minor
.
yy0
,
-
1
);
yylhsminor
.
yy
131
=
tVariantListAppendToken
(
yylhsminor
.
yy131
,
&
yymsp
[
-
1
].
minor
.
yy0
,
-
1
);
yylhsminor
.
yy
403
=
tVariantListAppendToken
(
yymsp
[
-
3
].
minor
.
yy403
,
&
yymsp
[
-
1
].
minor
.
yy0
,
-
1
);
yylhsminor
.
yy
403
=
tVariantListAppendToken
(
yylhsminor
.
yy403
,
&
yymsp
[
-
1
].
minor
.
yy0
,
-
1
);
}
yymsp
[
-
3
].
minor
.
yy
131
=
yylhsminor
.
yy131
;
yymsp
[
-
3
].
minor
.
yy
403
=
yylhsminor
.
yy403
;
break
;
case
15
5
:
/* tablelist ::= tablelist COMMA ids cpxName ids */
case
15
8
:
/* tablelist ::= tablelist COMMA ids cpxName ids */
{
toTSDBType
(
yymsp
[
-
2
].
minor
.
yy0
.
type
);
toTSDBType
(
yymsp
[
0
].
minor
.
yy0
.
type
);
yymsp
[
-
2
].
minor
.
yy0
.
n
+=
yymsp
[
-
1
].
minor
.
yy0
.
n
;
yylhsminor
.
yy
131
=
tVariantListAppendToken
(
yymsp
[
-
4
].
minor
.
yy131
,
&
yymsp
[
-
2
].
minor
.
yy0
,
-
1
);
yylhsminor
.
yy
131
=
tVariantListAppendToken
(
yylhsminor
.
yy131
,
&
yymsp
[
0
].
minor
.
yy0
,
-
1
);
yylhsminor
.
yy
403
=
tVariantListAppendToken
(
yymsp
[
-
4
].
minor
.
yy403
,
&
yymsp
[
-
2
].
minor
.
yy0
,
-
1
);
yylhsminor
.
yy
403
=
tVariantListAppendToken
(
yylhsminor
.
yy403
,
&
yymsp
[
0
].
minor
.
yy0
,
-
1
);
}
yymsp
[
-
4
].
minor
.
yy
131
=
yylhsminor
.
yy131
;
yymsp
[
-
4
].
minor
.
yy
403
=
yylhsminor
.
yy403
;
break
;
case
15
6
:
/* tmvar ::= VARIABLE */
case
15
9
:
/* tmvar ::= VARIABLE */
{
yylhsminor
.
yy0
=
yymsp
[
0
].
minor
.
yy0
;}
yymsp
[
0
].
minor
.
yy0
=
yylhsminor
.
yy0
;
break
;
case
1
57
:
/* interval_opt ::= INTERVAL LP tmvar RP */
{
yymsp
[
-
3
].
minor
.
yy
530
.
interval
=
yymsp
[
-
1
].
minor
.
yy0
;
yymsp
[
-
3
].
minor
.
yy530
.
offset
.
n
=
0
;
yymsp
[
-
3
].
minor
.
yy530
.
offset
.
z
=
NULL
;
yymsp
[
-
3
].
minor
.
yy530
.
offset
.
type
=
0
;}
case
1
60
:
/* interval_opt ::= INTERVAL LP tmvar RP */
{
yymsp
[
-
3
].
minor
.
yy
222
.
interval
=
yymsp
[
-
1
].
minor
.
yy0
;
yymsp
[
-
3
].
minor
.
yy222
.
offset
.
n
=
0
;
yymsp
[
-
3
].
minor
.
yy222
.
offset
.
z
=
NULL
;
yymsp
[
-
3
].
minor
.
yy222
.
offset
.
type
=
0
;}
break
;
case
1
58
:
/* interval_opt ::= INTERVAL LP tmvar COMMA tmvar RP */
{
yymsp
[
-
5
].
minor
.
yy
530
.
interval
=
yymsp
[
-
3
].
minor
.
yy0
;
yymsp
[
-
5
].
minor
.
yy530
.
offset
=
yymsp
[
-
1
].
minor
.
yy0
;}
case
1
61
:
/* interval_opt ::= INTERVAL LP tmvar COMMA tmvar RP */
{
yymsp
[
-
5
].
minor
.
yy
222
.
interval
=
yymsp
[
-
3
].
minor
.
yy0
;
yymsp
[
-
5
].
minor
.
yy222
.
offset
=
yymsp
[
-
1
].
minor
.
yy0
;}
break
;
case
1
59
:
/* interval_opt ::= */
{
memset
(
&
yymsp
[
1
].
minor
.
yy
530
,
0
,
sizeof
(
yymsp
[
1
].
minor
.
yy530
));}
case
1
62
:
/* interval_opt ::= */
{
memset
(
&
yymsp
[
1
].
minor
.
yy
222
,
0
,
sizeof
(
yymsp
[
1
].
minor
.
yy222
));}
break
;
case
16
0
:
/* fill_opt ::= */
{
yymsp
[
1
].
minor
.
yy
131
=
0
;
}
case
16
3
:
/* fill_opt ::= */
{
yymsp
[
1
].
minor
.
yy
403
=
0
;
}
break
;
case
16
1
:
/* fill_opt ::= FILL LP ID COMMA tagitemlist RP */
case
16
4
:
/* fill_opt ::= FILL LP ID COMMA tagitemlist RP */
{
tVariant
A
=
{
0
};
toTSDBType
(
yymsp
[
-
3
].
minor
.
yy0
.
type
);
tVariantCreate
(
&
A
,
&
yymsp
[
-
3
].
minor
.
yy0
);
tVariantListInsert
(
yymsp
[
-
1
].
minor
.
yy
131
,
&
A
,
-
1
,
0
);
yymsp
[
-
5
].
minor
.
yy
131
=
yymsp
[
-
1
].
minor
.
yy131
;
tVariantListInsert
(
yymsp
[
-
1
].
minor
.
yy
403
,
&
A
,
-
1
,
0
);
yymsp
[
-
5
].
minor
.
yy
403
=
yymsp
[
-
1
].
minor
.
yy403
;
}
break
;
case
16
2
:
/* fill_opt ::= FILL LP ID RP */
case
16
5
:
/* fill_opt ::= FILL LP ID RP */
{
toTSDBType
(
yymsp
[
-
1
].
minor
.
yy0
.
type
);
yymsp
[
-
3
].
minor
.
yy
131
=
tVariantListAppendToken
(
NULL
,
&
yymsp
[
-
1
].
minor
.
yy0
,
-
1
);
yymsp
[
-
3
].
minor
.
yy
403
=
tVariantListAppendToken
(
NULL
,
&
yymsp
[
-
1
].
minor
.
yy0
,
-
1
);
}
break
;
case
16
3
:
/* sliding_opt ::= SLIDING LP tmvar RP */
case
16
6
:
/* sliding_opt ::= SLIDING LP tmvar RP */
{
yymsp
[
-
3
].
minor
.
yy0
=
yymsp
[
-
1
].
minor
.
yy0
;
}
break
;
case
16
4
:
/* sliding_opt ::= */
case
16
7
:
/* sliding_opt ::= */
{
yymsp
[
1
].
minor
.
yy0
.
n
=
0
;
yymsp
[
1
].
minor
.
yy0
.
z
=
NULL
;
yymsp
[
1
].
minor
.
yy0
.
type
=
0
;
}
break
;
case
16
5
:
/* orderby_opt ::= */
{
yymsp
[
1
].
minor
.
yy
131
=
0
;}
case
16
8
:
/* orderby_opt ::= */
{
yymsp
[
1
].
minor
.
yy
403
=
0
;}
break
;
case
16
6
:
/* orderby_opt ::= ORDER BY sortlist */
{
yymsp
[
-
2
].
minor
.
yy
131
=
yymsp
[
0
].
minor
.
yy131
;}
case
16
9
:
/* orderby_opt ::= ORDER BY sortlist */
{
yymsp
[
-
2
].
minor
.
yy
403
=
yymsp
[
0
].
minor
.
yy403
;}
break
;
case
1
67
:
/* sortlist ::= sortlist COMMA item sortorder */
case
1
70
:
/* sortlist ::= sortlist COMMA item sortorder */
{
yylhsminor
.
yy
131
=
tVariantListAppend
(
yymsp
[
-
3
].
minor
.
yy131
,
&
yymsp
[
-
1
].
minor
.
yy516
,
yymsp
[
0
].
minor
.
yy42
);
yylhsminor
.
yy
403
=
tVariantListAppend
(
yymsp
[
-
3
].
minor
.
yy403
,
&
yymsp
[
-
1
].
minor
.
yy488
,
yymsp
[
0
].
minor
.
yy70
);
}
yymsp
[
-
3
].
minor
.
yy
131
=
yylhsminor
.
yy131
;
yymsp
[
-
3
].
minor
.
yy
403
=
yylhsminor
.
yy403
;
break
;
case
1
68
:
/* sortlist ::= item sortorder */
case
1
71
:
/* sortlist ::= item sortorder */
{
yylhsminor
.
yy
131
=
tVariantListAppend
(
NULL
,
&
yymsp
[
-
1
].
minor
.
yy516
,
yymsp
[
0
].
minor
.
yy42
);
yylhsminor
.
yy
403
=
tVariantListAppend
(
NULL
,
&
yymsp
[
-
1
].
minor
.
yy488
,
yymsp
[
0
].
minor
.
yy70
);
}
yymsp
[
-
1
].
minor
.
yy
131
=
yylhsminor
.
yy131
;
yymsp
[
-
1
].
minor
.
yy
403
=
yylhsminor
.
yy403
;
break
;
case
1
69
:
/* item ::= ids cpxName */
case
1
72
:
/* item ::= ids cpxName */
{
toTSDBType
(
yymsp
[
-
1
].
minor
.
yy0
.
type
);
yymsp
[
-
1
].
minor
.
yy0
.
n
+=
yymsp
[
0
].
minor
.
yy0
.
n
;
tVariantCreate
(
&
yylhsminor
.
yy
516
,
&
yymsp
[
-
1
].
minor
.
yy0
);
tVariantCreate
(
&
yylhsminor
.
yy
488
,
&
yymsp
[
-
1
].
minor
.
yy0
);
}
yymsp
[
-
1
].
minor
.
yy
516
=
yylhsminor
.
yy516
;
yymsp
[
-
1
].
minor
.
yy
488
=
yylhsminor
.
yy488
;
break
;
case
17
0
:
/* sortorder ::= ASC */
{
yymsp
[
0
].
minor
.
yy
42
=
TSDB_ORDER_ASC
;
}
case
17
3
:
/* sortorder ::= ASC */
{
yymsp
[
0
].
minor
.
yy
70
=
TSDB_ORDER_ASC
;
}
break
;
case
17
1
:
/* sortorder ::= DESC */
{
yymsp
[
0
].
minor
.
yy
42
=
TSDB_ORDER_DESC
;}
case
17
4
:
/* sortorder ::= DESC */
{
yymsp
[
0
].
minor
.
yy
70
=
TSDB_ORDER_DESC
;}
break
;
case
17
2
:
/* sortorder ::= */
{
yymsp
[
1
].
minor
.
yy
42
=
TSDB_ORDER_ASC
;
}
case
17
5
:
/* sortorder ::= */
{
yymsp
[
1
].
minor
.
yy
70
=
TSDB_ORDER_ASC
;
}
break
;
case
17
3
:
/* groupby_opt ::= */
{
yymsp
[
1
].
minor
.
yy
131
=
0
;}
case
17
6
:
/* groupby_opt ::= */
{
yymsp
[
1
].
minor
.
yy
403
=
0
;}
break
;
case
17
4
:
/* groupby_opt ::= GROUP BY grouplist */
{
yymsp
[
-
2
].
minor
.
yy
131
=
yymsp
[
0
].
minor
.
yy131
;}
case
17
7
:
/* groupby_opt ::= GROUP BY grouplist */
{
yymsp
[
-
2
].
minor
.
yy
403
=
yymsp
[
0
].
minor
.
yy403
;}
break
;
case
17
5
:
/* grouplist ::= grouplist COMMA item */
case
17
8
:
/* grouplist ::= grouplist COMMA item */
{
yylhsminor
.
yy
131
=
tVariantListAppend
(
yymsp
[
-
2
].
minor
.
yy131
,
&
yymsp
[
0
].
minor
.
yy516
,
-
1
);
yylhsminor
.
yy
403
=
tVariantListAppend
(
yymsp
[
-
2
].
minor
.
yy403
,
&
yymsp
[
0
].
minor
.
yy488
,
-
1
);
}
yymsp
[
-
2
].
minor
.
yy
131
=
yylhsminor
.
yy131
;
yymsp
[
-
2
].
minor
.
yy
403
=
yylhsminor
.
yy403
;
break
;
case
17
6
:
/* grouplist ::= item */
case
17
9
:
/* grouplist ::= item */
{
yylhsminor
.
yy
131
=
tVariantListAppend
(
NULL
,
&
yymsp
[
0
].
minor
.
yy516
,
-
1
);
yylhsminor
.
yy
403
=
tVariantListAppend
(
NULL
,
&
yymsp
[
0
].
minor
.
yy488
,
-
1
);
}
yymsp
[
0
].
minor
.
yy
131
=
yylhsminor
.
yy131
;
yymsp
[
0
].
minor
.
yy
403
=
yylhsminor
.
yy403
;
break
;
case
1
77
:
/* having_opt ::= */
case
1
87
:
/* where_opt ::= */
yytestcase
(
yyruleno
==
187
);
case
22
5
:
/* expritem ::= */
yytestcase
(
yyruleno
==
225
);
{
yymsp
[
1
].
minor
.
yy
420
=
0
;}
case
1
80
:
/* having_opt ::= */
case
1
90
:
/* where_opt ::= */
yytestcase
(
yyruleno
==
190
);
case
22
8
:
/* expritem ::= */
yytestcase
(
yyruleno
==
228
);
{
yymsp
[
1
].
minor
.
yy
522
=
0
;}
break
;
case
1
78
:
/* having_opt ::= HAVING expr */
case
1
88
:
/* where_opt ::= WHERE expr */
yytestcase
(
yyruleno
==
188
);
{
yymsp
[
-
1
].
minor
.
yy
420
=
yymsp
[
0
].
minor
.
yy420
;}
case
1
81
:
/* having_opt ::= HAVING expr */
case
1
91
:
/* where_opt ::= WHERE expr */
yytestcase
(
yyruleno
==
191
);
{
yymsp
[
-
1
].
minor
.
yy
522
=
yymsp
[
0
].
minor
.
yy522
;}
break
;
case
1
79
:
/* limit_opt ::= */
case
18
3
:
/* slimit_opt ::= */
yytestcase
(
yyruleno
==
183
);
{
yymsp
[
1
].
minor
.
yy
284
.
limit
=
-
1
;
yymsp
[
1
].
minor
.
yy28
4
.
offset
=
0
;}
case
1
82
:
/* limit_opt ::= */
case
18
6
:
/* slimit_opt ::= */
yytestcase
(
yyruleno
==
186
);
{
yymsp
[
1
].
minor
.
yy
404
.
limit
=
-
1
;
yymsp
[
1
].
minor
.
yy40
4
.
offset
=
0
;}
break
;
case
18
0
:
/* limit_opt ::= LIMIT signed */
case
18
4
:
/* slimit_opt ::= SLIMIT signed */
yytestcase
(
yyruleno
==
184
);
{
yymsp
[
-
1
].
minor
.
yy
284
.
limit
=
yymsp
[
0
].
minor
.
yy459
;
yymsp
[
-
1
].
minor
.
yy28
4
.
offset
=
0
;}
case
18
3
:
/* limit_opt ::= LIMIT signed */
case
18
7
:
/* slimit_opt ::= SLIMIT signed */
yytestcase
(
yyruleno
==
187
);
{
yymsp
[
-
1
].
minor
.
yy
404
.
limit
=
yymsp
[
0
].
minor
.
yy387
;
yymsp
[
-
1
].
minor
.
yy40
4
.
offset
=
0
;}
break
;
case
18
1
:
/* limit_opt ::= LIMIT signed OFFSET signed */
{
yymsp
[
-
3
].
minor
.
yy
284
.
limit
=
yymsp
[
-
2
].
minor
.
yy459
;
yymsp
[
-
3
].
minor
.
yy284
.
offset
=
yymsp
[
0
].
minor
.
yy459
;}
case
18
4
:
/* limit_opt ::= LIMIT signed OFFSET signed */
{
yymsp
[
-
3
].
minor
.
yy
404
.
limit
=
yymsp
[
-
2
].
minor
.
yy387
;
yymsp
[
-
3
].
minor
.
yy404
.
offset
=
yymsp
[
0
].
minor
.
yy387
;}
break
;
case
18
2
:
/* limit_opt ::= LIMIT signed COMMA signed */
{
yymsp
[
-
3
].
minor
.
yy
284
.
limit
=
yymsp
[
0
].
minor
.
yy459
;
yymsp
[
-
3
].
minor
.
yy284
.
offset
=
yymsp
[
-
2
].
minor
.
yy459
;}
case
18
5
:
/* limit_opt ::= LIMIT signed COMMA signed */
{
yymsp
[
-
3
].
minor
.
yy
404
.
limit
=
yymsp
[
0
].
minor
.
yy387
;
yymsp
[
-
3
].
minor
.
yy404
.
offset
=
yymsp
[
-
2
].
minor
.
yy387
;}
break
;
case
18
5
:
/* slimit_opt ::= SLIMIT signed SOFFSET signed */
{
yymsp
[
-
3
].
minor
.
yy
284
.
limit
=
yymsp
[
-
2
].
minor
.
yy459
;
yymsp
[
-
3
].
minor
.
yy284
.
offset
=
yymsp
[
0
].
minor
.
yy459
;}
case
18
8
:
/* slimit_opt ::= SLIMIT signed SOFFSET signed */
{
yymsp
[
-
3
].
minor
.
yy
404
.
limit
=
yymsp
[
-
2
].
minor
.
yy387
;
yymsp
[
-
3
].
minor
.
yy404
.
offset
=
yymsp
[
0
].
minor
.
yy387
;}
break
;
case
18
6
:
/* slimit_opt ::= SLIMIT signed COMMA signed */
{
yymsp
[
-
3
].
minor
.
yy
284
.
limit
=
yymsp
[
0
].
minor
.
yy459
;
yymsp
[
-
3
].
minor
.
yy284
.
offset
=
yymsp
[
-
2
].
minor
.
yy459
;}
case
18
9
:
/* slimit_opt ::= SLIMIT signed COMMA signed */
{
yymsp
[
-
3
].
minor
.
yy
404
.
limit
=
yymsp
[
0
].
minor
.
yy387
;
yymsp
[
-
3
].
minor
.
yy404
.
offset
=
yymsp
[
-
2
].
minor
.
yy387
;}
break
;
case
1
89
:
/* expr ::= LP expr RP */
{
yylhsminor
.
yy
420
=
yymsp
[
-
1
].
minor
.
yy420
;
yylhsminor
.
yy420
->
token
.
z
=
yymsp
[
-
2
].
minor
.
yy0
.
z
;
yylhsminor
.
yy420
->
token
.
n
=
(
yymsp
[
0
].
minor
.
yy0
.
z
-
yymsp
[
-
2
].
minor
.
yy0
.
z
+
1
);}
yymsp
[
-
2
].
minor
.
yy
420
=
yylhsminor
.
yy420
;
case
1
92
:
/* expr ::= LP expr RP */
{
yylhsminor
.
yy
522
=
yymsp
[
-
1
].
minor
.
yy522
;
yylhsminor
.
yy522
->
token
.
z
=
yymsp
[
-
2
].
minor
.
yy0
.
z
;
yylhsminor
.
yy522
->
token
.
n
=
(
yymsp
[
0
].
minor
.
yy0
.
z
-
yymsp
[
-
2
].
minor
.
yy0
.
z
+
1
);}
yymsp
[
-
2
].
minor
.
yy
522
=
yylhsminor
.
yy522
;
break
;
case
19
0
:
/* expr ::= ID */
{
yylhsminor
.
yy
420
=
tSqlExprIdValueCreate
(
&
yymsp
[
0
].
minor
.
yy0
,
TK_ID
);}
yymsp
[
0
].
minor
.
yy
420
=
yylhsminor
.
yy420
;
case
19
3
:
/* expr ::= ID */
{
yylhsminor
.
yy
522
=
tSqlExprIdValueCreate
(
&
yymsp
[
0
].
minor
.
yy0
,
TK_ID
);}
yymsp
[
0
].
minor
.
yy
522
=
yylhsminor
.
yy522
;
break
;
case
19
1
:
/* expr ::= ID DOT ID */
{
yymsp
[
-
2
].
minor
.
yy0
.
n
+=
(
1
+
yymsp
[
0
].
minor
.
yy0
.
n
);
yylhsminor
.
yy
420
=
tSqlExprIdValueCreate
(
&
yymsp
[
-
2
].
minor
.
yy0
,
TK_ID
);}
yymsp
[
-
2
].
minor
.
yy
420
=
yylhsminor
.
yy420
;
case
19
4
:
/* expr ::= ID DOT ID */
{
yymsp
[
-
2
].
minor
.
yy0
.
n
+=
(
1
+
yymsp
[
0
].
minor
.
yy0
.
n
);
yylhsminor
.
yy
522
=
tSqlExprIdValueCreate
(
&
yymsp
[
-
2
].
minor
.
yy0
,
TK_ID
);}
yymsp
[
-
2
].
minor
.
yy
522
=
yylhsminor
.
yy522
;
break
;
case
19
2
:
/* expr ::= ID DOT STAR */
{
yymsp
[
-
2
].
minor
.
yy0
.
n
+=
(
1
+
yymsp
[
0
].
minor
.
yy0
.
n
);
yylhsminor
.
yy
420
=
tSqlExprIdValueCreate
(
&
yymsp
[
-
2
].
minor
.
yy0
,
TK_ALL
);}
yymsp
[
-
2
].
minor
.
yy
420
=
yylhsminor
.
yy420
;
case
19
5
:
/* expr ::= ID DOT STAR */
{
yymsp
[
-
2
].
minor
.
yy0
.
n
+=
(
1
+
yymsp
[
0
].
minor
.
yy0
.
n
);
yylhsminor
.
yy
522
=
tSqlExprIdValueCreate
(
&
yymsp
[
-
2
].
minor
.
yy0
,
TK_ALL
);}
yymsp
[
-
2
].
minor
.
yy
522
=
yylhsminor
.
yy522
;
break
;
case
19
3
:
/* expr ::= INTEGER */
{
yylhsminor
.
yy
420
=
tSqlExprIdValueCreate
(
&
yymsp
[
0
].
minor
.
yy0
,
TK_INTEGER
);}
yymsp
[
0
].
minor
.
yy
420
=
yylhsminor
.
yy420
;
case
19
6
:
/* expr ::= INTEGER */
{
yylhsminor
.
yy
522
=
tSqlExprIdValueCreate
(
&
yymsp
[
0
].
minor
.
yy0
,
TK_INTEGER
);}
yymsp
[
0
].
minor
.
yy
522
=
yylhsminor
.
yy522
;
break
;
case
19
4
:
/* expr ::= MINUS INTEGER */
case
19
5
:
/* expr ::= PLUS INTEGER */
yytestcase
(
yyruleno
==
195
);
{
yymsp
[
-
1
].
minor
.
yy0
.
n
+=
yymsp
[
0
].
minor
.
yy0
.
n
;
yymsp
[
-
1
].
minor
.
yy0
.
type
=
TK_INTEGER
;
yylhsminor
.
yy
420
=
tSqlExprIdValueCreate
(
&
yymsp
[
-
1
].
minor
.
yy0
,
TK_INTEGER
);}
yymsp
[
-
1
].
minor
.
yy
420
=
yylhsminor
.
yy420
;
case
19
7
:
/* expr ::= MINUS INTEGER */
case
19
8
:
/* expr ::= PLUS INTEGER */
yytestcase
(
yyruleno
==
198
);
{
yymsp
[
-
1
].
minor
.
yy0
.
n
+=
yymsp
[
0
].
minor
.
yy0
.
n
;
yymsp
[
-
1
].
minor
.
yy0
.
type
=
TK_INTEGER
;
yylhsminor
.
yy
522
=
tSqlExprIdValueCreate
(
&
yymsp
[
-
1
].
minor
.
yy0
,
TK_INTEGER
);}
yymsp
[
-
1
].
minor
.
yy
522
=
yylhsminor
.
yy522
;
break
;
case
19
6
:
/* expr ::= FLOAT */
{
yylhsminor
.
yy
420
=
tSqlExprIdValueCreate
(
&
yymsp
[
0
].
minor
.
yy0
,
TK_FLOAT
);}
yymsp
[
0
].
minor
.
yy
420
=
yylhsminor
.
yy420
;
case
19
9
:
/* expr ::= FLOAT */
{
yylhsminor
.
yy
522
=
tSqlExprIdValueCreate
(
&
yymsp
[
0
].
minor
.
yy0
,
TK_FLOAT
);}
yymsp
[
0
].
minor
.
yy
522
=
yylhsminor
.
yy522
;
break
;
case
197
:
/* expr ::= MINUS FLOAT */
case
198
:
/* expr ::= PLUS FLOAT */
yytestcase
(
yyruleno
==
198
);
{
yymsp
[
-
1
].
minor
.
yy0
.
n
+=
yymsp
[
0
].
minor
.
yy0
.
n
;
yymsp
[
-
1
].
minor
.
yy0
.
type
=
TK_FLOAT
;
yylhsminor
.
yy
420
=
tSqlExprIdValueCreate
(
&
yymsp
[
-
1
].
minor
.
yy0
,
TK_FLOAT
);}
yymsp
[
-
1
].
minor
.
yy
420
=
yylhsminor
.
yy420
;
case
200
:
/* expr ::= MINUS FLOAT */
case
201
:
/* expr ::= PLUS FLOAT */
yytestcase
(
yyruleno
==
201
);
{
yymsp
[
-
1
].
minor
.
yy0
.
n
+=
yymsp
[
0
].
minor
.
yy0
.
n
;
yymsp
[
-
1
].
minor
.
yy0
.
type
=
TK_FLOAT
;
yylhsminor
.
yy
522
=
tSqlExprIdValueCreate
(
&
yymsp
[
-
1
].
minor
.
yy0
,
TK_FLOAT
);}
yymsp
[
-
1
].
minor
.
yy
522
=
yylhsminor
.
yy522
;
break
;
case
199
:
/* expr ::= STRING */
{
yylhsminor
.
yy
420
=
tSqlExprIdValueCreate
(
&
yymsp
[
0
].
minor
.
yy0
,
TK_STRING
);}
yymsp
[
0
].
minor
.
yy
420
=
yylhsminor
.
yy420
;
case
202
:
/* expr ::= STRING */
{
yylhsminor
.
yy
522
=
tSqlExprIdValueCreate
(
&
yymsp
[
0
].
minor
.
yy0
,
TK_STRING
);}
yymsp
[
0
].
minor
.
yy
522
=
yylhsminor
.
yy522
;
break
;
case
20
0
:
/* expr ::= NOW */
{
yylhsminor
.
yy
420
=
tSqlExprIdValueCreate
(
&
yymsp
[
0
].
minor
.
yy0
,
TK_NOW
);
}
yymsp
[
0
].
minor
.
yy
420
=
yylhsminor
.
yy420
;
case
20
3
:
/* expr ::= NOW */
{
yylhsminor
.
yy
522
=
tSqlExprIdValueCreate
(
&
yymsp
[
0
].
minor
.
yy0
,
TK_NOW
);
}
yymsp
[
0
].
minor
.
yy
522
=
yylhsminor
.
yy522
;
break
;
case
20
1
:
/* expr ::= VARIABLE */
{
yylhsminor
.
yy
420
=
tSqlExprIdValueCreate
(
&
yymsp
[
0
].
minor
.
yy0
,
TK_VARIABLE
);}
yymsp
[
0
].
minor
.
yy
420
=
yylhsminor
.
yy420
;
case
20
4
:
/* expr ::= VARIABLE */
{
yylhsminor
.
yy
522
=
tSqlExprIdValueCreate
(
&
yymsp
[
0
].
minor
.
yy0
,
TK_VARIABLE
);}
yymsp
[
0
].
minor
.
yy
522
=
yylhsminor
.
yy522
;
break
;
case
20
2
:
/* expr ::= BOOL */
{
yylhsminor
.
yy
420
=
tSqlExprIdValueCreate
(
&
yymsp
[
0
].
minor
.
yy0
,
TK_BOOL
);}
yymsp
[
0
].
minor
.
yy
420
=
yylhsminor
.
yy420
;
case
20
5
:
/* expr ::= BOOL */
{
yylhsminor
.
yy
522
=
tSqlExprIdValueCreate
(
&
yymsp
[
0
].
minor
.
yy0
,
TK_BOOL
);}
yymsp
[
0
].
minor
.
yy
522
=
yylhsminor
.
yy522
;
break
;
case
203
:
/* expr ::= ID LP exprlist RP */
{
yylhsminor
.
yy420
=
tSqlExprCreateFunction
(
yymsp
[
-
1
].
minor
.
yy478
,
&
yymsp
[
-
3
].
minor
.
yy0
,
&
yymsp
[
0
].
minor
.
yy0
,
yymsp
[
-
3
].
minor
.
yy0
.
type
);
}
yymsp
[
-
3
].
minor
.
yy420
=
yylhsminor
.
yy420
;
case
206
:
/* expr ::= ID LP exprlist RP */
{
yylhsminor
.
yy522
=
tSqlExprCreateFunction
(
yymsp
[
-
1
].
minor
.
yy382
,
&
yymsp
[
-
3
].
minor
.
yy0
,
&
yymsp
[
0
].
minor
.
yy0
,
yymsp
[
-
3
].
minor
.
yy0
.
type
);
}
yymsp
[
-
3
].
minor
.
yy522
=
yylhsminor
.
yy522
;
break
;
case
204
:
/* expr ::= ID LP STAR RP */
{
yylhsminor
.
yy420
=
tSqlExprCreateFunction
(
NULL
,
&
yymsp
[
-
3
].
minor
.
yy0
,
&
yymsp
[
0
].
minor
.
yy0
,
yymsp
[
-
3
].
minor
.
yy0
.
type
);
}
yymsp
[
-
3
].
minor
.
yy420
=
yylhsminor
.
yy420
;
case
207
:
/* expr ::= ID LP STAR RP */
{
yylhsminor
.
yy522
=
tSqlExprCreateFunction
(
NULL
,
&
yymsp
[
-
3
].
minor
.
yy0
,
&
yymsp
[
0
].
minor
.
yy0
,
yymsp
[
-
3
].
minor
.
yy0
.
type
);
}
yymsp
[
-
3
].
minor
.
yy522
=
yylhsminor
.
yy522
;
break
;
case
20
5
:
/* expr ::= expr IS NULL */
{
yylhsminor
.
yy
420
=
tSqlExprCreate
(
yymsp
[
-
2
].
minor
.
yy420
,
NULL
,
TK_ISNULL
);}
yymsp
[
-
2
].
minor
.
yy
420
=
yylhsminor
.
yy420
;
case
20
8
:
/* expr ::= expr IS NULL */
{
yylhsminor
.
yy
522
=
tSqlExprCreate
(
yymsp
[
-
2
].
minor
.
yy522
,
NULL
,
TK_ISNULL
);}
yymsp
[
-
2
].
minor
.
yy
522
=
yylhsminor
.
yy522
;
break
;
case
20
6
:
/* expr ::= expr IS NOT NULL */
{
yylhsminor
.
yy
420
=
tSqlExprCreate
(
yymsp
[
-
3
].
minor
.
yy420
,
NULL
,
TK_NOTNULL
);}
yymsp
[
-
3
].
minor
.
yy
420
=
yylhsminor
.
yy420
;
case
20
9
:
/* expr ::= expr IS NOT NULL */
{
yylhsminor
.
yy
522
=
tSqlExprCreate
(
yymsp
[
-
3
].
minor
.
yy522
,
NULL
,
TK_NOTNULL
);}
yymsp
[
-
3
].
minor
.
yy
522
=
yylhsminor
.
yy522
;
break
;
case
2
07
:
/* expr ::= expr LT expr */
{
yylhsminor
.
yy
420
=
tSqlExprCreate
(
yymsp
[
-
2
].
minor
.
yy420
,
yymsp
[
0
].
minor
.
yy420
,
TK_LT
);}
yymsp
[
-
2
].
minor
.
yy
420
=
yylhsminor
.
yy420
;
case
2
10
:
/* expr ::= expr LT expr */
{
yylhsminor
.
yy
522
=
tSqlExprCreate
(
yymsp
[
-
2
].
minor
.
yy522
,
yymsp
[
0
].
minor
.
yy522
,
TK_LT
);}
yymsp
[
-
2
].
minor
.
yy
522
=
yylhsminor
.
yy522
;
break
;
case
2
08
:
/* expr ::= expr GT expr */
{
yylhsminor
.
yy
420
=
tSqlExprCreate
(
yymsp
[
-
2
].
minor
.
yy420
,
yymsp
[
0
].
minor
.
yy420
,
TK_GT
);}
yymsp
[
-
2
].
minor
.
yy
420
=
yylhsminor
.
yy420
;
case
2
11
:
/* expr ::= expr GT expr */
{
yylhsminor
.
yy
522
=
tSqlExprCreate
(
yymsp
[
-
2
].
minor
.
yy522
,
yymsp
[
0
].
minor
.
yy522
,
TK_GT
);}
yymsp
[
-
2
].
minor
.
yy
522
=
yylhsminor
.
yy522
;
break
;
case
2
09
:
/* expr ::= expr LE expr */
{
yylhsminor
.
yy
420
=
tSqlExprCreate
(
yymsp
[
-
2
].
minor
.
yy420
,
yymsp
[
0
].
minor
.
yy420
,
TK_LE
);}
yymsp
[
-
2
].
minor
.
yy
420
=
yylhsminor
.
yy420
;
case
2
12
:
/* expr ::= expr LE expr */
{
yylhsminor
.
yy
522
=
tSqlExprCreate
(
yymsp
[
-
2
].
minor
.
yy522
,
yymsp
[
0
].
minor
.
yy522
,
TK_LE
);}
yymsp
[
-
2
].
minor
.
yy
522
=
yylhsminor
.
yy522
;
break
;
case
21
0
:
/* expr ::= expr GE expr */
{
yylhsminor
.
yy
420
=
tSqlExprCreate
(
yymsp
[
-
2
].
minor
.
yy420
,
yymsp
[
0
].
minor
.
yy420
,
TK_GE
);}
yymsp
[
-
2
].
minor
.
yy
420
=
yylhsminor
.
yy420
;
case
21
3
:
/* expr ::= expr GE expr */
{
yylhsminor
.
yy
522
=
tSqlExprCreate
(
yymsp
[
-
2
].
minor
.
yy522
,
yymsp
[
0
].
minor
.
yy522
,
TK_GE
);}
yymsp
[
-
2
].
minor
.
yy
522
=
yylhsminor
.
yy522
;
break
;
case
21
1
:
/* expr ::= expr NE expr */
{
yylhsminor
.
yy
420
=
tSqlExprCreate
(
yymsp
[
-
2
].
minor
.
yy420
,
yymsp
[
0
].
minor
.
yy420
,
TK_NE
);}
yymsp
[
-
2
].
minor
.
yy
420
=
yylhsminor
.
yy420
;
case
21
4
:
/* expr ::= expr NE expr */
{
yylhsminor
.
yy
522
=
tSqlExprCreate
(
yymsp
[
-
2
].
minor
.
yy522
,
yymsp
[
0
].
minor
.
yy522
,
TK_NE
);}
yymsp
[
-
2
].
minor
.
yy
522
=
yylhsminor
.
yy522
;
break
;
case
21
2
:
/* expr ::= expr EQ expr */
{
yylhsminor
.
yy
420
=
tSqlExprCreate
(
yymsp
[
-
2
].
minor
.
yy420
,
yymsp
[
0
].
minor
.
yy420
,
TK_EQ
);}
yymsp
[
-
2
].
minor
.
yy
420
=
yylhsminor
.
yy420
;
case
21
5
:
/* expr ::= expr EQ expr */
{
yylhsminor
.
yy
522
=
tSqlExprCreate
(
yymsp
[
-
2
].
minor
.
yy522
,
yymsp
[
0
].
minor
.
yy522
,
TK_EQ
);}
yymsp
[
-
2
].
minor
.
yy
522
=
yylhsminor
.
yy522
;
break
;
case
21
3
:
/* expr ::= expr AND expr */
{
yylhsminor
.
yy
420
=
tSqlExprCreate
(
yymsp
[
-
2
].
minor
.
yy420
,
yymsp
[
0
].
minor
.
yy420
,
TK_AND
);}
yymsp
[
-
2
].
minor
.
yy
420
=
yylhsminor
.
yy420
;
case
21
6
:
/* expr ::= expr AND expr */
{
yylhsminor
.
yy
522
=
tSqlExprCreate
(
yymsp
[
-
2
].
minor
.
yy522
,
yymsp
[
0
].
minor
.
yy522
,
TK_AND
);}
yymsp
[
-
2
].
minor
.
yy
522
=
yylhsminor
.
yy522
;
break
;
case
21
4
:
/* expr ::= expr OR expr */
{
yylhsminor
.
yy
420
=
tSqlExprCreate
(
yymsp
[
-
2
].
minor
.
yy420
,
yymsp
[
0
].
minor
.
yy420
,
TK_OR
);
}
yymsp
[
-
2
].
minor
.
yy
420
=
yylhsminor
.
yy420
;
case
21
7
:
/* expr ::= expr OR expr */
{
yylhsminor
.
yy
522
=
tSqlExprCreate
(
yymsp
[
-
2
].
minor
.
yy522
,
yymsp
[
0
].
minor
.
yy522
,
TK_OR
);
}
yymsp
[
-
2
].
minor
.
yy
522
=
yylhsminor
.
yy522
;
break
;
case
21
5
:
/* expr ::= expr PLUS expr */
{
yylhsminor
.
yy
420
=
tSqlExprCreate
(
yymsp
[
-
2
].
minor
.
yy420
,
yymsp
[
0
].
minor
.
yy420
,
TK_PLUS
);
}
yymsp
[
-
2
].
minor
.
yy
420
=
yylhsminor
.
yy420
;
case
21
8
:
/* expr ::= expr PLUS expr */
{
yylhsminor
.
yy
522
=
tSqlExprCreate
(
yymsp
[
-
2
].
minor
.
yy522
,
yymsp
[
0
].
minor
.
yy522
,
TK_PLUS
);
}
yymsp
[
-
2
].
minor
.
yy
522
=
yylhsminor
.
yy522
;
break
;
case
21
6
:
/* expr ::= expr MINUS expr */
{
yylhsminor
.
yy
420
=
tSqlExprCreate
(
yymsp
[
-
2
].
minor
.
yy420
,
yymsp
[
0
].
minor
.
yy420
,
TK_MINUS
);
}
yymsp
[
-
2
].
minor
.
yy
420
=
yylhsminor
.
yy420
;
case
21
9
:
/* expr ::= expr MINUS expr */
{
yylhsminor
.
yy
522
=
tSqlExprCreate
(
yymsp
[
-
2
].
minor
.
yy522
,
yymsp
[
0
].
minor
.
yy522
,
TK_MINUS
);
}
yymsp
[
-
2
].
minor
.
yy
522
=
yylhsminor
.
yy522
;
break
;
case
2
17
:
/* expr ::= expr STAR expr */
{
yylhsminor
.
yy
420
=
tSqlExprCreate
(
yymsp
[
-
2
].
minor
.
yy420
,
yymsp
[
0
].
minor
.
yy420
,
TK_STAR
);
}
yymsp
[
-
2
].
minor
.
yy
420
=
yylhsminor
.
yy420
;
case
2
20
:
/* expr ::= expr STAR expr */
{
yylhsminor
.
yy
522
=
tSqlExprCreate
(
yymsp
[
-
2
].
minor
.
yy522
,
yymsp
[
0
].
minor
.
yy522
,
TK_STAR
);
}
yymsp
[
-
2
].
minor
.
yy
522
=
yylhsminor
.
yy522
;
break
;
case
2
18
:
/* expr ::= expr SLASH expr */
{
yylhsminor
.
yy
420
=
tSqlExprCreate
(
yymsp
[
-
2
].
minor
.
yy420
,
yymsp
[
0
].
minor
.
yy420
,
TK_DIVIDE
);}
yymsp
[
-
2
].
minor
.
yy
420
=
yylhsminor
.
yy420
;
case
2
21
:
/* expr ::= expr SLASH expr */
{
yylhsminor
.
yy
522
=
tSqlExprCreate
(
yymsp
[
-
2
].
minor
.
yy522
,
yymsp
[
0
].
minor
.
yy522
,
TK_DIVIDE
);}
yymsp
[
-
2
].
minor
.
yy
522
=
yylhsminor
.
yy522
;
break
;
case
2
19
:
/* expr ::= expr REM expr */
{
yylhsminor
.
yy
420
=
tSqlExprCreate
(
yymsp
[
-
2
].
minor
.
yy420
,
yymsp
[
0
].
minor
.
yy420
,
TK_REM
);
}
yymsp
[
-
2
].
minor
.
yy
420
=
yylhsminor
.
yy420
;
case
2
22
:
/* expr ::= expr REM expr */
{
yylhsminor
.
yy
522
=
tSqlExprCreate
(
yymsp
[
-
2
].
minor
.
yy522
,
yymsp
[
0
].
minor
.
yy522
,
TK_REM
);
}
yymsp
[
-
2
].
minor
.
yy
522
=
yylhsminor
.
yy522
;
break
;
case
22
0
:
/* expr ::= expr LIKE expr */
{
yylhsminor
.
yy
420
=
tSqlExprCreate
(
yymsp
[
-
2
].
minor
.
yy420
,
yymsp
[
0
].
minor
.
yy420
,
TK_LIKE
);
}
yymsp
[
-
2
].
minor
.
yy
420
=
yylhsminor
.
yy420
;
case
22
3
:
/* expr ::= expr LIKE expr */
{
yylhsminor
.
yy
522
=
tSqlExprCreate
(
yymsp
[
-
2
].
minor
.
yy522
,
yymsp
[
0
].
minor
.
yy522
,
TK_LIKE
);
}
yymsp
[
-
2
].
minor
.
yy
522
=
yylhsminor
.
yy522
;
break
;
case
22
1
:
/* expr ::= expr IN LP exprlist RP */
{
yylhsminor
.
yy
420
=
tSqlExprCreate
(
yymsp
[
-
4
].
minor
.
yy420
,
(
tSQLExpr
*
)
yymsp
[
-
1
].
minor
.
yy478
,
TK_IN
);
}
yymsp
[
-
4
].
minor
.
yy
420
=
yylhsminor
.
yy420
;
case
22
4
:
/* expr ::= expr IN LP exprlist RP */
{
yylhsminor
.
yy
522
=
tSqlExprCreate
(
yymsp
[
-
4
].
minor
.
yy522
,
(
tSQLExpr
*
)
yymsp
[
-
1
].
minor
.
yy382
,
TK_IN
);
}
yymsp
[
-
4
].
minor
.
yy
522
=
yylhsminor
.
yy522
;
break
;
case
22
2
:
/* exprlist ::= exprlist COMMA expritem */
{
yylhsminor
.
yy
478
=
tSqlExprListAppend
(
yymsp
[
-
2
].
minor
.
yy478
,
yymsp
[
0
].
minor
.
yy420
,
0
);}
yymsp
[
-
2
].
minor
.
yy
478
=
yylhsminor
.
yy478
;
case
22
5
:
/* exprlist ::= exprlist COMMA expritem */
{
yylhsminor
.
yy
382
=
tSqlExprListAppend
(
yymsp
[
-
2
].
minor
.
yy382
,
yymsp
[
0
].
minor
.
yy522
,
0
);}
yymsp
[
-
2
].
minor
.
yy
382
=
yylhsminor
.
yy382
;
break
;
case
22
3
:
/* exprlist ::= expritem */
{
yylhsminor
.
yy
478
=
tSqlExprListAppend
(
0
,
yymsp
[
0
].
minor
.
yy420
,
0
);}
yymsp
[
0
].
minor
.
yy
478
=
yylhsminor
.
yy478
;
case
22
6
:
/* exprlist ::= expritem */
{
yylhsminor
.
yy
382
=
tSqlExprListAppend
(
0
,
yymsp
[
0
].
minor
.
yy522
,
0
);}
yymsp
[
0
].
minor
.
yy
382
=
yylhsminor
.
yy382
;
break
;
case
22
4
:
/* expritem ::= expr */
{
yylhsminor
.
yy
420
=
yymsp
[
0
].
minor
.
yy420
;}
yymsp
[
0
].
minor
.
yy
420
=
yylhsminor
.
yy420
;
case
22
7
:
/* expritem ::= expr */
{
yylhsminor
.
yy
522
=
yymsp
[
0
].
minor
.
yy522
;}
yymsp
[
0
].
minor
.
yy
522
=
yylhsminor
.
yy522
;
break
;
case
22
6
:
/* cmd ::= RESET QUERY CACHE */
case
22
9
:
/* cmd ::= RESET QUERY CACHE */
{
setDCLSQLElems
(
pInfo
,
TSDB_SQL_RESET_CACHE
,
0
);}
break
;
case
2
27
:
/* cmd ::= ALTER TABLE ids cpxName ADD COLUMN columnlist */
case
2
30
:
/* cmd ::= ALTER TABLE ids cpxName ADD COLUMN columnlist */
{
yymsp
[
-
4
].
minor
.
yy0
.
n
+=
yymsp
[
-
3
].
minor
.
yy0
.
n
;
SAlterTableSQL
*
pAlterTable
=
tAlterTableSqlElems
(
&
yymsp
[
-
4
].
minor
.
yy0
,
yymsp
[
0
].
minor
.
yy131
,
NULL
,
TSDB_ALTER_TABLE_ADD_COLUMN
);
SAlterTableSQL
*
pAlterTable
=
tAlterTableSqlElems
(
&
yymsp
[
-
4
].
minor
.
yy0
,
yymsp
[
0
].
minor
.
yy403
,
NULL
,
TSDB_ALTER_TABLE_ADD_COLUMN
);
setSqlInfo
(
pInfo
,
pAlterTable
,
NULL
,
TSDB_SQL_ALTER_TABLE
);
}
break
;
case
2
28
:
/* cmd ::= ALTER TABLE ids cpxName DROP COLUMN ids */
case
2
31
:
/* cmd ::= ALTER TABLE ids cpxName DROP COLUMN ids */
{
yymsp
[
-
4
].
minor
.
yy0
.
n
+=
yymsp
[
-
3
].
minor
.
yy0
.
n
;
...
...
@@ -2868,15 +2868,14 @@ static void yy_reduce(
setSqlInfo
(
pInfo
,
pAlterTable
,
NULL
,
TSDB_SQL_ALTER_TABLE
);
}
break
;
case
2
29
:
/* cmd ::= ALTER TABLE ids cpxName ADD TAG columnlist */
case
2
32
:
/* cmd ::= ALTER TABLE ids cpxName ADD TAG columnlist */
{
yymsp
[
-
4
].
minor
.
yy0
.
n
+=
yymsp
[
-
3
].
minor
.
yy0
.
n
;
SAlterTableSQL
*
pAlterTable
=
tAlterTableSqlElems
(
&
yymsp
[
-
4
].
minor
.
yy0
,
yymsp
[
0
].
minor
.
yy131
,
NULL
,
TSDB_ALTER_TABLE_ADD_TAG_COLUMN
);
SAlterTableSQL
*
pAlterTable
=
tAlterTableSqlElems
(
&
yymsp
[
-
4
].
minor
.
yy0
,
yymsp
[
0
].
minor
.
yy403
,
NULL
,
TSDB_ALTER_TABLE_ADD_TAG_COLUMN
);
setSqlInfo
(
pInfo
,
pAlterTable
,
NULL
,
TSDB_SQL_ALTER_TABLE
);
}
break
;
case
23
0
:
/* cmd ::= ALTER TABLE ids cpxName DROP TAG ids */
case
23
3
:
/* cmd ::= ALTER TABLE ids cpxName DROP TAG ids */
{
yymsp
[
-
4
].
minor
.
yy0
.
n
+=
yymsp
[
-
3
].
minor
.
yy0
.
n
;
...
...
@@ -2887,7 +2886,7 @@ static void yy_reduce(
setSqlInfo
(
pInfo
,
pAlterTable
,
NULL
,
TSDB_SQL_ALTER_TABLE
);
}
break
;
case
23
1
:
/* cmd ::= ALTER TABLE ids cpxName CHANGE TAG ids ids */
case
23
4
:
/* cmd ::= ALTER TABLE ids cpxName CHANGE TAG ids ids */
{
yymsp
[
-
5
].
minor
.
yy0
.
n
+=
yymsp
[
-
4
].
minor
.
yy0
.
n
;
...
...
@@ -2897,34 +2896,30 @@ static void yy_reduce(
toTSDBType
(
yymsp
[
0
].
minor
.
yy0
.
type
);
A
=
tVariantListAppendToken
(
A
,
&
yymsp
[
0
].
minor
.
yy0
,
-
1
);
SAlterTableSQL
*
pAlterTable
=
tAlterTableSqlElems
(
&
yymsp
[
-
5
].
minor
.
yy0
,
NULL
,
A
,
TSDB_ALTER_TABLE_CHANGE_TAG_COLUMN
);
SAlterTableSQL
*
pAlterTable
=
tAlterTableSqlElems
(
&
yymsp
[
-
5
].
minor
.
yy0
,
NULL
,
A
,
TSDB_ALTER_TABLE_CHANGE_TAG_COLUMN
);
setSqlInfo
(
pInfo
,
pAlterTable
,
NULL
,
TSDB_SQL_ALTER_TABLE
);
}
break
;
case
23
2
:
/* cmd ::= ALTER TABLE ids cpxName SET TAG ids EQ tagitem */
case
23
5
:
/* cmd ::= ALTER TABLE ids cpxName SET TAG ids EQ tagitem */
{
yymsp
[
-
6
].
minor
.
yy0
.
n
+=
yymsp
[
-
5
].
minor
.
yy0
.
n
;
toTSDBType
(
yymsp
[
-
2
].
minor
.
yy0
.
type
);
SArray
*
A
=
tVariantListAppendToken
(
NULL
,
&
yymsp
[
-
2
].
minor
.
yy0
,
-
1
);
A
=
tVariantListAppend
(
A
,
&
yymsp
[
0
].
minor
.
yy
516
,
-
1
);
A
=
tVariantListAppend
(
A
,
&
yymsp
[
0
].
minor
.
yy
488
,
-
1
);
SAlterTableSQL
*
pAlterTable
=
tAlterTableSqlElems
(
&
yymsp
[
-
6
].
minor
.
yy0
,
NULL
,
A
,
TSDB_ALTER_TABLE_UPDATE_TAG_VAL
);
setSqlInfo
(
pInfo
,
pAlterTable
,
NULL
,
TSDB_SQL_ALTER_TABLE
);
}
break
;
case
233
:
/* cmd ::= KILL CONNECTION INTEGER */
{
setKillSql
(
pInfo
,
TSDB_SQL_KILL_CONNECTION
,
&
yymsp
[
0
].
minor
.
yy0
);}
case
236
:
/* cmd ::= KILL CONNECTION INTEGER */
{
setKillSql
(
pInfo
,
TSDB_SQL_KILL_CONNECTION
,
&
yymsp
[
0
].
minor
.
yy0
);}
break
;
case
234
:
/* cmd ::= KILL STREAM INTEGER COLON INTEGER */
{
yymsp
[
-
2
].
minor
.
yy0
.
n
+=
(
yymsp
[
-
1
].
minor
.
yy0
.
n
+
yymsp
[
0
].
minor
.
yy0
.
n
);
setKillSql
(
pInfo
,
TSDB_SQL_KILL_STREAM
,
&
yymsp
[
-
2
].
minor
.
yy0
);}
case
237
:
/* cmd ::= KILL STREAM INTEGER COLON INTEGER */
{
yymsp
[
-
2
].
minor
.
yy0
.
n
+=
(
yymsp
[
-
1
].
minor
.
yy0
.
n
+
yymsp
[
0
].
minor
.
yy0
.
n
);
setKillSql
(
pInfo
,
TSDB_SQL_KILL_STREAM
,
&
yymsp
[
-
2
].
minor
.
yy0
);}
break
;
case
235
:
/* cmd ::= KILL QUERY INTEGER COLON INTEGER */
{
yymsp
[
-
2
].
minor
.
yy0
.
n
+=
(
yymsp
[
-
1
].
minor
.
yy0
.
n
+
yymsp
[
0
].
minor
.
yy0
.
n
);
setKillSql
(
pInfo
,
TSDB_SQL_KILL_QUERY
,
&
yymsp
[
-
2
].
minor
.
yy0
);}
case
238
:
/* cmd ::= KILL QUERY INTEGER COLON INTEGER */
{
yymsp
[
-
2
].
minor
.
yy0
.
n
+=
(
yymsp
[
-
1
].
minor
.
yy0
.
n
+
yymsp
[
0
].
minor
.
yy0
.
n
);
setKillSql
(
pInfo
,
TSDB_SQL_KILL_QUERY
,
&
yymsp
[
-
2
].
minor
.
yy0
);}
break
;
default:
break
;
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录