Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
慢慢CG
TDengine
提交
ef58f099
T
TDengine
项目概览
慢慢CG
/
TDengine
与 Fork 源项目一致
Fork自
taosdata / TDengine
通知
1
Star
0
Fork
0
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
0
列表
看板
标记
里程碑
合并请求
0
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
T
TDengine
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
0
Issue
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
Pages
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
提交
Issue看板
提交
ef58f099
编写于
5月 28, 2021
作者:
D
dapan1121
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
support alter column length
上级
a8e97be5
变更
7
隐藏空白更改
内联
并排
Showing
7 changed file
with
1110 addition
and
717 deletion
+1110
-717
src/client/src/tscSQLParser.c
src/client/src/tscSQLParser.c
+31
-1
src/inc/ttokendef.h
src/inc/ttokendef.h
+52
-48
src/mnode/src/mnodeTable.c
src/mnode/src/mnodeTable.c
+9
-3
src/query/inc/sql.y
src/query/inc/sql.y
+13
-1
src/query/src/qSqlParser.c
src/query/src/qSqlParser.c
+1
-1
src/query/src/sql.c
src/query/src/sql.c
+1002
-662
src/util/src/ttokenizer.c
src/util/src/ttokenizer.c
+2
-1
未找到文件。
src/client/src/tscSQLParser.c
浏览文件 @
ef58f099
...
...
@@ -5074,6 +5074,8 @@ int32_t setAlterTableInfo(SSqlObj* pSql, struct SSqlInfo* pInfo) {
const
char
*
msg18
=
"primary timestamp column cannot be dropped"
;
const
char
*
msg19
=
"invalid new tag name"
;
const
char
*
msg20
=
"table is not super table"
;
const
char
*
msg21
=
"only binary/nchar column length could be altered"
;
const
char
*
msg22
=
"invalid column length"
;
int32_t
code
=
TSDB_CODE_SUCCESS
;
...
...
@@ -5110,7 +5112,7 @@ int32_t setAlterTableInfo(SSqlObj* pSql, struct SSqlInfo* pInfo) {
}
}
else
if
((
pAlterSQL
->
type
==
TSDB_ALTER_TABLE_UPDATE_TAG_VAL
)
&&
(
UTIL_TABLE_IS_SUPER_TABLE
(
pTableMetaInfo
)))
{
return
invalidSqlErrMsg
(
tscGetErrorMsgPayload
(
pCmd
),
msg4
);
}
else
if
((
pAlterSQL
->
type
==
TSDB_ALTER_TABLE_ADD_COLUMN
||
pAlterSQL
->
type
==
TSDB_ALTER_TABLE_DROP_COLUMN
)
&&
}
else
if
((
pAlterSQL
->
type
==
TSDB_ALTER_TABLE_ADD_COLUMN
||
pAlterSQL
->
type
==
TSDB_ALTER_TABLE_DROP_COLUMN
||
pAlterSQL
->
type
==
TSDB_ALTER_TABLE_CHANGE_COLUMN
)
&&
UTIL_TABLE_IS_CHILD_TABLE
(
pTableMetaInfo
))
{
return
invalidSqlErrMsg
(
tscGetErrorMsgPayload
(
pCmd
),
msg6
);
}
...
...
@@ -5326,6 +5328,34 @@ int32_t setAlterTableInfo(SSqlObj* pSql, struct SSqlInfo* pInfo) {
tstrncpy
(
name1
,
pItem
->
pVar
.
pz
,
sizeof
(
name1
));
TAOS_FIELD
f
=
tscCreateField
(
TSDB_DATA_TYPE_INT
,
name1
,
tDataTypes
[
TSDB_DATA_TYPE_INT
].
bytes
);
tscFieldInfoAppend
(
&
pQueryInfo
->
fieldsInfo
,
&
f
);
}
else
if
(
pAlterSQL
->
type
==
TSDB_ALTER_TABLE_CHANGE_COLUMN
)
{
if
(
taosArrayGetSize
(
pAlterSQL
->
pAddColumns
)
!=
2
)
{
return
invalidSqlErrMsg
(
tscGetErrorMsgPayload
(
pCmd
),
NULL
);
}
tVariantListItem
*
pItem
=
taosArrayGet
(
pAlterSQL
->
pAddColumns
,
0
);
SColumnIndex
columnIndex
=
COLUMN_INDEX_INITIALIZER
;
SStrToken
name
=
{.
type
=
TK_STRING
,
.
z
=
pItem
->
pVar
.
pz
,
.
n
=
pItem
->
pVar
.
nLen
};
if
(
getColumnIndexByName
(
pCmd
,
&
name
,
pQueryInfo
,
&
columnIndex
)
!=
TSDB_CODE_SUCCESS
)
{
return
invalidSqlErrMsg
(
tscGetErrorMsgPayload
(
pCmd
),
msg17
);
}
SSchema
*
pColSchema
=
tscGetTableColumnSchema
(
pTableMetaInfo
->
pTableMeta
,
columnIndex
.
columnIndex
);
if
(
pColSchema
->
type
!=
TSDB_DATA_TYPE_BINARY
&&
pColSchema
->
type
!=
TSDB_DATA_TYPE_NCHAR
)
{
return
invalidSqlErrMsg
(
tscGetErrorMsgPayload
(
pCmd
),
msg21
);
}
pItem
=
taosArrayGet
(
pAlterSQL
->
pAddColumns
,
1
);
int64_t
nlen
=
0
;
if
(
tVariantDump
(
&
pItem
->
pVar
,
(
char
*
)
&
nlen
,
TSDB_DATA_TYPE_BIGINT
,
false
)
<
0
||
nlen
<=
0
)
{
return
invalidSqlErrMsg
(
tscGetErrorMsgPayload
(
pCmd
),
msg22
);
}
TAOS_FIELD
f
=
tscCreateField
(
pColSchema
->
type
,
name
.
z
,
nlen
);
tscFieldInfoAppend
(
&
pQueryInfo
->
fieldsInfo
,
&
f
);
}
return
TSDB_CODE_SUCCESS
;
...
...
src/inc/ttokendef.h
浏览文件 @
ef58f099
...
...
@@ -155,54 +155,58 @@
#define TK_SYNCDB 136
#define TK_ADD 137
#define TK_COLUMN 138
#define TK_TAG 139
#define TK_CHANGE 140
#define TK_SET 141
#define TK_KILL 142
#define TK_CONNECTION 143
#define TK_STREAM 144
#define TK_COLON 145
#define TK_ABORT 146
#define TK_AFTER 147
#define TK_ATTACH 148
#define TK_BEFORE 149
#define TK_BEGIN 150
#define TK_CASCADE 151
#define TK_CLUSTER 152
#define TK_CONFLICT 153
#define TK_COPY 154
#define TK_DEFERRED 155
#define TK_DELIMITERS 156
#define TK_DETACH 157
#define TK_EACH 158
#define TK_END 159
#define TK_EXPLAIN 160
#define TK_FAIL 161
#define TK_FOR 162
#define TK_IGNORE 163
#define TK_IMMEDIATE 164
#define TK_INITIALLY 165
#define TK_INSTEAD 166
#define TK_MATCH 167
#define TK_KEY 168
#define TK_OF 169
#define TK_RAISE 170
#define TK_REPLACE 171
#define TK_RESTRICT 172
#define TK_ROW 173
#define TK_STATEMENT 174
#define TK_TRIGGER 175
#define TK_VIEW 176
#define TK_SEMI 177
#define TK_NONE 178
#define TK_PREV 179
#define TK_LINEAR 180
#define TK_IMPORT 181
#define TK_TBNAME 182
#define TK_JOIN 183
#define TK_INSERT 184
#define TK_INTO 185
#define TK_VALUES 186
#define TK_LENGTH 139
#define TK_TAG 140
#define TK_CHANGE 141
#define TK_SET 142
#define TK_KILL 143
#define TK_CONNECTION 144
#define TK_STREAM 145
#define TK_COLON 146
#define TK_ABORT 147
#define TK_AFTER 148
#define TK_ATTACH 149
#define TK_BEFORE 150
#define TK_BEGIN 151
#define TK_CASCADE 152
#define TK_CLUSTER 153
#define TK_CONFLICT 154
#define TK_COPY 155
#define TK_DEFERRED 156
#define TK_DELIMITERS 157
#define TK_DETACH 158
#define TK_EACH 159
#define TK_END 160
#define TK_EXPLAIN 161
#define TK_FAIL 162
#define TK_FOR 163
#define TK_IGNORE 164
#define TK_IMMEDIATE 165
#define TK_INITIALLY 166
#define TK_INSTEAD 167
#define TK_MATCH 168
#define TK_KEY 169
#define TK_OF 170
#define TK_RAISE 171
#define TK_REPLACE 172
#define TK_RESTRICT 173
#define TK_ROW 174
#define TK_STATEMENT 175
#define TK_TRIGGER 176
#define TK_VIEW 177
#define TK_SEMI 178
#define TK_NONE 179
#define TK_PREV 180
#define TK_LINEAR 181
#define TK_IMPORT 182
#define TK_TBNAME 183
#define TK_JOIN 184
#define TK_INSERT 185
#define TK_INTO 186
#define TK_VALUES 187
#define TK_SPACE 300
...
...
src/mnode/src/mnodeTable.c
浏览文件 @
ef58f099
...
...
@@ -3100,7 +3100,10 @@ static int32_t mnodeProcessAlterTableMsg(SMnodeMsg *pMsg) {
}
else
if
(
pAlter
->
type
==
TSDB_ALTER_TABLE_DROP_COLUMN
)
{
code
=
mnodeDropSuperTableColumn
(
pMsg
,
pAlter
->
schema
[
0
].
name
);
}
else
if
(
pAlter
->
type
==
TSDB_ALTER_TABLE_CHANGE_COLUMN
)
{
code
=
mnodeChangeSuperTableColumn
(
pMsg
,
pAlter
->
schema
[
0
].
name
,
pAlter
->
schema
[
1
].
name
);
//code = mnodeChangeSuperTableColumn(pMsg, pAlter->schema[0].name, pAlter->schema[1].name);
(
void
)
mnodeChangeSuperTableColumn
;
mError
(
"change table[%s] column[%s] length to [%d] is not processed"
,
pAlter
->
tableFname
,
pAlter
->
schema
[
0
].
name
,
pAlter
->
schema
[
0
].
bytes
);
code
=
TSDB_CODE_SUCCESS
;
}
else
{
}
}
else
{
...
...
@@ -3112,7 +3115,10 @@ static int32_t mnodeProcessAlterTableMsg(SMnodeMsg *pMsg) {
}
else
if
(
pAlter
->
type
==
TSDB_ALTER_TABLE_DROP_COLUMN
)
{
code
=
mnodeDropNormalTableColumn
(
pMsg
,
pAlter
->
schema
[
0
].
name
);
}
else
if
(
pAlter
->
type
==
TSDB_ALTER_TABLE_CHANGE_COLUMN
)
{
code
=
mnodeChangeNormalTableColumn
(
pMsg
,
pAlter
->
schema
[
0
].
name
,
pAlter
->
schema
[
1
].
name
);
//code = mnodeChangeNormalTableColumn(pMsg, pAlter->schema[0].name, pAlter->schema[1].name);
(
void
)
mnodeChangeNormalTableColumn
;
mError
(
"change table[%s] column[%s] length to [%d] is not processed"
,
pAlter
->
tableFname
,
pAlter
->
schema
[
0
].
name
,
pAlter
->
schema
[
0
].
bytes
);
code
=
TSDB_CODE_SUCCESS
;
}
else
{
}
}
...
...
@@ -3303,4 +3309,4 @@ int32_t mnodeCompactTables() {
mnodeCompactChildTables
();
return
0
;
}
\ No newline at end of file
}
src/query/inc/sql.y
浏览文件 @
ef58f099
...
...
@@ -28,7 +28,7 @@
#include <stdbool.h>
#include "qSqlparser.h"
#include "tcmdtype.h"
#include "t
s
token.h"
#include "ttoken.h"
#include "ttokendef.h"
#include "tutil.h"
#include "tvariant.h"
...
...
@@ -748,6 +748,18 @@ cmd ::= ALTER TABLE ids(X) cpxName(F) DROP COLUMN ids(A). {
setSqlInfo(pInfo, pAlterTable, NULL, TSDB_SQL_ALTER_TABLE);
}
cmd ::= ALTER TABLE ids(X) cpxName(F) ALTER COLUMN LENGTH ids(A) INTEGER(Z). {
X.n += F.n;
toTSDBType(A.type);
SArray* K = tVariantListAppendToken(NULL, &A, -1);
toTSDBType(Z.type);
K = tVariantListAppendToken(K, &Z, -1);
SAlterTableInfo* pAlterTable = tSetAlterTableInfo(&X, K, NULL, TSDB_ALTER_TABLE_CHANGE_COLUMN, -1);
setSqlInfo(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;
...
...
src/query/src/qSqlParser.c
浏览文件 @
ef58f099
...
...
@@ -885,7 +885,7 @@ SAlterTableInfo *tSetAlterTableInfo(SStrToken *pTableName, SArray *pCols, SArray
pAlterTable
->
type
=
type
;
pAlterTable
->
tableType
=
tableType
;
if
(
type
==
TSDB_ALTER_TABLE_ADD_COLUMN
||
type
==
TSDB_ALTER_TABLE_ADD_TAG_COLUMN
)
{
if
(
type
==
TSDB_ALTER_TABLE_ADD_COLUMN
||
type
==
TSDB_ALTER_TABLE_ADD_TAG_COLUMN
||
type
==
TSDB_ALTER_TABLE_CHANGE_COLUMN
)
{
pAlterTable
->
pAddColumns
=
pCols
;
assert
(
pVals
==
NULL
);
}
else
{
...
...
src/query/src/sql.c
浏览文件 @
ef58f099
...
...
@@ -23,13 +23,14 @@
** input grammar file:
*/
#include <stdio.h>
#include <assert.h>
/************ Begin %include sections from the grammar ************************/
#include <assert.h>
#include <stdbool.h>
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <assert.h>
#include <stdbool.h>
#include "qSqlparser.h"
#include "tcmdtype.h"
#include "ttoken.h"
...
...
@@ -76,8 +77,10 @@
** zero the stack is dynamically sized using realloc()
** ParseARG_SDECL A static variable declaration for the %extra_argument
** ParseARG_PDECL A parameter declaration for the %extra_argument
** ParseARG_PARAM Code to pass %extra_argument as a subroutine parameter
** ParseARG_STORE Code to store %extra_argument into yypParser
** ParseARG_FETCH Code to extract %extra_argument from yypParser
** ParseCTX_* As ParseARG_ except for %extra_context
** YYERRORSYMBOL is the code number of the error symbol. If not
** defined, then do no error processing.
** YYNSTATE the combined number of states.
...
...
@@ -97,7 +100,7 @@
#endif
/************* Begin control #defines *****************************************/
#define YYCODETYPE unsigned short int
#define YYNOCODE 26
4
#define YYNOCODE 26
3
#define YYACTIONTYPE unsigned short int
#define ParseTOKENTYPE SStrToken
typedef
union
{
...
...
@@ -124,21 +127,29 @@ typedef union {
#endif
#define ParseARG_SDECL SSqlInfo* pInfo;
#define ParseARG_PDECL ,SSqlInfo* pInfo
#define ParseARG_FETCH SSqlInfo* pInfo = yypParser->pInfo
#define ParseARG_STORE yypParser->pInfo = pInfo
#define ParseARG_PARAM ,pInfo
#define ParseARG_FETCH SSqlInfo* pInfo=yypParser->pInfo;
#define ParseARG_STORE yypParser->pInfo=pInfo;
#define ParseCTX_SDECL
#define ParseCTX_PDECL
#define ParseCTX_PARAM
#define ParseCTX_FETCH
#define ParseCTX_STORE
#define YYFALLBACK 1
#define YYNSTATE 317
#define YYNRULE 270
#define YYNTOKEN 187
#define YY_MAX_SHIFT 316
#define YY_MIN_SHIFTREDUCE 511
#define YY_MAX_SHIFTREDUCE 780
#define YY_ERROR_ACTION 781
#define YY_ACCEPT_ACTION 782
#define YY_NO_ACTION 783
#define YY_MIN_REDUCE 784
#define YY_MAX_REDUCE 1053
#define YYNSTATE 321
#define YYNRULE 271
#define YYNRULE_WITH_ACTION 271
#define YYNTOKEN 188
#define YY_MAX_SHIFT 320
#define YY_MIN_SHIFTREDUCE 516
#define YY_MAX_SHIFTREDUCE 786
#define YY_ERROR_ACTION 787
#define YY_ACCEPT_ACTION 788
#define YY_NO_ACTION 789
#define YY_MIN_REDUCE 790
#define YY_MAX_REDUCE 1060
/************* End control #defines *******************************************/
#define YY_NLOOKAHEAD ((int)(sizeof(yy_lookahead)/sizeof(yy_lookahead[0])))
/* Define the yytestcase() macro to be a no-op if is not already defined
** otherwise.
...
...
@@ -205,145 +216,145 @@ typedef union {
*********** Begin parsing tables **********************************************/
#define YY_ACTTAB_COUNT (685)
static
const
YYACTIONTYPE
yy_action
[]
=
{
/* 0 */
925
,
559
,
206
,
314
,
211
,
141
,
952
,
3
,
168
,
560
,
/* 10 */
78
2
,
316
,
134
,
47
,
48
,
141
,
51
,
52
,
30
,
183
,
/* 20 */
21
7
,
41
,
183
,
50
,
264
,
55
,
53
,
57
,
54
,
1034
,
/* 30 */
93
1
,
214
,
1035
,
46
,
45
,
17
,
183
,
44
,
43
,
42
,
/* 40 */
47
,
48
,
223
,
51
,
52
,
213
,
1035
,
217
,
41
,
559
,
/* 50 */
50
,
26
4
,
55
,
53
,
57
,
54
,
943
,
560
,
181
,
208
,
/* 60 */
46
,
45
,
9
28
,
222
,
44
,
43
,
42
,
48
,
949
,
51
,
/* 70 */
52
,
24
4
,
983
,
217
,
41
,
249
,
50
,
264
,
55
,
53
,
/* 80 */
57
,
54
,
9
84
,
638
,
259
,
85
,
46
,
45
,
280
,
931
,
/* 90 */
44
,
43
,
42
,
51
2
,
513
,
514
,
515
,
516
,
517
,
518
,
/* 100 */
5
19
,
520
,
521
,
522
,
523
,
524
,
315
,
943
,
187
,
207
,
/* 110 */
70
,
290
,
289
,
47
,
48
,
30
,
51
,
52
,
300
,
919
,
/* 120 */
21
7
,
41
,
209
,
50
,
264
,
55
,
53
,
57
,
54
,
44
,
/* 130 */
43
,
42
,
72
4
,
46
,
45
,
674
,
224
,
44
,
43
,
42
,
/* 140 */
47
,
49
,
24
,
51
,
52
,
228
,
141
,
217
,
41
,
559
,
/* 150 */
50
,
26
4
,
55
,
53
,
57
,
54
,
220
,
560
,
105
,
928
,
/* 160 */
46
,
45
,
931
,
300
,
44
,
43
,
42
,
23
,
278
,
309
,
/* 170 */
3
08
,
277
,
276
,
275
,
307
,
274
,
306
,
305
,
304
,
273
,
/* 180 */
30
3
,
302
,
891
,
30
,
879
,
880
,
881
,
882
,
883
,
884
,
/* 190 */
8
85
,
886
,
887
,
888
,
889
,
890
,
892
,
893
,
51
,
52
,
/* 200 */
83
0
,
1031
,
217
,
41
,
167
,
50
,
264
,
55
,
53
,
57
,
/* 210 */
54
,
26
1
,
18
,
78
,
230
,
46
,
45
,
287
,
28
6
,
44
,
/* 220 */
43
,
42
,
21
6
,
739
,
221
,
30
,
728
,
928
,
731
,
192
,
/* 230 */
73
4
,
216
,
739
,
310
,
1030
,
728
,
193
,
731
,
236
,
734
,
/* 240 */
30
,
118
,
117
,
191
,
677
,
559
,
240
,
239
,
55
,
53
,
/* 250 */
57
,
54
,
25
,
560
,
202
,
203
,
46
,
45
,
263
,
931
,
/* 260 */
44
,
43
,
42
,
20
2
,
203
,
74
,
283
,
61
,
23
,
928
,
/* 270 */
3
09
,
308
,
74
,
36
,
730
,
307
,
733
,
306
,
305
,
304
,
/* 280 */
36
,
30
3
,
302
,
899
,
927
,
662
,
897
,
898
,
659
,
6
2
,
/* 290 */
66
0
,
900
,
661
,
902
,
903
,
901
,
82
,
904
,
905
,
103
,
/* 300 */
97
,
10
8
,
243
,
917
,
68
,
30
,
107
,
113
,
116
,
106
,
/* 310 */
199
,
5
,
33
,
157
,
141
,
110
,
231
,
232
,
156
,
92
,
/* 320 */
87
,
91
,
681
,
226
,
30
,
56
,
30
,
914
,
915
,
29
,
/* 330 */
9
18
,
729
,
740
,
732
,
56
,
175
,
173
,
171
,
736
,
1
,
/* 340 */
155
,
740
,
170
,
121
,
120
,
119
,
284
,
736
,
229
,
928
,
/* 350 */
2
65
,
46
,
45
,
69
,
735
,
44
,
43
,
42
,
839
,
666
,
/* 360 */
12
,
667
,
167
,
735
,
84
,
288
,
81
,
292
,
928
,
215
,
/* 370 */
9
28
,
313
,
312
,
126
,
132
,
130
,
129
,
80
,
705
,
706
,
/* 380 */
83
1
,
79
,
280
,
929
,
167
,
916
,
737
,
245
,
726
,
684
,
/* 390 */
71
,
31
,
227
,
994
,
663
,
282
,
690
,
247
,
696
,
697
,
/* 400 */
136
,
760
,
60
,
20
,
741
,
19
,
64
,
648
,
19
,
241
,
/* 410 */
267
,
31
,
650
,
6
,
31
,
269
,
60
,
1029
,
649
,
83
,
/* 420 */
28
,
200
,
60
,
270
,
727
,
201
,
65
,
96
,
95
,
18
5
,
/* 430 */
14
,
13
,
993
,
102
,
101
,
67
,
218
,
637
,
16
,
15
,
/* 440 */
66
4
,
186
,
665
,
738
,
115
,
114
,
743
,
188
,
182
,
189
,
/* 450 */
19
0
,
196
,
197
,
195
,
180
,
194
,
184
,
133
,
1045
,
990
,
/* 460 */
930
,
989
,
219
,
291
,
39
,
951
,
959
,
944
,
961
,
135
,
/* 470 */
139
,
976
,
248
,
975
,
926
,
131
,
152
,
151
,
924
,
153
,
/* 480 */
25
0
,
154
,
689
,
210
,
252
,
150
,
257
,
145
,
142
,
842
,
/* 490 */
941
,
143
,
272
,
144
,
262
,
37
,
146
,
66
,
58
,
178
,
/* 500 */
63
,
260
,
34
,
258
,
256
,
281
,
838
,
147
,
1050
,
254
,
/* 510 */
93
,
1049
,
1047
,
158
,
285
,
1044
,
99
,
148
,
1043
,
1041
,
/* 520 */
159
,
860
,
251
,
35
,
32
,
38
,
149
,
179
,
827
,
109
,
/* 530 */
825
,
111
,
112
,
823
,
822
,
233
,
169
,
820
,
819
,
818
,
/* 540 */
8
17
,
816
,
815
,
172
,
174
,
40
,
812
,
810
,
808
,
806
,
/* 550 */
17
6
,
803
,
177
,
301
,
246
,
72
,
75
,
104
,
253
,
97
7
,
/* 560 */
29
3
,
294
,
295
,
296
,
297
,
204
,
225
,
298
,
271
,
299
,
/* 570 */
311
,
780
,
205
,
198
,
234
,
88
,
89
,
235
,
779
,
237
,
/* 580 */
238
,
778
,
766
,
765
,
242
,
247
,
821
,
814
,
162
,
266
,
/* 590 */
12
2
,
861
,
160
,
165
,
161
,
164
,
163
,
166
,
123
,
124
,
/* 600 */
813
,
805
,
895
,
125
,
804
,
2
,
8
,
73
,
4
,
669
,
/* 610 */
76
,
691
,
137
,
212
,
694
,
86
,
138
,
77
,
907
,
255
,
/* 620 */
9
,
698
,
140
,
26
,
742
,
7
,
27
,
11
,
10
,
2
1
,
/* 630 */
84
,
744
,
22
,
268
,
601
,
597
,
595
,
594
,
593
,
590
,
/* 640 */
5
63
,
279
,
94
,
90
,
31
,
59
,
640
,
639
,
636
,
58
5
,
/* 650 */
583
,
98
,
575
,
581
,
577
,
579
,
573
,
571
,
604
,
603
,
/* 660 */
602
,
600
,
599
,
100
,
598
,
596
,
592
,
591
,
60
,
561
,
/* 670 */
528
,
784
,
526
,
783
,
783
,
783
,
783
,
783
,
783
,
127
,
/* 680 */
78
3
,
783
,
783
,
783
,
128
,
/* 0 */
135
,
564
,
207
,
318
,
212
,
142
,
958
,
230
,
142
,
565
,
/* 10 */
78
8
,
320
,
17
,
47
,
48
,
142
,
51
,
52
,
30
,
184
,
/* 20 */
21
8
,
41
,
184
,
50
,
265
,
55
,
53
,
57
,
54
,
1040
,
/* 30 */
93
7
,
215
,
1041
,
46
,
45
,
182
,
184
,
44
,
43
,
42
,
/* 40 */
47
,
48
,
935
,
51
,
52
,
214
,
1041
,
218
,
41
,
564
,
/* 50 */
50
,
26
5
,
55
,
53
,
57
,
54
,
949
,
565
,
188
,
209
,
/* 60 */
46
,
45
,
9
34
,
250
,
44
,
43
,
42
,
48
,
955
,
51
,
/* 70 */
52
,
24
5
,
989
,
218
,
41
,
79
,
50
,
265
,
55
,
53
,
/* 80 */
57
,
54
,
9
90
,
106
,
260
,
281
,
46
,
45
,
304
,
227
,
/* 90 */
44
,
43
,
42
,
51
7
,
518
,
519
,
520
,
521
,
522
,
523
,
/* 100 */
5
24
,
525
,
526
,
527
,
528
,
529
,
319
,
643
,
85
,
208
,
/* 110 */
70
,
564
,
304
,
47
,
48
,
30
,
51
,
52
,
1037
,
565
,
/* 120 */
21
8
,
41
,
923
,
50
,
265
,
55
,
53
,
57
,
54
,
44
,
/* 130 */
43
,
42
,
72
9
,
46
,
45
,
294
,
293
,
44
,
43
,
42
,
/* 140 */
47
,
49
,
925
,
51
,
52
,
1036
,
142
,
218
,
41
,
564
,
/* 150 */
50
,
26
5
,
55
,
53
,
57
,
54
,
221
,
565
,
228
,
934
,
/* 160 */
46
,
45
,
283
,
1052
,
44
,
43
,
42
,
23
,
279
,
313
,
/* 170 */
3
12
,
278
,
277
,
276
,
311
,
275
,
310
,
309
,
308
,
274
,
/* 180 */
30
7
,
306
,
897
,
30
,
885
,
886
,
887
,
888
,
889
,
890
,
/* 190 */
8
91
,
892
,
893
,
894
,
895
,
896
,
898
,
899
,
51
,
52
,
/* 200 */
83
6
,
281
,
218
,
41
,
168
,
50
,
265
,
55
,
53
,
57
,
/* 210 */
54
,
26
2
,
18
,
78
,
25
,
46
,
45
,
1
,
15
6
,
44
,
/* 220 */
43
,
42
,
21
7
,
744
,
222
,
30
,
733
,
934
,
736
,
193
,
/* 230 */
73
9
,
217
,
744
,
223
,
12
,
733
,
194
,
736
,
84
,
739
,
/* 240 */
81
,
119
,
118
,
192
,
317
,
316
,
127
,
225
,
55
,
53
,
/* 250 */
57
,
54
,
949
,
731
,
203
,
204
,
46
,
45
,
264
,
937
,
/* 260 */
44
,
43
,
42
,
20
3
,
204
,
1035
,
284
,
210
,
23
,
934
,
/* 270 */
3
13
,
312
,
74
,
937
,
735
,
311
,
738
,
310
,
309
,
308
,
/* 280 */
36
,
30
7
,
306
,
905
,
201
,
667
,
903
,
904
,
664
,
73
2
,
/* 290 */
66
5
,
906
,
666
,
908
,
909
,
907
,
82
,
910
,
911
,
104
,
/* 300 */
97
,
10
9
,
244
,
202
,
68
,
30
,
108
,
114
,
117
,
107
,
/* 310 */
74
,
200
,
5
,
33
,
158
,
111
,
232
,
233
,
36
,
157
,
/* 320 */
92
,
87
,
91
,
682
,
229
,
56
,
30
,
920
,
921
,
29
,
/* 330 */
9
24
,
291
,
745
,
30
,
56
,
176
,
174
,
172
,
741
,
314
,
/* 340 */
931
,
745
,
171
,
122
,
121
,
120
,
285
,
741
,
30
,
934
,
/* 350 */
2
37
,
46
,
45
,
69
,
740
,
44
,
43
,
42
,
689
,
241
,
/* 360 */
240
,
266
,
734
,
740
,
737
,
937
,
248
,
292
,
80
,
61
,
/* 370 */
9
34
,
133
,
131
,
130
,
296
,
3
,
169
,
934
,
186
,
845
,
/* 380 */
83
7
,
71
,
224
,
168
,
168
,
922
,
742
,
710
,
711
,
679
,
/* 390 */
216
,
62
,
933
,
231
,
668
,
187
,
24
,
288
,
287
,
246
,
/* 400 */
695
,
686
,
701
,
31
,
137
,
702
,
60
,
765
,
746
,
20
,
/* 410 */
64
,
19
,
19
,
653
,
189
,
268
,
655
,
31
,
270
,
31
,
/* 420 */
60
,
654
,
83
,
28
,
183
,
60
,
271
,
96
,
190
,
9
5
,
/* 430 */
65
,
14
,
1000
,
13
,
6
,
67
,
103
,
642
,
102
,
671
,
/* 440 */
66
9
,
672
,
670
,
16
,
191
,
15
,
116
,
115
,
197
,
198
,
/* 450 */
19
6
,
181
,
195
,
185
,
936
,
999
,
219
,
748
,
996
,
995
,
/* 460 */
220
,
295
,
242
,
134
,
39
,
957
,
965
,
967
,
136
,
950
,
/* 470 */
249
,
982
,
140
,
981
,
743
,
932
,
152
,
132
,
153
,
930
,
/* 480 */
25
1
,
154
,
155
,
848
,
694
,
305
,
147
,
273
,
947
,
143
,
/* 490 */
37
,
263
,
144
,
145
,
211
,
179
,
66
,
34
,
282
,
253
,
/* 500 */
258
,
63
,
58
,
844
,
261
,
1057
,
93
,
259
,
1056
,
146
,
/* 510 */
257
,
1054
,
159
,
286
,
1051
,
99
,
289
,
1050
,
1047
,
160
,
/* 520 */
866
,
148
,
255
,
35
,
32
,
38
,
180
,
833
,
110
,
831
,
/* 530 */
112
,
113
,
829
,
828
,
234
,
170
,
826
,
252
,
825
,
824
,
/* 540 */
8
23
,
822
,
821
,
173
,
175
,
818
,
816
,
814
,
40
,
812
,
/* 550 */
17
7
,
809
,
178
,
105
,
247
,
72
,
75
,
254
,
983
,
29
7
,
/* 560 */
29
8
,
299
,
300
,
301
,
302
,
303
,
315
,
786
,
205
,
226
,
/* 570 */
235
,
272
,
236
,
785
,
238
,
239
,
206
,
199
,
88
,
784
,
/* 580 */
89
,
771
,
770
,
243
,
248
,
76
,
827
,
674
,
267
,
8
,
/* 590 */
12
3
,
696
,
124
,
163
,
162
,
867
,
161
,
164
,
165
,
167
,
/* 600 */
166
,
820
,
2
,
125
,
819
,
901
,
126
,
811
,
4
,
73
,
/* 610 */
810
,
138
,
151
,
149
,
150
,
139
,
699
,
77
,
913
,
213
,
/* 620 */
256
,
26
,
703
,
141
,
9
,
10
,
747
,
27
,
7
,
1
1
,
/* 630 */
21
,
749
,
22
,
86
,
269
,
606
,
602
,
84
,
600
,
599
,
/* 640 */
5
98
,
595
,
280
,
568
,
94
,
90
,
31
,
774
,
59
,
64
5
,
/* 650 */
644
,
641
,
590
,
588
,
98
,
100
,
580
,
586
,
582
,
584
,
/* 660 */
578
,
101
,
576
,
609
,
608
,
607
,
605
,
604
,
290
,
603
,
/* 670 */
601
,
597
,
596
,
60
,
566
,
533
,
531
,
128
,
790
,
789
,
/* 680 */
78
9
,
789
,
789
,
789
,
129
,
};
static
const
YYCODETYPE
yy_lookahead
[]
=
{
/* 0 */
191
,
1
,
190
,
191
,
210
,
191
,
191
,
19
4
,
195
,
9
,
/* 10 */
188
,
189
,
191
,
13
,
14
,
191
,
16
,
17
,
191
,
252
,
/* 0 */
191
,
1
,
190
,
191
,
210
,
191
,
191
,
19
1
,
191
,
9
,
/* 10 */
188
,
189
,
252
,
13
,
14
,
191
,
16
,
17
,
191
,
252
,
/* 20 */
20
,
21
,
252
,
23
,
24
,
25
,
26
,
27
,
28
,
262
,
/* 30 */
236
,
261
,
262
,
33
,
34
,
252
,
252
,
37
,
38
,
39
,
/* 40 */
13
,
14
,
2
33
,
16
,
17
,
261
,
262
,
20
,
21
,
1
,
/* 40 */
13
,
14
,
2
26
,
16
,
17
,
261
,
262
,
20
,
21
,
1
,
/* 50 */
23
,
24
,
25
,
26
,
27
,
28
,
234
,
9
,
252
,
232
,
/* 60 */
33
,
34
,
235
,
2
10
,
37
,
38
,
39
,
14
,
253
,
16
,
/* 70 */
17
,
249
,
258
,
20
,
21
,
25
4
,
23
,
24
,
25
,
26
,
/* 80 */
27
,
28
,
258
,
5
,
260
,
197
,
33
,
34
,
79
,
236
,
/* 60 */
33
,
34
,
235
,
2
54
,
37
,
38
,
39
,
14
,
253
,
16
,
/* 70 */
17
,
249
,
258
,
20
,
21
,
25
8
,
23
,
24
,
25
,
26
,
/* 80 */
27
,
28
,
258
,
76
,
260
,
79
,
33
,
34
,
81
,
68
,
/* 90 */
37
,
38
,
39
,
45
,
46
,
47
,
48
,
49
,
50
,
51
,
/* 100 */
52
,
53
,
54
,
55
,
56
,
57
,
58
,
234
,
252
,
61
,
/* 110 */
110
,
33
,
34
,
13
,
14
,
191
,
16
,
17
,
81
,
231
,
/* 120 */
20
,
21
,
249
,
23
,
24
,
25
,
26
,
27
,
28
,
37
,
/* 130 */
38
,
39
,
105
,
33
,
34
,
109
,
210
,
37
,
38
,
39
,
/* 140 */
13
,
14
,
116
,
16
,
17
,
68
,
191
,
20
,
21
,
1
,
/* 150 */
23
,
24
,
25
,
26
,
27
,
28
,
232
,
9
,
76
,
235
,
/* 160 */
33
,
34
,
236
,
81
,
37
,
38
,
39
,
88
,
89
,
90
,
/* 100 */
52
,
53
,
54
,
55
,
56
,
57
,
58
,
5
,
197
,
61
,
/* 110 */
110
,
1
,
81
,
13
,
14
,
191
,
16
,
17
,
252
,
9
,
/* 120 */
20
,
21
,
0
,
23
,
24
,
25
,
26
,
27
,
28
,
37
,
/* 130 */
38
,
39
,
105
,
33
,
34
,
33
,
34
,
37
,
38
,
39
,
/* 140 */
13
,
14
,
231
,
16
,
17
,
252
,
191
,
20
,
21
,
1
,
/* 150 */
23
,
24
,
25
,
26
,
27
,
28
,
232
,
9
,
137
,
235
,
/* 160 */
33
,
34
,
141
,
236
,
37
,
38
,
39
,
88
,
89
,
90
,
/* 170 */
91
,
92
,
93
,
94
,
95
,
96
,
97
,
98
,
99
,
100
,
/* 180 */
101
,
102
,
209
,
191
,
211
,
212
,
213
,
214
,
215
,
216
,
/* 190 */
217
,
218
,
219
,
220
,
221
,
222
,
223
,
224
,
16
,
17
,
/* 200 */
196
,
252
,
20
,
21
,
200
,
23
,
24
,
25
,
26
,
27
,
/* 210 */
28
,
256
,
44
,
258
,
1
37
,
33
,
34
,
140
,
141
,
37
,
/* 200 */
196
,
79
,
20
,
21
,
200
,
23
,
24
,
25
,
26
,
27
,
/* 210 */
28
,
256
,
44
,
258
,
1
04
,
33
,
34
,
198
,
199
,
37
,
/* 220 */
38
,
39
,
1
,
2
,
232
,
191
,
5
,
235
,
7
,
61
,
/* 230 */
9
,
1
,
2
,
210
,
252
,
5
,
68
,
7
,
135
,
9
,
/* 240 */
1
91
,
73
,
74
,
75
,
37
,
1
,
143
,
144
,
25
,
26
,
/* 250 */
27
,
28
,
104
,
9
,
33
,
34
,
33
,
34
,
37
,
236
,
/* 260 */
37
,
38
,
39
,
33
,
34
,
104
,
232
,
10
9
,
88
,
235
,
/* 270 */
90
,
91
,
104
,
112
,
5
,
95
,
7
,
97
,
98
,
99
,
/* 280 */
112
,
101
,
102
,
209
,
2
35
,
2
,
212
,
213
,
5
,
131
,
/* 230 */
9
,
1
,
2
,
210
,
104
,
5
,
68
,
7
,
108
,
9
,
/* 240 */
1
10
,
73
,
74
,
75
,
65
,
66
,
67
,
210
,
25
,
26
,
/* 250 */
27
,
28
,
234
,
1
,
33
,
34
,
33
,
34
,
37
,
236
,
/* 260 */
37
,
38
,
39
,
33
,
34
,
252
,
232
,
24
9
,
88
,
235
,
/* 270 */
90
,
91
,
104
,
236
,
5
,
95
,
7
,
97
,
98
,
99
,
/* 280 */
112
,
101
,
102
,
209
,
2
52
,
2
,
212
,
213
,
5
,
37
,
/* 290 */
7
,
217
,
9
,
219
,
220
,
221
,
197
,
223
,
224
,
62
,
/* 300 */
63
,
64
,
134
,
0
,
136
,
191
,
69
,
70
,
71
,
72
,
/* 310 */
1
42
,
62
,
63
,
64
,
191
,
78
,
33
,
34
,
69
,
70
,
/* 320 */
7
1
,
72
,
115
,
68
,
191
,
104
,
191
,
228
,
229
,
230
,
/* 330 */
231
,
5
,
111
,
7
,
104
,
62
,
63
,
64
,
117
,
198
,
/* 340 */
19
9
,
111
,
69
,
70
,
71
,
72
,
232
,
117
,
191
,
235
,
/* 350 */
15
,
33
,
34
,
197
,
133
,
37
,
38
,
39
,
196
,
5
,
/* 360 */
1
04
,
7
,
200
,
133
,
108
,
232
,
110
,
232
,
235
,
60
,
/* 370 */
235
,
6
5
,
66
,
67
,
62
,
63
,
64
,
237
,
124
,
125
,
/* 380 */
196
,
25
8
,
79
,
226
,
200
,
229
,
117
,
105
,
1
,
105
,
/* 390 */
250
,
109
,
137
,
227
,
111
,
140
,
105
,
113
,
105
,
105
,
/* 400 */
10
9
,
105
,
109
,
109
,
105
,
109
,
109
,
105
,
109
,
191
,
/* 410 */
10
5
,
109
,
105
,
104
,
109
,
105
,
109
,
252
,
105
,
109
,
/* 420 */
10
4
,
252
,
109
,
107
,
37
,
252
,
129
,
138
,
139
,
252
,
/* 430 */
1
38
,
139
,
227
,
138
,
139
,
104
,
227
,
106
,
138
,
139
,
/* 440 */
5
,
252
,
7
,
117
,
76
,
77
,
111
,
252
,
252
,
252
,
/* 450 */
252
,
252
,
252
,
252
,
2
52
,
252
,
252
,
191
,
236
,
227
,
/* 460 */
2
36
,
227
,
227
,
227
,
251
,
191
,
191
,
234
,
191
,
191
,
/* 470 */
191
,
259
,
234
,
259
,
234
,
60
,
191
,
238
,
191
,
191
,
/* 480 */
255
,
191
,
1
17
,
255
,
255
,
239
,
255
,
244
,
247
,
191
,
/* 490 */
248
,
246
,
191
,
245
,
122
,
191
,
243
,
128
,
127
,
191
,
/* 500 */
130
,
126
,
191
,
121
,
120
,
191
,
191
,
242
,
191
,
119
,
/* 510 */
1
91
,
191
,
191
,
191
,
191
,
191
,
191
,
24
1
,
191
,
191
,
/* 520 */
191
,
191
,
118
,
191
,
191
,
191
,
240
,
191
,
191
,
191
,
/* 530 */
191
,
191
,
191
,
191
,
191
,
191
,
191
,
1
91
,
191
,
191
,
/* 540 */
191
,
191
,
191
,
191
,
191
,
1
32
,
191
,
191
,
191
,
191
,
/* 550 */
191
,
191
,
191
,
103
,
192
,
192
,
192
,
87
,
192
,
192
,
/* 560 */
86
,
50
,
83
,
85
,
54
,
192
,
192
,
84
,
192
,
8
2
,
/* 570 */
79
,
5
,
192
,
192
,
145
,
197
,
197
,
5
,
5
,
14
5
,
/* 580 */
5
,
5
,
90
,
89
,
135
,
113
,
192
,
192
,
202
,
107
,
/* 590 */
193
,
208
,
207
,
204
,
206
,
203
,
205
,
201
,
193
,
193
,
/* 600 */
192
,
192
,
225
,
193
,
192
,
198
,
104
,
114
,
194
,
105
,
/* 610 */
1
09
,
105
,
104
,
1
,
105
,
76
,
109
,
104
,
225
,
104
,
/* 620 */
1
23
,
105
,
104
,
109
,
105
,
104
,
109
,
104
,
123
,
104
,
/* 630 */
10
8
,
111
,
104
,
107
,
9
,
5
,
5
,
5
,
5
,
5
,
/* 640 */
80
,
15
,
139
,
76
,
109
,
16
,
5
,
5
,
105
,
5
,
/* 650 */
5
,
1
39
,
5
,
5
,
5
,
5
,
5
,
5
,
5
,
5
,
/* 660 */
5
,
5
,
5
,
139
,
5
,
5
,
5
,
5
,
109
,
80
,
/* 670 */
60
,
0
,
59
,
263
,
263
,
263
,
263
,
263
,
263
,
21
,
/* 300 */
63
,
64
,
134
,
252
,
136
,
191
,
69
,
70
,
71
,
72
,
/* 310 */
1
04
,
143
,
62
,
63
,
64
,
78
,
33
,
34
,
112
,
69
,
/* 320 */
7
0
,
71
,
72
,
37
,
68
,
104
,
191
,
228
,
229
,
230
,
/* 330 */
231
,
75
,
111
,
191
,
104
,
62
,
63
,
64
,
117
,
210
,
/* 340 */
19
1
,
111
,
69
,
70
,
71
,
72
,
232
,
117
,
191
,
235
,
/* 350 */
135
,
33
,
34
,
197
,
133
,
37
,
38
,
39
,
105
,
144
,
/* 360 */
1
45
,
15
,
5
,
133
,
7
,
236
,
113
,
232
,
237
,
109
,
/* 370 */
235
,
6
2
,
63
,
64
,
232
,
194
,
195
,
235
,
252
,
196
,
/* 380 */
196
,
25
0
,
233
,
200
,
200
,
229
,
117
,
124
,
125
,
109
,
/* 390 */
60
,
131
,
235
,
137
,
111
,
252
,
116
,
141
,
142
,
105
,
/* 400 */
10
5
,
115
,
105
,
109
,
109
,
105
,
109
,
105
,
105
,
109
,
/* 410 */
10
9
,
109
,
109
,
105
,
252
,
105
,
105
,
109
,
105
,
109
,
/* 420 */
10
9
,
105
,
109
,
104
,
252
,
109
,
107
,
138
,
252
,
140
,
/* 430 */
1
29
,
138
,
227
,
140
,
104
,
104
,
138
,
106
,
140
,
5
,
/* 440 */
5
,
7
,
7
,
138
,
252
,
140
,
76
,
77
,
252
,
252
,
/* 450 */
252
,
252
,
252
,
252
,
2
36
,
227
,
227
,
111
,
227
,
227
,
/* 460 */
2
27
,
227
,
191
,
191
,
251
,
191
,
191
,
191
,
191
,
234
,
/* 470 */
234
,
259
,
191
,
259
,
117
,
234
,
238
,
60
,
191
,
191
,
/* 480 */
255
,
191
,
1
91
,
191
,
117
,
103
,
243
,
191
,
248
,
247
,
/* 490 */
191
,
122
,
246
,
245
,
255
,
191
,
128
,
191
,
191
,
255
,
/* 500 */
255
,
130
,
127
,
191
,
126
,
191
,
191
,
121
,
191
,
244
,
/* 510 */
1
20
,
191
,
191
,
191
,
191
,
191
,
191
,
19
1
,
191
,
191
,
/* 520 */
191
,
242
,
119
,
191
,
191
,
191
,
191
,
191
,
191
,
191
,
/* 530 */
191
,
191
,
191
,
191
,
191
,
191
,
191
,
1
18
,
191
,
191
,
/* 540 */
191
,
191
,
191
,
191
,
191
,
1
91
,
191
,
191
,
132
,
191
,
/* 550 */
191
,
191
,
191
,
87
,
192
,
192
,
192
,
192
,
192
,
86
,
/* 560 */
50
,
83
,
85
,
54
,
84
,
82
,
79
,
5
,
192
,
19
2
,
/* 570 */
146
,
192
,
5
,
5
,
146
,
5
,
192
,
192
,
197
,
5
,
/* 580 */
197
,
90
,
89
,
135
,
113
,
109
,
192
,
105
,
107
,
104
,
/* 590 */
193
,
105
,
193
,
202
,
206
,
208
,
207
,
205
,
203
,
201
,
/* 600 */
204
,
192
,
198
,
193
,
192
,
225
,
193
,
192
,
194
,
114
,
/* 610 */
1
92
,
104
,
239
,
241
,
240
,
109
,
105
,
104
,
225
,
1
,
/* 620 */
1
04
,
109
,
105
,
104
,
123
,
123
,
105
,
109
,
104
,
104
,
/* 630 */
10
4
,
111
,
104
,
76
,
107
,
9
,
5
,
108
,
5
,
5
,
/* 640 */
5
,
5
,
15
,
80
,
140
,
76
,
109
,
5
,
16
,
5
,
/* 650 */
5
,
1
05
,
5
,
5
,
140
,
140
,
5
,
5
,
5
,
5
,
/* 660 */
5
,
139
,
5
,
5
,
5
,
5
,
5
,
5
,
138
,
5
,
/* 670 */
5
,
5
,
5
,
109
,
80
,
60
,
59
,
21
,
0
,
263
,
/* 680 */
263
,
263
,
263
,
263
,
21
,
263
,
263
,
263
,
263
,
263
,
/* 690 */
263
,
263
,
263
,
263
,
263
,
263
,
263
,
263
,
263
,
263
,
/* 700 */
263
,
263
,
263
,
263
,
263
,
263
,
263
,
263
,
263
,
263
,
...
...
@@ -363,101 +374,104 @@ static const YYCODETYPE yy_lookahead[] = {
/* 840 */
263
,
263
,
263
,
263
,
263
,
263
,
263
,
263
,
263
,
263
,
/* 850 */
263
,
263
,
263
,
263
,
263
,
263
,
263
,
263
,
263
,
263
,
/* 860 */
263
,
263
,
263
,
263
,
263
,
263
,
263
,
263
,
263
,
263
,
/* 870 */
263
,
263
,
/* 870 */
263
,
263
,
263
,
};
#define YY_SHIFT_COUNT (3
16
)
#define YY_SHIFT_COUNT (3
20
)
#define YY_SHIFT_MIN (0)
#define YY_SHIFT_MAX (67
1
)
#define YY_SHIFT_MAX (67
8
)
static
const
unsigned
short
int
yy_shift_ofst
[]
=
{
/* 0 */
168
,
79
,
79
,
180
,
180
,
9
,
221
,
230
,
244
,
244
,
/* 10 */
244
,
244
,
244
,
244
,
244
,
244
,
244
,
0
,
48
,
230
,
/* 20 */
283
,
283
,
283
,
283
,
1
48
,
161
,
244
,
244
,
244
,
303
,
/* 30 */
244
,
244
,
82
,
9
,
37
,
37
,
685
,
685
,
685
,
230
,
/* 0 */
168
,
79
,
79
,
180
,
180
,
6
,
221
,
230
,
148
,
148
,
/* 10 */
148
,
148
,
148
,
148
,
148
,
148
,
148
,
0
,
48
,
230
,
/* 20 */
283
,
283
,
283
,
283
,
1
10
,
206
,
148
,
148
,
148
,
122
,
/* 30 */
148
,
148
,
7
,
6
,
31
,
31
,
685
,
685
,
685
,
230
,
/* 40 */
230
,
230
,
230
,
230
,
230
,
230
,
230
,
230
,
230
,
230
,
/* 50 */
230
,
230
,
230
,
230
,
230
,
230
,
230
,
230
,
230
,
283
,
/* 60 */
283
,
78
,
78
,
78
,
78
,
78
,
78
,
78
,
244
,
244
,
/* 70 */
244
,
207
,
244
,
161
,
161
,
244
,
244
,
244
,
254
,
254
,
/* 80 */
26
,
161
,
244
,
244
,
244
,
244
,
244
,
244
,
244
,
244
,
/* 90 */
244
,
244
,
244
,
244
,
244
,
244
,
244
,
244
,
244
,
244
,
/* 100 */
244
,
244
,
244
,
244
,
244
,
244
,
244
,
244
,
244
,
244
,
/* 110 */
244
,
244
,
244
,
244
,
244
,
244
,
244
,
244
,
244
,
244
,
/* 120 */
244
,
244
,
244
,
244
,
244
,
244
,
244
,
244
,
244
,
244
,
/* 130 */
244
,
244
,
244
,
415
,
415
,
415
,
365
,
365
,
365
,
415
,
/* 140 */
365
,
415
,
369
,
370
,
371
,
372
,
375
,
382
,
384
,
390
,
/* 150 */
404
,
413
,
415
,
415
,
415
,
450
,
9
,
9
,
415
,
415
,
/* 160 */
470
,
474
,
511
,
479
,
478
,
510
,
483
,
487
,
450
,
415
,
/* 170 */
491
,
491
,
415
,
491
,
415
,
491
,
415
,
415
,
685
,
685
,
/* 180 */
27
,
100
,
127
,
100
,
100
,
53
,
182
,
223
,
223
,
223
,
/* 190 */
223
,
237
,
249
,
273
,
318
,
318
,
318
,
318
,
77
,
103
,
/* 200 */
92
,
92
,
269
,
326
,
256
,
255
,
306
,
312
,
282
,
284
,
/* 210 */
291
,
293
,
294
,
296
,
299
,
387
,
309
,
335
,
158
,
297
,
/* 220 */
302
,
305
,
307
,
310
,
313
,
316
,
289
,
292
,
295
,
331
,
/* 230 */
300
,
354
,
435
,
368
,
566
,
429
,
572
,
573
,
434
,
575
,
/* 240 */
576
,
492
,
494
,
449
,
472
,
482
,
502
,
493
,
504
,
501
,
/* 250 */
506
,
508
,
509
,
507
,
513
,
612
,
515
,
516
,
518
,
514
,
/* 260 */
497
,
517
,
505
,
519
,
521
,
520
,
523
,
482
,
525
,
526
,
/* 270 */
528
,
522
,
539
,
625
,
630
,
631
,
632
,
633
,
634
,
560
,
/* 280 */
626
,
567
,
503
,
535
,
535
,
629
,
512
,
524
,
535
,
641
,
/* 290 */
642
,
543
,
535
,
644
,
645
,
647
,
648
,
649
,
650
,
651
,
/* 300 */
652
,
653
,
654
,
655
,
656
,
657
,
659
,
660
,
661
,
662
,
/* 310 */
559
,
589
,
658
,
663
,
610
,
613
,
671
,
/* 60 */
283
,
102
,
102
,
102
,
102
,
102
,
102
,
102
,
148
,
148
,
/* 70 */
148
,
286
,
148
,
206
,
206
,
148
,
148
,
148
,
263
,
263
,
/* 80 */
280
,
206
,
148
,
148
,
148
,
148
,
148
,
148
,
148
,
148
,
/* 90 */
148
,
148
,
148
,
148
,
148
,
148
,
148
,
148
,
148
,
148
,
/* 100 */
148
,
148
,
148
,
148
,
148
,
148
,
148
,
148
,
148
,
148
,
/* 110 */
148
,
148
,
148
,
148
,
148
,
148
,
148
,
148
,
148
,
148
,
/* 120 */
148
,
148
,
148
,
148
,
148
,
148
,
148
,
148
,
148
,
148
,
/* 130 */
148
,
148
,
148
,
148
,
417
,
417
,
417
,
367
,
367
,
367
,
/* 140 */
417
,
367
,
417
,
368
,
371
,
375
,
369
,
378
,
386
,
390
,
/* 150 */
403
,
419
,
416
,
417
,
417
,
417
,
382
,
6
,
6
,
417
,
/* 160 */
417
,
466
,
473
,
510
,
478
,
477
,
509
,
480
,
483
,
382
,
/* 170 */
417
,
487
,
487
,
417
,
487
,
417
,
487
,
417
,
417
,
685
,
/* 180 */
685
,
27
,
100
,
127
,
100
,
100
,
53
,
182
,
223
,
223
,
/* 190 */
223
,
223
,
237
,
250
,
273
,
318
,
318
,
318
,
318
,
256
,
/* 200 */
215
,
92
,
92
,
269
,
357
,
130
,
21
,
179
,
309
,
294
,
/* 210 */
253
,
295
,
297
,
300
,
302
,
303
,
252
,
330
,
346
,
260
,
/* 220 */
301
,
308
,
310
,
311
,
313
,
316
,
319
,
289
,
293
,
298
,
/* 230 */
331
,
305
,
434
,
435
,
370
,
562
,
424
,
567
,
568
,
428
,
/* 240 */
570
,
574
,
491
,
493
,
448
,
471
,
481
,
485
,
495
,
482
,
/* 250 */
476
,
486
,
507
,
511
,
506
,
513
,
618
,
516
,
517
,
519
,
/* 260 */
512
,
501
,
518
,
502
,
521
,
524
,
520
,
525
,
481
,
526
,
/* 270 */
527
,
528
,
529
,
557
,
626
,
631
,
633
,
634
,
635
,
636
,
/* 280 */
563
,
627
,
569
,
504
,
537
,
537
,
632
,
514
,
515
,
642
,
/* 290 */
522
,
530
,
537
,
644
,
645
,
546
,
537
,
647
,
648
,
651
,
/* 300 */
652
,
653
,
654
,
655
,
657
,
658
,
659
,
660
,
661
,
662
,
/* 310 */
664
,
665
,
666
,
667
,
564
,
594
,
656
,
663
,
615
,
617
,
/* 320 */
678
,
};
#define YY_REDUCE_COUNT (1
79
)
#define YY_REDUCE_MIN (-2
33
)
#define YY_REDUCE_MAX (41
4
)
#define YY_REDUCE_COUNT (1
80
)
#define YY_REDUCE_MIN (-2
40
)
#define YY_REDUCE_MAX (41
8
)
static
const
short
yy_reduce_ofst
[]
=
{
/* 0 */
-
178
,
-
27
,
-
27
,
74
,
74
,
99
,
-
230
,
-
216
,
-
173
,
-
176
,
/* 10 */
-
45
,
-
76
,
-
8
,
34
,
114
,
133
,
135
,
-
185
,
-
188
,
-
233
,
/* 20 */
-
206
,
-
147
,
-
74
,
23
,
-
179
,
-
127
,
-
186
,
123
,
-
191
,
-
112
,
/* 30 */
157
,
49
,
4
,
156
,
162
,
184
,
140
,
141
,
-
187
,
-
217
,
/* 40 */
-
194
,
-
144
,
-
51
,
-
18
,
165
,
169
,
173
,
177
,
189
,
195
,
/* 50 */
196
,
197
,
198
,
199
,
200
,
201
,
202
,
203
,
204
,
222
,
/* 60 */
224
,
166
,
205
,
209
,
232
,
234
,
235
,
236
,
218
,
266
,
/* 70 */
274
,
213
,
275
,
233
,
238
,
277
,
278
,
279
,
212
,
214
,
/* 80 */
239
,
240
,
285
,
287
,
288
,
290
,
298
,
301
,
304
,
308
,
/* 90 */
311
,
314
,
315
,
317
,
319
,
320
,
321
,
322
,
323
,
324
,
/* 100 */
325
,
327
,
328
,
329
,
330
,
332
,
333
,
334
,
336
,
337
,
/* 110 */
338
,
339
,
340
,
341
,
342
,
343
,
344
,
345
,
346
,
347
,
/* 120 */
348
,
349
,
350
,
351
,
352
,
353
,
355
,
356
,
357
,
358
,
/* 130 */
359
,
360
,
361
,
362
,
363
,
364
,
225
,
228
,
229
,
366
,
/* 140 */
231
,
367
,
242
,
241
,
245
,
248
,
243
,
253
,
265
,
276
,
/* 150 */
286
,
246
,
373
,
374
,
376
,
377
,
378
,
379
,
380
,
381
,
/* 160 */
383
,
385
,
388
,
386
,
391
,
392
,
389
,
396
,
393
,
394
,
/* 170 */
397
,
405
,
395
,
406
,
408
,
410
,
409
,
412
,
407
,
414
,
/* 10 */
-
45
,
-
76
,
-
8
,
34
,
114
,
135
,
142
,
-
185
,
-
188
,
-
233
,
/* 20 */
-
206
,
23
,
37
,
129
,
-
191
,
18
,
-
186
,
-
183
,
149
,
-
89
,
/* 30 */
-
184
,
157
,
4
,
156
,
183
,
184
,
131
,
19
,
181
,
-
240
,
/* 40 */
-
217
,
-
194
,
-
134
,
-
107
,
13
,
32
,
51
,
126
,
143
,
162
,
/* 50 */
172
,
176
,
192
,
196
,
197
,
198
,
199
,
200
,
201
,
-
73
,
/* 60 */
218
,
205
,
228
,
229
,
231
,
232
,
233
,
234
,
271
,
272
,
/* 70 */
274
,
213
,
275
,
235
,
236
,
276
,
277
,
281
,
212
,
214
,
/* 80 */
238
,
241
,
287
,
288
,
290
,
291
,
292
,
296
,
299
,
304
,
/* 90 */
306
,
307
,
312
,
314
,
315
,
317
,
320
,
321
,
322
,
323
,
/* 100 */
324
,
325
,
326
,
327
,
328
,
329
,
332
,
333
,
334
,
335
,
/* 110 */
336
,
337
,
338
,
339
,
340
,
341
,
342
,
343
,
344
,
345
,
/* 120 */
347
,
348
,
349
,
350
,
351
,
352
,
353
,
354
,
355
,
356
,
/* 130 */
358
,
359
,
360
,
361
,
362
,
363
,
364
,
225
,
239
,
244
,
/* 140 */
365
,
245
,
366
,
240
,
242
,
246
,
248
,
265
,
243
,
279
,
/* 150 */
372
,
374
,
373
,
376
,
377
,
379
,
380
,
381
,
383
,
384
,
/* 160 */
385
,
387
,
389
,
388
,
391
,
392
,
395
,
396
,
398
,
393
,
/* 170 */
394
,
397
,
399
,
409
,
410
,
412
,
413
,
415
,
418
,
404
,
/* 180 */
414
,
};
static
const
YYACTIONTYPE
yy_default
[]
=
{
/* 0 */
781
,
894
,
840
,
906
,
828
,
837
,
1037
,
1037
,
781
,
781
,
/* 10 */
781
,
781
,
781
,
781
,
781
,
781
,
781
,
953
,
800
,
1037
,
/* 20 */
781
,
781
,
781
,
781
,
781
,
781
,
781
,
781
,
781
,
837
,
/* 30 */
781
,
781
,
843
,
837
,
843
,
843
,
948
,
878
,
896
,
781
,
/* 40 */
781
,
781
,
781
,
781
,
781
,
781
,
781
,
781
,
781
,
781
,
/* 50 */
781
,
781
,
781
,
781
,
781
,
781
,
781
,
781
,
781
,
781
,
/* 60 */
781
,
781
,
781
,
781
,
781
,
781
,
781
,
781
,
781
,
781
,
/* 70 */
781
,
955
,
958
,
781
,
781
,
960
,
781
,
781
,
980
,
980
,
/* 80 */
946
,
781
,
781
,
781
,
781
,
781
,
781
,
781
,
781
,
781
,
/* 90 */
781
,
781
,
781
,
781
,
781
,
781
,
781
,
781
,
781
,
781
,
/* 100 */
781
,
781
,
781
,
781
,
781
,
781
,
781
,
781
,
781
,
826
,
/* 110 */
781
,
824
,
781
,
781
,
781
,
781
,
781
,
781
,
781
,
781
,
/* 120 */
781
,
781
,
781
,
781
,
781
,
781
,
811
,
781
,
781
,
781
,
/* 130 */
781
,
781
,
781
,
802
,
802
,
802
,
781
,
781
,
781
,
802
,
/* 140 */
781
,
802
,
987
,
991
,
985
,
973
,
981
,
972
,
968
,
966
,
/* 150 */
965
,
995
,
802
,
802
,
802
,
841
,
837
,
837
,
802
,
802
,
/* 160 */
859
,
857
,
855
,
847
,
853
,
849
,
851
,
845
,
829
,
802
,
/* 170 */
835
,
835
,
802
,
835
,
802
,
835
,
802
,
802
,
878
,
896
,
/* 180 */
781
,
996
,
781
,
1036
,
986
,
1026
,
1025
,
1032
,
1024
,
1023
,
/* 190 */
1022
,
781
,
781
,
781
,
1018
,
1019
,
1021
,
1020
,
781
,
781
,
/* 200 */
1028
,
1027
,
781
,
781
,
781
,
781
,
781
,
781
,
781
,
781
,
/* 210 */
781
,
781
,
781
,
781
,
781
,
781
,
998
,
781
,
992
,
988
,
/* 220 */
781
,
781
,
781
,
781
,
781
,
781
,
781
,
781
,
781
,
908
,
/* 230 */
781
,
781
,
781
,
781
,
781
,
781
,
781
,
781
,
781
,
781
,
/* 240 */
781
,
781
,
781
,
781
,
945
,
781
,
781
,
781
,
781
,
956
,
/* 250 */
781
,
781
,
781
,
781
,
781
,
781
,
781
,
781
,
781
,
982
,
/* 260 */
781
,
974
,
781
,
781
,
781
,
781
,
781
,
920
,
781
,
781
,
/* 270 */
781
,
781
,
781
,
781
,
781
,
781
,
781
,
781
,
781
,
781
,
/* 280 */
781
,
781
,
781
,
1048
,
1046
,
781
,
781
,
781
,
1042
,
781
,
/* 290 */
781
,
781
,
1040
,
781
,
781
,
781
,
781
,
781
,
781
,
781
,
/* 300 */
781
,
781
,
781
,
781
,
781
,
781
,
781
,
781
,
781
,
781
,
/* 310 */
862
,
781
,
809
,
807
,
781
,
798
,
781
,
/* 0 */
787
,
900
,
846
,
912
,
834
,
843
,
1043
,
1043
,
787
,
787
,
/* 10 */
787
,
787
,
787
,
787
,
787
,
787
,
787
,
959
,
806
,
1043
,
/* 20 */
787
,
787
,
787
,
787
,
787
,
787
,
787
,
787
,
787
,
843
,
/* 30 */
787
,
787
,
849
,
843
,
849
,
849
,
954
,
884
,
902
,
787
,
/* 40 */
787
,
787
,
787
,
787
,
787
,
787
,
787
,
787
,
787
,
787
,
/* 50 */
787
,
787
,
787
,
787
,
787
,
787
,
787
,
787
,
787
,
787
,
/* 60 */
787
,
787
,
787
,
787
,
787
,
787
,
787
,
787
,
787
,
787
,
/* 70 */
787
,
961
,
964
,
787
,
787
,
966
,
787
,
787
,
986
,
986
,
/* 80 */
952
,
787
,
787
,
787
,
787
,
787
,
787
,
787
,
787
,
787
,
/* 90 */
787
,
787
,
787
,
787
,
787
,
787
,
787
,
787
,
787
,
787
,
/* 100 */
787
,
787
,
787
,
787
,
787
,
787
,
787
,
787
,
787
,
787
,
/* 110 */
832
,
787
,
830
,
787
,
787
,
787
,
787
,
787
,
787
,
787
,
/* 120 */
787
,
787
,
787
,
787
,
787
,
787
,
787
,
817
,
787
,
787
,
/* 130 */
787
,
787
,
787
,
787
,
808
,
808
,
808
,
787
,
787
,
787
,
/* 140 */
808
,
787
,
808
,
993
,
997
,
991
,
979
,
987
,
978
,
974
,
/* 150 */
972
,
971
,
1001
,
808
,
808
,
808
,
847
,
843
,
843
,
808
,
/* 160 */
808
,
865
,
863
,
861
,
853
,
859
,
855
,
857
,
851
,
835
,
/* 170 */
808
,
841
,
841
,
808
,
841
,
808
,
841
,
808
,
808
,
884
,
/* 180 */
902
,
787
,
1002
,
787
,
1042
,
992
,
1032
,
1031
,
1038
,
1030
,
/* 190 */
1029
,
1028
,
787
,
787
,
787
,
1024
,
1025
,
1027
,
1026
,
787
,
/* 200 */
787
,
1034
,
1033
,
787
,
787
,
787
,
787
,
787
,
787
,
787
,
/* 210 */
787
,
787
,
787
,
787
,
787
,
787
,
787
,
1004
,
787
,
998
,
/* 220 */
994
,
787
,
787
,
787
,
787
,
787
,
787
,
787
,
787
,
787
,
/* 230 */
914
,
787
,
787
,
787
,
787
,
787
,
787
,
787
,
787
,
787
,
/* 240 */
787
,
787
,
787
,
787
,
787
,
951
,
787
,
787
,
787
,
787
,
/* 250 */
962
,
787
,
787
,
787
,
787
,
787
,
787
,
787
,
787
,
787
,
/* 260 */
988
,
787
,
980
,
787
,
787
,
787
,
787
,
787
,
926
,
787
,
/* 270 */
787
,
787
,
787
,
787
,
787
,
787
,
787
,
787
,
787
,
787
,
/* 280 */
787
,
787
,
787
,
787
,
1055
,
1053
,
787
,
787
,
787
,
787
,
/* 290 */
787
,
787
,
1049
,
787
,
787
,
787
,
1046
,
787
,
787
,
787
,
/* 300 */
787
,
787
,
787
,
787
,
787
,
787
,
787
,
787
,
787
,
787
,
/* 310 */
787
,
787
,
787
,
787
,
868
,
787
,
815
,
813
,
787
,
804
,
/* 320 */
787
,
};
/********** End of lemon-generated parsing tables *****************************/
...
...
@@ -616,6 +630,7 @@ static const YYCODETYPE yyFallback[] = {
0
,
/* SYNCDB => nothing */
0
,
/* ADD => nothing */
0
,
/* COLUMN => nothing */
0
,
/* LENGTH => nothing */
0
,
/* TAG => nothing */
0
,
/* CHANGE => nothing */
0
,
/* SET => nothing */
...
...
@@ -703,6 +718,7 @@ struct yyParser {
int
yyerrcnt
;
/* Shifts left before out of the error */
#endif
ParseARG_SDECL
/* A place to hold %extra_argument */
ParseCTX_SDECL
/* A place to hold %extra_context */
#if YYSTACKDEPTH<=0
int
yystksz
;
/* Current side of the stack */
yyStackEntry
*
yystack
;
/* The parser's stack */
...
...
@@ -889,55 +905,55 @@ static const char *const yyTokenName[] = {
/* 136 */
"SYNCDB"
,
/* 137 */
"ADD"
,
/* 138 */
"COLUMN"
,
/* 139 */
"
TAG
"
,
/* 140 */
"
CHANGE
"
,
/* 141 */
"
SET
"
,
/* 142 */
"
KILL
"
,
/* 143 */
"
CONNECTION
"
,
/* 144 */
"
STREAM
"
,
/* 145 */
"
COLON
"
,
/* 146 */
"
ABORT
"
,
/* 147 */
"A
FTER
"
,
/* 148 */
"A
TTACH
"
,
/* 149 */
"
BEFORE
"
,
/* 150 */
"BE
GIN
"
,
/* 151 */
"
CASCADE
"
,
/* 152 */
"C
LUSTER
"
,
/* 153 */
"C
ONFLICT
"
,
/* 154 */
"CO
PY
"
,
/* 155 */
"
DEFERRED
"
,
/* 156 */
"DE
LIMITERS
"
,
/* 157 */
"DE
TACH
"
,
/* 158 */
"
E
ACH"
,
/* 159 */
"E
ND
"
,
/* 160 */
"E
XPLAIN
"
,
/* 161 */
"
FAIL
"
,
/* 162 */
"F
OR
"
,
/* 163 */
"
IGNORE
"
,
/* 164 */
"I
MMEDIAT
E"
,
/* 165 */
"I
NITIALLY
"
,
/* 166 */
"IN
STEAD
"
,
/* 167 */
"
MATCH
"
,
/* 168 */
"
KEY
"
,
/* 169 */
"
OF
"
,
/* 170 */
"
RAISE
"
,
/* 171 */
"R
EPLAC
E"
,
/* 172 */
"RE
STRICT
"
,
/* 173 */
"R
OW
"
,
/* 174 */
"
STATEMENT
"
,
/* 175 */
"
TRIGGER
"
,
/* 176 */
"
VIEW
"
,
/* 177 */
"
SEMI
"
,
/* 178 */
"
NONE
"
,
/* 179 */
"
PREV
"
,
/* 180 */
"
LINEAR
"
,
/* 181 */
"
IMPORT
"
,
/* 182 */
"
TBNAME
"
,
/* 183 */
"
JOIN
"
,
/* 184 */
"
INSERT
"
,
/* 185 */
"IN
TO
"
,
/* 186 */
"
VALUES
"
,
/* 187 */
"
error
"
,
/* 139 */
"
LENGTH
"
,
/* 140 */
"
TAG
"
,
/* 141 */
"
CHANGE
"
,
/* 142 */
"
SET
"
,
/* 143 */
"
KILL
"
,
/* 144 */
"
CONNECTION
"
,
/* 145 */
"
STREAM
"
,
/* 146 */
"
COLON
"
,
/* 147 */
"A
BORT
"
,
/* 148 */
"A
FTER
"
,
/* 149 */
"
ATTACH
"
,
/* 150 */
"BE
FORE
"
,
/* 151 */
"
BEGIN
"
,
/* 152 */
"C
ASCADE
"
,
/* 153 */
"C
LUSTER
"
,
/* 154 */
"CO
NFLICT
"
,
/* 155 */
"
COPY
"
,
/* 156 */
"DE
FERRED
"
,
/* 157 */
"DE
LIMITERS
"
,
/* 158 */
"
DET
ACH"
,
/* 159 */
"E
ACH
"
,
/* 160 */
"E
ND
"
,
/* 161 */
"
EXPLAIN
"
,
/* 162 */
"F
AIL
"
,
/* 163 */
"
FOR
"
,
/* 164 */
"I
GNOR
E"
,
/* 165 */
"I
MMEDIATE
"
,
/* 166 */
"IN
ITIALLY
"
,
/* 167 */
"
INSTEAD
"
,
/* 168 */
"
MATCH
"
,
/* 169 */
"
KEY
"
,
/* 170 */
"
OF
"
,
/* 171 */
"R
AIS
E"
,
/* 172 */
"RE
PLACE
"
,
/* 173 */
"R
ESTRICT
"
,
/* 174 */
"
ROW
"
,
/* 175 */
"
STATEMENT
"
,
/* 176 */
"
TRIGGER
"
,
/* 177 */
"
VIEW
"
,
/* 178 */
"
SEMI
"
,
/* 179 */
"
NONE
"
,
/* 180 */
"
PREV
"
,
/* 181 */
"
LINEAR
"
,
/* 182 */
"
IMPORT
"
,
/* 183 */
"
TBNAME
"
,
/* 184 */
"
JOIN
"
,
/* 185 */
"IN
SERT
"
,
/* 186 */
"
INTO
"
,
/* 187 */
"
VALUES
"
,
/* 188 */
"program"
,
/* 189 */
"cmd"
,
/* 190 */
"dbPrefix"
,
...
...
@@ -1278,18 +1294,19 @@ static const char *const yyRuleName[] = {
/* 255 */
"cmd ::= SYNCDB ids REPLICA"
,
/* 256 */
"cmd ::= ALTER TABLE ids cpxName ADD COLUMN columnlist"
,
/* 257 */
"cmd ::= ALTER TABLE ids cpxName DROP COLUMN ids"
,
/* 258 */
"cmd ::= ALTER TABLE ids cpxName ADD TAG columnlist"
,
/* 259 */
"cmd ::= ALTER TABLE ids cpxName DROP TAG ids"
,
/* 260 */
"cmd ::= ALTER TABLE ids cpxName CHANGE TAG ids ids"
,
/* 261 */
"cmd ::= ALTER TABLE ids cpxName SET TAG ids EQ tagitem"
,
/* 262 */
"cmd ::= ALTER STABLE ids cpxName ADD COLUMN columnlist"
,
/* 263 */
"cmd ::= ALTER STABLE ids cpxName DROP COLUMN ids"
,
/* 264 */
"cmd ::= ALTER STABLE ids cpxName ADD TAG columnlist"
,
/* 265 */
"cmd ::= ALTER STABLE ids cpxName DROP TAG ids"
,
/* 266 */
"cmd ::= ALTER STABLE ids cpxName CHANGE TAG ids ids"
,
/* 267 */
"cmd ::= KILL CONNECTION INTEGER"
,
/* 268 */
"cmd ::= KILL STREAM INTEGER COLON INTEGER"
,
/* 269 */
"cmd ::= KILL QUERY INTEGER COLON INTEGER"
,
/* 258 */
"cmd ::= ALTER TABLE ids cpxName ALTER COLUMN LENGTH ids INTEGER"
,
/* 259 */
"cmd ::= ALTER TABLE ids cpxName ADD TAG columnlist"
,
/* 260 */
"cmd ::= ALTER TABLE ids cpxName DROP TAG ids"
,
/* 261 */
"cmd ::= ALTER TABLE ids cpxName CHANGE TAG ids ids"
,
/* 262 */
"cmd ::= ALTER TABLE ids cpxName SET TAG ids EQ tagitem"
,
/* 263 */
"cmd ::= ALTER STABLE ids cpxName ADD COLUMN columnlist"
,
/* 264 */
"cmd ::= ALTER STABLE ids cpxName DROP COLUMN ids"
,
/* 265 */
"cmd ::= ALTER STABLE ids cpxName ADD TAG columnlist"
,
/* 266 */
"cmd ::= ALTER STABLE ids cpxName DROP TAG ids"
,
/* 267 */
"cmd ::= ALTER STABLE ids cpxName CHANGE TAG ids ids"
,
/* 268 */
"cmd ::= KILL CONNECTION INTEGER"
,
/* 269 */
"cmd ::= KILL STREAM INTEGER COLON INTEGER"
,
/* 270 */
"cmd ::= KILL QUERY INTEGER COLON INTEGER"
,
};
#endif
/* NDEBUG */
...
...
@@ -1338,28 +1355,29 @@ static int yyGrowStack(yyParser *p){
/* Initialize a new parser that has already been allocated.
*/
void
ParseInit
(
void
*
yypParser
){
yyParser
*
pParser
=
(
yyParser
*
)
yypParser
;
void
ParseInit
(
void
*
yypRawParser
ParseCTX_PDECL
){
yyParser
*
yypParser
=
(
yyParser
*
)
yypRawParser
;
ParseCTX_STORE
#ifdef YYTRACKMAXSTACKDEPTH
pParser
->
yyhwm
=
0
;
yy
pParser
->
yyhwm
=
0
;
#endif
#if YYSTACKDEPTH<=0
pParser
->
yytos
=
NULL
;
pParser
->
yystack
=
NULL
;
pParser
->
yystksz
=
0
;
if
(
yyGrowStack
(
pParser
)
){
pParser
->
yystack
=
&
pParser
->
yystk0
;
pParser
->
yystksz
=
1
;
yy
pParser
->
yytos
=
NULL
;
yy
pParser
->
yystack
=
NULL
;
yy
pParser
->
yystksz
=
0
;
if
(
yyGrowStack
(
yy
pParser
)
){
yypParser
->
yystack
=
&
yy
pParser
->
yystk0
;
yy
pParser
->
yystksz
=
1
;
}
#endif
#ifndef YYNOERRORRECOVERY
pParser
->
yyerrcnt
=
-
1
;
yy
pParser
->
yyerrcnt
=
-
1
;
#endif
pParser
->
yytos
=
pParser
->
yystack
;
pParser
->
yystack
[
0
].
stateno
=
0
;
pParser
->
yystack
[
0
].
major
=
0
;
yypParser
->
yytos
=
yy
pParser
->
yystack
;
yy
pParser
->
yystack
[
0
].
stateno
=
0
;
yy
pParser
->
yystack
[
0
].
major
=
0
;
#if YYSTACKDEPTH>0
pParser
->
yystackEnd
=
&
pParser
->
yystack
[
YYSTACKDEPTH
-
1
];
yypParser
->
yystackEnd
=
&
yy
pParser
->
yystack
[
YYSTACKDEPTH
-
1
];
#endif
}
...
...
@@ -1376,11 +1394,14 @@ void ParseInit(void *yypParser){
** A pointer to a parser. This pointer is used in subsequent calls
** to Parse and ParseFree.
*/
void
*
ParseAlloc
(
void
*
(
*
mallocProc
)(
YYMALLOCARGTYPE
)){
yyParser
*
pParser
;
pParser
=
(
yyParser
*
)(
*
mallocProc
)(
(
YYMALLOCARGTYPE
)
sizeof
(
yyParser
)
);
if
(
pParser
)
ParseInit
(
pParser
);
return
pParser
;
void
*
ParseAlloc
(
void
*
(
*
mallocProc
)(
YYMALLOCARGTYPE
)
ParseCTX_PDECL
){
yyParser
*
yypParser
;
yypParser
=
(
yyParser
*
)(
*
mallocProc
)(
(
YYMALLOCARGTYPE
)
sizeof
(
yyParser
)
);
if
(
yypParser
){
ParseCTX_STORE
ParseInit
(
yypParser
ParseCTX_PARAM
);
}
return
(
void
*
)
yypParser
;
}
#endif
/* Parse_ENGINEALWAYSONSTACK */
...
...
@@ -1397,7 +1418,8 @@ static void yy_destructor(
YYCODETYPE
yymajor
,
/* Type code for object to destroy */
YYMINORTYPE
*
yypminor
/* The object to be destroyed */
){
ParseARG_FETCH
;
ParseARG_FETCH
ParseCTX_FETCH
switch
(
yymajor
){
/* Here is inserted the actions which take place when a
** terminal or non-terminal is destroyed. This can happen
...
...
@@ -1573,13 +1595,12 @@ int ParseCoverage(FILE *out){
** Find the appropriate action for a parser given the terminal
** look-ahead token iLookAhead.
*/
static
unsigned
int
yy_find_shift_action
(
yyParser
*
pParser
,
/* The parser
*/
YY
CODETYPE
iLookAhead
/* The look-ahead token
*/
static
YYACTIONTYPE
yy_find_shift_action
(
YYCODETYPE
iLookAhead
,
/* The look-ahead token
*/
YY
ACTIONTYPE
stateno
/* Current state number
*/
){
int
i
;
int
stateno
=
pParser
->
yytos
->
stateno
;
if
(
stateno
>
YY_MAX_SHIFT
)
return
stateno
;
assert
(
stateno
<=
YY_SHIFT_COUNT
);
#if defined(YYCOVERAGE)
...
...
@@ -1587,15 +1608,19 @@ static unsigned int yy_find_shift_action(
#endif
do
{
i
=
yy_shift_ofst
[
stateno
];
assert
(
i
>=
0
&&
i
+
YYNTOKEN
<=
sizeof
(
yy_lookahead
)
/
sizeof
(
yy_lookahead
[
0
])
);
assert
(
i
>=
0
);
assert
(
i
<=
YY_ACTTAB_COUNT
);
assert
(
i
+
YYNTOKEN
<=
(
int
)
YY_NLOOKAHEAD
);
assert
(
iLookAhead
!=
YYNOCODE
);
assert
(
iLookAhead
<
YYNTOKEN
);
i
+=
iLookAhead
;
assert
(
i
<
(
int
)
YY_NLOOKAHEAD
);
if
(
yy_lookahead
[
i
]
!=
iLookAhead
){
#ifdef YYFALLBACK
YYCODETYPE
iFallback
;
/* Fallback token */
if
(
iLookAhead
<
sizeof
(
yyFallback
)
/
sizeof
(
yyFallback
[
0
])
&&
(
iFallback
=
yyFallback
[
iLookAhead
])
!=
0
){
assert
(
iLookAhead
<
sizeof
(
yyFallback
)
/
sizeof
(
yyFallback
[
0
])
);
iFallback
=
yyFallback
[
iLookAhead
];
if
(
iFallback
!=
0
){
#ifndef NDEBUG
if
(
yyTraceFILE
){
fprintf
(
yyTraceFILE
,
"%sFALLBACK %s => %s
\n
"
,
...
...
@@ -1610,15 +1635,8 @@ static unsigned int yy_find_shift_action(
#ifdef YYWILDCARD
{
int
j
=
i
-
iLookAhead
+
YYWILDCARD
;
if
(
#if YY_SHIFT_MIN+YYWILDCARD<0
j
>=
0
&&
#endif
#if YY_SHIFT_MAX+YYWILDCARD>=YY_ACTTAB_COUNT
j
<
YY_ACTTAB_COUNT
&&
#endif
yy_lookahead
[
j
]
==
YYWILDCARD
&&
iLookAhead
>
0
){
assert
(
j
<
(
int
)(
sizeof
(
yy_lookahead
)
/
sizeof
(
yy_lookahead
[
0
]))
);
if
(
yy_lookahead
[
j
]
==
YYWILDCARD
&&
iLookAhead
>
0
){
#ifndef NDEBUG
if
(
yyTraceFILE
){
fprintf
(
yyTraceFILE
,
"%sWILDCARD %s => %s
\n
"
,
...
...
@@ -1632,6 +1650,7 @@ static unsigned int yy_find_shift_action(
#endif
/* YYWILDCARD */
return
yy_default
[
stateno
];
}
else
{
assert
(
i
>=
0
&&
i
<
sizeof
(
yy_action
)
/
sizeof
(
yy_action
[
0
])
);
return
yy_action
[
i
];
}
}
while
(
1
);
...
...
@@ -1641,8 +1660,8 @@ static unsigned int yy_find_shift_action(
** Find the appropriate action for a parser given the non-terminal
** look-ahead token iLookAhead.
*/
static
int
yy_find_reduce_action
(
int
stateno
,
/* Current state number */
static
YYACTIONTYPE
yy_find_reduce_action
(
YYACTIONTYPE
stateno
,
/* Current state number */
YYCODETYPE
iLookAhead
/* The look-ahead token */
){
int
i
;
...
...
@@ -1671,7 +1690,8 @@ static int yy_find_reduce_action(
** The following routine is called if the stack overflows.
*/
static
void
yyStackOverflow
(
yyParser
*
yypParser
){
ParseARG_FETCH
;
ParseARG_FETCH
ParseCTX_FETCH
#ifndef NDEBUG
if
(
yyTraceFILE
){
fprintf
(
yyTraceFILE
,
"%sStack Overflow!
\n
"
,
yyTracePrompt
);
...
...
@@ -1682,7 +1702,8 @@ static void yyStackOverflow(yyParser *yypParser){
** stack every overflows */
/******** Begin %stack_overflow code ******************************************/
/******** End %stack_overflow code ********************************************/
ParseARG_STORE
;
/* Suppress warning about unused %extra_argument var */
ParseARG_STORE
/* Suppress warning about unused %extra_argument var */
ParseCTX_STORE
}
/*
...
...
@@ -1711,8 +1732,8 @@ static void yyTraceShift(yyParser *yypParser, int yyNewState, const char *zTag){
*/
static
void
yy_shift
(
yyParser
*
yypParser
,
/* The parser to be shifted */
int
yyNewState
,
/* The new state to shift in */
int
yyMajor
,
/* The major token to shift in */
YYACTIONTYPE
yyNewState
,
/* The new state to shift in */
YYCODETYPE
yyMajor
,
/* The major token to shift in */
ParseTOKENTYPE
yyMinor
/* The minor token to shift in */
){
yyStackEntry
*
yytos
;
...
...
@@ -1742,289 +1763,562 @@ static void yy_shift(
yyNewState
+=
YY_MIN_REDUCE
-
YY_MIN_SHIFTREDUCE
;
}
yytos
=
yypParser
->
yytos
;
yytos
->
stateno
=
(
YYACTIONTYPE
)
yyNewState
;
yytos
->
major
=
(
YYCODETYPE
)
yyMajor
;
yytos
->
stateno
=
yyNewState
;
yytos
->
major
=
yyMajor
;
yytos
->
minor
.
yy0
=
yyMinor
;
yyTraceShift
(
yypParser
,
yyNewState
,
"Shift"
);
}
/* The following table contains information about every rule that
** is used during the reduce.
*/
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
[]
=
{
{
188
,
-
1
},
/* (0) program ::= cmd */
{
189
,
-
2
},
/* (1) cmd ::= SHOW DATABASES */
{
189
,
-
2
},
/* (2) cmd ::= SHOW TOPICS */
{
189
,
-
2
},
/* (3) cmd ::= SHOW MNODES */
{
189
,
-
2
},
/* (4) cmd ::= SHOW DNODES */
{
189
,
-
2
},
/* (5) cmd ::= SHOW ACCOUNTS */
{
189
,
-
2
},
/* (6) cmd ::= SHOW USERS */
{
189
,
-
2
},
/* (7) cmd ::= SHOW MODULES */
{
189
,
-
2
},
/* (8) cmd ::= SHOW QUERIES */
{
189
,
-
2
},
/* (9) cmd ::= SHOW CONNECTIONS */
{
189
,
-
2
},
/* (10) cmd ::= SHOW STREAMS */
{
189
,
-
2
},
/* (11) cmd ::= SHOW VARIABLES */
{
189
,
-
2
},
/* (12) cmd ::= SHOW SCORES */
{
189
,
-
2
},
/* (13) cmd ::= SHOW GRANTS */
{
189
,
-
2
},
/* (14) cmd ::= SHOW VNODES */
{
189
,
-
3
},
/* (15) cmd ::= SHOW VNODES IPTOKEN */
{
190
,
0
},
/* (16) dbPrefix ::= */
{
190
,
-
2
},
/* (17) dbPrefix ::= ids DOT */
{
192
,
0
},
/* (18) cpxName ::= */
{
192
,
-
2
},
/* (19) cpxName ::= DOT ids */
{
189
,
-
5
},
/* (20) cmd ::= SHOW CREATE TABLE ids cpxName */
{
189
,
-
5
},
/* (21) cmd ::= SHOW CREATE STABLE ids cpxName */
{
189
,
-
4
},
/* (22) cmd ::= SHOW CREATE DATABASE ids */
{
189
,
-
3
},
/* (23) cmd ::= SHOW dbPrefix TABLES */
{
189
,
-
5
},
/* (24) cmd ::= SHOW dbPrefix TABLES LIKE ids */
{
189
,
-
3
},
/* (25) cmd ::= SHOW dbPrefix STABLES */
{
189
,
-
5
},
/* (26) cmd ::= SHOW dbPrefix STABLES LIKE ids */
{
189
,
-
3
},
/* (27) cmd ::= SHOW dbPrefix VGROUPS */
{
189
,
-
4
},
/* (28) cmd ::= SHOW dbPrefix VGROUPS ids */
{
189
,
-
5
},
/* (29) cmd ::= DROP TABLE ifexists ids cpxName */
{
189
,
-
5
},
/* (30) cmd ::= DROP STABLE ifexists ids cpxName */
{
189
,
-
4
},
/* (31) cmd ::= DROP DATABASE ifexists ids */
{
189
,
-
4
},
/* (32) cmd ::= DROP TOPIC ifexists ids */
{
189
,
-
3
},
/* (33) cmd ::= DROP DNODE ids */
{
189
,
-
3
},
/* (34) cmd ::= DROP USER ids */
{
189
,
-
3
},
/* (35) cmd ::= DROP ACCOUNT ids */
{
189
,
-
2
},
/* (36) cmd ::= USE ids */
{
189
,
-
3
},
/* (37) cmd ::= DESCRIBE ids cpxName */
{
189
,
-
5
},
/* (38) cmd ::= ALTER USER ids PASS ids */
{
189
,
-
5
},
/* (39) cmd ::= ALTER USER ids PRIVILEGE ids */
{
189
,
-
4
},
/* (40) cmd ::= ALTER DNODE ids ids */
{
189
,
-
5
},
/* (41) cmd ::= ALTER DNODE ids ids ids */
{
189
,
-
3
},
/* (42) cmd ::= ALTER LOCAL ids */
{
189
,
-
4
},
/* (43) cmd ::= ALTER LOCAL ids ids */
{
189
,
-
4
},
/* (44) cmd ::= ALTER DATABASE ids alter_db_optr */
{
189
,
-
4
},
/* (45) cmd ::= ALTER TOPIC ids alter_topic_optr */
{
189
,
-
4
},
/* (46) cmd ::= ALTER ACCOUNT ids acct_optr */
{
189
,
-
6
},
/* (47) cmd ::= ALTER ACCOUNT ids PASS ids acct_optr */
{
191
,
-
1
},
/* (48) ids ::= ID */
{
191
,
-
1
},
/* (49) ids ::= STRING */
{
193
,
-
2
},
/* (50) ifexists ::= IF EXISTS */
{
193
,
0
},
/* (51) ifexists ::= */
{
197
,
-
3
},
/* (52) ifnotexists ::= IF NOT EXISTS */
{
197
,
0
},
/* (53) ifnotexists ::= */
{
189
,
-
3
},
/* (54) cmd ::= CREATE DNODE ids */
{
189
,
-
6
},
/* (55) cmd ::= CREATE ACCOUNT ids PASS ids acct_optr */
{
189
,
-
5
},
/* (56) cmd ::= CREATE DATABASE ifnotexists ids db_optr */
{
189
,
-
5
},
/* (57) cmd ::= CREATE TOPIC ifnotexists ids topic_optr */
{
189
,
-
5
},
/* (58) cmd ::= CREATE USER ids PASS ids */
{
200
,
0
},
/* (59) pps ::= */
{
200
,
-
2
},
/* (60) pps ::= PPS INTEGER */
{
201
,
0
},
/* (61) tseries ::= */
{
201
,
-
2
},
/* (62) tseries ::= TSERIES INTEGER */
{
202
,
0
},
/* (63) dbs ::= */
{
202
,
-
2
},
/* (64) dbs ::= DBS INTEGER */
{
203
,
0
},
/* (65) streams ::= */
{
203
,
-
2
},
/* (66) streams ::= STREAMS INTEGER */
{
204
,
0
},
/* (67) storage ::= */
{
204
,
-
2
},
/* (68) storage ::= STORAGE INTEGER */
{
205
,
0
},
/* (69) qtime ::= */
{
205
,
-
2
},
/* (70) qtime ::= QTIME INTEGER */
{
206
,
0
},
/* (71) users ::= */
{
206
,
-
2
},
/* (72) users ::= USERS INTEGER */
{
207
,
0
},
/* (73) conns ::= */
{
207
,
-
2
},
/* (74) conns ::= CONNS INTEGER */
{
208
,
0
},
/* (75) state ::= */
{
208
,
-
2
},
/* (76) state ::= STATE ids */
{
196
,
-
9
},
/* (77) acct_optr ::= pps tseries storage streams qtime dbs users conns state */
{
209
,
-
2
},
/* (78) keep ::= KEEP tagitemlist */
{
211
,
-
2
},
/* (79) cache ::= CACHE INTEGER */
{
212
,
-
2
},
/* (80) replica ::= REPLICA INTEGER */
{
213
,
-
2
},
/* (81) quorum ::= QUORUM INTEGER */
{
214
,
-
2
},
/* (82) days ::= DAYS INTEGER */
{
215
,
-
2
},
/* (83) minrows ::= MINROWS INTEGER */
{
216
,
-
2
},
/* (84) maxrows ::= MAXROWS INTEGER */
{
217
,
-
2
},
/* (85) blocks ::= BLOCKS INTEGER */
{
218
,
-
2
},
/* (86) ctime ::= CTIME INTEGER */
{
219
,
-
2
},
/* (87) wal ::= WAL INTEGER */
{
220
,
-
2
},
/* (88) fsync ::= FSYNC INTEGER */
{
221
,
-
2
},
/* (89) comp ::= COMP INTEGER */
{
222
,
-
2
},
/* (90) prec ::= PRECISION STRING */
{
223
,
-
2
},
/* (91) update ::= UPDATE INTEGER */
{
224
,
-
2
},
/* (92) cachelast ::= CACHELAST INTEGER */
{
225
,
-
2
},
/* (93) partitions ::= PARTITIONS INTEGER */
{
198
,
0
},
/* (94) db_optr ::= */
{
198
,
-
2
},
/* (95) db_optr ::= db_optr cache */
{
198
,
-
2
},
/* (96) db_optr ::= db_optr replica */
{
198
,
-
2
},
/* (97) db_optr ::= db_optr quorum */
{
198
,
-
2
},
/* (98) db_optr ::= db_optr days */
{
198
,
-
2
},
/* (99) db_optr ::= db_optr minrows */
{
198
,
-
2
},
/* (100) db_optr ::= db_optr maxrows */
{
198
,
-
2
},
/* (101) db_optr ::= db_optr blocks */
{
198
,
-
2
},
/* (102) db_optr ::= db_optr ctime */
{
198
,
-
2
},
/* (103) db_optr ::= db_optr wal */
{
198
,
-
2
},
/* (104) db_optr ::= db_optr fsync */
{
198
,
-
2
},
/* (105) db_optr ::= db_optr comp */
{
198
,
-
2
},
/* (106) db_optr ::= db_optr prec */
{
198
,
-
2
},
/* (107) db_optr ::= db_optr keep */
{
198
,
-
2
},
/* (108) db_optr ::= db_optr update */
{
198
,
-
2
},
/* (109) db_optr ::= db_optr cachelast */
{
199
,
-
1
},
/* (110) topic_optr ::= db_optr */
{
199
,
-
2
},
/* (111) topic_optr ::= topic_optr partitions */
{
194
,
0
},
/* (112) alter_db_optr ::= */
{
194
,
-
2
},
/* (113) alter_db_optr ::= alter_db_optr replica */
{
194
,
-
2
},
/* (114) alter_db_optr ::= alter_db_optr quorum */
{
194
,
-
2
},
/* (115) alter_db_optr ::= alter_db_optr keep */
{
194
,
-
2
},
/* (116) alter_db_optr ::= alter_db_optr blocks */
{
194
,
-
2
},
/* (117) alter_db_optr ::= alter_db_optr comp */
{
194
,
-
2
},
/* (118) alter_db_optr ::= alter_db_optr wal */
{
194
,
-
2
},
/* (119) alter_db_optr ::= alter_db_optr fsync */
{
194
,
-
2
},
/* (120) alter_db_optr ::= alter_db_optr update */
{
194
,
-
2
},
/* (121) alter_db_optr ::= alter_db_optr cachelast */
{
195
,
-
1
},
/* (122) alter_topic_optr ::= alter_db_optr */
{
195
,
-
2
},
/* (123) alter_topic_optr ::= alter_topic_optr partitions */
{
226
,
-
1
},
/* (124) typename ::= ids */
{
226
,
-
4
},
/* (125) typename ::= ids LP signed RP */
{
226
,
-
2
},
/* (126) typename ::= ids UNSIGNED */
{
227
,
-
1
},
/* (127) signed ::= INTEGER */
{
227
,
-
2
},
/* (128) signed ::= PLUS INTEGER */
{
227
,
-
2
},
/* (129) signed ::= MINUS INTEGER */
{
189
,
-
3
},
/* (130) cmd ::= CREATE TABLE create_table_args */
{
189
,
-
3
},
/* (131) cmd ::= CREATE TABLE create_stable_args */
{
189
,
-
3
},
/* (132) cmd ::= CREATE STABLE create_stable_args */
{
189
,
-
3
},
/* (133) cmd ::= CREATE TABLE create_table_list */
{
230
,
-
1
},
/* (134) create_table_list ::= create_from_stable */
{
230
,
-
2
},
/* (135) create_table_list ::= create_table_list create_from_stable */
{
228
,
-
6
},
/* (136) create_table_args ::= ifnotexists ids cpxName LP columnlist RP */
{
229
,
-
10
},
/* (137) create_stable_args ::= ifnotexists ids cpxName LP columnlist RP TAGS LP columnlist RP */
{
231
,
-
10
},
/* (138) create_from_stable ::= ifnotexists ids cpxName USING ids cpxName TAGS LP tagitemlist RP */
{
231
,
-
13
},
/* (139) create_from_stable ::= ifnotexists ids cpxName USING ids cpxName LP tagNamelist RP TAGS LP tagitemlist RP */
{
233
,
-
3
},
/* (140) tagNamelist ::= tagNamelist COMMA ids */
{
233
,
-
1
},
/* (141) tagNamelist ::= ids */
{
228
,
-
5
},
/* (142) create_table_args ::= ifnotexists ids cpxName AS select */
{
232
,
-
3
},
/* (143) columnlist ::= columnlist COMMA column */
{
232
,
-
1
},
/* (144) columnlist ::= column */
{
235
,
-
2
},
/* (145) column ::= ids typename */
{
210
,
-
3
},
/* (146) tagitemlist ::= tagitemlist COMMA tagitem */
{
210
,
-
1
},
/* (147) tagitemlist ::= tagitem */
{
236
,
-
1
},
/* (148) tagitem ::= INTEGER */
{
236
,
-
1
},
/* (149) tagitem ::= FLOAT */
{
236
,
-
1
},
/* (150) tagitem ::= STRING */
{
236
,
-
1
},
/* (151) tagitem ::= BOOL */
{
236
,
-
1
},
/* (152) tagitem ::= NULL */
{
236
,
-
2
},
/* (153) tagitem ::= MINUS INTEGER */
{
236
,
-
2
},
/* (154) tagitem ::= MINUS FLOAT */
{
236
,
-
2
},
/* (155) tagitem ::= PLUS INTEGER */
{
236
,
-
2
},
/* (156) tagitem ::= PLUS FLOAT */
{
234
,
-
13
},
/* (157) select ::= SELECT selcollist from where_opt interval_opt session_option fill_opt sliding_opt groupby_opt orderby_opt having_opt slimit_opt limit_opt */
{
234
,
-
3
},
/* (158) select ::= LP select RP */
{
249
,
-
1
},
/* (159) union ::= select */
{
249
,
-
4
},
/* (160) union ::= union UNION ALL select */
{
189
,
-
1
},
/* (161) cmd ::= union */
{
234
,
-
2
},
/* (162) select ::= SELECT selcollist */
{
250
,
-
2
},
/* (163) sclp ::= selcollist COMMA */
{
250
,
0
},
/* (164) sclp ::= */
{
237
,
-
4
},
/* (165) selcollist ::= sclp distinct expr as */
{
237
,
-
2
},
/* (166) selcollist ::= sclp STAR */
{
253
,
-
2
},
/* (167) as ::= AS ids */
{
253
,
-
1
},
/* (168) as ::= ids */
{
253
,
0
},
/* (169) as ::= */
{
251
,
-
1
},
/* (170) distinct ::= DISTINCT */
{
251
,
0
},
/* (171) distinct ::= */
{
238
,
-
2
},
/* (172) from ::= FROM tablelist */
{
238
,
-
4
},
/* (173) from ::= FROM LP union RP */
{
254
,
-
2
},
/* (174) tablelist ::= ids cpxName */
{
254
,
-
3
},
/* (175) tablelist ::= ids cpxName ids */
{
254
,
-
4
},
/* (176) tablelist ::= tablelist COMMA ids cpxName */
{
254
,
-
5
},
/* (177) tablelist ::= tablelist COMMA ids cpxName ids */
{
255
,
-
1
},
/* (178) tmvar ::= VARIABLE */
{
240
,
-
4
},
/* (179) interval_opt ::= INTERVAL LP tmvar RP */
{
240
,
-
6
},
/* (180) interval_opt ::= INTERVAL LP tmvar COMMA tmvar RP */
{
240
,
0
},
/* (181) interval_opt ::= */
{
241
,
0
},
/* (182) session_option ::= */
{
241
,
-
7
},
/* (183) session_option ::= SESSION LP ids cpxName COMMA tmvar RP */
{
242
,
0
},
/* (184) fill_opt ::= */
{
242
,
-
6
},
/* (185) fill_opt ::= FILL LP ID COMMA tagitemlist RP */
{
242
,
-
4
},
/* (186) fill_opt ::= FILL LP ID RP */
{
243
,
-
4
},
/* (187) sliding_opt ::= SLIDING LP tmvar RP */
{
243
,
0
},
/* (188) sliding_opt ::= */
{
245
,
0
},
/* (189) orderby_opt ::= */
{
245
,
-
3
},
/* (190) orderby_opt ::= ORDER BY sortlist */
{
256
,
-
4
},
/* (191) sortlist ::= sortlist COMMA item sortorder */
{
256
,
-
2
},
/* (192) sortlist ::= item sortorder */
{
258
,
-
2
},
/* (193) item ::= ids cpxName */
{
259
,
-
1
},
/* (194) sortorder ::= ASC */
{
259
,
-
1
},
/* (195) sortorder ::= DESC */
{
259
,
0
},
/* (196) sortorder ::= */
{
244
,
0
},
/* (197) groupby_opt ::= */
{
244
,
-
3
},
/* (198) groupby_opt ::= GROUP BY grouplist */
{
260
,
-
3
},
/* (199) grouplist ::= grouplist COMMA item */
{
260
,
-
1
},
/* (200) grouplist ::= item */
{
246
,
0
},
/* (201) having_opt ::= */
{
246
,
-
2
},
/* (202) having_opt ::= HAVING expr */
{
248
,
0
},
/* (203) limit_opt ::= */
{
248
,
-
2
},
/* (204) limit_opt ::= LIMIT signed */
{
248
,
-
4
},
/* (205) limit_opt ::= LIMIT signed OFFSET signed */
{
248
,
-
4
},
/* (206) limit_opt ::= LIMIT signed COMMA signed */
{
247
,
0
},
/* (207) slimit_opt ::= */
{
247
,
-
2
},
/* (208) slimit_opt ::= SLIMIT signed */
{
247
,
-
4
},
/* (209) slimit_opt ::= SLIMIT signed SOFFSET signed */
{
247
,
-
4
},
/* (210) slimit_opt ::= SLIMIT signed COMMA signed */
{
239
,
0
},
/* (211) where_opt ::= */
{
239
,
-
2
},
/* (212) where_opt ::= WHERE expr */
{
252
,
-
3
},
/* (213) expr ::= LP expr RP */
{
252
,
-
1
},
/* (214) expr ::= ID */
{
252
,
-
3
},
/* (215) expr ::= ID DOT ID */
{
252
,
-
3
},
/* (216) expr ::= ID DOT STAR */
{
252
,
-
1
},
/* (217) expr ::= INTEGER */
{
252
,
-
2
},
/* (218) expr ::= MINUS INTEGER */
{
252
,
-
2
},
/* (219) expr ::= PLUS INTEGER */
{
252
,
-
1
},
/* (220) expr ::= FLOAT */
{
252
,
-
2
},
/* (221) expr ::= MINUS FLOAT */
{
252
,
-
2
},
/* (222) expr ::= PLUS FLOAT */
{
252
,
-
1
},
/* (223) expr ::= STRING */
{
252
,
-
1
},
/* (224) expr ::= NOW */
{
252
,
-
1
},
/* (225) expr ::= VARIABLE */
{
252
,
-
2
},
/* (226) expr ::= PLUS VARIABLE */
{
252
,
-
2
},
/* (227) expr ::= MINUS VARIABLE */
{
252
,
-
1
},
/* (228) expr ::= BOOL */
{
252
,
-
1
},
/* (229) expr ::= NULL */
{
252
,
-
4
},
/* (230) expr ::= ID LP exprlist RP */
{
252
,
-
4
},
/* (231) expr ::= ID LP STAR RP */
{
252
,
-
3
},
/* (232) expr ::= expr IS NULL */
{
252
,
-
4
},
/* (233) expr ::= expr IS NOT NULL */
{
252
,
-
3
},
/* (234) expr ::= expr LT expr */
{
252
,
-
3
},
/* (235) expr ::= expr GT expr */
{
252
,
-
3
},
/* (236) expr ::= expr LE expr */
{
252
,
-
3
},
/* (237) expr ::= expr GE expr */
{
252
,
-
3
},
/* (238) expr ::= expr NE expr */
{
252
,
-
3
},
/* (239) expr ::= expr EQ expr */
{
252
,
-
5
},
/* (240) expr ::= expr BETWEEN expr AND expr */
{
252
,
-
3
},
/* (241) expr ::= expr AND expr */
{
252
,
-
3
},
/* (242) expr ::= expr OR expr */
{
252
,
-
3
},
/* (243) expr ::= expr PLUS expr */
{
252
,
-
3
},
/* (244) expr ::= expr MINUS expr */
{
252
,
-
3
},
/* (245) expr ::= expr STAR expr */
{
252
,
-
3
},
/* (246) expr ::= expr SLASH expr */
{
252
,
-
3
},
/* (247) expr ::= expr REM expr */
{
252
,
-
3
},
/* (248) expr ::= expr LIKE expr */
{
252
,
-
5
},
/* (249) expr ::= expr IN LP exprlist RP */
{
261
,
-
3
},
/* (250) exprlist ::= exprlist COMMA expritem */
{
261
,
-
1
},
/* (251) exprlist ::= expritem */
{
262
,
-
1
},
/* (252) expritem ::= expr */
{
262
,
0
},
/* (253) expritem ::= */
{
189
,
-
3
},
/* (254) cmd ::= RESET QUERY CACHE */
{
189
,
-
3
},
/* (255) cmd ::= SYNCDB ids REPLICA */
{
189
,
-
7
},
/* (256) cmd ::= ALTER TABLE ids cpxName ADD COLUMN columnlist */
{
189
,
-
7
},
/* (257) cmd ::= ALTER TABLE ids cpxName DROP COLUMN ids */
{
189
,
-
7
},
/* (258) cmd ::= ALTER TABLE ids cpxName ADD TAG columnlist */
{
189
,
-
7
},
/* (259) cmd ::= ALTER TABLE ids cpxName DROP TAG ids */
{
189
,
-
8
},
/* (260) cmd ::= ALTER TABLE ids cpxName CHANGE TAG ids ids */
{
189
,
-
9
},
/* (261) cmd ::= ALTER TABLE ids cpxName SET TAG ids EQ tagitem */
{
189
,
-
7
},
/* (262) cmd ::= ALTER STABLE ids cpxName ADD COLUMN columnlist */
{
189
,
-
7
},
/* (263) cmd ::= ALTER STABLE ids cpxName DROP COLUMN ids */
{
189
,
-
7
},
/* (264) cmd ::= ALTER STABLE ids cpxName ADD TAG columnlist */
{
189
,
-
7
},
/* (265) cmd ::= ALTER STABLE ids cpxName DROP TAG ids */
{
189
,
-
8
},
/* (266) cmd ::= ALTER STABLE ids cpxName CHANGE TAG ids ids */
{
189
,
-
3
},
/* (267) cmd ::= KILL CONNECTION INTEGER */
{
189
,
-
5
},
/* (268) cmd ::= KILL STREAM INTEGER COLON INTEGER */
{
189
,
-
5
},
/* (269) cmd ::= KILL QUERY INTEGER COLON INTEGER */
/* For rule J, yyRuleInfoLhs[J] contains the symbol on the left-hand side
** of that rule */
static
const
YYCODETYPE
yyRuleInfoLhs
[]
=
{
188
,
/* (0) program ::= cmd */
189
,
/* (1) cmd ::= SHOW DATABASES */
189
,
/* (2) cmd ::= SHOW TOPICS */
189
,
/* (3) cmd ::= SHOW MNODES */
189
,
/* (4) cmd ::= SHOW DNODES */
189
,
/* (5) cmd ::= SHOW ACCOUNTS */
189
,
/* (6) cmd ::= SHOW USERS */
189
,
/* (7) cmd ::= SHOW MODULES */
189
,
/* (8) cmd ::= SHOW QUERIES */
189
,
/* (9) cmd ::= SHOW CONNECTIONS */
189
,
/* (10) cmd ::= SHOW STREAMS */
189
,
/* (11) cmd ::= SHOW VARIABLES */
189
,
/* (12) cmd ::= SHOW SCORES */
189
,
/* (13) cmd ::= SHOW GRANTS */
189
,
/* (14) cmd ::= SHOW VNODES */
189
,
/* (15) cmd ::= SHOW VNODES IPTOKEN */
190
,
/* (16) dbPrefix ::= */
190
,
/* (17) dbPrefix ::= ids DOT */
192
,
/* (18) cpxName ::= */
192
,
/* (19) cpxName ::= DOT ids */
189
,
/* (20) cmd ::= SHOW CREATE TABLE ids cpxName */
189
,
/* (21) cmd ::= SHOW CREATE STABLE ids cpxName */
189
,
/* (22) cmd ::= SHOW CREATE DATABASE ids */
189
,
/* (23) cmd ::= SHOW dbPrefix TABLES */
189
,
/* (24) cmd ::= SHOW dbPrefix TABLES LIKE ids */
189
,
/* (25) cmd ::= SHOW dbPrefix STABLES */
189
,
/* (26) cmd ::= SHOW dbPrefix STABLES LIKE ids */
189
,
/* (27) cmd ::= SHOW dbPrefix VGROUPS */
189
,
/* (28) cmd ::= SHOW dbPrefix VGROUPS ids */
189
,
/* (29) cmd ::= DROP TABLE ifexists ids cpxName */
189
,
/* (30) cmd ::= DROP STABLE ifexists ids cpxName */
189
,
/* (31) cmd ::= DROP DATABASE ifexists ids */
189
,
/* (32) cmd ::= DROP TOPIC ifexists ids */
189
,
/* (33) cmd ::= DROP DNODE ids */
189
,
/* (34) cmd ::= DROP USER ids */
189
,
/* (35) cmd ::= DROP ACCOUNT ids */
189
,
/* (36) cmd ::= USE ids */
189
,
/* (37) cmd ::= DESCRIBE ids cpxName */
189
,
/* (38) cmd ::= ALTER USER ids PASS ids */
189
,
/* (39) cmd ::= ALTER USER ids PRIVILEGE ids */
189
,
/* (40) cmd ::= ALTER DNODE ids ids */
189
,
/* (41) cmd ::= ALTER DNODE ids ids ids */
189
,
/* (42) cmd ::= ALTER LOCAL ids */
189
,
/* (43) cmd ::= ALTER LOCAL ids ids */
189
,
/* (44) cmd ::= ALTER DATABASE ids alter_db_optr */
189
,
/* (45) cmd ::= ALTER TOPIC ids alter_topic_optr */
189
,
/* (46) cmd ::= ALTER ACCOUNT ids acct_optr */
189
,
/* (47) cmd ::= ALTER ACCOUNT ids PASS ids acct_optr */
191
,
/* (48) ids ::= ID */
191
,
/* (49) ids ::= STRING */
193
,
/* (50) ifexists ::= IF EXISTS */
193
,
/* (51) ifexists ::= */
197
,
/* (52) ifnotexists ::= IF NOT EXISTS */
197
,
/* (53) ifnotexists ::= */
189
,
/* (54) cmd ::= CREATE DNODE ids */
189
,
/* (55) cmd ::= CREATE ACCOUNT ids PASS ids acct_optr */
189
,
/* (56) cmd ::= CREATE DATABASE ifnotexists ids db_optr */
189
,
/* (57) cmd ::= CREATE TOPIC ifnotexists ids topic_optr */
189
,
/* (58) cmd ::= CREATE USER ids PASS ids */
200
,
/* (59) pps ::= */
200
,
/* (60) pps ::= PPS INTEGER */
201
,
/* (61) tseries ::= */
201
,
/* (62) tseries ::= TSERIES INTEGER */
202
,
/* (63) dbs ::= */
202
,
/* (64) dbs ::= DBS INTEGER */
203
,
/* (65) streams ::= */
203
,
/* (66) streams ::= STREAMS INTEGER */
204
,
/* (67) storage ::= */
204
,
/* (68) storage ::= STORAGE INTEGER */
205
,
/* (69) qtime ::= */
205
,
/* (70) qtime ::= QTIME INTEGER */
206
,
/* (71) users ::= */
206
,
/* (72) users ::= USERS INTEGER */
207
,
/* (73) conns ::= */
207
,
/* (74) conns ::= CONNS INTEGER */
208
,
/* (75) state ::= */
208
,
/* (76) state ::= STATE ids */
196
,
/* (77) acct_optr ::= pps tseries storage streams qtime dbs users conns state */
209
,
/* (78) keep ::= KEEP tagitemlist */
211
,
/* (79) cache ::= CACHE INTEGER */
212
,
/* (80) replica ::= REPLICA INTEGER */
213
,
/* (81) quorum ::= QUORUM INTEGER */
214
,
/* (82) days ::= DAYS INTEGER */
215
,
/* (83) minrows ::= MINROWS INTEGER */
216
,
/* (84) maxrows ::= MAXROWS INTEGER */
217
,
/* (85) blocks ::= BLOCKS INTEGER */
218
,
/* (86) ctime ::= CTIME INTEGER */
219
,
/* (87) wal ::= WAL INTEGER */
220
,
/* (88) fsync ::= FSYNC INTEGER */
221
,
/* (89) comp ::= COMP INTEGER */
222
,
/* (90) prec ::= PRECISION STRING */
223
,
/* (91) update ::= UPDATE INTEGER */
224
,
/* (92) cachelast ::= CACHELAST INTEGER */
225
,
/* (93) partitions ::= PARTITIONS INTEGER */
198
,
/* (94) db_optr ::= */
198
,
/* (95) db_optr ::= db_optr cache */
198
,
/* (96) db_optr ::= db_optr replica */
198
,
/* (97) db_optr ::= db_optr quorum */
198
,
/* (98) db_optr ::= db_optr days */
198
,
/* (99) db_optr ::= db_optr minrows */
198
,
/* (100) db_optr ::= db_optr maxrows */
198
,
/* (101) db_optr ::= db_optr blocks */
198
,
/* (102) db_optr ::= db_optr ctime */
198
,
/* (103) db_optr ::= db_optr wal */
198
,
/* (104) db_optr ::= db_optr fsync */
198
,
/* (105) db_optr ::= db_optr comp */
198
,
/* (106) db_optr ::= db_optr prec */
198
,
/* (107) db_optr ::= db_optr keep */
198
,
/* (108) db_optr ::= db_optr update */
198
,
/* (109) db_optr ::= db_optr cachelast */
199
,
/* (110) topic_optr ::= db_optr */
199
,
/* (111) topic_optr ::= topic_optr partitions */
194
,
/* (112) alter_db_optr ::= */
194
,
/* (113) alter_db_optr ::= alter_db_optr replica */
194
,
/* (114) alter_db_optr ::= alter_db_optr quorum */
194
,
/* (115) alter_db_optr ::= alter_db_optr keep */
194
,
/* (116) alter_db_optr ::= alter_db_optr blocks */
194
,
/* (117) alter_db_optr ::= alter_db_optr comp */
194
,
/* (118) alter_db_optr ::= alter_db_optr wal */
194
,
/* (119) alter_db_optr ::= alter_db_optr fsync */
194
,
/* (120) alter_db_optr ::= alter_db_optr update */
194
,
/* (121) alter_db_optr ::= alter_db_optr cachelast */
195
,
/* (122) alter_topic_optr ::= alter_db_optr */
195
,
/* (123) alter_topic_optr ::= alter_topic_optr partitions */
226
,
/* (124) typename ::= ids */
226
,
/* (125) typename ::= ids LP signed RP */
226
,
/* (126) typename ::= ids UNSIGNED */
227
,
/* (127) signed ::= INTEGER */
227
,
/* (128) signed ::= PLUS INTEGER */
227
,
/* (129) signed ::= MINUS INTEGER */
189
,
/* (130) cmd ::= CREATE TABLE create_table_args */
189
,
/* (131) cmd ::= CREATE TABLE create_stable_args */
189
,
/* (132) cmd ::= CREATE STABLE create_stable_args */
189
,
/* (133) cmd ::= CREATE TABLE create_table_list */
230
,
/* (134) create_table_list ::= create_from_stable */
230
,
/* (135) create_table_list ::= create_table_list create_from_stable */
228
,
/* (136) create_table_args ::= ifnotexists ids cpxName LP columnlist RP */
229
,
/* (137) create_stable_args ::= ifnotexists ids cpxName LP columnlist RP TAGS LP columnlist RP */
231
,
/* (138) create_from_stable ::= ifnotexists ids cpxName USING ids cpxName TAGS LP tagitemlist RP */
231
,
/* (139) create_from_stable ::= ifnotexists ids cpxName USING ids cpxName LP tagNamelist RP TAGS LP tagitemlist RP */
233
,
/* (140) tagNamelist ::= tagNamelist COMMA ids */
233
,
/* (141) tagNamelist ::= ids */
228
,
/* (142) create_table_args ::= ifnotexists ids cpxName AS select */
232
,
/* (143) columnlist ::= columnlist COMMA column */
232
,
/* (144) columnlist ::= column */
235
,
/* (145) column ::= ids typename */
210
,
/* (146) tagitemlist ::= tagitemlist COMMA tagitem */
210
,
/* (147) tagitemlist ::= tagitem */
236
,
/* (148) tagitem ::= INTEGER */
236
,
/* (149) tagitem ::= FLOAT */
236
,
/* (150) tagitem ::= STRING */
236
,
/* (151) tagitem ::= BOOL */
236
,
/* (152) tagitem ::= NULL */
236
,
/* (153) tagitem ::= MINUS INTEGER */
236
,
/* (154) tagitem ::= MINUS FLOAT */
236
,
/* (155) tagitem ::= PLUS INTEGER */
236
,
/* (156) tagitem ::= PLUS FLOAT */
234
,
/* (157) select ::= SELECT selcollist from where_opt interval_opt session_option fill_opt sliding_opt groupby_opt orderby_opt having_opt slimit_opt limit_opt */
234
,
/* (158) select ::= LP select RP */
249
,
/* (159) union ::= select */
249
,
/* (160) union ::= union UNION ALL select */
189
,
/* (161) cmd ::= union */
234
,
/* (162) select ::= SELECT selcollist */
250
,
/* (163) sclp ::= selcollist COMMA */
250
,
/* (164) sclp ::= */
237
,
/* (165) selcollist ::= sclp distinct expr as */
237
,
/* (166) selcollist ::= sclp STAR */
253
,
/* (167) as ::= AS ids */
253
,
/* (168) as ::= ids */
253
,
/* (169) as ::= */
251
,
/* (170) distinct ::= DISTINCT */
251
,
/* (171) distinct ::= */
238
,
/* (172) from ::= FROM tablelist */
238
,
/* (173) from ::= FROM LP union RP */
254
,
/* (174) tablelist ::= ids cpxName */
254
,
/* (175) tablelist ::= ids cpxName ids */
254
,
/* (176) tablelist ::= tablelist COMMA ids cpxName */
254
,
/* (177) tablelist ::= tablelist COMMA ids cpxName ids */
255
,
/* (178) tmvar ::= VARIABLE */
240
,
/* (179) interval_opt ::= INTERVAL LP tmvar RP */
240
,
/* (180) interval_opt ::= INTERVAL LP tmvar COMMA tmvar RP */
240
,
/* (181) interval_opt ::= */
241
,
/* (182) session_option ::= */
241
,
/* (183) session_option ::= SESSION LP ids cpxName COMMA tmvar RP */
242
,
/* (184) fill_opt ::= */
242
,
/* (185) fill_opt ::= FILL LP ID COMMA tagitemlist RP */
242
,
/* (186) fill_opt ::= FILL LP ID RP */
243
,
/* (187) sliding_opt ::= SLIDING LP tmvar RP */
243
,
/* (188) sliding_opt ::= */
245
,
/* (189) orderby_opt ::= */
245
,
/* (190) orderby_opt ::= ORDER BY sortlist */
256
,
/* (191) sortlist ::= sortlist COMMA item sortorder */
256
,
/* (192) sortlist ::= item sortorder */
258
,
/* (193) item ::= ids cpxName */
259
,
/* (194) sortorder ::= ASC */
259
,
/* (195) sortorder ::= DESC */
259
,
/* (196) sortorder ::= */
244
,
/* (197) groupby_opt ::= */
244
,
/* (198) groupby_opt ::= GROUP BY grouplist */
260
,
/* (199) grouplist ::= grouplist COMMA item */
260
,
/* (200) grouplist ::= item */
246
,
/* (201) having_opt ::= */
246
,
/* (202) having_opt ::= HAVING expr */
248
,
/* (203) limit_opt ::= */
248
,
/* (204) limit_opt ::= LIMIT signed */
248
,
/* (205) limit_opt ::= LIMIT signed OFFSET signed */
248
,
/* (206) limit_opt ::= LIMIT signed COMMA signed */
247
,
/* (207) slimit_opt ::= */
247
,
/* (208) slimit_opt ::= SLIMIT signed */
247
,
/* (209) slimit_opt ::= SLIMIT signed SOFFSET signed */
247
,
/* (210) slimit_opt ::= SLIMIT signed COMMA signed */
239
,
/* (211) where_opt ::= */
239
,
/* (212) where_opt ::= WHERE expr */
252
,
/* (213) expr ::= LP expr RP */
252
,
/* (214) expr ::= ID */
252
,
/* (215) expr ::= ID DOT ID */
252
,
/* (216) expr ::= ID DOT STAR */
252
,
/* (217) expr ::= INTEGER */
252
,
/* (218) expr ::= MINUS INTEGER */
252
,
/* (219) expr ::= PLUS INTEGER */
252
,
/* (220) expr ::= FLOAT */
252
,
/* (221) expr ::= MINUS FLOAT */
252
,
/* (222) expr ::= PLUS FLOAT */
252
,
/* (223) expr ::= STRING */
252
,
/* (224) expr ::= NOW */
252
,
/* (225) expr ::= VARIABLE */
252
,
/* (226) expr ::= PLUS VARIABLE */
252
,
/* (227) expr ::= MINUS VARIABLE */
252
,
/* (228) expr ::= BOOL */
252
,
/* (229) expr ::= NULL */
252
,
/* (230) expr ::= ID LP exprlist RP */
252
,
/* (231) expr ::= ID LP STAR RP */
252
,
/* (232) expr ::= expr IS NULL */
252
,
/* (233) expr ::= expr IS NOT NULL */
252
,
/* (234) expr ::= expr LT expr */
252
,
/* (235) expr ::= expr GT expr */
252
,
/* (236) expr ::= expr LE expr */
252
,
/* (237) expr ::= expr GE expr */
252
,
/* (238) expr ::= expr NE expr */
252
,
/* (239) expr ::= expr EQ expr */
252
,
/* (240) expr ::= expr BETWEEN expr AND expr */
252
,
/* (241) expr ::= expr AND expr */
252
,
/* (242) expr ::= expr OR expr */
252
,
/* (243) expr ::= expr PLUS expr */
252
,
/* (244) expr ::= expr MINUS expr */
252
,
/* (245) expr ::= expr STAR expr */
252
,
/* (246) expr ::= expr SLASH expr */
252
,
/* (247) expr ::= expr REM expr */
252
,
/* (248) expr ::= expr LIKE expr */
252
,
/* (249) expr ::= expr IN LP exprlist RP */
261
,
/* (250) exprlist ::= exprlist COMMA expritem */
261
,
/* (251) exprlist ::= expritem */
262
,
/* (252) expritem ::= expr */
262
,
/* (253) expritem ::= */
189
,
/* (254) cmd ::= RESET QUERY CACHE */
189
,
/* (255) cmd ::= SYNCDB ids REPLICA */
189
,
/* (256) cmd ::= ALTER TABLE ids cpxName ADD COLUMN columnlist */
189
,
/* (257) cmd ::= ALTER TABLE ids cpxName DROP COLUMN ids */
189
,
/* (258) cmd ::= ALTER TABLE ids cpxName ALTER COLUMN LENGTH ids INTEGER */
189
,
/* (259) cmd ::= ALTER TABLE ids cpxName ADD TAG columnlist */
189
,
/* (260) cmd ::= ALTER TABLE ids cpxName DROP TAG ids */
189
,
/* (261) cmd ::= ALTER TABLE ids cpxName CHANGE TAG ids ids */
189
,
/* (262) cmd ::= ALTER TABLE ids cpxName SET TAG ids EQ tagitem */
189
,
/* (263) cmd ::= ALTER STABLE ids cpxName ADD COLUMN columnlist */
189
,
/* (264) cmd ::= ALTER STABLE ids cpxName DROP COLUMN ids */
189
,
/* (265) cmd ::= ALTER STABLE ids cpxName ADD TAG columnlist */
189
,
/* (266) cmd ::= ALTER STABLE ids cpxName DROP TAG ids */
189
,
/* (267) cmd ::= ALTER STABLE ids cpxName CHANGE TAG ids ids */
189
,
/* (268) cmd ::= KILL CONNECTION INTEGER */
189
,
/* (269) cmd ::= KILL STREAM INTEGER COLON INTEGER */
189
,
/* (270) cmd ::= KILL QUERY INTEGER COLON INTEGER */
};
/* For rule J, yyRuleInfoNRhs[J] contains the negative of the number
** of symbols on the right-hand side of that rule. */
static
const
signed
char
yyRuleInfoNRhs
[]
=
{
-
1
,
/* (0) program ::= cmd */
-
2
,
/* (1) cmd ::= SHOW DATABASES */
-
2
,
/* (2) cmd ::= SHOW TOPICS */
-
2
,
/* (3) cmd ::= SHOW MNODES */
-
2
,
/* (4) cmd ::= SHOW DNODES */
-
2
,
/* (5) cmd ::= SHOW ACCOUNTS */
-
2
,
/* (6) cmd ::= SHOW USERS */
-
2
,
/* (7) cmd ::= SHOW MODULES */
-
2
,
/* (8) cmd ::= SHOW QUERIES */
-
2
,
/* (9) cmd ::= SHOW CONNECTIONS */
-
2
,
/* (10) cmd ::= SHOW STREAMS */
-
2
,
/* (11) cmd ::= SHOW VARIABLES */
-
2
,
/* (12) cmd ::= SHOW SCORES */
-
2
,
/* (13) cmd ::= SHOW GRANTS */
-
2
,
/* (14) cmd ::= SHOW VNODES */
-
3
,
/* (15) cmd ::= SHOW VNODES IPTOKEN */
0
,
/* (16) dbPrefix ::= */
-
2
,
/* (17) dbPrefix ::= ids DOT */
0
,
/* (18) cpxName ::= */
-
2
,
/* (19) cpxName ::= DOT ids */
-
5
,
/* (20) cmd ::= SHOW CREATE TABLE ids cpxName */
-
5
,
/* (21) cmd ::= SHOW CREATE STABLE ids cpxName */
-
4
,
/* (22) cmd ::= SHOW CREATE DATABASE ids */
-
3
,
/* (23) cmd ::= SHOW dbPrefix TABLES */
-
5
,
/* (24) cmd ::= SHOW dbPrefix TABLES LIKE ids */
-
3
,
/* (25) cmd ::= SHOW dbPrefix STABLES */
-
5
,
/* (26) cmd ::= SHOW dbPrefix STABLES LIKE ids */
-
3
,
/* (27) cmd ::= SHOW dbPrefix VGROUPS */
-
4
,
/* (28) cmd ::= SHOW dbPrefix VGROUPS ids */
-
5
,
/* (29) cmd ::= DROP TABLE ifexists ids cpxName */
-
5
,
/* (30) cmd ::= DROP STABLE ifexists ids cpxName */
-
4
,
/* (31) cmd ::= DROP DATABASE ifexists ids */
-
4
,
/* (32) cmd ::= DROP TOPIC ifexists ids */
-
3
,
/* (33) cmd ::= DROP DNODE ids */
-
3
,
/* (34) cmd ::= DROP USER ids */
-
3
,
/* (35) cmd ::= DROP ACCOUNT ids */
-
2
,
/* (36) cmd ::= USE ids */
-
3
,
/* (37) cmd ::= DESCRIBE ids cpxName */
-
5
,
/* (38) cmd ::= ALTER USER ids PASS ids */
-
5
,
/* (39) cmd ::= ALTER USER ids PRIVILEGE ids */
-
4
,
/* (40) cmd ::= ALTER DNODE ids ids */
-
5
,
/* (41) cmd ::= ALTER DNODE ids ids ids */
-
3
,
/* (42) cmd ::= ALTER LOCAL ids */
-
4
,
/* (43) cmd ::= ALTER LOCAL ids ids */
-
4
,
/* (44) cmd ::= ALTER DATABASE ids alter_db_optr */
-
4
,
/* (45) cmd ::= ALTER TOPIC ids alter_topic_optr */
-
4
,
/* (46) cmd ::= ALTER ACCOUNT ids acct_optr */
-
6
,
/* (47) cmd ::= ALTER ACCOUNT ids PASS ids acct_optr */
-
1
,
/* (48) ids ::= ID */
-
1
,
/* (49) ids ::= STRING */
-
2
,
/* (50) ifexists ::= IF EXISTS */
0
,
/* (51) ifexists ::= */
-
3
,
/* (52) ifnotexists ::= IF NOT EXISTS */
0
,
/* (53) ifnotexists ::= */
-
3
,
/* (54) cmd ::= CREATE DNODE ids */
-
6
,
/* (55) cmd ::= CREATE ACCOUNT ids PASS ids acct_optr */
-
5
,
/* (56) cmd ::= CREATE DATABASE ifnotexists ids db_optr */
-
5
,
/* (57) cmd ::= CREATE TOPIC ifnotexists ids topic_optr */
-
5
,
/* (58) cmd ::= CREATE USER ids PASS ids */
0
,
/* (59) pps ::= */
-
2
,
/* (60) pps ::= PPS INTEGER */
0
,
/* (61) tseries ::= */
-
2
,
/* (62) tseries ::= TSERIES INTEGER */
0
,
/* (63) dbs ::= */
-
2
,
/* (64) dbs ::= DBS INTEGER */
0
,
/* (65) streams ::= */
-
2
,
/* (66) streams ::= STREAMS INTEGER */
0
,
/* (67) storage ::= */
-
2
,
/* (68) storage ::= STORAGE INTEGER */
0
,
/* (69) qtime ::= */
-
2
,
/* (70) qtime ::= QTIME INTEGER */
0
,
/* (71) users ::= */
-
2
,
/* (72) users ::= USERS INTEGER */
0
,
/* (73) conns ::= */
-
2
,
/* (74) conns ::= CONNS INTEGER */
0
,
/* (75) state ::= */
-
2
,
/* (76) state ::= STATE ids */
-
9
,
/* (77) acct_optr ::= pps tseries storage streams qtime dbs users conns state */
-
2
,
/* (78) keep ::= KEEP tagitemlist */
-
2
,
/* (79) cache ::= CACHE INTEGER */
-
2
,
/* (80) replica ::= REPLICA INTEGER */
-
2
,
/* (81) quorum ::= QUORUM INTEGER */
-
2
,
/* (82) days ::= DAYS INTEGER */
-
2
,
/* (83) minrows ::= MINROWS INTEGER */
-
2
,
/* (84) maxrows ::= MAXROWS INTEGER */
-
2
,
/* (85) blocks ::= BLOCKS INTEGER */
-
2
,
/* (86) ctime ::= CTIME INTEGER */
-
2
,
/* (87) wal ::= WAL INTEGER */
-
2
,
/* (88) fsync ::= FSYNC INTEGER */
-
2
,
/* (89) comp ::= COMP INTEGER */
-
2
,
/* (90) prec ::= PRECISION STRING */
-
2
,
/* (91) update ::= UPDATE INTEGER */
-
2
,
/* (92) cachelast ::= CACHELAST INTEGER */
-
2
,
/* (93) partitions ::= PARTITIONS INTEGER */
0
,
/* (94) db_optr ::= */
-
2
,
/* (95) db_optr ::= db_optr cache */
-
2
,
/* (96) db_optr ::= db_optr replica */
-
2
,
/* (97) db_optr ::= db_optr quorum */
-
2
,
/* (98) db_optr ::= db_optr days */
-
2
,
/* (99) db_optr ::= db_optr minrows */
-
2
,
/* (100) db_optr ::= db_optr maxrows */
-
2
,
/* (101) db_optr ::= db_optr blocks */
-
2
,
/* (102) db_optr ::= db_optr ctime */
-
2
,
/* (103) db_optr ::= db_optr wal */
-
2
,
/* (104) db_optr ::= db_optr fsync */
-
2
,
/* (105) db_optr ::= db_optr comp */
-
2
,
/* (106) db_optr ::= db_optr prec */
-
2
,
/* (107) db_optr ::= db_optr keep */
-
2
,
/* (108) db_optr ::= db_optr update */
-
2
,
/* (109) db_optr ::= db_optr cachelast */
-
1
,
/* (110) topic_optr ::= db_optr */
-
2
,
/* (111) topic_optr ::= topic_optr partitions */
0
,
/* (112) alter_db_optr ::= */
-
2
,
/* (113) alter_db_optr ::= alter_db_optr replica */
-
2
,
/* (114) alter_db_optr ::= alter_db_optr quorum */
-
2
,
/* (115) alter_db_optr ::= alter_db_optr keep */
-
2
,
/* (116) alter_db_optr ::= alter_db_optr blocks */
-
2
,
/* (117) alter_db_optr ::= alter_db_optr comp */
-
2
,
/* (118) alter_db_optr ::= alter_db_optr wal */
-
2
,
/* (119) alter_db_optr ::= alter_db_optr fsync */
-
2
,
/* (120) alter_db_optr ::= alter_db_optr update */
-
2
,
/* (121) alter_db_optr ::= alter_db_optr cachelast */
-
1
,
/* (122) alter_topic_optr ::= alter_db_optr */
-
2
,
/* (123) alter_topic_optr ::= alter_topic_optr partitions */
-
1
,
/* (124) typename ::= ids */
-
4
,
/* (125) typename ::= ids LP signed RP */
-
2
,
/* (126) typename ::= ids UNSIGNED */
-
1
,
/* (127) signed ::= INTEGER */
-
2
,
/* (128) signed ::= PLUS INTEGER */
-
2
,
/* (129) signed ::= MINUS INTEGER */
-
3
,
/* (130) cmd ::= CREATE TABLE create_table_args */
-
3
,
/* (131) cmd ::= CREATE TABLE create_stable_args */
-
3
,
/* (132) cmd ::= CREATE STABLE create_stable_args */
-
3
,
/* (133) cmd ::= CREATE TABLE create_table_list */
-
1
,
/* (134) create_table_list ::= create_from_stable */
-
2
,
/* (135) create_table_list ::= create_table_list create_from_stable */
-
6
,
/* (136) create_table_args ::= ifnotexists ids cpxName LP columnlist RP */
-
10
,
/* (137) create_stable_args ::= ifnotexists ids cpxName LP columnlist RP TAGS LP columnlist RP */
-
10
,
/* (138) create_from_stable ::= ifnotexists ids cpxName USING ids cpxName TAGS LP tagitemlist RP */
-
13
,
/* (139) create_from_stable ::= ifnotexists ids cpxName USING ids cpxName LP tagNamelist RP TAGS LP tagitemlist RP */
-
3
,
/* (140) tagNamelist ::= tagNamelist COMMA ids */
-
1
,
/* (141) tagNamelist ::= ids */
-
5
,
/* (142) create_table_args ::= ifnotexists ids cpxName AS select */
-
3
,
/* (143) columnlist ::= columnlist COMMA column */
-
1
,
/* (144) columnlist ::= column */
-
2
,
/* (145) column ::= ids typename */
-
3
,
/* (146) tagitemlist ::= tagitemlist COMMA tagitem */
-
1
,
/* (147) tagitemlist ::= tagitem */
-
1
,
/* (148) tagitem ::= INTEGER */
-
1
,
/* (149) tagitem ::= FLOAT */
-
1
,
/* (150) tagitem ::= STRING */
-
1
,
/* (151) tagitem ::= BOOL */
-
1
,
/* (152) tagitem ::= NULL */
-
2
,
/* (153) tagitem ::= MINUS INTEGER */
-
2
,
/* (154) tagitem ::= MINUS FLOAT */
-
2
,
/* (155) tagitem ::= PLUS INTEGER */
-
2
,
/* (156) tagitem ::= PLUS FLOAT */
-
13
,
/* (157) select ::= SELECT selcollist from where_opt interval_opt session_option fill_opt sliding_opt groupby_opt orderby_opt having_opt slimit_opt limit_opt */
-
3
,
/* (158) select ::= LP select RP */
-
1
,
/* (159) union ::= select */
-
4
,
/* (160) union ::= union UNION ALL select */
-
1
,
/* (161) cmd ::= union */
-
2
,
/* (162) select ::= SELECT selcollist */
-
2
,
/* (163) sclp ::= selcollist COMMA */
0
,
/* (164) sclp ::= */
-
4
,
/* (165) selcollist ::= sclp distinct expr as */
-
2
,
/* (166) selcollist ::= sclp STAR */
-
2
,
/* (167) as ::= AS ids */
-
1
,
/* (168) as ::= ids */
0
,
/* (169) as ::= */
-
1
,
/* (170) distinct ::= DISTINCT */
0
,
/* (171) distinct ::= */
-
2
,
/* (172) from ::= FROM tablelist */
-
4
,
/* (173) from ::= FROM LP union RP */
-
2
,
/* (174) tablelist ::= ids cpxName */
-
3
,
/* (175) tablelist ::= ids cpxName ids */
-
4
,
/* (176) tablelist ::= tablelist COMMA ids cpxName */
-
5
,
/* (177) tablelist ::= tablelist COMMA ids cpxName ids */
-
1
,
/* (178) tmvar ::= VARIABLE */
-
4
,
/* (179) interval_opt ::= INTERVAL LP tmvar RP */
-
6
,
/* (180) interval_opt ::= INTERVAL LP tmvar COMMA tmvar RP */
0
,
/* (181) interval_opt ::= */
0
,
/* (182) session_option ::= */
-
7
,
/* (183) session_option ::= SESSION LP ids cpxName COMMA tmvar RP */
0
,
/* (184) fill_opt ::= */
-
6
,
/* (185) fill_opt ::= FILL LP ID COMMA tagitemlist RP */
-
4
,
/* (186) fill_opt ::= FILL LP ID RP */
-
4
,
/* (187) sliding_opt ::= SLIDING LP tmvar RP */
0
,
/* (188) sliding_opt ::= */
0
,
/* (189) orderby_opt ::= */
-
3
,
/* (190) orderby_opt ::= ORDER BY sortlist */
-
4
,
/* (191) sortlist ::= sortlist COMMA item sortorder */
-
2
,
/* (192) sortlist ::= item sortorder */
-
2
,
/* (193) item ::= ids cpxName */
-
1
,
/* (194) sortorder ::= ASC */
-
1
,
/* (195) sortorder ::= DESC */
0
,
/* (196) sortorder ::= */
0
,
/* (197) groupby_opt ::= */
-
3
,
/* (198) groupby_opt ::= GROUP BY grouplist */
-
3
,
/* (199) grouplist ::= grouplist COMMA item */
-
1
,
/* (200) grouplist ::= item */
0
,
/* (201) having_opt ::= */
-
2
,
/* (202) having_opt ::= HAVING expr */
0
,
/* (203) limit_opt ::= */
-
2
,
/* (204) limit_opt ::= LIMIT signed */
-
4
,
/* (205) limit_opt ::= LIMIT signed OFFSET signed */
-
4
,
/* (206) limit_opt ::= LIMIT signed COMMA signed */
0
,
/* (207) slimit_opt ::= */
-
2
,
/* (208) slimit_opt ::= SLIMIT signed */
-
4
,
/* (209) slimit_opt ::= SLIMIT signed SOFFSET signed */
-
4
,
/* (210) slimit_opt ::= SLIMIT signed COMMA signed */
0
,
/* (211) where_opt ::= */
-
2
,
/* (212) where_opt ::= WHERE expr */
-
3
,
/* (213) expr ::= LP expr RP */
-
1
,
/* (214) expr ::= ID */
-
3
,
/* (215) expr ::= ID DOT ID */
-
3
,
/* (216) expr ::= ID DOT STAR */
-
1
,
/* (217) expr ::= INTEGER */
-
2
,
/* (218) expr ::= MINUS INTEGER */
-
2
,
/* (219) expr ::= PLUS INTEGER */
-
1
,
/* (220) expr ::= FLOAT */
-
2
,
/* (221) expr ::= MINUS FLOAT */
-
2
,
/* (222) expr ::= PLUS FLOAT */
-
1
,
/* (223) expr ::= STRING */
-
1
,
/* (224) expr ::= NOW */
-
1
,
/* (225) expr ::= VARIABLE */
-
2
,
/* (226) expr ::= PLUS VARIABLE */
-
2
,
/* (227) expr ::= MINUS VARIABLE */
-
1
,
/* (228) expr ::= BOOL */
-
1
,
/* (229) expr ::= NULL */
-
4
,
/* (230) expr ::= ID LP exprlist RP */
-
4
,
/* (231) expr ::= ID LP STAR RP */
-
3
,
/* (232) expr ::= expr IS NULL */
-
4
,
/* (233) expr ::= expr IS NOT NULL */
-
3
,
/* (234) expr ::= expr LT expr */
-
3
,
/* (235) expr ::= expr GT expr */
-
3
,
/* (236) expr ::= expr LE expr */
-
3
,
/* (237) expr ::= expr GE expr */
-
3
,
/* (238) expr ::= expr NE expr */
-
3
,
/* (239) expr ::= expr EQ expr */
-
5
,
/* (240) expr ::= expr BETWEEN expr AND expr */
-
3
,
/* (241) expr ::= expr AND expr */
-
3
,
/* (242) expr ::= expr OR expr */
-
3
,
/* (243) expr ::= expr PLUS expr */
-
3
,
/* (244) expr ::= expr MINUS expr */
-
3
,
/* (245) expr ::= expr STAR expr */
-
3
,
/* (246) expr ::= expr SLASH expr */
-
3
,
/* (247) expr ::= expr REM expr */
-
3
,
/* (248) expr ::= expr LIKE expr */
-
5
,
/* (249) expr ::= expr IN LP exprlist RP */
-
3
,
/* (250) exprlist ::= exprlist COMMA expritem */
-
1
,
/* (251) exprlist ::= expritem */
-
1
,
/* (252) expritem ::= expr */
0
,
/* (253) expritem ::= */
-
3
,
/* (254) cmd ::= RESET QUERY CACHE */
-
3
,
/* (255) cmd ::= SYNCDB ids REPLICA */
-
7
,
/* (256) cmd ::= ALTER TABLE ids cpxName ADD COLUMN columnlist */
-
7
,
/* (257) cmd ::= ALTER TABLE ids cpxName DROP COLUMN ids */
-
9
,
/* (258) cmd ::= ALTER TABLE ids cpxName ALTER COLUMN LENGTH ids INTEGER */
-
7
,
/* (259) cmd ::= ALTER TABLE ids cpxName ADD TAG columnlist */
-
7
,
/* (260) cmd ::= ALTER TABLE ids cpxName DROP TAG ids */
-
8
,
/* (261) cmd ::= ALTER TABLE ids cpxName CHANGE TAG ids ids */
-
9
,
/* (262) cmd ::= ALTER TABLE ids cpxName SET TAG ids EQ tagitem */
-
7
,
/* (263) cmd ::= ALTER STABLE ids cpxName ADD COLUMN columnlist */
-
7
,
/* (264) cmd ::= ALTER STABLE ids cpxName DROP COLUMN ids */
-
7
,
/* (265) cmd ::= ALTER STABLE ids cpxName ADD TAG columnlist */
-
7
,
/* (266) cmd ::= ALTER STABLE ids cpxName DROP TAG ids */
-
8
,
/* (267) cmd ::= ALTER STABLE ids cpxName CHANGE TAG ids ids */
-
3
,
/* (268) cmd ::= KILL CONNECTION INTEGER */
-
5
,
/* (269) cmd ::= KILL STREAM INTEGER COLON INTEGER */
-
5
,
/* (270) cmd ::= KILL QUERY INTEGER COLON INTEGER */
};
static
void
yy_accept
(
yyParser
*
);
/* Forward Declaration */
...
...
@@ -2039,30 +2333,34 @@ static void yy_accept(yyParser*); /* Forward Declaration */
** only called from one place, optimizing compilers will in-line it, which
** means that the extra parameters have no performance impact.
*/
static
void
yy_reduce
(
static
YYACTIONTYPE
yy_reduce
(
yyParser
*
yypParser
,
/* The parser */
unsigned
int
yyruleno
,
/* Number of the rule by which to reduce */
int
yyLookahead
,
/* Lookahead token, or YYNOCODE if none */
ParseTOKENTYPE
yyLookaheadToken
/* Value of the lookahead token */
ParseCTX_PDECL
/* %extra_context */
){
int
yygoto
;
/* The next state */
int
yyact
;
/* The next action */
YYACTIONTYPE
yyact
;
/* The next action */
yyStackEntry
*
yymsp
;
/* The top of the parser's stack */
int
yysize
;
/* Amount to pop the stack */
ParseARG_FETCH
;
ParseARG_FETCH
(
void
)
yyLookahead
;
(
void
)
yyLookaheadToken
;
yymsp
=
yypParser
->
yytos
;
#ifndef NDEBUG
if
(
yyTraceFILE
&&
yyruleno
<
(
int
)(
sizeof
(
yyRuleName
)
/
sizeof
(
yyRuleName
[
0
]))
){
yysize
=
yyRuleInfo
[
yyruleno
].
nrhs
;
yysize
=
yyRuleInfo
NRhs
[
yyruleno
]
;
if
(
yysize
){
fprintf
(
yyTraceFILE
,
"%sReduce %d [%s]
, go
to state %d.
\n
"
,
fprintf
(
yyTraceFILE
,
"%sReduce %d [%s]
%s, pop back
to state %d.
\n
"
,
yyTracePrompt
,
yyruleno
,
yyRuleName
[
yyruleno
],
yymsp
[
yysize
].
stateno
);
yyruleno
,
yyRuleName
[
yyruleno
],
yyruleno
<
YYNRULE_WITH_ACTION
?
""
:
" without external action"
,
yymsp
[
yysize
].
stateno
);
}
else
{
fprintf
(
yyTraceFILE
,
"%sReduce %d [%s].
\n
"
,
yyTracePrompt
,
yyruleno
,
yyRuleName
[
yyruleno
]);
fprintf
(
yyTraceFILE
,
"%sReduce %d [%s]%s.
\n
"
,
yyTracePrompt
,
yyruleno
,
yyRuleName
[
yyruleno
],
yyruleno
<
YYNRULE_WITH_ACTION
?
""
:
" without external action"
);
}
}
#endif
/* NDEBUG */
...
...
@@ -2070,7 +2368,7 @@ static void yy_reduce(
/* Check that the stack is large enough to grow by a single entry
** if the RHS of the rule is empty. This ensures that there is room
** enough on the stack to push the LHS value */
if
(
yyRuleInfo
[
yyruleno
].
nrhs
==
0
){
if
(
yyRuleInfo
NRhs
[
yyruleno
]
==
0
){
#ifdef YYTRACKMAXSTACKDEPTH
if
(
(
int
)(
yypParser
->
yytos
-
yypParser
->
yystack
)
>
yypParser
->
yyhwm
){
yypParser
->
yyhwm
++
;
...
...
@@ -2080,13 +2378,19 @@ static void yy_reduce(
#if YYSTACKDEPTH>0
if
(
yypParser
->
yytos
>=
yypParser
->
yystackEnd
){
yyStackOverflow
(
yypParser
);
return
;
/* The call to yyStackOverflow() above pops the stack until it is
** empty, causing the main parser loop to exit. So the return value
** is never used and does not matter. */
return
0
;
}
#else
if
(
yypParser
->
yytos
>=&
yypParser
->
yystack
[
yypParser
->
yystksz
-
1
]
){
if
(
yyGrowStack
(
yypParser
)
){
yyStackOverflow
(
yypParser
);
return
;
/* The call to yyStackOverflow() above pops the stack until it is
** empty, causing the main parser loop to exit. So the return value
** is never used and does not matter. */
return
0
;
}
yymsp
=
yypParser
->
yytos
;
}
...
...
@@ -3010,14 +3314,27 @@ static void yy_reduce(
setSqlInfo
(
pInfo
,
pAlterTable
,
NULL
,
TSDB_SQL_ALTER_TABLE
);
}
break
;
case
258
:
/* cmd ::= ALTER TABLE ids cpxName ADD TAG columnlist */
case
258
:
/* cmd ::= ALTER TABLE ids cpxName ALTER COLUMN LENGTH ids INTEGER */
{
yymsp
[
-
6
].
minor
.
yy0
.
n
+=
yymsp
[
-
5
].
minor
.
yy0
.
n
;
toTSDBType
(
yymsp
[
-
1
].
minor
.
yy0
.
type
);
SArray
*
K
=
tVariantListAppendToken
(
NULL
,
&
yymsp
[
-
1
].
minor
.
yy0
,
-
1
);
toTSDBType
(
yymsp
[
0
].
minor
.
yy0
.
type
);
K
=
tVariantListAppendToken
(
K
,
&
yymsp
[
0
].
minor
.
yy0
,
-
1
);
SAlterTableInfo
*
pAlterTable
=
tSetAlterTableInfo
(
&
yymsp
[
-
6
].
minor
.
yy0
,
K
,
NULL
,
TSDB_ALTER_TABLE_CHANGE_COLUMN
,
-
1
);
setSqlInfo
(
pInfo
,
pAlterTable
,
NULL
,
TSDB_SQL_ALTER_TABLE
);
}
break
;
case
259
:
/* cmd ::= ALTER TABLE ids cpxName ADD TAG columnlist */
{
yymsp
[
-
4
].
minor
.
yy0
.
n
+=
yymsp
[
-
3
].
minor
.
yy0
.
n
;
SAlterTableInfo
*
pAlterTable
=
tSetAlterTableInfo
(
&
yymsp
[
-
4
].
minor
.
yy0
,
yymsp
[
0
].
minor
.
yy159
,
NULL
,
TSDB_ALTER_TABLE_ADD_TAG_COLUMN
,
-
1
);
setSqlInfo
(
pInfo
,
pAlterTable
,
NULL
,
TSDB_SQL_ALTER_TABLE
);
}
break
;
case
2
59
:
/* cmd ::= ALTER TABLE ids cpxName DROP TAG ids */
case
2
60
:
/* cmd ::= ALTER TABLE ids cpxName DROP TAG ids */
{
yymsp
[
-
4
].
minor
.
yy0
.
n
+=
yymsp
[
-
3
].
minor
.
yy0
.
n
;
...
...
@@ -3028,7 +3345,7 @@ static void yy_reduce(
setSqlInfo
(
pInfo
,
pAlterTable
,
NULL
,
TSDB_SQL_ALTER_TABLE
);
}
break
;
case
26
0
:
/* cmd ::= ALTER TABLE ids cpxName CHANGE TAG ids ids */
case
26
1
:
/* cmd ::= ALTER TABLE ids cpxName CHANGE TAG ids ids */
{
yymsp
[
-
5
].
minor
.
yy0
.
n
+=
yymsp
[
-
4
].
minor
.
yy0
.
n
;
...
...
@@ -3042,7 +3359,7 @@ static void yy_reduce(
setSqlInfo
(
pInfo
,
pAlterTable
,
NULL
,
TSDB_SQL_ALTER_TABLE
);
}
break
;
case
26
1
:
/* cmd ::= ALTER TABLE ids cpxName SET TAG ids EQ tagitem */
case
26
2
:
/* cmd ::= ALTER TABLE ids cpxName SET TAG ids EQ tagitem */
{
yymsp
[
-
6
].
minor
.
yy0
.
n
+=
yymsp
[
-
5
].
minor
.
yy0
.
n
;
...
...
@@ -3054,14 +3371,14 @@ static void yy_reduce(
setSqlInfo
(
pInfo
,
pAlterTable
,
NULL
,
TSDB_SQL_ALTER_TABLE
);
}
break
;
case
26
2
:
/* cmd ::= ALTER STABLE ids cpxName ADD COLUMN columnlist */
case
26
3
:
/* cmd ::= ALTER STABLE ids cpxName ADD COLUMN columnlist */
{
yymsp
[
-
4
].
minor
.
yy0
.
n
+=
yymsp
[
-
3
].
minor
.
yy0
.
n
;
SAlterTableInfo
*
pAlterTable
=
tSetAlterTableInfo
(
&
yymsp
[
-
4
].
minor
.
yy0
,
yymsp
[
0
].
minor
.
yy159
,
NULL
,
TSDB_ALTER_TABLE_ADD_COLUMN
,
TSDB_SUPER_TABLE
);
setSqlInfo
(
pInfo
,
pAlterTable
,
NULL
,
TSDB_SQL_ALTER_TABLE
);
}
break
;
case
26
3
:
/* cmd ::= ALTER STABLE ids cpxName DROP COLUMN ids */
case
26
4
:
/* cmd ::= ALTER STABLE ids cpxName DROP COLUMN ids */
{
yymsp
[
-
4
].
minor
.
yy0
.
n
+=
yymsp
[
-
3
].
minor
.
yy0
.
n
;
...
...
@@ -3072,14 +3389,14 @@ static void yy_reduce(
setSqlInfo
(
pInfo
,
pAlterTable
,
NULL
,
TSDB_SQL_ALTER_TABLE
);
}
break
;
case
26
4
:
/* cmd ::= ALTER STABLE ids cpxName ADD TAG columnlist */
case
26
5
:
/* cmd ::= ALTER STABLE ids cpxName ADD TAG columnlist */
{
yymsp
[
-
4
].
minor
.
yy0
.
n
+=
yymsp
[
-
3
].
minor
.
yy0
.
n
;
SAlterTableInfo
*
pAlterTable
=
tSetAlterTableInfo
(
&
yymsp
[
-
4
].
minor
.
yy0
,
yymsp
[
0
].
minor
.
yy159
,
NULL
,
TSDB_ALTER_TABLE_ADD_TAG_COLUMN
,
TSDB_SUPER_TABLE
);
setSqlInfo
(
pInfo
,
pAlterTable
,
NULL
,
TSDB_SQL_ALTER_TABLE
);
}
break
;
case
26
5
:
/* cmd ::= ALTER STABLE ids cpxName DROP TAG ids */
case
26
6
:
/* cmd ::= ALTER STABLE ids cpxName DROP TAG ids */
{
yymsp
[
-
4
].
minor
.
yy0
.
n
+=
yymsp
[
-
3
].
minor
.
yy0
.
n
;
...
...
@@ -3090,7 +3407,7 @@ static void yy_reduce(
setSqlInfo
(
pInfo
,
pAlterTable
,
NULL
,
TSDB_SQL_ALTER_TABLE
);
}
break
;
case
26
6
:
/* cmd ::= ALTER STABLE ids cpxName CHANGE TAG ids ids */
case
26
7
:
/* cmd ::= ALTER STABLE ids cpxName CHANGE TAG ids ids */
{
yymsp
[
-
5
].
minor
.
yy0
.
n
+=
yymsp
[
-
4
].
minor
.
yy0
.
n
;
...
...
@@ -3104,22 +3421,22 @@ static void yy_reduce(
setSqlInfo
(
pInfo
,
pAlterTable
,
NULL
,
TSDB_SQL_ALTER_TABLE
);
}
break
;
case
26
7
:
/* cmd ::= KILL CONNECTION INTEGER */
case
26
8
:
/* cmd ::= KILL CONNECTION INTEGER */
{
setKillSql
(
pInfo
,
TSDB_SQL_KILL_CONNECTION
,
&
yymsp
[
0
].
minor
.
yy0
);}
break
;
case
26
8
:
/* cmd ::= KILL STREAM INTEGER COLON INTEGER */
case
26
9
:
/* 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
2
69
:
/* cmd ::= KILL QUERY INTEGER COLON INTEGER */
case
2
70
:
/* 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
;
/********** End reduce actions ************************************************/
};
assert
(
yyruleno
<
sizeof
(
yyRuleInfo
)
/
sizeof
(
yyRuleInfo
[
0
])
);
yygoto
=
yyRuleInfo
[
yyruleno
].
lhs
;
yysize
=
yyRuleInfo
[
yyruleno
].
nrhs
;
assert
(
yyruleno
<
sizeof
(
yyRuleInfo
Lhs
)
/
sizeof
(
yyRuleInfoLhs
[
0
])
);
yygoto
=
yyRuleInfo
Lhs
[
yyruleno
]
;
yysize
=
yyRuleInfo
NRhs
[
yyruleno
]
;
yyact
=
yy_find_reduce_action
(
yymsp
[
yysize
].
stateno
,(
YYCODETYPE
)
yygoto
);
/* There are no SHIFTREDUCE actions on nonterminals because the table
...
...
@@ -3134,6 +3451,7 @@ static void yy_reduce(
yymsp
->
stateno
=
(
YYACTIONTYPE
)
yyact
;
yymsp
->
major
=
(
YYCODETYPE
)
yygoto
;
yyTraceShift
(
yypParser
,
yyact
,
"... then shift"
);
return
yyact
;
}
/*
...
...
@@ -3143,7 +3461,8 @@ static void yy_reduce(
static
void
yy_parse_failed
(
yyParser
*
yypParser
/* The parser */
){
ParseARG_FETCH
;
ParseARG_FETCH
ParseCTX_FETCH
#ifndef NDEBUG
if
(
yyTraceFILE
){
fprintf
(
yyTraceFILE
,
"%sFail!
\n
"
,
yyTracePrompt
);
...
...
@@ -3154,7 +3473,8 @@ static void yy_parse_failed(
** parser fails */
/************ Begin %parse_failure code ***************************************/
/************ End %parse_failure code *****************************************/
ParseARG_STORE
;
/* Suppress warning about unused %extra_argument variable */
ParseARG_STORE
/* Suppress warning about unused %extra_argument variable */
ParseCTX_STORE
}
#endif
/* YYNOERRORRECOVERY */
...
...
@@ -3166,7 +3486,8 @@ static void yy_syntax_error(
int
yymajor
,
/* The major type of the error token */
ParseTOKENTYPE
yyminor
/* The minor type of the error token */
){
ParseARG_FETCH
;
ParseARG_FETCH
ParseCTX_FETCH
#define TOKEN yyminor
/************ Begin %syntax_error code ****************************************/
...
...
@@ -3192,7 +3513,8 @@ static void yy_syntax_error(
assert
(
len
<=
outputBufLen
);
/************ End %syntax_error code ******************************************/
ParseARG_STORE
;
/* Suppress warning about unused %extra_argument variable */
ParseARG_STORE
/* Suppress warning about unused %extra_argument variable */
ParseCTX_STORE
}
/*
...
...
@@ -3201,7 +3523,8 @@ static void yy_syntax_error(
static
void
yy_accept
(
yyParser
*
yypParser
/* The parser */
){
ParseARG_FETCH
;
ParseARG_FETCH
ParseCTX_FETCH
#ifndef NDEBUG
if
(
yyTraceFILE
){
fprintf
(
yyTraceFILE
,
"%sAccept!
\n
"
,
yyTracePrompt
);
...
...
@@ -3216,7 +3539,8 @@ static void yy_accept(
/*********** Begin %parse_accept code *****************************************/
/*********** End %parse_accept code *******************************************/
ParseARG_STORE
;
/* Suppress warning about unused %extra_argument variable */
ParseARG_STORE
/* Suppress warning about unused %extra_argument variable */
ParseCTX_STORE
}
/* The main parser program.
...
...
@@ -3245,45 +3569,47 @@ void Parse(
ParseARG_PDECL
/* Optional %extra_argument parameter */
){
YYMINORTYPE
yyminorunion
;
unsigned
int
yyact
;
/* The parser action. */
YYACTIONTYPE
yyact
;
/* The parser action. */
#if !defined(YYERRORSYMBOL) && !defined(YYNOERRORRECOVERY)
int
yyendofinput
;
/* True if we are at the end of input */
#endif
#ifdef YYERRORSYMBOL
int
yyerrorhit
=
0
;
/* True if yymajor has invoked an error */
#endif
yyParser
*
yypParser
;
/* The parser */
yyParser
*
yypParser
=
(
yyParser
*
)
yyp
;
/* The parser */
ParseCTX_FETCH
ParseARG_STORE
yypParser
=
(
yyParser
*
)
yyp
;
assert
(
yypParser
->
yytos
!=
0
);
#if !defined(YYERRORSYMBOL) && !defined(YYNOERRORRECOVERY)
yyendofinput
=
(
yymajor
==
0
);
#endif
ParseARG_STORE
;
yyact
=
yypParser
->
yytos
->
stateno
;
#ifndef NDEBUG
if
(
yyTraceFILE
){
int
stateno
=
yypParser
->
yytos
->
stateno
;
if
(
stateno
<
YY_MIN_REDUCE
){
if
(
yyact
<
YY_MIN_REDUCE
){
fprintf
(
yyTraceFILE
,
"%sInput '%s' in state %d
\n
"
,
yyTracePrompt
,
yyTokenName
[
yymajor
],
stateno
);
yyTracePrompt
,
yyTokenName
[
yymajor
],
yyact
);
}
else
{
fprintf
(
yyTraceFILE
,
"%sInput '%s' with pending reduce %d
\n
"
,
yyTracePrompt
,
yyTokenName
[
yymajor
],
stateno
-
YY_MIN_REDUCE
);
yyTracePrompt
,
yyTokenName
[
yymajor
],
yyact
-
YY_MIN_REDUCE
);
}
}
#endif
do
{
yyact
=
yy_find_shift_action
(
yypParser
,(
YYCODETYPE
)
yymajor
);
assert
(
yyact
==
yypParser
->
yytos
->
stateno
);
yyact
=
yy_find_shift_action
((
YYCODETYPE
)
yymajor
,
yyact
);
if
(
yyact
>=
YY_MIN_REDUCE
){
yy_reduce
(
yypParser
,
yyact
-
YY_MIN_REDUCE
,
yymajor
,
yyminor
);
yyact
=
yy_reduce
(
yypParser
,
yyact
-
YY_MIN_REDUCE
,
yymajor
,
yyminor
ParseCTX_PARAM
);
}
else
if
(
yyact
<=
YY_MAX_SHIFTREDUCE
){
yy_shift
(
yypParser
,
yyact
,
yymajor
,
yyminor
);
yy_shift
(
yypParser
,
yyact
,
(
YYCODETYPE
)
yymajor
,
yyminor
);
#ifndef YYNOERRORRECOVERY
yypParser
->
yyerrcnt
--
;
#endif
yymajor
=
YYNOCODE
;
break
;
}
else
if
(
yyact
==
YY_ACCEPT_ACTION
){
yypParser
->
yytos
--
;
yy_accept
(
yypParser
);
...
...
@@ -3334,10 +3660,9 @@ void Parse(
yymajor
=
YYNOCODE
;
}
else
{
while
(
yypParser
->
yytos
>=
yypParser
->
yystack
&&
yymx
!=
YYERRORSYMBOL
&&
(
yyact
=
yy_find_reduce_action
(
yypParser
->
yytos
->
stateno
,
YYERRORSYMBOL
))
>
=
YY_MIN_
REDUCE
YYERRORSYMBOL
))
>
YY_MAX_SHIFT
REDUCE
){
yy_pop_parser_stack
(
yypParser
);
}
...
...
@@ -3354,6 +3679,8 @@ void Parse(
}
yypParser
->
yyerrcnt
=
3
;
yyerrorhit
=
1
;
if
(
yymajor
==
YYNOCODE
)
break
;
yyact
=
yypParser
->
yytos
->
stateno
;
#elif defined(YYNOERRORRECOVERY)
/* If the YYNOERRORRECOVERY macro is defined, then do not attempt to
** do any kind of error recovery. Instead, simply invoke the syntax
...
...
@@ -3364,8 +3691,7 @@ void Parse(
*/
yy_syntax_error
(
yypParser
,
yymajor
,
yyminor
);
yy_destructor
(
yypParser
,(
YYCODETYPE
)
yymajor
,
&
yyminorunion
);
yymajor
=
YYNOCODE
;
break
;
#else
/* YYERRORSYMBOL is not defined */
/* This is what we do if the grammar does not define ERROR:
**
...
...
@@ -3387,10 +3713,10 @@ void Parse(
yypParser
->
yyerrcnt
=
-
1
;
#endif
}
yymajor
=
YYNOCODE
;
break
;
#endif
}
}
while
(
yy
major
!=
YYNOCODE
&&
yy
pParser
->
yytos
>
yypParser
->
yystack
);
}
while
(
yypParser
->
yytos
>
yypParser
->
yystack
);
#ifndef NDEBUG
if
(
yyTraceFILE
){
yyStackEntry
*
i
;
...
...
@@ -3405,3 +3731,17 @@ void Parse(
#endif
return
;
}
/*
** Return the fallback token corresponding to canonical token iToken, or
** 0 if iToken has no fallback.
*/
int
ParseFallback
(
int
iToken
){
#ifdef YYFALLBACK
assert
(
iToken
<
(
int
)(
sizeof
(
yyFallback
)
/
sizeof
(
yyFallback
[
0
]))
);
return
yyFallback
[
iToken
];
#else
(
void
)
iToken
;
return
0
;
#endif
}
src/util/src/ttokenizer.c
浏览文件 @
ef58f099
...
...
@@ -217,7 +217,8 @@ static SKeyword keywordTable[] = {
{
"DISTINCT"
,
TK_DISTINCT
},
{
"PARTITIONS"
,
TK_PARTITIONS
},
{
"TOPIC"
,
TK_TOPIC
},
{
"TOPICS"
,
TK_TOPICS
}
{
"TOPICS"
,
TK_TOPICS
},
{
"LENGTH"
,
TK_LENGTH
}
};
static
const
char
isIdChar
[]
=
{
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录