提交 d2c22548 编写于 作者: G Ganlin Zhao

[TD-11220]<feature>(query): time related functions

上级 e489c016
...@@ -161,62 +161,62 @@ ...@@ -161,62 +161,62 @@
#define TK_SLIMIT 143 #define TK_SLIMIT 143
#define TK_SOFFSET 144 #define TK_SOFFSET 144
#define TK_WHERE 145 #define TK_WHERE 145
#define TK_RESET 146 #define TK_TODAY 146
#define TK_QUERY 147 #define TK_RESET 147
#define TK_SYNCDB 148 #define TK_QUERY 148
#define TK_ADD 149 #define TK_SYNCDB 149
#define TK_COLUMN 150 #define TK_ADD 150
#define TK_MODIFY 151 #define TK_COLUMN 151
#define TK_TAG 152 #define TK_MODIFY 152
#define TK_CHANGE 153 #define TK_TAG 153
#define TK_SET 154 #define TK_CHANGE 154
#define TK_KILL 155 #define TK_SET 155
#define TK_CONNECTION 156 #define TK_KILL 156
#define TK_STREAM 157 #define TK_CONNECTION 157
#define TK_COLON 158 #define TK_STREAM 158
#define TK_ABORT 159 #define TK_COLON 159
#define TK_AFTER 160 #define TK_ABORT 160
#define TK_ATTACH 161 #define TK_AFTER 161
#define TK_BEFORE 162 #define TK_ATTACH 162
#define TK_BEGIN 163 #define TK_BEFORE 163
#define TK_CASCADE 164 #define TK_BEGIN 164
#define TK_CLUSTER 165 #define TK_CASCADE 165
#define TK_CONFLICT 166 #define TK_CLUSTER 166
#define TK_COPY 167 #define TK_CONFLICT 167
#define TK_DEFERRED 168 #define TK_COPY 168
#define TK_DELIMITERS 169 #define TK_DEFERRED 169
#define TK_DETACH 170 #define TK_DELIMITERS 170
#define TK_EACH 171 #define TK_DETACH 171
#define TK_END 172 #define TK_EACH 172
#define TK_EXPLAIN 173 #define TK_END 173
#define TK_FAIL 174 #define TK_EXPLAIN 174
#define TK_FOR 175 #define TK_FAIL 175
#define TK_IGNORE 176 #define TK_FOR 176
#define TK_IMMEDIATE 177 #define TK_IGNORE 177
#define TK_INITIALLY 178 #define TK_IMMEDIATE 178
#define TK_INSTEAD 179 #define TK_INITIALLY 179
#define TK_KEY 180 #define TK_INSTEAD 180
#define TK_OF 181 #define TK_KEY 181
#define TK_RAISE 182 #define TK_OF 182
#define TK_REPLACE 183 #define TK_RAISE 183
#define TK_RESTRICT 184 #define TK_REPLACE 184
#define TK_ROW 185 #define TK_RESTRICT 185
#define TK_STATEMENT 186 #define TK_ROW 186
#define TK_TRIGGER 187 #define TK_STATEMENT 187
#define TK_VIEW 188 #define TK_TRIGGER 188
#define TK_IPTOKEN 189 #define TK_VIEW 189
#define TK_SEMI 190 #define TK_IPTOKEN 190
#define TK_NONE 191 #define TK_SEMI 191
#define TK_PREV 192 #define TK_NONE 192
#define TK_LINEAR 193 #define TK_PREV 193
#define TK_IMPORT 194 #define TK_LINEAR 194
#define TK_TBNAME 195 #define TK_IMPORT 195
#define TK_JOIN 196 #define TK_TBNAME 196
#define TK_INSERT 197 #define TK_JOIN 197
#define TK_INTO 198 #define TK_INSERT 198
#define TK_VALUES 199 #define TK_INTO 199
#define TK_FILE 200 #define TK_VALUES 200
#define TK_FILE 201
#define TK_SPACE 300 #define TK_SPACE 300
#define TK_COMMENT 301 #define TK_COMMENT 301
......
...@@ -748,6 +748,7 @@ expr(A) ::= MINUS(X) FLOAT(Y). { X.n += Y.n; X.type = TK_FLOAT; A = tSqlExprCr ...@@ -748,6 +748,7 @@ expr(A) ::= MINUS(X) FLOAT(Y). { X.n += Y.n; X.type = TK_FLOAT; A = tSqlExprCr
expr(A) ::= PLUS(X) FLOAT(Y). { X.n += Y.n; X.type = TK_FLOAT; A = tSqlExprCreateIdValue(pInfo, &X, TK_FLOAT);} expr(A) ::= PLUS(X) FLOAT(Y). { X.n += Y.n; X.type = TK_FLOAT; A = tSqlExprCreateIdValue(pInfo, &X, TK_FLOAT);}
expr(A) ::= STRING(X). { A = tSqlExprCreateIdValue(pInfo, &X, TK_STRING);} expr(A) ::= STRING(X). { A = tSqlExprCreateIdValue(pInfo, &X, TK_STRING);}
expr(A) ::= NOW(X). { A = tSqlExprCreateIdValue(pInfo, &X, TK_NOW); } expr(A) ::= NOW(X). { A = tSqlExprCreateIdValue(pInfo, &X, TK_NOW); }
expr(A) ::= TODAY(X). { A = tSqlExprCreateIdValue(pInfo, &X, TK_TODAY); }
expr(A) ::= VARIABLE(X). { A = tSqlExprCreateIdValue(pInfo, &X, TK_VARIABLE);} expr(A) ::= VARIABLE(X). { A = tSqlExprCreateIdValue(pInfo, &X, TK_VARIABLE);}
expr(A) ::= PLUS(X) VARIABLE(Y). { X.n += Y.n; X.type = TK_VARIABLE; A = tSqlExprCreateIdValue(pInfo, &X, TK_VARIABLE);} expr(A) ::= PLUS(X) VARIABLE(Y). { X.n += Y.n; X.type = TK_VARIABLE; A = tSqlExprCreateIdValue(pInfo, &X, TK_VARIABLE);}
expr(A) ::= MINUS(X) VARIABLE(Y). { X.n += Y.n; X.type = TK_VARIABLE; A = tSqlExprCreateIdValue(pInfo, &X, TK_VARIABLE);} expr(A) ::= MINUS(X) VARIABLE(Y). { X.n += Y.n; X.type = TK_VARIABLE; A = tSqlExprCreateIdValue(pInfo, &X, TK_VARIABLE);}
...@@ -972,4 +973,4 @@ cmd ::= KILL QUERY INTEGER(X) COLON(Z) INTEGER(Y). {X.n += (Z.n + Y.n); s ...@@ -972,4 +973,4 @@ cmd ::= KILL QUERY INTEGER(X) COLON(Z) INTEGER(Y). {X.n += (Z.n + Y.n); s
%fallback ID ABORT AFTER ASC ATTACH BEFORE BEGIN CASCADE CLUSTER CONFLICT COPY DATABASE DEFERRED %fallback ID ABORT AFTER ASC ATTACH BEFORE BEGIN CASCADE CLUSTER CONFLICT COPY DATABASE DEFERRED
DELIMITERS DESC DETACH EACH END EXPLAIN FAIL FOR GLOB IGNORE IMMEDIATE INITIALLY INSTEAD DELIMITERS DESC DETACH EACH END EXPLAIN FAIL FOR GLOB IGNORE IMMEDIATE INITIALLY INSTEAD
LIKE MATCH NMATCH KEY OF OFFSET RAISE REPLACE RESTRICT ROW STATEMENT TRIGGER VIEW ALL LIKE MATCH NMATCH KEY OF OFFSET RAISE REPLACE RESTRICT ROW STATEMENT TRIGGER VIEW ALL
NOW IPTOKEN SEMI NONE PREV LINEAR IMPORT TBNAME JOIN STABLE NULL INSERT INTO VALUES FILE. NOW TODAY IPTOKEN SEMI NONE PREV LINEAR IMPORT TBNAME JOIN STABLE NULL INSERT INTO VALUES FILE.
...@@ -161,9 +161,13 @@ tSqlExpr *tSqlExprCreateIdValue(SSqlInfo* pInfo, SStrToken *pToken, int32_t optr ...@@ -161,9 +161,13 @@ tSqlExpr *tSqlExprCreateIdValue(SSqlInfo* pInfo, SStrToken *pToken, int32_t optr
} }
pSqlExpr->tokenId = optrType; pSqlExpr->tokenId = optrType;
pSqlExpr->type = SQL_NODE_VALUE; pSqlExpr->type = SQL_NODE_VALUE;
} else if (optrType == TK_NOW) { } else if (optrType == TK_NOW || optrType == TK_TODAY) {
// use nanosecond by default TODO set value after getting database precision // use nanosecond by default TODO set value after getting database precision
if (optrType == TK_NOW) {
pSqlExpr->value.i64 = taosGetTimestamp(TSDB_TIME_PRECISION_NANO); pSqlExpr->value.i64 = taosGetTimestamp(TSDB_TIME_PRECISION_NANO);
} else {
pSqlExpr->value.i64 = taosGetTimestampToday() * 1000000000;
}
pSqlExpr->value.nType = TSDB_DATA_TYPE_BIGINT; pSqlExpr->value.nType = TSDB_DATA_TYPE_BIGINT;
pSqlExpr->tokenId = TK_TIMESTAMP; // TK_TIMESTAMP used to denote the time value is in microsecond pSqlExpr->tokenId = TK_TIMESTAMP; // TK_TIMESTAMP used to denote the time value is in microsecond
pSqlExpr->type = SQL_NODE_VALUE; pSqlExpr->type = SQL_NODE_VALUE;
......
/* This file is automatically generated by Lemon from input grammar
** source file "sql.y". */
/* /*
** 2000-05-29 ** 2000-05-29
** **
...@@ -24,7 +22,10 @@ ...@@ -24,7 +22,10 @@
** The following is the concatenation of all %include directives from the ** The following is the concatenation of all %include directives from the
** input grammar file: ** input grammar file:
*/ */
#include <stdio.h>
#include <assert.h>
/************ Begin %include sections from the grammar ************************/ /************ Begin %include sections from the grammar ************************/
#include <stdio.h> #include <stdio.h>
#include <stdlib.h> #include <stdlib.h>
#include <string.h> #include <string.h>
...@@ -37,211 +38,11 @@ ...@@ -37,211 +38,11 @@
#include "tutil.h" #include "tutil.h"
#include "tvariant.h" #include "tvariant.h"
/**************** End of %include directives **********************************/ /**************** End of %include directives **********************************/
/* These constants specify the various numeric values for terminal symbols. /* These constants specify the various numeric values for terminal symbols
***************** Begin token definitions *************************************/ ** in a format understandable to "makeheaders". This section is blank unless
#ifndef TK_ID ** "lemon" is run with the "-m" command-line option.
#define TK_ID 1 ***************** Begin makeheaders token definitions *************************/
#define TK_BOOL 2 /**************** End makeheaders token definitions ***************************/
#define TK_TINYINT 3
#define TK_SMALLINT 4
#define TK_INTEGER 5
#define TK_BIGINT 6
#define TK_FLOAT 7
#define TK_DOUBLE 8
#define TK_STRING 9
#define TK_TIMESTAMP 10
#define TK_BINARY 11
#define TK_NCHAR 12
#define TK_JSON 13
#define TK_OR 14
#define TK_AND 15
#define TK_NOT 16
#define TK_EQ 17
#define TK_NE 18
#define TK_ISNULL 19
#define TK_NOTNULL 20
#define TK_IS 21
#define TK_LIKE 22
#define TK_MATCH 23
#define TK_NMATCH 24
#define TK_CONTAINS 25
#define TK_GLOB 26
#define TK_BETWEEN 27
#define TK_IN 28
#define TK_GT 29
#define TK_GE 30
#define TK_LT 31
#define TK_LE 32
#define TK_BITAND 33
#define TK_BITOR 34
#define TK_LSHIFT 35
#define TK_RSHIFT 36
#define TK_PLUS 37
#define TK_MINUS 38
#define TK_DIVIDE 39
#define TK_TIMES 40
#define TK_STAR 41
#define TK_SLASH 42
#define TK_REM 43
#define TK_UMINUS 44
#define TK_UPLUS 45
#define TK_BITNOT 46
#define TK_ARROW 47
#define TK_SHOW 48
#define TK_DATABASES 49
#define TK_TOPICS 50
#define TK_FUNCTIONS 51
#define TK_MNODES 52
#define TK_DNODES 53
#define TK_ACCOUNTS 54
#define TK_USERS 55
#define TK_MODULES 56
#define TK_QUERIES 57
#define TK_CONNECTIONS 58
#define TK_STREAMS 59
#define TK_VARIABLES 60
#define TK_SCORES 61
#define TK_GRANTS 62
#define TK_VNODES 63
#define TK_DOT 64
#define TK_CREATE 65
#define TK_TABLE 66
#define TK_STABLE 67
#define TK_DATABASE 68
#define TK_TABLES 69
#define TK_STABLES 70
#define TK_VGROUPS 71
#define TK_DROP 72
#define TK_TOPIC 73
#define TK_FUNCTION 74
#define TK_DNODE 75
#define TK_USER 76
#define TK_ACCOUNT 77
#define TK_USE 78
#define TK_DESCRIBE 79
#define TK_DESC 80
#define TK_ALTER 81
#define TK_PASS 82
#define TK_PRIVILEGE 83
#define TK_LOCAL 84
#define TK_COMPACT 85
#define TK_LP 86
#define TK_RP 87
#define TK_IF 88
#define TK_EXISTS 89
#define TK_AS 90
#define TK_OUTPUTTYPE 91
#define TK_AGGREGATE 92
#define TK_BUFSIZE 93
#define TK_PPS 94
#define TK_TSERIES 95
#define TK_DBS 96
#define TK_STORAGE 97
#define TK_QTIME 98
#define TK_CONNS 99
#define TK_STATE 100
#define TK_COMMA 101
#define TK_KEEP 102
#define TK_CACHE 103
#define TK_REPLICA 104
#define TK_QUORUM 105
#define TK_DAYS 106
#define TK_MINROWS 107
#define TK_MAXROWS 108
#define TK_BLOCKS 109
#define TK_CTIME 110
#define TK_WAL 111
#define TK_FSYNC 112
#define TK_COMP 113
#define TK_PRECISION 114
#define TK_UPDATE 115
#define TK_CACHELAST 116
#define TK_PARTITIONS 117
#define TK_UNSIGNED 118
#define TK_TAGS 119
#define TK_USING 120
#define TK_NULL 121
#define TK_NOW 122
#define TK_VARIABLE 123
#define TK_SELECT 124
#define TK_UNION 125
#define TK_ALL 126
#define TK_DISTINCT 127
#define TK_FROM 128
#define TK_RANGE 129
#define TK_INTERVAL 130
#define TK_EVERY 131
#define TK_SESSION 132
#define TK_STATE_WINDOW 133
#define TK_FILL 134
#define TK_SLIDING 135
#define TK_ORDER 136
#define TK_BY 137
#define TK_ASC 138
#define TK_GROUP 139
#define TK_HAVING 140
#define TK_LIMIT 141
#define TK_OFFSET 142
#define TK_SLIMIT 143
#define TK_SOFFSET 144
#define TK_WHERE 145
#define TK_RESET 146
#define TK_QUERY 147
#define TK_SYNCDB 148
#define TK_ADD 149
#define TK_COLUMN 150
#define TK_MODIFY 151
#define TK_TAG 152
#define TK_CHANGE 153
#define TK_SET 154
#define TK_KILL 155
#define TK_CONNECTION 156
#define TK_STREAM 157
#define TK_COLON 158
#define TK_ABORT 159
#define TK_AFTER 160
#define TK_ATTACH 161
#define TK_BEFORE 162
#define TK_BEGIN 163
#define TK_CASCADE 164
#define TK_CLUSTER 165
#define TK_CONFLICT 166
#define TK_COPY 167
#define TK_DEFERRED 168
#define TK_DELIMITERS 169
#define TK_DETACH 170
#define TK_EACH 171
#define TK_END 172
#define TK_EXPLAIN 173
#define TK_FAIL 174
#define TK_FOR 175
#define TK_IGNORE 176
#define TK_IMMEDIATE 177
#define TK_INITIALLY 178
#define TK_INSTEAD 179
#define TK_KEY 180
#define TK_OF 181
#define TK_RAISE 182
#define TK_REPLACE 183
#define TK_RESTRICT 184
#define TK_ROW 185
#define TK_STATEMENT 186
#define TK_TRIGGER 187
#define TK_VIEW 188
#define TK_IPTOKEN 189
#define TK_SEMI 190
#define TK_NONE 191
#define TK_PREV 192
#define TK_LINEAR 193
#define TK_IMPORT 194
#define TK_TBNAME 195
#define TK_JOIN 196
#define TK_INSERT 197
#define TK_INTO 198
#define TK_VALUES 199
#define TK_FILE 200
#endif
/**************** End token definitions ***************************************/
/* The next sections is a series of control #defines. /* The next sections is a series of control #defines.
** various aspects of the generated parser. ** various aspects of the generated parser.
...@@ -299,30 +100,30 @@ ...@@ -299,30 +100,30 @@
#endif #endif
/************* Begin control #defines *****************************************/ /************* Begin control #defines *****************************************/
#define YYCODETYPE unsigned short int #define YYCODETYPE unsigned short int
#define YYNOCODE 284 #define YYNOCODE 285
#define YYACTIONTYPE unsigned short int #define YYACTIONTYPE unsigned short int
#define ParseTOKENTYPE SStrToken #define ParseTOKENTYPE SStrToken
typedef union { typedef union {
int yyinit; int yyinit;
ParseTOKENTYPE yy0; ParseTOKENTYPE yy0;
SCreateTableSql* yy6; SCreateAcctInfo yy31;
SSqlNode* yy16; SSqlNode* yy86;
tSqlExpr* yy18; TAOS_FIELD yy103;
SIntervalVal yy32; tVariant yy176;
SRelationInfo* yy36; tSqlExpr* yy226;
SLimitVal yy38; SWindowStateVal yy228;
SCreateAcctInfo yy51; SArray* yy231;
int64_t yy69; SCreatedTableInfo yy306;
SRangeVal yy124; int32_t yy310;
SSessionWindowVal yy155; SSessionWindowVal yy409;
tVariant yy162; SCreateTableSql* yy422;
SArray* yy189; SIntervalVal yy430;
SCreatedTableInfo yy208; SLimitVal yy444;
TAOS_FIELD yy279; SRangeVal yy480;
SWindowStateVal yy336; SRelationInfo* yy484;
int yy420; int yy502;
SCreateDbInfo yy470; SCreateDbInfo yy532;
int32_t yy516; int64_t yy549;
} YYMINORTYPE; } YYMINORTYPE;
#ifndef YYSTACKDEPTH #ifndef YYSTACKDEPTH
#define YYSTACKDEPTH 100 #define YYSTACKDEPTH 100
...@@ -339,17 +140,17 @@ typedef union { ...@@ -339,17 +140,17 @@ typedef union {
#define ParseCTX_STORE #define ParseCTX_STORE
#define YYFALLBACK 1 #define YYFALLBACK 1
#define YYNSTATE 393 #define YYNSTATE 393
#define YYNRULE 315 #define YYNRULE 316
#define YYNRULE_WITH_ACTION 315 #define YYNRULE_WITH_ACTION 316
#define YYNTOKEN 201 #define YYNTOKEN 202
#define YY_MAX_SHIFT 392 #define YY_MAX_SHIFT 392
#define YY_MIN_SHIFTREDUCE 617 #define YY_MIN_SHIFTREDUCE 618
#define YY_MAX_SHIFTREDUCE 931 #define YY_MAX_SHIFTREDUCE 933
#define YY_ERROR_ACTION 932 #define YY_ERROR_ACTION 934
#define YY_ACCEPT_ACTION 933 #define YY_ACCEPT_ACTION 935
#define YY_NO_ACTION 934 #define YY_NO_ACTION 936
#define YY_MIN_REDUCE 935 #define YY_MIN_REDUCE 937
#define YY_MAX_REDUCE 1249 #define YY_MAX_REDUCE 1252
/************* End control #defines *******************************************/ /************* End control #defines *******************************************/
#define YY_NLOOKAHEAD ((int)(sizeof(yy_lookahead)/sizeof(yy_lookahead[0]))) #define YY_NLOOKAHEAD ((int)(sizeof(yy_lookahead)/sizeof(yy_lookahead[0])))
...@@ -416,313 +217,315 @@ typedef union { ...@@ -416,313 +217,315 @@ typedef union {
** yy_default[] Default action for each state. ** yy_default[] Default action for each state.
** **
*********** Begin parsing tables **********************************************/ *********** Begin parsing tables **********************************************/
#define YY_ACTTAB_COUNT (845) #define YY_ACTTAB_COUNT (858)
static const YYACTIONTYPE yy_action[] = { static const YYACTIONTYPE yy_action[] = {
/* 0 */ 102, 668, 668, 1166, 159, 1167, 310, 810, 258, 669, /* 0 */ 102, 669, 669, 1168, 159, 1169, 310, 811, 258, 670,
/* 10 */ 669, 813, 391, 239, 37, 38, 24, 41, 42, 1084, /* 10 */ 670, 814, 391, 239, 37, 38, 24, 41, 42, 1086,
/* 20 */ 1076, 261, 31, 30, 29, 1089, 1223, 40, 342, 45, /* 20 */ 1078, 261, 31, 30, 29, 1091, 1226, 40, 342, 45,
/* 30 */ 43, 46, 44, 1073, 1074, 55, 1077, 36, 35, 296, /* 30 */ 43, 46, 44, 1075, 1076, 55, 1079, 36, 35, 296,
/* 40 */ 297, 34, 33, 32, 37, 38, 211, 41, 42, 248, /* 40 */ 297, 34, 33, 32, 37, 38, 211, 41, 42, 705,
/* 50 */ 84, 261, 31, 30, 29, 212, 1223, 40, 342, 45, /* 50 */ 84, 261, 31, 30, 29, 212, 1226, 40, 342, 45,
/* 60 */ 43, 46, 44, 933, 392, 1223, 254, 36, 35, 209, /* 60 */ 43, 46, 44, 935, 392, 1226, 254, 36, 35, 209,
/* 70 */ 213, 34, 33, 32, 291, 290, 128, 122, 133, 1223, /* 70 */ 213, 34, 33, 32, 291, 290, 128, 122, 133, 1226,
/* 80 */ 1223, 1226, 1225, 132, 1075, 138, 141, 131, 37, 38, /* 80 */ 1226, 1229, 1228, 132, 1077, 138, 141, 131, 37, 38,
/* 90 */ 85, 41, 42, 983, 135, 261, 31, 30, 29, 668, /* 90 */ 85, 41, 42, 985, 135, 261, 31, 30, 29, 669,
/* 100 */ 194, 40, 342, 45, 43, 46, 44, 669, 338, 285, /* 100 */ 194, 40, 342, 45, 43, 46, 44, 670, 338, 285,
/* 110 */ 13, 36, 35, 1105, 101, 34, 33, 32, 37, 38, /* 110 */ 13, 36, 35, 1107, 101, 34, 33, 32, 37, 38,
/* 120 */ 58, 41, 42, 60, 244, 261, 31, 30, 29, 218, /* 120 */ 58, 41, 42, 60, 244, 261, 31, 30, 29, 218,
/* 130 */ 284, 40, 342, 45, 43, 46, 44, 314, 97, 1223, /* 130 */ 284, 40, 342, 45, 43, 46, 44, 314, 97, 1226,
/* 140 */ 96, 36, 35, 668, 104, 34, 33, 32, 338, 37, /* 140 */ 96, 36, 35, 669, 104, 34, 33, 32, 338, 37,
/* 150 */ 39, 669, 41, 42, 1105, 174, 261, 31, 30, 29, /* 150 */ 39, 670, 41, 42, 1107, 174, 261, 31, 30, 29,
/* 160 */ 1114, 862, 40, 342, 45, 43, 46, 44, 34, 33, /* 160 */ 276, 863, 40, 342, 45, 43, 46, 44, 1116, 280,
/* 170 */ 32, 242, 36, 35, 300, 219, 34, 33, 32, 204, /* 170 */ 279, 242, 36, 35, 300, 219, 34, 33, 32, 204,
/* 180 */ 202, 200, 377, 59, 51, 1223, 199, 148, 147, 146, /* 180 */ 202, 200, 105, 59, 51, 1226, 199, 148, 147, 146,
/* 190 */ 145, 618, 619, 620, 621, 622, 623, 624, 625, 626, /* 190 */ 145, 619, 620, 621, 622, 623, 624, 625, 626, 627,
/* 200 */ 627, 628, 629, 630, 631, 157, 993, 240, 38, 276, /* 200 */ 628, 629, 630, 631, 632, 157, 995, 240, 38, 220,
/* 210 */ 41, 42, 59, 194, 261, 31, 30, 29, 280, 279, /* 210 */ 41, 42, 59, 194, 261, 31, 30, 29, 1080, 1226,
/* 220 */ 40, 342, 45, 43, 46, 44, 984, 220, 241, 1111, /* 220 */ 40, 342, 45, 43, 46, 44, 823, 824, 241, 1107,
/* 230 */ 36, 35, 1087, 194, 34, 33, 32, 1223, 41, 42, /* 230 */ 36, 35, 1089, 986, 34, 33, 32, 1113, 41, 42,
/* 240 */ 385, 1021, 261, 31, 30, 29, 822, 823, 40, 342, /* 240 */ 194, 248, 261, 31, 30, 29, 243, 377, 40, 342,
/* 250 */ 45, 43, 46, 44, 390, 388, 645, 251, 36, 35, /* 250 */ 45, 43, 46, 44, 34, 33, 32, 251, 36, 35,
/* 260 */ 704, 1087, 34, 33, 32, 67, 336, 384, 383, 335, /* 260 */ 1248, 1089, 34, 33, 32, 67, 336, 384, 383, 335,
/* 270 */ 334, 333, 382, 332, 331, 330, 381, 329, 380, 379, /* 270 */ 334, 333, 382, 332, 331, 330, 381, 329, 380, 379,
/* 280 */ 1052, 1040, 1041, 1042, 1043, 1044, 1045, 1046, 1047, 1048, /* 280 */ 1054, 1042, 1043, 1044, 1045, 1046, 1047, 1048, 1049, 1050,
/* 290 */ 1049, 1050, 1051, 1053, 1054, 232, 877, 25, 1215, 866, /* 290 */ 1051, 1052, 1053, 1055, 1056, 232, 879, 25, 246, 867,
/* 300 */ 1164, 869, 1165, 872, 776, 59, 59, 773, 1223, 774, /* 300 */ 1218, 870, 1092, 873, 777, 1217, 59, 774, 1216, 775,
/* 310 */ 868, 775, 871, 867, 217, 870, 232, 877, 59, 1245, /* 310 */ 1226, 776, 1240, 235, 217, 1226, 232, 879, 1226, 820,
/* 320 */ 866, 225, 869, 1214, 872, 340, 264, 144, 143, 142, /* 320 */ 867, 225, 870, 1226, 873, 385, 1023, 144, 143, 142,
/* 330 */ 224, 237, 238, 1223, 350, 91, 5, 62, 184, 266, /* 330 */ 224, 237, 238, 161, 350, 91, 5, 62, 184, 266,
/* 340 */ 267, 257, 313, 183, 111, 116, 107, 115, 270, 59, /* 340 */ 267, 292, 130, 183, 111, 116, 107, 115, 264, 293,
/* 350 */ 252, 354, 237, 238, 1087, 1087, 344, 45, 43, 46, /* 350 */ 59, 252, 237, 238, 377, 1089, 344, 45, 43, 46,
/* 360 */ 44, 67, 325, 384, 383, 36, 35, 1086, 382, 34, /* 360 */ 44, 67, 325, 384, 383, 36, 35, 270, 382, 34,
/* 370 */ 33, 32, 381, 68, 380, 379, 100, 59, 262, 1060, /* 370 */ 33, 32, 381, 68, 380, 379, 1062, 271, 1060, 1061,
/* 380 */ 47, 1058, 1059, 36, 35, 1237, 1061, 34, 33, 32, /* 380 */ 47, 753, 341, 1063, 869, 257, 872, 1064, 180, 1065,
/* 390 */ 1062, 86, 1063, 1064, 355, 283, 341, 83, 1087, 59, /* 390 */ 1066, 262, 868, 253, 871, 354, 283, 1092, 83, 1089,
/* 400 */ 752, 47, 213, 265, 233, 263, 246, 353, 352, 59, /* 400 */ 271, 47, 36, 35, 340, 233, 34, 33, 32, 236,
/* 410 */ 1090, 59, 1223, 292, 1226, 878, 873, 874, 340, 59, /* 410 */ 59, 181, 1179, 367, 366, 880, 874, 876, 54, 1226,
/* 420 */ 59, 91, 356, 777, 268, 272, 1087, 269, 875, 362, /* 420 */ 59, 260, 59, 778, 268, 79, 265, 59, 263, 59,
/* 430 */ 361, 876, 367, 366, 271, 260, 878, 873, 874, 213, /* 430 */ 353, 352, 390, 388, 646, 59, 880, 874, 876, 795,
/* 440 */ 156, 154, 153, 253, 357, 180, 255, 1090, 1087, 1223, /* 440 */ 875, 59, 59, 6, 255, 272, 213, 269, 1092, 362,
/* 450 */ 1090, 1226, 1213, 235, 363, 130, 364, 6, 1087, 68, /* 450 */ 361, 320, 213, 215, 91, 355, 1226, 271, 1229, 1089,
/* 460 */ 1087, 236, 1223, 1223, 365, 369, 215, 377, 1087, 1087, /* 460 */ 216, 875, 1226, 1226, 1229, 356, 80, 357, 343, 1089,
/* 470 */ 216, 1223, 221, 214, 222, 223, 1223, 1105, 105, 794, /* 470 */ 1226, 1089, 363, 843, 364, 221, 1089, 214, 1089, 830,
/* 480 */ 1223, 227, 1223, 1223, 1223, 1223, 228, 271, 842, 229, /* 480 */ 365, 156, 154, 153, 1089, 1226, 369, 1226, 88, 222,
/* 490 */ 226, 1223, 791, 210, 243, 271, 1223, 88, 181, 1223, /* 490 */ 1089, 1088, 68, 71, 223, 1166, 227, 1167, 228, 1226,
/* 500 */ 1223, 271, 99, 1223, 98, 89, 343, 1, 182, 819, /* 500 */ 792, 229, 877, 271, 1226, 226, 1226, 210, 1226, 100,
/* 510 */ 3, 195, 1088, 829, 1078, 295, 294, 830, 76, 10, /* 510 */ 878, 1226, 3, 195, 1090, 1226, 99, 1226, 98, 1,
/* 520 */ 762, 79, 317, 161, 764, 347, 319, 71, 763, 259, /* 520 */ 182, 89, 295, 294, 86, 799, 287, 10, 831, 340,
/* 530 */ 54, 48, 346, 906, 60, 287, 60, 879, 71, 667, /* 530 */ 76, 842, 346, 763, 317, 765, 319, 764, 908, 881,
/* 540 */ 103, 293, 71, 287, 1177, 82, 841, 9, 15, 1176, /* 540 */ 259, 347, 48, 668, 1178, 82, 313, 60, 60, 71,
/* 550 */ 14, 9, 249, 9, 345, 121, 17, 120, 16, 359, /* 550 */ 103, 71, 9, 9, 345, 249, 15, 9, 14, 287,
/* 560 */ 358, 77, 80, 320, 783, 798, 784, 1173, 781, 865, /* 560 */ 121, 17, 120, 16, 784, 782, 785, 783, 359, 358,
/* 570 */ 782, 19, 1172, 18, 127, 250, 126, 751, 21, 368, /* 570 */ 19, 1175, 18, 77, 127, 1174, 126, 752, 250, 21,
/* 580 */ 20, 140, 139, 281, 158, 1113, 26, 1124, 1121, 1122, /* 580 */ 866, 20, 140, 139, 368, 281, 158, 1115, 26, 1126,
/* 590 */ 1106, 288, 1126, 160, 1156, 165, 306, 1155, 1154, 1153, /* 590 */ 1123, 1108, 1124, 288, 1128, 160, 1087, 1158, 165, 306,
/* 600 */ 176, 1085, 177, 1083, 178, 179, 998, 322, 155, 809, /* 600 */ 1157, 1156, 1155, 176, 177, 155, 1085, 178, 179, 810,
/* 610 */ 323, 1103, 324, 299, 327, 328, 69, 207, 65, 339, /* 610 */ 1000, 322, 323, 299, 245, 324, 327, 328, 69, 301,
/* 620 */ 166, 315, 992, 245, 301, 167, 351, 303, 1244, 81, /* 620 */ 207, 65, 339, 1105, 994, 351, 1247, 303, 118, 1246,
/* 630 */ 882, 28, 118, 78, 1243, 1240, 168, 185, 169, 360, /* 630 */ 1243, 185, 81, 78, 360, 1239, 124, 1238, 166, 1235,
/* 640 */ 311, 170, 309, 1236, 307, 124, 1235, 305, 1232, 171, /* 640 */ 186, 1020, 66, 61, 70, 315, 884, 208, 982, 134,
/* 650 */ 186, 1018, 66, 302, 61, 173, 70, 208, 980, 134, /* 650 */ 167, 28, 311, 309, 168, 307, 305, 980, 136, 137,
/* 660 */ 978, 136, 298, 137, 976, 975, 273, 197, 198, 972, /* 660 */ 169, 978, 977, 302, 273, 197, 198, 974, 973, 972,
/* 670 */ 971, 970, 969, 968, 967, 966, 201, 203, 958, 205, /* 670 */ 971, 970, 969, 968, 201, 203, 960, 205, 957, 206,
/* 680 */ 955, 27, 206, 951, 53, 326, 286, 87, 92, 304, /* 680 */ 953, 298, 27, 286, 87, 92, 304, 326, 378, 129,
/* 690 */ 378, 129, 370, 371, 372, 373, 374, 234, 256, 321, /* 690 */ 370, 371, 372, 373, 374, 234, 375, 376, 256, 321,
/* 700 */ 375, 376, 386, 931, 274, 230, 275, 930, 231, 112, /* 700 */ 386, 933, 274, 275, 230, 170, 932, 277, 231, 112,
/* 710 */ 997, 996, 277, 113, 278, 929, 912, 282, 911, 287, /* 710 */ 999, 998, 278, 113, 931, 914, 913, 282, 287, 316,
/* 720 */ 316, 11, 90, 786, 974, 52, 973, 188, 1019, 187, /* 720 */ 11, 976, 975, 189, 1021, 149, 191, 187, 188, 967,
/* 730 */ 189, 190, 191, 193, 192, 149, 150, 965, 2, 1056, /* 730 */ 190, 192, 193, 150, 151, 966, 90, 152, 959, 1058,
/* 740 */ 151, 152, 964, 957, 956, 175, 1020, 172, 4, 289, /* 740 */ 958, 787, 53, 171, 172, 175, 2, 173, 1022, 52,
/* 750 */ 93, 818, 74, 816, 815, 812, 811, 75, 162, 1066, /* 750 */ 4, 289, 93, 819, 74, 1068, 817, 813, 812, 75,
/* 760 */ 820, 831, 163, 164, 825, 94, 247, 827, 95, 308, /* 760 */ 816, 821, 162, 164, 832, 163, 247, 826, 94, 63,
/* 770 */ 63, 22, 345, 312, 12, 49, 64, 23, 318, 50, /* 770 */ 828, 95, 308, 345, 312, 22, 64, 23, 12, 49,
/* 780 */ 104, 106, 56, 682, 108, 109, 57, 110, 717, 715, /* 780 */ 318, 50, 106, 683, 104, 56, 109, 108, 718, 716,
/* 790 */ 714, 713, 711, 710, 709, 706, 672, 337, 114, 7, /* 790 */ 57, 715, 110, 714, 712, 711, 710, 707, 337, 673,
/* 800 */ 903, 901, 881, 904, 880, 902, 883, 8, 348, 349, /* 800 */ 114, 7, 905, 903, 883, 906, 882, 904, 885, 8,
/* 810 */ 72, 754, 73, 117, 753, 119, 750, 123, 125, 60, /* 810 */ 349, 348, 72, 117, 60, 755, 73, 754, 119, 751,
/* 820 */ 698, 696, 688, 780, 694, 690, 779, 692, 686, 684, /* 820 */ 123, 699, 125, 697, 689, 695, 781, 780, 691, 693,
/* 830 */ 720, 719, 718, 716, 712, 708, 707, 196, 670, 635, /* 830 */ 687, 685, 721, 720, 719, 717, 713, 709, 708, 196,
/* 840 */ 387, 644, 642, 389, 935, /* 840 */ 671, 636, 937, 645, 387, 643, 936, 936, 936, 936,
/* 850 */ 936, 936, 936, 936, 936, 936, 936, 389,
}; };
static const YYCODETYPE yy_lookahead[] = { static const YYCODETYPE yy_lookahead[] = {
/* 0 */ 211, 1, 1, 279, 203, 281, 282, 5, 210, 9, /* 0 */ 212, 1, 1, 280, 204, 282, 283, 5, 211, 9,
/* 10 */ 9, 9, 203, 204, 14, 15, 271, 17, 18, 203, /* 10 */ 9, 9, 204, 205, 14, 15, 272, 17, 18, 204,
/* 20 */ 0, 21, 22, 23, 24, 253, 281, 27, 28, 29, /* 20 */ 0, 21, 22, 23, 24, 254, 282, 27, 28, 29,
/* 30 */ 30, 31, 32, 244, 245, 246, 247, 37, 38, 37, /* 30 */ 30, 31, 32, 245, 246, 247, 248, 37, 38, 37,
/* 40 */ 38, 41, 42, 43, 14, 15, 271, 17, 18, 1, /* 40 */ 38, 41, 42, 43, 14, 15, 272, 17, 18, 5,
/* 50 */ 211, 21, 22, 23, 24, 271, 281, 27, 28, 29, /* 50 */ 212, 21, 22, 23, 24, 272, 282, 27, 28, 29,
/* 60 */ 30, 31, 32, 201, 202, 281, 250, 37, 38, 271, /* 60 */ 30, 31, 32, 202, 203, 282, 251, 37, 38, 272,
/* 70 */ 271, 41, 42, 43, 273, 274, 66, 67, 68, 281, /* 70 */ 272, 41, 42, 43, 274, 275, 66, 67, 68, 282,
/* 80 */ 281, 283, 283, 73, 245, 75, 76, 77, 14, 15, /* 80 */ 282, 284, 284, 73, 246, 75, 76, 77, 14, 15,
/* 90 */ 90, 17, 18, 209, 84, 21, 22, 23, 24, 1, /* 90 */ 90, 17, 18, 210, 84, 21, 22, 23, 24, 1,
/* 100 */ 216, 27, 28, 29, 30, 31, 32, 9, 88, 87, /* 100 */ 217, 27, 28, 29, 30, 31, 32, 9, 88, 87,
/* 110 */ 86, 37, 38, 251, 90, 41, 42, 43, 14, 15, /* 110 */ 86, 37, 38, 252, 90, 41, 42, 43, 14, 15,
/* 120 */ 90, 17, 18, 101, 122, 21, 22, 23, 24, 271, /* 120 */ 90, 17, 18, 101, 122, 21, 22, 23, 24, 272,
/* 130 */ 268, 27, 28, 29, 30, 31, 32, 278, 279, 281, /* 130 */ 269, 27, 28, 29, 30, 31, 32, 279, 280, 282,
/* 140 */ 281, 37, 38, 1, 120, 41, 42, 43, 88, 14, /* 140 */ 282, 37, 38, 1, 120, 41, 42, 43, 88, 14,
/* 150 */ 15, 9, 17, 18, 251, 258, 21, 22, 23, 24, /* 150 */ 15, 9, 17, 18, 252, 259, 21, 22, 23, 24,
/* 160 */ 203, 87, 27, 28, 29, 30, 31, 32, 41, 42, /* 160 */ 148, 87, 27, 28, 29, 30, 31, 32, 204, 157,
/* 170 */ 43, 268, 37, 38, 277, 271, 41, 42, 43, 66, /* 170 */ 158, 269, 37, 38, 278, 272, 41, 42, 43, 66,
/* 180 */ 67, 68, 94, 203, 86, 281, 73, 74, 75, 76, /* 180 */ 67, 68, 212, 204, 86, 282, 73, 74, 75, 76,
/* 190 */ 77, 49, 50, 51, 52, 53, 54, 55, 56, 57, /* 190 */ 77, 49, 50, 51, 52, 53, 54, 55, 56, 57,
/* 200 */ 58, 59, 60, 61, 62, 63, 209, 65, 15, 147, /* 200 */ 58, 59, 60, 61, 62, 63, 210, 65, 15, 272,
/* 210 */ 17, 18, 203, 216, 21, 22, 23, 24, 156, 157, /* 210 */ 17, 18, 204, 217, 21, 22, 23, 24, 248, 282,
/* 220 */ 27, 28, 29, 30, 31, 32, 209, 271, 248, 272, /* 220 */ 27, 28, 29, 30, 31, 32, 130, 131, 249, 252,
/* 230 */ 37, 38, 252, 216, 41, 42, 43, 281, 17, 18, /* 230 */ 37, 38, 253, 210, 41, 42, 43, 273, 17, 18,
/* 240 */ 225, 226, 21, 22, 23, 24, 130, 131, 27, 28, /* 240 */ 217, 1, 21, 22, 23, 24, 269, 94, 27, 28,
/* 250 */ 29, 30, 31, 32, 69, 70, 71, 248, 37, 38, /* 250 */ 29, 30, 31, 32, 41, 42, 43, 249, 37, 38,
/* 260 */ 5, 252, 41, 42, 43, 102, 103, 104, 105, 106, /* 260 */ 254, 253, 41, 42, 43, 102, 103, 104, 105, 106,
/* 270 */ 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, /* 270 */ 107, 108, 109, 110, 111, 112, 113, 114, 115, 116,
/* 280 */ 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, /* 280 */ 228, 229, 230, 231, 232, 233, 234, 235, 236, 237,
/* 290 */ 237, 238, 239, 240, 241, 1, 2, 48, 271, 5, /* 290 */ 238, 239, 240, 241, 242, 1, 2, 48, 250, 5,
/* 300 */ 279, 7, 281, 9, 2, 203, 203, 5, 281, 7, /* 300 */ 272, 7, 254, 9, 2, 272, 204, 5, 272, 7,
/* 310 */ 5, 9, 7, 5, 65, 7, 1, 2, 203, 253, /* 310 */ 282, 9, 254, 272, 65, 282, 1, 2, 282, 87,
/* 320 */ 5, 72, 7, 271, 9, 47, 72, 78, 79, 80, /* 320 */ 5, 72, 7, 282, 9, 226, 227, 78, 79, 80,
/* 330 */ 81, 37, 38, 281, 85, 86, 66, 67, 68, 37, /* 330 */ 81, 37, 38, 101, 85, 86, 66, 67, 68, 37,
/* 340 */ 38, 210, 64, 73, 74, 75, 76, 77, 72, 203, /* 340 */ 38, 277, 82, 73, 74, 75, 76, 77, 72, 277,
/* 350 */ 248, 248, 37, 38, 252, 252, 41, 29, 30, 31, /* 350 */ 204, 249, 37, 38, 94, 253, 41, 29, 30, 31,
/* 360 */ 32, 102, 92, 104, 105, 37, 38, 252, 109, 41, /* 360 */ 32, 102, 92, 104, 105, 37, 38, 72, 109, 41,
/* 370 */ 42, 43, 113, 124, 115, 116, 254, 203, 210, 227, /* 370 */ 42, 43, 113, 124, 115, 116, 228, 204, 230, 231,
/* 380 */ 86, 229, 230, 37, 38, 253, 234, 41, 42, 43, /* 380 */ 86, 5, 25, 235, 5, 211, 7, 239, 215, 241,
/* 390 */ 238, 269, 240, 241, 248, 146, 25, 148, 252, 203, /* 390 */ 242, 211, 5, 250, 7, 249, 147, 254, 149, 253,
/* 400 */ 5, 86, 271, 149, 155, 151, 249, 153, 154, 203, /* 400 */ 204, 86, 37, 38, 47, 156, 41, 42, 43, 272,
/* 410 */ 253, 203, 281, 276, 283, 121, 122, 123, 47, 203, /* 410 */ 204, 215, 244, 37, 38, 121, 122, 123, 86, 282,
/* 420 */ 203, 86, 248, 121, 122, 149, 252, 151, 123, 153, /* 420 */ 204, 64, 204, 121, 122, 101, 150, 204, 152, 204,
/* 430 */ 154, 123, 37, 38, 203, 64, 121, 122, 123, 271, /* 430 */ 154, 155, 69, 70, 71, 204, 121, 122, 123, 41,
/* 440 */ 66, 67, 68, 249, 248, 214, 249, 253, 252, 281, /* 440 */ 146, 204, 204, 86, 250, 150, 272, 152, 254, 154,
/* 450 */ 253, 283, 271, 271, 248, 82, 248, 86, 252, 124, /* 450 */ 155, 119, 272, 272, 86, 249, 282, 204, 284, 253,
/* 460 */ 252, 271, 281, 281, 248, 248, 271, 94, 252, 252, /* 460 */ 272, 146, 282, 282, 284, 249, 142, 249, 215, 253,
/* 470 */ 271, 281, 271, 271, 271, 271, 281, 251, 211, 41, /* 470 */ 282, 253, 249, 80, 249, 272, 253, 272, 253, 87,
/* 480 */ 281, 271, 281, 281, 281, 281, 271, 203, 80, 271, /* 480 */ 249, 66, 67, 68, 253, 282, 249, 282, 87, 272,
/* 490 */ 271, 281, 101, 271, 268, 203, 281, 87, 214, 281, /* 490 */ 253, 253, 124, 101, 272, 280, 272, 282, 272, 282,
/* 500 */ 281, 203, 279, 281, 281, 87, 214, 212, 213, 87, /* 500 */ 101, 272, 123, 204, 282, 272, 282, 272, 282, 255,
/* 510 */ 207, 208, 214, 87, 247, 37, 38, 87, 101, 128, /* 510 */ 123, 282, 208, 209, 215, 282, 280, 282, 282, 213,
/* 520 */ 87, 101, 87, 101, 87, 16, 87, 101, 87, 1, /* 520 */ 214, 87, 37, 38, 270, 127, 125, 128, 87, 47,
/* 530 */ 86, 101, 25, 87, 101, 125, 101, 87, 101, 87, /* 530 */ 101, 138, 25, 87, 87, 87, 87, 87, 87, 87,
/* 540 */ 101, 276, 101, 125, 243, 86, 138, 101, 150, 243, /* 540 */ 1, 16, 101, 87, 244, 86, 64, 101, 101, 101,
/* 550 */ 152, 101, 243, 101, 47, 150, 150, 152, 152, 37, /* 550 */ 101, 101, 101, 101, 47, 244, 151, 101, 153, 125,
/* 560 */ 38, 144, 142, 119, 5, 127, 7, 243, 5, 41, /* 560 */ 151, 151, 153, 153, 5, 5, 7, 7, 37, 38,
/* 570 */ 7, 150, 243, 152, 150, 243, 152, 118, 150, 243, /* 570 */ 151, 244, 153, 144, 151, 244, 153, 118, 244, 151,
/* 580 */ 152, 82, 83, 203, 203, 203, 270, 203, 203, 203, /* 580 */ 41, 153, 82, 83, 244, 204, 204, 204, 271, 204,
/* 590 */ 251, 251, 203, 203, 280, 203, 203, 280, 280, 280, /* 590 */ 204, 252, 204, 252, 204, 204, 252, 281, 204, 204,
/* 600 */ 255, 251, 203, 203, 203, 203, 203, 203, 64, 123, /* 600 */ 281, 281, 281, 256, 204, 64, 204, 204, 204, 123,
/* 610 */ 203, 267, 203, 275, 203, 203, 203, 203, 203, 203, /* 610 */ 204, 204, 204, 276, 276, 204, 204, 204, 204, 276,
/* 620 */ 266, 136, 203, 275, 275, 265, 203, 275, 203, 141, /* 620 */ 204, 204, 204, 268, 204, 204, 204, 276, 204, 204,
/* 630 */ 121, 140, 203, 143, 203, 203, 264, 203, 263, 203, /* 630 */ 204, 204, 141, 143, 204, 204, 204, 204, 267, 204,
/* 640 */ 139, 262, 134, 203, 133, 203, 203, 132, 203, 261, /* 640 */ 204, 204, 204, 204, 204, 136, 121, 204, 204, 204,
/* 650 */ 203, 203, 203, 135, 203, 259, 203, 203, 203, 203, /* 650 */ 266, 140, 139, 134, 265, 133, 132, 204, 204, 204,
/* 660 */ 203, 203, 129, 203, 203, 203, 203, 203, 203, 203, /* 660 */ 264, 204, 204, 135, 204, 204, 204, 204, 204, 204,
/* 670 */ 203, 203, 203, 203, 203, 203, 203, 203, 203, 203, /* 670 */ 204, 204, 204, 204, 204, 204, 204, 204, 204, 204,
/* 680 */ 203, 145, 203, 203, 257, 93, 205, 205, 205, 205, /* 680 */ 204, 129, 145, 206, 206, 206, 206, 93, 117, 100,
/* 690 */ 117, 100, 99, 55, 96, 98, 59, 205, 205, 205, /* 690 */ 99, 55, 96, 98, 59, 206, 97, 95, 206, 206,
/* 700 */ 97, 95, 88, 5, 158, 205, 5, 5, 205, 211, /* 700 */ 88, 5, 159, 5, 206, 263, 5, 159, 206, 212,
/* 710 */ 215, 215, 158, 211, 5, 5, 104, 147, 103, 125, /* 710 */ 216, 216, 5, 212, 5, 104, 103, 148, 125, 119,
/* 720 */ 119, 86, 126, 87, 205, 86, 205, 222, 224, 223, /* 720 */ 86, 206, 206, 219, 225, 207, 220, 224, 223, 206,
/* 730 */ 218, 221, 219, 217, 220, 206, 206, 205, 212, 242, /* 730 */ 222, 221, 218, 207, 207, 206, 126, 207, 206, 243,
/* 740 */ 206, 206, 205, 205, 205, 256, 226, 260, 207, 101, /* 740 */ 206, 87, 258, 262, 261, 257, 213, 260, 227, 86,
/* 750 */ 101, 87, 101, 123, 123, 5, 5, 86, 86, 242, /* 750 */ 208, 101, 101, 87, 101, 243, 123, 5, 5, 86,
/* 760 */ 87, 87, 86, 101, 87, 86, 1, 87, 86, 86, /* 760 */ 123, 87, 86, 101, 87, 86, 1, 87, 86, 101,
/* 770 */ 101, 137, 47, 1, 86, 86, 101, 137, 119, 86, /* 770 */ 87, 86, 86, 47, 1, 137, 101, 137, 86, 86,
/* 780 */ 120, 82, 91, 5, 90, 74, 91, 90, 9, 5, /* 780 */ 119, 86, 82, 5, 120, 91, 74, 90, 9, 5,
/* 790 */ 5, 5, 5, 5, 5, 5, 89, 16, 82, 86, /* 790 */ 91, 5, 90, 5, 5, 5, 5, 5, 16, 89,
/* 800 */ 9, 9, 87, 9, 87, 9, 121, 86, 28, 63, /* 800 */ 82, 86, 9, 9, 87, 9, 87, 9, 121, 86,
/* 810 */ 17, 5, 17, 152, 5, 152, 87, 152, 152, 101, /* 810 */ 63, 28, 17, 153, 101, 5, 17, 5, 153, 87,
/* 820 */ 5, 5, 5, 123, 5, 5, 123, 5, 5, 5, /* 820 */ 153, 5, 153, 5, 5, 5, 123, 123, 5, 5,
/* 830 */ 5, 5, 5, 5, 5, 5, 5, 101, 89, 64, /* 830 */ 5, 5, 5, 5, 5, 5, 5, 5, 5, 101,
/* 840 */ 22, 9, 9, 22, 0, 284, 284, 284, 284, 284, /* 840 */ 89, 64, 0, 9, 22, 9, 285, 285, 285, 285,
/* 850 */ 284, 284, 284, 284, 284, 284, 284, 284, 284, 284, /* 850 */ 285, 285, 285, 285, 285, 285, 285, 22, 285, 285,
/* 860 */ 284, 284, 284, 284, 284, 284, 284, 284, 284, 284, /* 860 */ 285, 285, 285, 285, 285, 285, 285, 285, 285, 285,
/* 870 */ 284, 284, 284, 284, 284, 284, 284, 284, 284, 284, /* 870 */ 285, 285, 285, 285, 285, 285, 285, 285, 285, 285,
/* 880 */ 284, 284, 284, 284, 284, 284, 284, 284, 284, 284, /* 880 */ 285, 285, 285, 285, 285, 285, 285, 285, 285, 285,
/* 890 */ 284, 284, 284, 284, 284, 284, 284, 284, 284, 284, /* 890 */ 285, 285, 285, 285, 285, 285, 285, 285, 285, 285,
/* 900 */ 284, 284, 284, 284, 284, 284, 284, 284, 284, 284, /* 900 */ 285, 285, 285, 285, 285, 285, 285, 285, 285, 285,
/* 910 */ 284, 284, 284, 284, 284, 284, 284, 284, 284, 284, /* 910 */ 285, 285, 285, 285, 285, 285, 285, 285, 285, 285,
/* 920 */ 284, 284, 284, 284, 284, 284, 284, 284, 284, 284, /* 920 */ 285, 285, 285, 285, 285, 285, 285, 285, 285, 285,
/* 930 */ 284, 284, 284, 284, 284, 284, 284, 284, 284, 284, /* 930 */ 285, 285, 285, 285, 285, 285, 285, 285, 285, 285,
/* 940 */ 284, 284, 284, 284, 284, 284, 284, 284, 284, 284, /* 940 */ 285, 285, 285, 285, 285, 285, 285, 285, 285, 285,
/* 950 */ 284, 284, 284, 284, 284, 284, 284, 284, 284, 284, /* 950 */ 285, 285, 285, 285, 285, 285, 285, 285, 285, 285,
/* 960 */ 284, 284, 284, 284, 284, 284, 284, 284, 284, 284, /* 960 */ 285, 285, 285, 285, 285, 285, 285, 285, 285, 285,
/* 970 */ 284, 284, 284, 284, 284, 284, 284, 284, 284, 284, /* 970 */ 285, 285, 285, 285, 285, 285, 285, 285, 285, 285,
/* 980 */ 284, 284, 284, 284, 284, 284, 284, 284, 284, 284, /* 980 */ 285, 285, 285, 285, 285, 285, 285, 285, 285, 285,
/* 990 */ 284, 284, 284, 284, 284, 284, 284, 284, 284, 284, /* 990 */ 285, 285, 285, 285, 285, 285, 285, 285, 285, 285,
/* 1000 */ 284, 284, 284, 284, 284, 284, 284, 284, 284, 284, /* 1000 */ 285, 285, 285, 285, 285, 285, 285, 285, 285, 285,
/* 1010 */ 284, 284, 284, 284, 284, 284, 284, 284, 284, 284, /* 1010 */ 285, 285, 285, 285, 285, 285, 285, 285, 285, 285,
/* 1020 */ 284, 284, 284, 284, 284, 284, 284, 284, 284, 284, /* 1020 */ 285, 285, 285, 285, 285, 285, 285, 285, 285, 285,
/* 1030 */ 284, 284, 284, 284, 284, 284, 284, 284, 284, 284, /* 1030 */ 285, 285, 285, 285, 285, 285, 285, 285, 285, 285,
/* 1040 */ 284, 284, 284, 284, 284, 284, /* 1040 */ 285, 285, 285, 285, 285, 285, 285, 285, 285, 285,
/* 1050 */ 285, 285, 285, 285, 285, 285, 285, 285, 285, 285,
}; };
#define YY_SHIFT_COUNT (392) #define YY_SHIFT_COUNT (392)
#define YY_SHIFT_MIN (0) #define YY_SHIFT_MIN (0)
#define YY_SHIFT_MAX (844) #define YY_SHIFT_MAX (842)
static const unsigned short int yy_shift_ofst[] = { static const unsigned short int yy_shift_ofst[] = {
/* 0 */ 249, 163, 163, 259, 259, 60, 315, 294, 294, 294, /* 0 */ 249, 163, 163, 259, 259, 60, 315, 294, 294, 294,
/* 10 */ 98, 1, 1, 1, 1, 1, 1, 1, 1, 1, /* 10 */ 98, 1, 1, 1, 1, 1, 1, 1, 1, 1,
/* 20 */ 1, 1, 48, 48, 0, 142, 294, 294, 294, 294, /* 20 */ 1, 1, 240, 240, 0, 142, 294, 294, 294, 294,
/* 30 */ 294, 294, 294, 294, 294, 294, 294, 294, 294, 294, /* 30 */ 294, 294, 294, 294, 294, 294, 294, 294, 294, 294,
/* 40 */ 294, 294, 294, 294, 294, 294, 294, 294, 302, 302, /* 40 */ 294, 294, 294, 294, 294, 294, 294, 294, 302, 302,
/* 50 */ 302, 335, 335, 116, 1, 20, 1, 1, 1, 1, /* 50 */ 302, 368, 368, 96, 1, 20, 1, 1, 1, 1,
/* 60 */ 1, 373, 60, 48, 48, 88, 88, 255, 845, 845, /* 60 */ 1, 260, 60, 240, 240, 153, 153, 44, 858, 858,
/* 70 */ 845, 302, 302, 302, 2, 2, 395, 395, 395, 395, /* 70 */ 858, 302, 302, 302, 2, 2, 376, 376, 376, 376,
/* 80 */ 395, 395, 395, 1, 1, 1, 438, 1, 1, 1, /* 80 */ 376, 376, 376, 1, 1, 1, 398, 1, 1, 1,
/* 90 */ 335, 335, 1, 1, 1, 1, 408, 408, 408, 408, /* 90 */ 368, 368, 1, 1, 1, 1, 393, 393, 393, 393,
/* 100 */ 391, 335, 1, 1, 1, 1, 1, 1, 1, 1, /* 100 */ 399, 368, 1, 1, 1, 1, 1, 1, 1, 1,
/* 110 */ 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, /* 110 */ 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
/* 120 */ 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, /* 120 */ 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
/* 130 */ 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, /* 130 */ 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
/* 140 */ 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, /* 140 */ 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
/* 150 */ 1, 1, 1, 1, 1, 1, 1, 1, 544, 544, /* 150 */ 1, 1, 1, 1, 1, 1, 1, 1, 541, 541,
/* 160 */ 544, 486, 486, 486, 486, 544, 488, 490, 485, 491, /* 160 */ 541, 486, 486, 486, 486, 541, 491, 490, 509, 511,
/* 170 */ 501, 508, 511, 515, 518, 533, 536, 544, 544, 544, /* 170 */ 513, 519, 522, 524, 528, 552, 537, 541, 541, 541,
/* 180 */ 592, 592, 573, 60, 60, 544, 544, 591, 593, 638, /* 180 */ 594, 594, 571, 60, 60, 541, 541, 589, 591, 636,
/* 190 */ 598, 597, 637, 603, 606, 573, 255, 544, 544, 614, /* 190 */ 596, 595, 635, 599, 602, 571, 44, 541, 541, 612,
/* 200 */ 614, 544, 614, 544, 614, 544, 544, 845, 845, 30, /* 200 */ 612, 541, 612, 541, 612, 541, 541, 858, 858, 30,
/* 210 */ 74, 104, 104, 104, 135, 193, 221, 270, 328, 328, /* 210 */ 74, 104, 104, 104, 135, 193, 221, 270, 328, 328,
/* 220 */ 328, 328, 328, 328, 10, 113, 346, 346, 346, 346, /* 220 */ 328, 328, 328, 328, 10, 113, 365, 365, 365, 365,
/* 230 */ 254, 276, 371, 62, 24, 127, 127, 305, 308, 185, /* 230 */ 276, 295, 357, 12, 24, 213, 213, 379, 387, 363,
/* 240 */ 374, 22, 410, 418, 478, 422, 426, 430, 278, 417, /* 240 */ 415, 22, 401, 434, 485, 232, 392, 441, 482, 429,
/* 250 */ 420, 433, 435, 437, 439, 441, 444, 446, 450, 507, /* 250 */ 324, 446, 447, 448, 449, 450, 332, 451, 452, 507,
/* 260 */ 528, 509, 452, 398, 405, 406, 559, 563, 522, 421, /* 260 */ 539, 525, 456, 405, 409, 410, 559, 560, 531, 419,
/* 270 */ 424, 459, 428, 499, 698, 546, 701, 702, 554, 709, /* 270 */ 423, 459, 428, 500, 696, 543, 698, 701, 548, 707,
/* 280 */ 710, 612, 615, 570, 594, 601, 635, 596, 636, 639, /* 280 */ 709, 611, 613, 569, 593, 600, 634, 610, 654, 663,
/* 290 */ 648, 649, 664, 651, 630, 631, 750, 751, 671, 673, /* 290 */ 650, 651, 666, 653, 633, 637, 752, 753, 673, 674,
/* 300 */ 672, 674, 676, 677, 662, 679, 680, 682, 765, 683, /* 300 */ 676, 677, 679, 680, 662, 682, 683, 685, 765, 686,
/* 310 */ 669, 634, 725, 772, 675, 640, 688, 601, 689, 659, /* 310 */ 668, 638, 726, 773, 675, 640, 692, 600, 693, 661,
/* 320 */ 693, 660, 699, 691, 694, 711, 778, 695, 697, 779, /* 320 */ 695, 664, 700, 694, 697, 712, 778, 699, 702, 779,
/* 330 */ 784, 785, 786, 787, 788, 789, 790, 707, 781, 716, /* 330 */ 784, 786, 788, 789, 790, 791, 792, 710, 782, 718,
/* 340 */ 791, 792, 713, 715, 717, 794, 796, 685, 721, 780, /* 340 */ 793, 794, 715, 717, 719, 796, 798, 687, 723, 783,
/* 350 */ 746, 793, 661, 663, 718, 718, 718, 718, 700, 703, /* 350 */ 747, 795, 660, 665, 713, 713, 713, 713, 703, 704,
/* 360 */ 795, 665, 666, 718, 718, 718, 806, 809, 729, 718, /* 360 */ 799, 667, 669, 713, 713, 713, 810, 812, 732, 713,
/* 370 */ 815, 816, 817, 819, 820, 822, 823, 824, 825, 826, /* 370 */ 816, 818, 819, 820, 823, 824, 825, 826, 827, 828,
/* 380 */ 827, 828, 829, 830, 831, 736, 749, 832, 818, 833, /* 380 */ 829, 830, 831, 832, 833, 738, 751, 834, 822, 836,
/* 390 */ 821, 775, 844, /* 390 */ 835, 777, 842,
}; };
#define YY_REDUCE_COUNT (208) #define YY_REDUCE_COUNT (208)
#define YY_REDUCE_MIN (-276) #define YY_REDUCE_MIN (-277)
#define YY_REDUCE_MAX (541) #define YY_REDUCE_MAX (542)
static const short yy_reduce_ofst[] = { static const short yy_reduce_ofst[] = {
/* 0 */ -138, 53, 53, 152, 152, -211, -202, 131, 168, -201, /* 0 */ -139, 52, 52, 148, 148, -212, -203, 174, 180, -202,
/* 10 */ -199, -20, 9, 102, 103, 146, 174, 196, 206, 208, /* 10 */ -200, -21, 8, 102, 146, 206, 216, 218, 223, 225,
/* 20 */ 216, 217, -276, -141, -43, -191, -255, -225, -216, -142, /* 20 */ 231, 237, -277, -142, -36, -192, -256, -226, -217, -143,
/* 30 */ -96, -44, 27, 52, 181, 182, 190, 195, 199, 201, /* 30 */ -97, -63, 28, 33, 36, 41, 137, 181, 188, 203,
/* 40 */ 202, 203, 204, 210, 215, 218, 219, 222, 157, 194, /* 40 */ 205, 217, 222, 224, 226, 229, 233, 235, 48, 143,
/* 50 */ 197, -97, 226, -103, -184, 267, 231, 284, 292, 298, /* 50 */ 194, -98, -23, -104, -185, -30, 173, 196, 253, 299,
/* 60 */ 115, -116, -161, 21, 223, -3, 17, 15, 122, 295, /* 60 */ 238, -117, -162, 215, 236, -4, 23, 99, 254, 306,
/* 70 */ 303, -228, 66, 132, 137, 265, 301, 306, 309, 324, /* 70 */ 304, -229, 6, 58, 64, 72, 168, 300, 311, 327,
/* 80 */ 329, 332, 336, 380, 381, 382, 316, 384, 385, 386, /* 80 */ 331, 334, 340, 381, 382, 383, 317, 385, 386, 388,
/* 90 */ 339, 340, 389, 390, 392, 393, 314, 317, 318, 319, /* 90 */ 339, 341, 390, 391, 394, 395, 316, 319, 320, 321,
/* 100 */ 345, 350, 399, 400, 401, 402, 403, 404, 407, 409, /* 100 */ 347, 344, 400, 402, 403, 404, 406, 407, 408, 411,
/* 110 */ 411, 412, 413, 414, 415, 416, 419, 423, 425, 429, /* 110 */ 412, 413, 414, 416, 417, 418, 420, 421, 422, 424,
/* 120 */ 431, 432, 434, 436, 440, 442, 443, 445, 447, 448, /* 120 */ 425, 426, 427, 430, 431, 432, 433, 435, 436, 437,
/* 130 */ 449, 451, 453, 454, 455, 456, 457, 458, 460, 461, /* 130 */ 438, 439, 440, 443, 444, 445, 453, 454, 455, 457,
/* 140 */ 462, 463, 464, 465, 466, 467, 468, 469, 470, 471, /* 140 */ 458, 460, 461, 462, 463, 464, 465, 466, 467, 468,
/* 150 */ 472, 473, 474, 475, 476, 477, 479, 480, 481, 482, /* 150 */ 469, 470, 471, 472, 473, 474, 475, 476, 477, 478,
/* 160 */ 483, 338, 348, 349, 352, 484, 344, 354, 360, 372, /* 160 */ 479, 337, 338, 343, 351, 480, 355, 371, 384, 389,
/* 170 */ 375, 379, 388, 487, 396, 427, 489, 492, 493, 494, /* 170 */ 396, 442, 481, 483, 487, 484, 488, 489, 492, 493,
/* 180 */ 495, 496, 497, 498, 502, 500, 503, 504, 506, 505, /* 180 */ 494, 495, 496, 497, 501, 498, 502, 499, 503, 505,
/* 190 */ 512, 510, 513, 514, 516, 517, 520, 519, 521, 529, /* 190 */ 504, 508, 506, 510, 514, 512, 521, 515, 516, 518,
/* 200 */ 530, 532, 534, 537, 535, 538, 539, 526, 541, /* 200 */ 526, 523, 527, 529, 530, 532, 534, 533, 542,
}; };
static const YYACTIONTYPE yy_default[] = { static const YYACTIONTYPE yy_default[] = {
/* 0 */ 932, 1055, 994, 1065, 981, 991, 1228, 1228, 1228, 1228, /* 0 */ 934, 1057, 996, 1067, 983, 993, 1231, 1231, 1231, 1231,
/* 10 */ 932, 932, 932, 932, 932, 932, 932, 932, 932, 932, /* 10 */ 934, 934, 934, 934, 934, 934, 934, 934, 934, 934,
/* 20 */ 932, 932, 932, 932, 1115, 952, 932, 932, 932, 932, /* 20 */ 934, 934, 934, 934, 1117, 954, 934, 934, 934, 934,
/* 30 */ 932, 932, 932, 932, 932, 932, 932, 932, 932, 932, /* 30 */ 934, 934, 934, 934, 934, 934, 934, 934, 934, 934,
/* 40 */ 932, 932, 932, 932, 932, 932, 932, 932, 932, 932, /* 40 */ 934, 934, 934, 934, 934, 934, 934, 934, 934, 934,
/* 50 */ 932, 932, 932, 1139, 932, 991, 932, 932, 932, 932, /* 50 */ 934, 934, 934, 1141, 934, 993, 934, 934, 934, 934,
/* 60 */ 932, 1001, 991, 932, 932, 1001, 1001, 932, 1110, 1039, /* 60 */ 934, 1003, 993, 934, 934, 1003, 1003, 934, 1112, 1041,
/* 70 */ 1057, 932, 932, 932, 932, 932, 932, 932, 932, 932, /* 70 */ 1059, 934, 934, 934, 934, 934, 934, 934, 934, 934,
/* 80 */ 932, 932, 932, 932, 932, 932, 1117, 1123, 1120, 932, /* 80 */ 934, 934, 934, 934, 934, 934, 1119, 1125, 1122, 934,
/* 90 */ 932, 932, 1125, 932, 932, 932, 1161, 1161, 1161, 1161, /* 90 */ 934, 934, 1127, 934, 934, 934, 1163, 1163, 1163, 1163,
/* 100 */ 1108, 932, 932, 932, 932, 932, 932, 932, 932, 932, /* 100 */ 1110, 934, 934, 934, 934, 934, 934, 934, 934, 934,
/* 110 */ 932, 932, 932, 932, 932, 932, 932, 932, 932, 932, /* 110 */ 934, 934, 934, 934, 934, 934, 934, 934, 934, 934,
/* 120 */ 932, 932, 932, 932, 932, 932, 932, 932, 932, 932, /* 120 */ 934, 934, 934, 934, 934, 934, 934, 934, 934, 934,
/* 130 */ 932, 932, 932, 932, 979, 932, 977, 932, 932, 932, /* 130 */ 934, 934, 934, 934, 981, 934, 979, 934, 934, 934,
/* 140 */ 932, 932, 932, 932, 932, 932, 932, 932, 932, 932, /* 140 */ 934, 934, 934, 934, 934, 934, 934, 934, 934, 934,
/* 150 */ 932, 932, 932, 932, 932, 932, 932, 950, 954, 954, /* 150 */ 934, 934, 934, 934, 934, 934, 934, 952, 956, 956,
/* 160 */ 954, 932, 932, 932, 932, 954, 1170, 1174, 1151, 1168, /* 160 */ 956, 934, 934, 934, 934, 956, 1172, 1176, 1153, 1170,
/* 170 */ 1162, 1146, 1144, 1142, 1150, 1135, 1178, 954, 954, 954, /* 170 */ 1164, 1148, 1146, 1144, 1152, 1137, 1180, 956, 956, 956,
/* 180 */ 999, 999, 995, 991, 991, 954, 954, 1017, 1015, 1013, /* 180 */ 1001, 1001, 997, 993, 993, 956, 956, 1019, 1017, 1015,
/* 190 */ 1005, 1011, 1007, 1009, 1003, 982, 932, 954, 954, 989, /* 190 */ 1007, 1013, 1009, 1011, 1005, 984, 934, 956, 956, 991,
/* 200 */ 989, 954, 989, 954, 989, 954, 954, 1039, 1057, 1227, /* 200 */ 991, 956, 991, 956, 991, 956, 956, 1041, 1059, 1230,
/* 210 */ 932, 1179, 1169, 1227, 932, 1210, 1209, 932, 1218, 1217, /* 210 */ 934, 1181, 1171, 1230, 934, 1213, 1212, 934, 1221, 1220,
/* 220 */ 1216, 1208, 1207, 1206, 932, 932, 1202, 1205, 1204, 1203, /* 220 */ 1219, 1211, 1210, 1209, 934, 934, 1205, 1208, 1207, 1206,
/* 230 */ 932, 932, 1181, 932, 932, 1212, 1211, 932, 932, 932, /* 230 */ 934, 934, 1183, 934, 934, 1215, 1214, 934, 934, 934,
/* 240 */ 932, 932, 932, 932, 1132, 932, 932, 932, 1157, 1175, /* 240 */ 934, 934, 934, 934, 1134, 934, 934, 934, 1159, 1177,
/* 250 */ 1171, 932, 932, 932, 932, 932, 932, 932, 932, 1182, /* 250 */ 1173, 934, 934, 934, 934, 934, 934, 934, 934, 1184,
/* 260 */ 932, 932, 932, 932, 932, 932, 932, 932, 1096, 932, /* 260 */ 934, 934, 934, 934, 934, 934, 934, 934, 1098, 934,
/* 270 */ 932, 1067, 932, 932, 932, 932, 932, 932, 932, 932, /* 270 */ 934, 1069, 934, 934, 934, 934, 934, 934, 934, 934,
/* 280 */ 932, 932, 932, 932, 1107, 932, 932, 932, 932, 932, /* 280 */ 934, 934, 934, 934, 1109, 934, 934, 934, 934, 934,
/* 290 */ 1119, 1118, 932, 932, 932, 932, 932, 932, 932, 932, /* 290 */ 1121, 1120, 934, 934, 934, 934, 934, 934, 934, 934,
/* 300 */ 932, 932, 932, 932, 932, 932, 932, 932, 932, 932, /* 300 */ 934, 934, 934, 934, 934, 934, 934, 934, 934, 934,
/* 310 */ 1163, 932, 1158, 932, 1152, 932, 932, 1079, 932, 932, /* 310 */ 1165, 934, 1160, 934, 1154, 934, 934, 1081, 934, 934,
/* 320 */ 932, 932, 932, 932, 932, 932, 932, 932, 932, 932, /* 320 */ 934, 934, 934, 934, 934, 934, 934, 934, 934, 934,
/* 330 */ 932, 932, 932, 932, 932, 932, 932, 932, 932, 932, /* 330 */ 934, 934, 934, 934, 934, 934, 934, 934, 934, 934,
/* 340 */ 932, 932, 932, 932, 932, 932, 932, 932, 932, 932, /* 340 */ 934, 934, 934, 934, 934, 934, 934, 934, 934, 934,
/* 350 */ 932, 932, 932, 932, 1246, 1241, 1242, 1239, 932, 932, /* 350 */ 934, 934, 934, 934, 1249, 1244, 1245, 1242, 934, 934,
/* 360 */ 932, 932, 932, 1238, 1233, 1234, 932, 932, 932, 1231, /* 360 */ 934, 934, 934, 1241, 1236, 1237, 934, 934, 934, 1234,
/* 370 */ 932, 932, 932, 932, 932, 932, 932, 932, 932, 932, /* 370 */ 934, 934, 934, 934, 934, 934, 934, 934, 934, 934,
/* 380 */ 932, 932, 932, 932, 932, 1023, 932, 932, 961, 932, /* 380 */ 934, 934, 934, 934, 934, 1025, 934, 934, 963, 934,
/* 390 */ 959, 932, 932, /* 390 */ 961, 934, 934,
}; };
/********** End of lemon-generated parsing tables *****************************/ /********** End of lemon-generated parsing tables *****************************/
...@@ -888,6 +691,7 @@ static const YYCODETYPE yyFallback[] = { ...@@ -888,6 +691,7 @@ static const YYCODETYPE yyFallback[] = {
0, /* SLIMIT => nothing */ 0, /* SLIMIT => nothing */
0, /* SOFFSET => nothing */ 0, /* SOFFSET => nothing */
0, /* WHERE => nothing */ 0, /* WHERE => nothing */
1, /* TODAY => ID */
0, /* RESET => nothing */ 0, /* RESET => nothing */
0, /* QUERY => nothing */ 0, /* QUERY => nothing */
0, /* SYNCDB => nothing */ 0, /* SYNCDB => nothing */
...@@ -996,7 +800,6 @@ typedef struct yyParser yyParser; ...@@ -996,7 +800,6 @@ typedef struct yyParser yyParser;
#ifndef NDEBUG #ifndef NDEBUG
#include <stdio.h> #include <stdio.h>
#include <assert.h>
static FILE *yyTraceFILE = 0; static FILE *yyTraceFILE = 0;
static char *yyTracePrompt = 0; static char *yyTracePrompt = 0;
#endif /* NDEBUG */ #endif /* NDEBUG */
...@@ -1177,144 +980,145 @@ static const char *const yyTokenName[] = { ...@@ -1177,144 +980,145 @@ static const char *const yyTokenName[] = {
/* 143 */ "SLIMIT", /* 143 */ "SLIMIT",
/* 144 */ "SOFFSET", /* 144 */ "SOFFSET",
/* 145 */ "WHERE", /* 145 */ "WHERE",
/* 146 */ "RESET", /* 146 */ "TODAY",
/* 147 */ "QUERY", /* 147 */ "RESET",
/* 148 */ "SYNCDB", /* 148 */ "QUERY",
/* 149 */ "ADD", /* 149 */ "SYNCDB",
/* 150 */ "COLUMN", /* 150 */ "ADD",
/* 151 */ "MODIFY", /* 151 */ "COLUMN",
/* 152 */ "TAG", /* 152 */ "MODIFY",
/* 153 */ "CHANGE", /* 153 */ "TAG",
/* 154 */ "SET", /* 154 */ "CHANGE",
/* 155 */ "KILL", /* 155 */ "SET",
/* 156 */ "CONNECTION", /* 156 */ "KILL",
/* 157 */ "STREAM", /* 157 */ "CONNECTION",
/* 158 */ "COLON", /* 158 */ "STREAM",
/* 159 */ "ABORT", /* 159 */ "COLON",
/* 160 */ "AFTER", /* 160 */ "ABORT",
/* 161 */ "ATTACH", /* 161 */ "AFTER",
/* 162 */ "BEFORE", /* 162 */ "ATTACH",
/* 163 */ "BEGIN", /* 163 */ "BEFORE",
/* 164 */ "CASCADE", /* 164 */ "BEGIN",
/* 165 */ "CLUSTER", /* 165 */ "CASCADE",
/* 166 */ "CONFLICT", /* 166 */ "CLUSTER",
/* 167 */ "COPY", /* 167 */ "CONFLICT",
/* 168 */ "DEFERRED", /* 168 */ "COPY",
/* 169 */ "DELIMITERS", /* 169 */ "DEFERRED",
/* 170 */ "DETACH", /* 170 */ "DELIMITERS",
/* 171 */ "EACH", /* 171 */ "DETACH",
/* 172 */ "END", /* 172 */ "EACH",
/* 173 */ "EXPLAIN", /* 173 */ "END",
/* 174 */ "FAIL", /* 174 */ "EXPLAIN",
/* 175 */ "FOR", /* 175 */ "FAIL",
/* 176 */ "IGNORE", /* 176 */ "FOR",
/* 177 */ "IMMEDIATE", /* 177 */ "IGNORE",
/* 178 */ "INITIALLY", /* 178 */ "IMMEDIATE",
/* 179 */ "INSTEAD", /* 179 */ "INITIALLY",
/* 180 */ "KEY", /* 180 */ "INSTEAD",
/* 181 */ "OF", /* 181 */ "KEY",
/* 182 */ "RAISE", /* 182 */ "OF",
/* 183 */ "REPLACE", /* 183 */ "RAISE",
/* 184 */ "RESTRICT", /* 184 */ "REPLACE",
/* 185 */ "ROW", /* 185 */ "RESTRICT",
/* 186 */ "STATEMENT", /* 186 */ "ROW",
/* 187 */ "TRIGGER", /* 187 */ "STATEMENT",
/* 188 */ "VIEW", /* 188 */ "TRIGGER",
/* 189 */ "IPTOKEN", /* 189 */ "VIEW",
/* 190 */ "SEMI", /* 190 */ "IPTOKEN",
/* 191 */ "NONE", /* 191 */ "SEMI",
/* 192 */ "PREV", /* 192 */ "NONE",
/* 193 */ "LINEAR", /* 193 */ "PREV",
/* 194 */ "IMPORT", /* 194 */ "LINEAR",
/* 195 */ "TBNAME", /* 195 */ "IMPORT",
/* 196 */ "JOIN", /* 196 */ "TBNAME",
/* 197 */ "INSERT", /* 197 */ "JOIN",
/* 198 */ "INTO", /* 198 */ "INSERT",
/* 199 */ "VALUES", /* 199 */ "INTO",
/* 200 */ "FILE", /* 200 */ "VALUES",
/* 201 */ "program", /* 201 */ "FILE",
/* 202 */ "cmd", /* 202 */ "program",
/* 203 */ "ids", /* 203 */ "cmd",
/* 204 */ "dbPrefix", /* 204 */ "ids",
/* 205 */ "cpxName", /* 205 */ "dbPrefix",
/* 206 */ "ifexists", /* 206 */ "cpxName",
/* 207 */ "alter_db_optr", /* 207 */ "ifexists",
/* 208 */ "alter_topic_optr", /* 208 */ "alter_db_optr",
/* 209 */ "acct_optr", /* 209 */ "alter_topic_optr",
/* 210 */ "exprlist", /* 210 */ "acct_optr",
/* 211 */ "ifnotexists", /* 211 */ "exprlist",
/* 212 */ "db_optr", /* 212 */ "ifnotexists",
/* 213 */ "topic_optr", /* 213 */ "db_optr",
/* 214 */ "typename", /* 214 */ "topic_optr",
/* 215 */ "bufsize", /* 215 */ "typename",
/* 216 */ "pps", /* 216 */ "bufsize",
/* 217 */ "tseries", /* 217 */ "pps",
/* 218 */ "dbs", /* 218 */ "tseries",
/* 219 */ "streams", /* 219 */ "dbs",
/* 220 */ "storage", /* 220 */ "streams",
/* 221 */ "qtime", /* 221 */ "storage",
/* 222 */ "users", /* 222 */ "qtime",
/* 223 */ "conns", /* 223 */ "users",
/* 224 */ "state", /* 224 */ "conns",
/* 225 */ "intitemlist", /* 225 */ "state",
/* 226 */ "intitem", /* 226 */ "intitemlist",
/* 227 */ "keep", /* 227 */ "intitem",
/* 228 */ "cache", /* 228 */ "keep",
/* 229 */ "replica", /* 229 */ "cache",
/* 230 */ "quorum", /* 230 */ "replica",
/* 231 */ "days", /* 231 */ "quorum",
/* 232 */ "minrows", /* 232 */ "days",
/* 233 */ "maxrows", /* 233 */ "minrows",
/* 234 */ "blocks", /* 234 */ "maxrows",
/* 235 */ "ctime", /* 235 */ "blocks",
/* 236 */ "wal", /* 236 */ "ctime",
/* 237 */ "fsync", /* 237 */ "wal",
/* 238 */ "comp", /* 238 */ "fsync",
/* 239 */ "prec", /* 239 */ "comp",
/* 240 */ "update", /* 240 */ "prec",
/* 241 */ "cachelast", /* 241 */ "update",
/* 242 */ "partitions", /* 242 */ "cachelast",
/* 243 */ "signed", /* 243 */ "partitions",
/* 244 */ "create_table_args", /* 244 */ "signed",
/* 245 */ "create_stable_args", /* 245 */ "create_table_args",
/* 246 */ "create_table_list", /* 246 */ "create_stable_args",
/* 247 */ "create_from_stable", /* 247 */ "create_table_list",
/* 248 */ "columnlist", /* 248 */ "create_from_stable",
/* 249 */ "tagitemlist", /* 249 */ "columnlist",
/* 250 */ "tagNamelist", /* 250 */ "tagitemlist",
/* 251 */ "select", /* 251 */ "tagNamelist",
/* 252 */ "column", /* 252 */ "select",
/* 253 */ "tagitem", /* 253 */ "column",
/* 254 */ "selcollist", /* 254 */ "tagitem",
/* 255 */ "from", /* 255 */ "selcollist",
/* 256 */ "where_opt", /* 256 */ "from",
/* 257 */ "range_option", /* 257 */ "where_opt",
/* 258 */ "interval_option", /* 258 */ "range_option",
/* 259 */ "sliding_opt", /* 259 */ "interval_option",
/* 260 */ "session_option", /* 260 */ "sliding_opt",
/* 261 */ "windowstate_option", /* 261 */ "session_option",
/* 262 */ "fill_opt", /* 262 */ "windowstate_option",
/* 263 */ "groupby_opt", /* 263 */ "fill_opt",
/* 264 */ "having_opt", /* 264 */ "groupby_opt",
/* 265 */ "orderby_opt", /* 265 */ "having_opt",
/* 266 */ "slimit_opt", /* 266 */ "orderby_opt",
/* 267 */ "limit_opt", /* 267 */ "slimit_opt",
/* 268 */ "union", /* 268 */ "limit_opt",
/* 269 */ "sclp", /* 269 */ "union",
/* 270 */ "distinct", /* 270 */ "sclp",
/* 271 */ "expr", /* 271 */ "distinct",
/* 272 */ "as", /* 272 */ "expr",
/* 273 */ "tablelist", /* 273 */ "as",
/* 274 */ "sub", /* 274 */ "tablelist",
/* 275 */ "tmvar", /* 275 */ "sub",
/* 276 */ "timestamp", /* 276 */ "tmvar",
/* 277 */ "intervalKey", /* 277 */ "timestamp",
/* 278 */ "sortlist", /* 278 */ "intervalKey",
/* 279 */ "item", /* 279 */ "sortlist",
/* 280 */ "sortorder", /* 280 */ "item",
/* 281 */ "arrow", /* 281 */ "sortorder",
/* 282 */ "grouplist", /* 282 */ "arrow",
/* 283 */ "expritem", /* 283 */ "grouplist",
/* 284 */ "expritem",
}; };
#endif /* defined(YYCOVERAGE) || !defined(NDEBUG) */ #endif /* defined(YYCOVERAGE) || !defined(NDEBUG) */
...@@ -1579,64 +1383,65 @@ static const char *const yyRuleName[] = { ...@@ -1579,64 +1383,65 @@ static const char *const yyRuleName[] = {
/* 254 */ "expr ::= PLUS FLOAT", /* 254 */ "expr ::= PLUS FLOAT",
/* 255 */ "expr ::= STRING", /* 255 */ "expr ::= STRING",
/* 256 */ "expr ::= NOW", /* 256 */ "expr ::= NOW",
/* 257 */ "expr ::= VARIABLE", /* 257 */ "expr ::= TODAY",
/* 258 */ "expr ::= PLUS VARIABLE", /* 258 */ "expr ::= VARIABLE",
/* 259 */ "expr ::= MINUS VARIABLE", /* 259 */ "expr ::= PLUS VARIABLE",
/* 260 */ "expr ::= BOOL", /* 260 */ "expr ::= MINUS VARIABLE",
/* 261 */ "expr ::= NULL", /* 261 */ "expr ::= BOOL",
/* 262 */ "expr ::= ID LP exprlist RP", /* 262 */ "expr ::= NULL",
/* 263 */ "expr ::= ID LP STAR RP", /* 263 */ "expr ::= ID LP exprlist RP",
/* 264 */ "expr ::= ID LP expr AS typename RP", /* 264 */ "expr ::= ID LP STAR RP",
/* 265 */ "expr ::= expr IS NULL", /* 265 */ "expr ::= ID LP expr AS typename RP",
/* 266 */ "expr ::= expr IS NOT NULL", /* 266 */ "expr ::= expr IS NULL",
/* 267 */ "expr ::= expr LT expr", /* 267 */ "expr ::= expr IS NOT NULL",
/* 268 */ "expr ::= expr GT expr", /* 268 */ "expr ::= expr LT expr",
/* 269 */ "expr ::= expr LE expr", /* 269 */ "expr ::= expr GT expr",
/* 270 */ "expr ::= expr GE expr", /* 270 */ "expr ::= expr LE expr",
/* 271 */ "expr ::= expr NE expr", /* 271 */ "expr ::= expr GE expr",
/* 272 */ "expr ::= expr EQ expr", /* 272 */ "expr ::= expr NE expr",
/* 273 */ "expr ::= expr BETWEEN expr AND expr", /* 273 */ "expr ::= expr EQ expr",
/* 274 */ "expr ::= expr AND expr", /* 274 */ "expr ::= expr BETWEEN expr AND expr",
/* 275 */ "expr ::= expr OR expr", /* 275 */ "expr ::= expr AND expr",
/* 276 */ "expr ::= expr PLUS expr", /* 276 */ "expr ::= expr OR expr",
/* 277 */ "expr ::= expr MINUS expr", /* 277 */ "expr ::= expr PLUS expr",
/* 278 */ "expr ::= expr STAR expr", /* 278 */ "expr ::= expr MINUS expr",
/* 279 */ "expr ::= expr SLASH expr", /* 279 */ "expr ::= expr STAR expr",
/* 280 */ "expr ::= expr REM expr", /* 280 */ "expr ::= expr SLASH expr",
/* 281 */ "expr ::= expr LIKE expr", /* 281 */ "expr ::= expr REM expr",
/* 282 */ "expr ::= expr MATCH expr", /* 282 */ "expr ::= expr LIKE expr",
/* 283 */ "expr ::= expr NMATCH expr", /* 283 */ "expr ::= expr MATCH expr",
/* 284 */ "expr ::= ID CONTAINS STRING", /* 284 */ "expr ::= expr NMATCH expr",
/* 285 */ "expr ::= ID DOT ID CONTAINS STRING", /* 285 */ "expr ::= ID CONTAINS STRING",
/* 286 */ "arrow ::= ID ARROW STRING", /* 286 */ "expr ::= ID DOT ID CONTAINS STRING",
/* 287 */ "arrow ::= ID DOT ID ARROW STRING", /* 287 */ "arrow ::= ID ARROW STRING",
/* 288 */ "expr ::= arrow", /* 288 */ "arrow ::= ID DOT ID ARROW STRING",
/* 289 */ "expr ::= expr IN LP exprlist RP", /* 289 */ "expr ::= arrow",
/* 290 */ "exprlist ::= exprlist COMMA expritem", /* 290 */ "expr ::= expr IN LP exprlist RP",
/* 291 */ "exprlist ::= expritem", /* 291 */ "exprlist ::= exprlist COMMA expritem",
/* 292 */ "expritem ::= expr", /* 292 */ "exprlist ::= expritem",
/* 293 */ "expritem ::=", /* 293 */ "expritem ::= expr",
/* 294 */ "cmd ::= RESET QUERY CACHE", /* 294 */ "expritem ::=",
/* 295 */ "cmd ::= SYNCDB ids REPLICA", /* 295 */ "cmd ::= RESET QUERY CACHE",
/* 296 */ "cmd ::= ALTER TABLE ids cpxName ADD COLUMN columnlist", /* 296 */ "cmd ::= SYNCDB ids REPLICA",
/* 297 */ "cmd ::= ALTER TABLE ids cpxName DROP COLUMN ids", /* 297 */ "cmd ::= ALTER TABLE ids cpxName ADD COLUMN columnlist",
/* 298 */ "cmd ::= ALTER TABLE ids cpxName MODIFY COLUMN columnlist", /* 298 */ "cmd ::= ALTER TABLE ids cpxName DROP COLUMN ids",
/* 299 */ "cmd ::= ALTER TABLE ids cpxName ADD TAG columnlist", /* 299 */ "cmd ::= ALTER TABLE ids cpxName MODIFY COLUMN columnlist",
/* 300 */ "cmd ::= ALTER TABLE ids cpxName DROP TAG ids", /* 300 */ "cmd ::= ALTER TABLE ids cpxName ADD TAG columnlist",
/* 301 */ "cmd ::= ALTER TABLE ids cpxName CHANGE TAG ids ids", /* 301 */ "cmd ::= ALTER TABLE ids cpxName DROP TAG ids",
/* 302 */ "cmd ::= ALTER TABLE ids cpxName SET TAG ids EQ tagitem", /* 302 */ "cmd ::= ALTER TABLE ids cpxName CHANGE TAG ids ids",
/* 303 */ "cmd ::= ALTER TABLE ids cpxName MODIFY TAG columnlist", /* 303 */ "cmd ::= ALTER TABLE ids cpxName SET TAG ids EQ tagitem",
/* 304 */ "cmd ::= ALTER STABLE ids cpxName ADD COLUMN columnlist", /* 304 */ "cmd ::= ALTER TABLE ids cpxName MODIFY TAG columnlist",
/* 305 */ "cmd ::= ALTER STABLE ids cpxName DROP COLUMN ids", /* 305 */ "cmd ::= ALTER STABLE ids cpxName ADD COLUMN columnlist",
/* 306 */ "cmd ::= ALTER STABLE ids cpxName MODIFY COLUMN columnlist", /* 306 */ "cmd ::= ALTER STABLE ids cpxName DROP COLUMN ids",
/* 307 */ "cmd ::= ALTER STABLE ids cpxName ADD TAG columnlist", /* 307 */ "cmd ::= ALTER STABLE ids cpxName MODIFY COLUMN columnlist",
/* 308 */ "cmd ::= ALTER STABLE ids cpxName DROP TAG ids", /* 308 */ "cmd ::= ALTER STABLE ids cpxName ADD TAG columnlist",
/* 309 */ "cmd ::= ALTER STABLE ids cpxName CHANGE TAG ids ids", /* 309 */ "cmd ::= ALTER STABLE ids cpxName DROP TAG ids",
/* 310 */ "cmd ::= ALTER STABLE ids cpxName SET TAG ids EQ tagitem", /* 310 */ "cmd ::= ALTER STABLE ids cpxName CHANGE TAG ids ids",
/* 311 */ "cmd ::= ALTER STABLE ids cpxName MODIFY TAG columnlist", /* 311 */ "cmd ::= ALTER STABLE ids cpxName SET TAG ids EQ tagitem",
/* 312 */ "cmd ::= KILL CONNECTION INTEGER", /* 312 */ "cmd ::= ALTER STABLE ids cpxName MODIFY TAG columnlist",
/* 313 */ "cmd ::= KILL STREAM INTEGER COLON INTEGER", /* 313 */ "cmd ::= KILL CONNECTION INTEGER",
/* 314 */ "cmd ::= KILL QUERY INTEGER COLON INTEGER", /* 314 */ "cmd ::= KILL STREAM INTEGER COLON INTEGER",
/* 315 */ "cmd ::= KILL QUERY INTEGER COLON INTEGER",
}; };
#endif /* NDEBUG */ #endif /* NDEBUG */
...@@ -1762,57 +1567,57 @@ static void yy_destructor( ...@@ -1762,57 +1567,57 @@ static void yy_destructor(
** inside the C code. ** inside the C code.
*/ */
/********* Begin destructor definitions ***************************************/ /********* Begin destructor definitions ***************************************/
case 210: /* exprlist */ case 211: /* exprlist */
case 254: /* selcollist */ case 255: /* selcollist */
case 269: /* sclp */ case 270: /* sclp */
{ {
tSqlExprListDestroy((yypminor->yy189)); tSqlExprListDestroy((yypminor->yy231));
} }
break; break;
case 225: /* intitemlist */ case 226: /* intitemlist */
case 227: /* keep */ case 228: /* keep */
case 248: /* columnlist */ case 249: /* columnlist */
case 249: /* tagitemlist */ case 250: /* tagitemlist */
case 250: /* tagNamelist */ case 251: /* tagNamelist */
case 262: /* fill_opt */ case 263: /* fill_opt */
case 263: /* groupby_opt */ case 264: /* groupby_opt */
case 265: /* orderby_opt */ case 266: /* orderby_opt */
case 278: /* sortlist */ case 279: /* sortlist */
case 282: /* grouplist */ case 283: /* grouplist */
{ {
taosArrayDestroy(&(yypminor->yy189)); taosArrayDestroy(&(yypminor->yy231));
} }
break; break;
case 246: /* create_table_list */ case 247: /* create_table_list */
{ {
destroyCreateTableSql((yypminor->yy6)); destroyCreateTableSql((yypminor->yy422));
} }
break; break;
case 251: /* select */ case 252: /* select */
{ {
destroySqlNode((yypminor->yy16)); destroySqlNode((yypminor->yy86));
} }
break; break;
case 255: /* from */ case 256: /* from */
case 273: /* tablelist */ case 274: /* tablelist */
case 274: /* sub */ case 275: /* sub */
{ {
destroyRelationInfo((yypminor->yy36)); destroyRelationInfo((yypminor->yy484));
} }
break; break;
case 256: /* where_opt */ case 257: /* where_opt */
case 264: /* having_opt */ case 265: /* having_opt */
case 271: /* expr */ case 272: /* expr */
case 276: /* timestamp */ case 277: /* timestamp */
case 281: /* arrow */ case 282: /* arrow */
case 283: /* expritem */ case 284: /* expritem */
{ {
tSqlExprDestroy((yypminor->yy18)); tSqlExprDestroy((yypminor->yy226));
} }
break; break;
case 268: /* union */ case 269: /* union */
{ {
destroyAllSqlNode((yypminor->yy189)); destroyAllSqlNode((yypminor->yy231));
} }
break; break;
/********* End destructor definitions *****************************************/ /********* End destructor definitions *****************************************/
...@@ -1979,7 +1784,7 @@ static YYACTIONTYPE yy_find_shift_action( ...@@ -1979,7 +1784,7 @@ static YYACTIONTYPE yy_find_shift_action(
#endif /* YYWILDCARD */ #endif /* YYWILDCARD */
return yy_default[stateno]; return yy_default[stateno];
}else{ }else{
assert( i>=0 && i<(int)(sizeof(yy_action)/sizeof(yy_action[0])) ); assert( i>=0 && i<sizeof(yy_action)/sizeof(yy_action[0]) );
return yy_action[i]; return yy_action[i];
} }
}while(1); }while(1);
...@@ -2101,321 +1906,322 @@ static void yy_shift( ...@@ -2101,321 +1906,322 @@ static void yy_shift(
/* For rule J, yyRuleInfoLhs[J] contains the symbol on the left-hand side /* For rule J, yyRuleInfoLhs[J] contains the symbol on the left-hand side
** of that rule */ ** of that rule */
static const YYCODETYPE yyRuleInfoLhs[] = { static const YYCODETYPE yyRuleInfoLhs[] = {
201, /* (0) program ::= cmd */ 202, /* (0) program ::= cmd */
202, /* (1) cmd ::= SHOW DATABASES */ 203, /* (1) cmd ::= SHOW DATABASES */
202, /* (2) cmd ::= SHOW TOPICS */ 203, /* (2) cmd ::= SHOW TOPICS */
202, /* (3) cmd ::= SHOW FUNCTIONS */ 203, /* (3) cmd ::= SHOW FUNCTIONS */
202, /* (4) cmd ::= SHOW MNODES */ 203, /* (4) cmd ::= SHOW MNODES */
202, /* (5) cmd ::= SHOW DNODES */ 203, /* (5) cmd ::= SHOW DNODES */
202, /* (6) cmd ::= SHOW ACCOUNTS */ 203, /* (6) cmd ::= SHOW ACCOUNTS */
202, /* (7) cmd ::= SHOW USERS */ 203, /* (7) cmd ::= SHOW USERS */
202, /* (8) cmd ::= SHOW MODULES */ 203, /* (8) cmd ::= SHOW MODULES */
202, /* (9) cmd ::= SHOW QUERIES */ 203, /* (9) cmd ::= SHOW QUERIES */
202, /* (10) cmd ::= SHOW CONNECTIONS */ 203, /* (10) cmd ::= SHOW CONNECTIONS */
202, /* (11) cmd ::= SHOW STREAMS */ 203, /* (11) cmd ::= SHOW STREAMS */
202, /* (12) cmd ::= SHOW VARIABLES */ 203, /* (12) cmd ::= SHOW VARIABLES */
202, /* (13) cmd ::= SHOW SCORES */ 203, /* (13) cmd ::= SHOW SCORES */
202, /* (14) cmd ::= SHOW GRANTS */ 203, /* (14) cmd ::= SHOW GRANTS */
202, /* (15) cmd ::= SHOW VNODES */ 203, /* (15) cmd ::= SHOW VNODES */
202, /* (16) cmd ::= SHOW VNODES ids */ 203, /* (16) cmd ::= SHOW VNODES ids */
204, /* (17) dbPrefix ::= */ 205, /* (17) dbPrefix ::= */
204, /* (18) dbPrefix ::= ids DOT */ 205, /* (18) dbPrefix ::= ids DOT */
205, /* (19) cpxName ::= */ 206, /* (19) cpxName ::= */
205, /* (20) cpxName ::= DOT ids */ 206, /* (20) cpxName ::= DOT ids */
202, /* (21) cmd ::= SHOW CREATE TABLE ids cpxName */ 203, /* (21) cmd ::= SHOW CREATE TABLE ids cpxName */
202, /* (22) cmd ::= SHOW CREATE STABLE ids cpxName */ 203, /* (22) cmd ::= SHOW CREATE STABLE ids cpxName */
202, /* (23) cmd ::= SHOW CREATE DATABASE ids */ 203, /* (23) cmd ::= SHOW CREATE DATABASE ids */
202, /* (24) cmd ::= SHOW dbPrefix TABLES */ 203, /* (24) cmd ::= SHOW dbPrefix TABLES */
202, /* (25) cmd ::= SHOW dbPrefix TABLES LIKE STRING */ 203, /* (25) cmd ::= SHOW dbPrefix TABLES LIKE STRING */
202, /* (26) cmd ::= SHOW dbPrefix STABLES */ 203, /* (26) cmd ::= SHOW dbPrefix STABLES */
202, /* (27) cmd ::= SHOW dbPrefix STABLES LIKE STRING */ 203, /* (27) cmd ::= SHOW dbPrefix STABLES LIKE STRING */
202, /* (28) cmd ::= SHOW dbPrefix VGROUPS */ 203, /* (28) cmd ::= SHOW dbPrefix VGROUPS */
202, /* (29) cmd ::= DROP TABLE ifexists ids cpxName */ 203, /* (29) cmd ::= DROP TABLE ifexists ids cpxName */
202, /* (30) cmd ::= DROP STABLE ifexists ids cpxName */ 203, /* (30) cmd ::= DROP STABLE ifexists ids cpxName */
202, /* (31) cmd ::= DROP DATABASE ifexists ids */ 203, /* (31) cmd ::= DROP DATABASE ifexists ids */
202, /* (32) cmd ::= DROP TOPIC ifexists ids */ 203, /* (32) cmd ::= DROP TOPIC ifexists ids */
202, /* (33) cmd ::= DROP FUNCTION ids */ 203, /* (33) cmd ::= DROP FUNCTION ids */
202, /* (34) cmd ::= DROP DNODE ids */ 203, /* (34) cmd ::= DROP DNODE ids */
202, /* (35) cmd ::= DROP USER ids */ 203, /* (35) cmd ::= DROP USER ids */
202, /* (36) cmd ::= DROP ACCOUNT ids */ 203, /* (36) cmd ::= DROP ACCOUNT ids */
202, /* (37) cmd ::= USE ids */ 203, /* (37) cmd ::= USE ids */
202, /* (38) cmd ::= DESCRIBE ids cpxName */ 203, /* (38) cmd ::= DESCRIBE ids cpxName */
202, /* (39) cmd ::= DESC ids cpxName */ 203, /* (39) cmd ::= DESC ids cpxName */
202, /* (40) cmd ::= ALTER USER ids PASS ids */ 203, /* (40) cmd ::= ALTER USER ids PASS ids */
202, /* (41) cmd ::= ALTER USER ids PRIVILEGE ids */ 203, /* (41) cmd ::= ALTER USER ids PRIVILEGE ids */
202, /* (42) cmd ::= ALTER DNODE ids ids */ 203, /* (42) cmd ::= ALTER DNODE ids ids */
202, /* (43) cmd ::= ALTER DNODE ids ids ids */ 203, /* (43) cmd ::= ALTER DNODE ids ids ids */
202, /* (44) cmd ::= ALTER LOCAL ids */ 203, /* (44) cmd ::= ALTER LOCAL ids */
202, /* (45) cmd ::= ALTER LOCAL ids ids */ 203, /* (45) cmd ::= ALTER LOCAL ids ids */
202, /* (46) cmd ::= ALTER DATABASE ids alter_db_optr */ 203, /* (46) cmd ::= ALTER DATABASE ids alter_db_optr */
202, /* (47) cmd ::= ALTER TOPIC ids alter_topic_optr */ 203, /* (47) cmd ::= ALTER TOPIC ids alter_topic_optr */
202, /* (48) cmd ::= ALTER ACCOUNT ids acct_optr */ 203, /* (48) cmd ::= ALTER ACCOUNT ids acct_optr */
202, /* (49) cmd ::= ALTER ACCOUNT ids PASS ids acct_optr */ 203, /* (49) cmd ::= ALTER ACCOUNT ids PASS ids acct_optr */
202, /* (50) cmd ::= COMPACT VNODES IN LP exprlist RP */ 203, /* (50) cmd ::= COMPACT VNODES IN LP exprlist RP */
203, /* (51) ids ::= ID */ 204, /* (51) ids ::= ID */
203, /* (52) ids ::= STRING */ 204, /* (52) ids ::= STRING */
206, /* (53) ifexists ::= IF EXISTS */ 207, /* (53) ifexists ::= IF EXISTS */
206, /* (54) ifexists ::= */ 207, /* (54) ifexists ::= */
211, /* (55) ifnotexists ::= IF NOT EXISTS */ 212, /* (55) ifnotexists ::= IF NOT EXISTS */
211, /* (56) ifnotexists ::= */ 212, /* (56) ifnotexists ::= */
202, /* (57) cmd ::= CREATE DNODE ids */ 203, /* (57) cmd ::= CREATE DNODE ids */
202, /* (58) cmd ::= CREATE ACCOUNT ids PASS ids acct_optr */ 203, /* (58) cmd ::= CREATE ACCOUNT ids PASS ids acct_optr */
202, /* (59) cmd ::= CREATE DATABASE ifnotexists ids db_optr */ 203, /* (59) cmd ::= CREATE DATABASE ifnotexists ids db_optr */
202, /* (60) cmd ::= CREATE TOPIC ifnotexists ids topic_optr */ 203, /* (60) cmd ::= CREATE TOPIC ifnotexists ids topic_optr */
202, /* (61) cmd ::= CREATE FUNCTION ids AS ids OUTPUTTYPE typename bufsize */ 203, /* (61) cmd ::= CREATE FUNCTION ids AS ids OUTPUTTYPE typename bufsize */
202, /* (62) cmd ::= CREATE AGGREGATE FUNCTION ids AS ids OUTPUTTYPE typename bufsize */ 203, /* (62) cmd ::= CREATE AGGREGATE FUNCTION ids AS ids OUTPUTTYPE typename bufsize */
202, /* (63) cmd ::= CREATE USER ids PASS ids */ 203, /* (63) cmd ::= CREATE USER ids PASS ids */
215, /* (64) bufsize ::= */ 216, /* (64) bufsize ::= */
215, /* (65) bufsize ::= BUFSIZE INTEGER */ 216, /* (65) bufsize ::= BUFSIZE INTEGER */
216, /* (66) pps ::= */ 217, /* (66) pps ::= */
216, /* (67) pps ::= PPS INTEGER */ 217, /* (67) pps ::= PPS INTEGER */
217, /* (68) tseries ::= */ 218, /* (68) tseries ::= */
217, /* (69) tseries ::= TSERIES INTEGER */ 218, /* (69) tseries ::= TSERIES INTEGER */
218, /* (70) dbs ::= */ 219, /* (70) dbs ::= */
218, /* (71) dbs ::= DBS INTEGER */ 219, /* (71) dbs ::= DBS INTEGER */
219, /* (72) streams ::= */ 220, /* (72) streams ::= */
219, /* (73) streams ::= STREAMS INTEGER */ 220, /* (73) streams ::= STREAMS INTEGER */
220, /* (74) storage ::= */ 221, /* (74) storage ::= */
220, /* (75) storage ::= STORAGE INTEGER */ 221, /* (75) storage ::= STORAGE INTEGER */
221, /* (76) qtime ::= */ 222, /* (76) qtime ::= */
221, /* (77) qtime ::= QTIME INTEGER */ 222, /* (77) qtime ::= QTIME INTEGER */
222, /* (78) users ::= */ 223, /* (78) users ::= */
222, /* (79) users ::= USERS INTEGER */ 223, /* (79) users ::= USERS INTEGER */
223, /* (80) conns ::= */ 224, /* (80) conns ::= */
223, /* (81) conns ::= CONNS INTEGER */ 224, /* (81) conns ::= CONNS INTEGER */
224, /* (82) state ::= */ 225, /* (82) state ::= */
224, /* (83) state ::= STATE ids */ 225, /* (83) state ::= STATE ids */
209, /* (84) acct_optr ::= pps tseries storage streams qtime dbs users conns state */ 210, /* (84) acct_optr ::= pps tseries storage streams qtime dbs users conns state */
225, /* (85) intitemlist ::= intitemlist COMMA intitem */ 226, /* (85) intitemlist ::= intitemlist COMMA intitem */
225, /* (86) intitemlist ::= intitem */ 226, /* (86) intitemlist ::= intitem */
226, /* (87) intitem ::= INTEGER */ 227, /* (87) intitem ::= INTEGER */
227, /* (88) keep ::= KEEP intitemlist */ 228, /* (88) keep ::= KEEP intitemlist */
228, /* (89) cache ::= CACHE INTEGER */ 229, /* (89) cache ::= CACHE INTEGER */
229, /* (90) replica ::= REPLICA INTEGER */ 230, /* (90) replica ::= REPLICA INTEGER */
230, /* (91) quorum ::= QUORUM INTEGER */ 231, /* (91) quorum ::= QUORUM INTEGER */
231, /* (92) days ::= DAYS INTEGER */ 232, /* (92) days ::= DAYS INTEGER */
232, /* (93) minrows ::= MINROWS INTEGER */ 233, /* (93) minrows ::= MINROWS INTEGER */
233, /* (94) maxrows ::= MAXROWS INTEGER */ 234, /* (94) maxrows ::= MAXROWS INTEGER */
234, /* (95) blocks ::= BLOCKS INTEGER */ 235, /* (95) blocks ::= BLOCKS INTEGER */
235, /* (96) ctime ::= CTIME INTEGER */ 236, /* (96) ctime ::= CTIME INTEGER */
236, /* (97) wal ::= WAL INTEGER */ 237, /* (97) wal ::= WAL INTEGER */
237, /* (98) fsync ::= FSYNC INTEGER */ 238, /* (98) fsync ::= FSYNC INTEGER */
238, /* (99) comp ::= COMP INTEGER */ 239, /* (99) comp ::= COMP INTEGER */
239, /* (100) prec ::= PRECISION STRING */ 240, /* (100) prec ::= PRECISION STRING */
240, /* (101) update ::= UPDATE INTEGER */ 241, /* (101) update ::= UPDATE INTEGER */
241, /* (102) cachelast ::= CACHELAST INTEGER */ 242, /* (102) cachelast ::= CACHELAST INTEGER */
242, /* (103) partitions ::= PARTITIONS INTEGER */ 243, /* (103) partitions ::= PARTITIONS INTEGER */
212, /* (104) db_optr ::= */ 213, /* (104) db_optr ::= */
212, /* (105) db_optr ::= db_optr cache */ 213, /* (105) db_optr ::= db_optr cache */
212, /* (106) db_optr ::= db_optr replica */ 213, /* (106) db_optr ::= db_optr replica */
212, /* (107) db_optr ::= db_optr quorum */ 213, /* (107) db_optr ::= db_optr quorum */
212, /* (108) db_optr ::= db_optr days */ 213, /* (108) db_optr ::= db_optr days */
212, /* (109) db_optr ::= db_optr minrows */ 213, /* (109) db_optr ::= db_optr minrows */
212, /* (110) db_optr ::= db_optr maxrows */ 213, /* (110) db_optr ::= db_optr maxrows */
212, /* (111) db_optr ::= db_optr blocks */ 213, /* (111) db_optr ::= db_optr blocks */
212, /* (112) db_optr ::= db_optr ctime */ 213, /* (112) db_optr ::= db_optr ctime */
212, /* (113) db_optr ::= db_optr wal */ 213, /* (113) db_optr ::= db_optr wal */
212, /* (114) db_optr ::= db_optr fsync */ 213, /* (114) db_optr ::= db_optr fsync */
212, /* (115) db_optr ::= db_optr comp */ 213, /* (115) db_optr ::= db_optr comp */
212, /* (116) db_optr ::= db_optr prec */ 213, /* (116) db_optr ::= db_optr prec */
212, /* (117) db_optr ::= db_optr keep */ 213, /* (117) db_optr ::= db_optr keep */
212, /* (118) db_optr ::= db_optr update */ 213, /* (118) db_optr ::= db_optr update */
212, /* (119) db_optr ::= db_optr cachelast */ 213, /* (119) db_optr ::= db_optr cachelast */
213, /* (120) topic_optr ::= db_optr */ 214, /* (120) topic_optr ::= db_optr */
213, /* (121) topic_optr ::= topic_optr partitions */ 214, /* (121) topic_optr ::= topic_optr partitions */
207, /* (122) alter_db_optr ::= */ 208, /* (122) alter_db_optr ::= */
207, /* (123) alter_db_optr ::= alter_db_optr replica */ 208, /* (123) alter_db_optr ::= alter_db_optr replica */
207, /* (124) alter_db_optr ::= alter_db_optr quorum */ 208, /* (124) alter_db_optr ::= alter_db_optr quorum */
207, /* (125) alter_db_optr ::= alter_db_optr keep */ 208, /* (125) alter_db_optr ::= alter_db_optr keep */
207, /* (126) alter_db_optr ::= alter_db_optr blocks */ 208, /* (126) alter_db_optr ::= alter_db_optr blocks */
207, /* (127) alter_db_optr ::= alter_db_optr comp */ 208, /* (127) alter_db_optr ::= alter_db_optr comp */
207, /* (128) alter_db_optr ::= alter_db_optr update */ 208, /* (128) alter_db_optr ::= alter_db_optr update */
207, /* (129) alter_db_optr ::= alter_db_optr cachelast */ 208, /* (129) alter_db_optr ::= alter_db_optr cachelast */
208, /* (130) alter_topic_optr ::= alter_db_optr */ 209, /* (130) alter_topic_optr ::= alter_db_optr */
208, /* (131) alter_topic_optr ::= alter_topic_optr partitions */ 209, /* (131) alter_topic_optr ::= alter_topic_optr partitions */
214, /* (132) typename ::= ids */ 215, /* (132) typename ::= ids */
214, /* (133) typename ::= ids LP signed RP */ 215, /* (133) typename ::= ids LP signed RP */
214, /* (134) typename ::= ids UNSIGNED */ 215, /* (134) typename ::= ids UNSIGNED */
243, /* (135) signed ::= INTEGER */ 244, /* (135) signed ::= INTEGER */
243, /* (136) signed ::= PLUS INTEGER */ 244, /* (136) signed ::= PLUS INTEGER */
243, /* (137) signed ::= MINUS INTEGER */ 244, /* (137) signed ::= MINUS INTEGER */
202, /* (138) cmd ::= CREATE TABLE create_table_args */ 203, /* (138) cmd ::= CREATE TABLE create_table_args */
202, /* (139) cmd ::= CREATE TABLE create_stable_args */ 203, /* (139) cmd ::= CREATE TABLE create_stable_args */
202, /* (140) cmd ::= CREATE STABLE create_stable_args */ 203, /* (140) cmd ::= CREATE STABLE create_stable_args */
202, /* (141) cmd ::= CREATE TABLE create_table_list */ 203, /* (141) cmd ::= CREATE TABLE create_table_list */
246, /* (142) create_table_list ::= create_from_stable */ 247, /* (142) create_table_list ::= create_from_stable */
246, /* (143) create_table_list ::= create_table_list create_from_stable */ 247, /* (143) create_table_list ::= create_table_list create_from_stable */
244, /* (144) create_table_args ::= ifnotexists ids cpxName LP columnlist RP */ 245, /* (144) create_table_args ::= ifnotexists ids cpxName LP columnlist RP */
245, /* (145) create_stable_args ::= ifnotexists ids cpxName LP columnlist RP TAGS LP columnlist RP */ 246, /* (145) create_stable_args ::= ifnotexists ids cpxName LP columnlist RP TAGS LP columnlist RP */
247, /* (146) create_from_stable ::= ifnotexists ids cpxName USING ids cpxName TAGS LP tagitemlist RP */ 248, /* (146) create_from_stable ::= ifnotexists ids cpxName USING ids cpxName TAGS LP tagitemlist RP */
247, /* (147) create_from_stable ::= ifnotexists ids cpxName USING ids cpxName LP tagNamelist RP TAGS LP tagitemlist RP */ 248, /* (147) create_from_stable ::= ifnotexists ids cpxName USING ids cpxName LP tagNamelist RP TAGS LP tagitemlist RP */
250, /* (148) tagNamelist ::= tagNamelist COMMA ids */ 251, /* (148) tagNamelist ::= tagNamelist COMMA ids */
250, /* (149) tagNamelist ::= ids */ 251, /* (149) tagNamelist ::= ids */
244, /* (150) create_table_args ::= ifnotexists ids cpxName AS select */ 245, /* (150) create_table_args ::= ifnotexists ids cpxName AS select */
248, /* (151) columnlist ::= columnlist COMMA column */ 249, /* (151) columnlist ::= columnlist COMMA column */
248, /* (152) columnlist ::= column */ 249, /* (152) columnlist ::= column */
252, /* (153) column ::= ids typename */ 253, /* (153) column ::= ids typename */
249, /* (154) tagitemlist ::= tagitemlist COMMA tagitem */ 250, /* (154) tagitemlist ::= tagitemlist COMMA tagitem */
249, /* (155) tagitemlist ::= tagitem */ 250, /* (155) tagitemlist ::= tagitem */
253, /* (156) tagitem ::= INTEGER */ 254, /* (156) tagitem ::= INTEGER */
253, /* (157) tagitem ::= FLOAT */ 254, /* (157) tagitem ::= FLOAT */
253, /* (158) tagitem ::= STRING */ 254, /* (158) tagitem ::= STRING */
253, /* (159) tagitem ::= BOOL */ 254, /* (159) tagitem ::= BOOL */
253, /* (160) tagitem ::= NULL */ 254, /* (160) tagitem ::= NULL */
253, /* (161) tagitem ::= NOW */ 254, /* (161) tagitem ::= NOW */
253, /* (162) tagitem ::= NOW PLUS VARIABLE */ 254, /* (162) tagitem ::= NOW PLUS VARIABLE */
253, /* (163) tagitem ::= NOW MINUS VARIABLE */ 254, /* (163) tagitem ::= NOW MINUS VARIABLE */
253, /* (164) tagitem ::= MINUS INTEGER */ 254, /* (164) tagitem ::= MINUS INTEGER */
253, /* (165) tagitem ::= MINUS FLOAT */ 254, /* (165) tagitem ::= MINUS FLOAT */
253, /* (166) tagitem ::= PLUS INTEGER */ 254, /* (166) tagitem ::= PLUS INTEGER */
253, /* (167) tagitem ::= PLUS FLOAT */ 254, /* (167) tagitem ::= PLUS FLOAT */
251, /* (168) select ::= SELECT selcollist from where_opt range_option interval_option sliding_opt session_option windowstate_option fill_opt groupby_opt having_opt orderby_opt slimit_opt limit_opt */ 252, /* (168) select ::= SELECT selcollist from where_opt range_option interval_option sliding_opt session_option windowstate_option fill_opt groupby_opt having_opt orderby_opt slimit_opt limit_opt */
251, /* (169) select ::= LP select RP */ 252, /* (169) select ::= LP select RP */
268, /* (170) union ::= select */ 269, /* (170) union ::= select */
268, /* (171) union ::= union UNION ALL select */ 269, /* (171) union ::= union UNION ALL select */
202, /* (172) cmd ::= union */ 203, /* (172) cmd ::= union */
251, /* (173) select ::= SELECT selcollist */ 252, /* (173) select ::= SELECT selcollist */
269, /* (174) sclp ::= selcollist COMMA */ 270, /* (174) sclp ::= selcollist COMMA */
269, /* (175) sclp ::= */ 270, /* (175) sclp ::= */
254, /* (176) selcollist ::= sclp distinct expr as */ 255, /* (176) selcollist ::= sclp distinct expr as */
254, /* (177) selcollist ::= sclp STAR */ 255, /* (177) selcollist ::= sclp STAR */
272, /* (178) as ::= AS ids */ 273, /* (178) as ::= AS ids */
272, /* (179) as ::= ids */ 273, /* (179) as ::= ids */
272, /* (180) as ::= */ 273, /* (180) as ::= */
270, /* (181) distinct ::= DISTINCT */ 271, /* (181) distinct ::= DISTINCT */
270, /* (182) distinct ::= */ 271, /* (182) distinct ::= */
255, /* (183) from ::= FROM tablelist */ 256, /* (183) from ::= FROM tablelist */
255, /* (184) from ::= FROM sub */ 256, /* (184) from ::= FROM sub */
274, /* (185) sub ::= LP union RP */ 275, /* (185) sub ::= LP union RP */
274, /* (186) sub ::= LP union RP ids */ 275, /* (186) sub ::= LP union RP ids */
274, /* (187) sub ::= sub COMMA LP union RP ids */ 275, /* (187) sub ::= sub COMMA LP union RP ids */
273, /* (188) tablelist ::= ids cpxName */ 274, /* (188) tablelist ::= ids cpxName */
273, /* (189) tablelist ::= ids cpxName ids */ 274, /* (189) tablelist ::= ids cpxName ids */
273, /* (190) tablelist ::= tablelist COMMA ids cpxName */ 274, /* (190) tablelist ::= tablelist COMMA ids cpxName */
273, /* (191) tablelist ::= tablelist COMMA ids cpxName ids */ 274, /* (191) tablelist ::= tablelist COMMA ids cpxName ids */
275, /* (192) tmvar ::= VARIABLE */ 276, /* (192) tmvar ::= VARIABLE */
276, /* (193) timestamp ::= INTEGER */ 277, /* (193) timestamp ::= INTEGER */
276, /* (194) timestamp ::= MINUS INTEGER */ 277, /* (194) timestamp ::= MINUS INTEGER */
276, /* (195) timestamp ::= PLUS INTEGER */ 277, /* (195) timestamp ::= PLUS INTEGER */
276, /* (196) timestamp ::= STRING */ 277, /* (196) timestamp ::= STRING */
276, /* (197) timestamp ::= NOW */ 277, /* (197) timestamp ::= NOW */
276, /* (198) timestamp ::= NOW PLUS VARIABLE */ 277, /* (198) timestamp ::= NOW PLUS VARIABLE */
276, /* (199) timestamp ::= NOW MINUS VARIABLE */ 277, /* (199) timestamp ::= NOW MINUS VARIABLE */
257, /* (200) range_option ::= */ 258, /* (200) range_option ::= */
257, /* (201) range_option ::= RANGE LP timestamp COMMA timestamp RP */ 258, /* (201) range_option ::= RANGE LP timestamp COMMA timestamp RP */
258, /* (202) interval_option ::= intervalKey LP tmvar RP */ 259, /* (202) interval_option ::= intervalKey LP tmvar RP */
258, /* (203) interval_option ::= intervalKey LP tmvar COMMA tmvar RP */ 259, /* (203) interval_option ::= intervalKey LP tmvar COMMA tmvar RP */
258, /* (204) interval_option ::= */ 259, /* (204) interval_option ::= */
277, /* (205) intervalKey ::= INTERVAL */ 278, /* (205) intervalKey ::= INTERVAL */
277, /* (206) intervalKey ::= EVERY */ 278, /* (206) intervalKey ::= EVERY */
260, /* (207) session_option ::= */ 261, /* (207) session_option ::= */
260, /* (208) session_option ::= SESSION LP ids cpxName COMMA tmvar RP */ 261, /* (208) session_option ::= SESSION LP ids cpxName COMMA tmvar RP */
261, /* (209) windowstate_option ::= */ 262, /* (209) windowstate_option ::= */
261, /* (210) windowstate_option ::= STATE_WINDOW LP ids RP */ 262, /* (210) windowstate_option ::= STATE_WINDOW LP ids RP */
262, /* (211) fill_opt ::= */ 263, /* (211) fill_opt ::= */
262, /* (212) fill_opt ::= FILL LP ID COMMA tagitemlist RP */ 263, /* (212) fill_opt ::= FILL LP ID COMMA tagitemlist RP */
262, /* (213) fill_opt ::= FILL LP ID RP */ 263, /* (213) fill_opt ::= FILL LP ID RP */
259, /* (214) sliding_opt ::= SLIDING LP tmvar RP */ 260, /* (214) sliding_opt ::= SLIDING LP tmvar RP */
259, /* (215) sliding_opt ::= */ 260, /* (215) sliding_opt ::= */
265, /* (216) orderby_opt ::= */ 266, /* (216) orderby_opt ::= */
265, /* (217) orderby_opt ::= ORDER BY sortlist */ 266, /* (217) orderby_opt ::= ORDER BY sortlist */
278, /* (218) sortlist ::= sortlist COMMA item sortorder */ 279, /* (218) sortlist ::= sortlist COMMA item sortorder */
278, /* (219) sortlist ::= sortlist COMMA arrow sortorder */ 279, /* (219) sortlist ::= sortlist COMMA arrow sortorder */
278, /* (220) sortlist ::= item sortorder */ 279, /* (220) sortlist ::= item sortorder */
278, /* (221) sortlist ::= arrow sortorder */ 279, /* (221) sortlist ::= arrow sortorder */
279, /* (222) item ::= ID */ 280, /* (222) item ::= ID */
279, /* (223) item ::= ID DOT ID */ 280, /* (223) item ::= ID DOT ID */
280, /* (224) sortorder ::= ASC */ 281, /* (224) sortorder ::= ASC */
280, /* (225) sortorder ::= DESC */ 281, /* (225) sortorder ::= DESC */
280, /* (226) sortorder ::= */ 281, /* (226) sortorder ::= */
263, /* (227) groupby_opt ::= */ 264, /* (227) groupby_opt ::= */
263, /* (228) groupby_opt ::= GROUP BY grouplist */ 264, /* (228) groupby_opt ::= GROUP BY grouplist */
282, /* (229) grouplist ::= grouplist COMMA item */ 283, /* (229) grouplist ::= grouplist COMMA item */
282, /* (230) grouplist ::= grouplist COMMA arrow */ 283, /* (230) grouplist ::= grouplist COMMA arrow */
282, /* (231) grouplist ::= item */ 283, /* (231) grouplist ::= item */
282, /* (232) grouplist ::= arrow */ 283, /* (232) grouplist ::= arrow */
264, /* (233) having_opt ::= */ 265, /* (233) having_opt ::= */
264, /* (234) having_opt ::= HAVING expr */ 265, /* (234) having_opt ::= HAVING expr */
267, /* (235) limit_opt ::= */ 268, /* (235) limit_opt ::= */
267, /* (236) limit_opt ::= LIMIT signed */ 268, /* (236) limit_opt ::= LIMIT signed */
267, /* (237) limit_opt ::= LIMIT signed OFFSET signed */ 268, /* (237) limit_opt ::= LIMIT signed OFFSET signed */
267, /* (238) limit_opt ::= LIMIT signed COMMA signed */ 268, /* (238) limit_opt ::= LIMIT signed COMMA signed */
266, /* (239) slimit_opt ::= */ 267, /* (239) slimit_opt ::= */
266, /* (240) slimit_opt ::= SLIMIT signed */ 267, /* (240) slimit_opt ::= SLIMIT signed */
266, /* (241) slimit_opt ::= SLIMIT signed SOFFSET signed */ 267, /* (241) slimit_opt ::= SLIMIT signed SOFFSET signed */
266, /* (242) slimit_opt ::= SLIMIT signed COMMA signed */ 267, /* (242) slimit_opt ::= SLIMIT signed COMMA signed */
256, /* (243) where_opt ::= */ 257, /* (243) where_opt ::= */
256, /* (244) where_opt ::= WHERE expr */ 257, /* (244) where_opt ::= WHERE expr */
271, /* (245) expr ::= LP expr RP */ 272, /* (245) expr ::= LP expr RP */
271, /* (246) expr ::= ID */ 272, /* (246) expr ::= ID */
271, /* (247) expr ::= ID DOT ID */ 272, /* (247) expr ::= ID DOT ID */
271, /* (248) expr ::= ID DOT STAR */ 272, /* (248) expr ::= ID DOT STAR */
271, /* (249) expr ::= INTEGER */ 272, /* (249) expr ::= INTEGER */
271, /* (250) expr ::= MINUS INTEGER */ 272, /* (250) expr ::= MINUS INTEGER */
271, /* (251) expr ::= PLUS INTEGER */ 272, /* (251) expr ::= PLUS INTEGER */
271, /* (252) expr ::= FLOAT */ 272, /* (252) expr ::= FLOAT */
271, /* (253) expr ::= MINUS FLOAT */ 272, /* (253) expr ::= MINUS FLOAT */
271, /* (254) expr ::= PLUS FLOAT */ 272, /* (254) expr ::= PLUS FLOAT */
271, /* (255) expr ::= STRING */ 272, /* (255) expr ::= STRING */
271, /* (256) expr ::= NOW */ 272, /* (256) expr ::= NOW */
271, /* (257) expr ::= VARIABLE */ 272, /* (257) expr ::= TODAY */
271, /* (258) expr ::= PLUS VARIABLE */ 272, /* (258) expr ::= VARIABLE */
271, /* (259) expr ::= MINUS VARIABLE */ 272, /* (259) expr ::= PLUS VARIABLE */
271, /* (260) expr ::= BOOL */ 272, /* (260) expr ::= MINUS VARIABLE */
271, /* (261) expr ::= NULL */ 272, /* (261) expr ::= BOOL */
271, /* (262) expr ::= ID LP exprlist RP */ 272, /* (262) expr ::= NULL */
271, /* (263) expr ::= ID LP STAR RP */ 272, /* (263) expr ::= ID LP exprlist RP */
271, /* (264) expr ::= ID LP expr AS typename RP */ 272, /* (264) expr ::= ID LP STAR RP */
271, /* (265) expr ::= expr IS NULL */ 272, /* (265) expr ::= ID LP expr AS typename RP */
271, /* (266) expr ::= expr IS NOT NULL */ 272, /* (266) expr ::= expr IS NULL */
271, /* (267) expr ::= expr LT expr */ 272, /* (267) expr ::= expr IS NOT NULL */
271, /* (268) expr ::= expr GT expr */ 272, /* (268) expr ::= expr LT expr */
271, /* (269) expr ::= expr LE expr */ 272, /* (269) expr ::= expr GT expr */
271, /* (270) expr ::= expr GE expr */ 272, /* (270) expr ::= expr LE expr */
271, /* (271) expr ::= expr NE expr */ 272, /* (271) expr ::= expr GE expr */
271, /* (272) expr ::= expr EQ expr */ 272, /* (272) expr ::= expr NE expr */
271, /* (273) expr ::= expr BETWEEN expr AND expr */ 272, /* (273) expr ::= expr EQ expr */
271, /* (274) expr ::= expr AND expr */ 272, /* (274) expr ::= expr BETWEEN expr AND expr */
271, /* (275) expr ::= expr OR expr */ 272, /* (275) expr ::= expr AND expr */
271, /* (276) expr ::= expr PLUS expr */ 272, /* (276) expr ::= expr OR expr */
271, /* (277) expr ::= expr MINUS expr */ 272, /* (277) expr ::= expr PLUS expr */
271, /* (278) expr ::= expr STAR expr */ 272, /* (278) expr ::= expr MINUS expr */
271, /* (279) expr ::= expr SLASH expr */ 272, /* (279) expr ::= expr STAR expr */
271, /* (280) expr ::= expr REM expr */ 272, /* (280) expr ::= expr SLASH expr */
271, /* (281) expr ::= expr LIKE expr */ 272, /* (281) expr ::= expr REM expr */
271, /* (282) expr ::= expr MATCH expr */ 272, /* (282) expr ::= expr LIKE expr */
271, /* (283) expr ::= expr NMATCH expr */ 272, /* (283) expr ::= expr MATCH expr */
271, /* (284) expr ::= ID CONTAINS STRING */ 272, /* (284) expr ::= expr NMATCH expr */
271, /* (285) expr ::= ID DOT ID CONTAINS STRING */ 272, /* (285) expr ::= ID CONTAINS STRING */
281, /* (286) arrow ::= ID ARROW STRING */ 272, /* (286) expr ::= ID DOT ID CONTAINS STRING */
281, /* (287) arrow ::= ID DOT ID ARROW STRING */ 282, /* (287) arrow ::= ID ARROW STRING */
271, /* (288) expr ::= arrow */ 282, /* (288) arrow ::= ID DOT ID ARROW STRING */
271, /* (289) expr ::= expr IN LP exprlist RP */ 272, /* (289) expr ::= arrow */
210, /* (290) exprlist ::= exprlist COMMA expritem */ 272, /* (290) expr ::= expr IN LP exprlist RP */
210, /* (291) exprlist ::= expritem */ 211, /* (291) exprlist ::= exprlist COMMA expritem */
283, /* (292) expritem ::= expr */ 211, /* (292) exprlist ::= expritem */
283, /* (293) expritem ::= */ 284, /* (293) expritem ::= expr */
202, /* (294) cmd ::= RESET QUERY CACHE */ 284, /* (294) expritem ::= */
202, /* (295) cmd ::= SYNCDB ids REPLICA */ 203, /* (295) cmd ::= RESET QUERY CACHE */
202, /* (296) cmd ::= ALTER TABLE ids cpxName ADD COLUMN columnlist */ 203, /* (296) cmd ::= SYNCDB ids REPLICA */
202, /* (297) cmd ::= ALTER TABLE ids cpxName DROP COLUMN ids */ 203, /* (297) cmd ::= ALTER TABLE ids cpxName ADD COLUMN columnlist */
202, /* (298) cmd ::= ALTER TABLE ids cpxName MODIFY COLUMN columnlist */ 203, /* (298) cmd ::= ALTER TABLE ids cpxName DROP COLUMN ids */
202, /* (299) cmd ::= ALTER TABLE ids cpxName ADD TAG columnlist */ 203, /* (299) cmd ::= ALTER TABLE ids cpxName MODIFY COLUMN columnlist */
202, /* (300) cmd ::= ALTER TABLE ids cpxName DROP TAG ids */ 203, /* (300) cmd ::= ALTER TABLE ids cpxName ADD TAG columnlist */
202, /* (301) cmd ::= ALTER TABLE ids cpxName CHANGE TAG ids ids */ 203, /* (301) cmd ::= ALTER TABLE ids cpxName DROP TAG ids */
202, /* (302) cmd ::= ALTER TABLE ids cpxName SET TAG ids EQ tagitem */ 203, /* (302) cmd ::= ALTER TABLE ids cpxName CHANGE TAG ids ids */
202, /* (303) cmd ::= ALTER TABLE ids cpxName MODIFY TAG columnlist */ 203, /* (303) cmd ::= ALTER TABLE ids cpxName SET TAG ids EQ tagitem */
202, /* (304) cmd ::= ALTER STABLE ids cpxName ADD COLUMN columnlist */ 203, /* (304) cmd ::= ALTER TABLE ids cpxName MODIFY TAG columnlist */
202, /* (305) cmd ::= ALTER STABLE ids cpxName DROP COLUMN ids */ 203, /* (305) cmd ::= ALTER STABLE ids cpxName ADD COLUMN columnlist */
202, /* (306) cmd ::= ALTER STABLE ids cpxName MODIFY COLUMN columnlist */ 203, /* (306) cmd ::= ALTER STABLE ids cpxName DROP COLUMN ids */
202, /* (307) cmd ::= ALTER STABLE ids cpxName ADD TAG columnlist */ 203, /* (307) cmd ::= ALTER STABLE ids cpxName MODIFY COLUMN columnlist */
202, /* (308) cmd ::= ALTER STABLE ids cpxName DROP TAG ids */ 203, /* (308) cmd ::= ALTER STABLE ids cpxName ADD TAG columnlist */
202, /* (309) cmd ::= ALTER STABLE ids cpxName CHANGE TAG ids ids */ 203, /* (309) cmd ::= ALTER STABLE ids cpxName DROP TAG ids */
202, /* (310) cmd ::= ALTER STABLE ids cpxName SET TAG ids EQ tagitem */ 203, /* (310) cmd ::= ALTER STABLE ids cpxName CHANGE TAG ids ids */
202, /* (311) cmd ::= ALTER STABLE ids cpxName MODIFY TAG columnlist */ 203, /* (311) cmd ::= ALTER STABLE ids cpxName SET TAG ids EQ tagitem */
202, /* (312) cmd ::= KILL CONNECTION INTEGER */ 203, /* (312) cmd ::= ALTER STABLE ids cpxName MODIFY TAG columnlist */
202, /* (313) cmd ::= KILL STREAM INTEGER COLON INTEGER */ 203, /* (313) cmd ::= KILL CONNECTION INTEGER */
202, /* (314) cmd ::= KILL QUERY INTEGER COLON INTEGER */ 203, /* (314) cmd ::= KILL STREAM INTEGER COLON INTEGER */
203, /* (315) cmd ::= KILL QUERY INTEGER COLON INTEGER */
}; };
/* For rule J, yyRuleInfoNRhs[J] contains the negative of the number /* For rule J, yyRuleInfoNRhs[J] contains the negative of the number
...@@ -2678,64 +2484,65 @@ static const signed char yyRuleInfoNRhs[] = { ...@@ -2678,64 +2484,65 @@ static const signed char yyRuleInfoNRhs[] = {
-2, /* (254) expr ::= PLUS FLOAT */ -2, /* (254) expr ::= PLUS FLOAT */
-1, /* (255) expr ::= STRING */ -1, /* (255) expr ::= STRING */
-1, /* (256) expr ::= NOW */ -1, /* (256) expr ::= NOW */
-1, /* (257) expr ::= VARIABLE */ -1, /* (257) expr ::= TODAY */
-2, /* (258) expr ::= PLUS VARIABLE */ -1, /* (258) expr ::= VARIABLE */
-2, /* (259) expr ::= MINUS VARIABLE */ -2, /* (259) expr ::= PLUS VARIABLE */
-1, /* (260) expr ::= BOOL */ -2, /* (260) expr ::= MINUS VARIABLE */
-1, /* (261) expr ::= NULL */ -1, /* (261) expr ::= BOOL */
-4, /* (262) expr ::= ID LP exprlist RP */ -1, /* (262) expr ::= NULL */
-4, /* (263) expr ::= ID LP STAR RP */ -4, /* (263) expr ::= ID LP exprlist RP */
-6, /* (264) expr ::= ID LP expr AS typename RP */ -4, /* (264) expr ::= ID LP STAR RP */
-3, /* (265) expr ::= expr IS NULL */ -6, /* (265) expr ::= ID LP expr AS typename RP */
-4, /* (266) expr ::= expr IS NOT NULL */ -3, /* (266) expr ::= expr IS NULL */
-3, /* (267) expr ::= expr LT expr */ -4, /* (267) expr ::= expr IS NOT NULL */
-3, /* (268) expr ::= expr GT expr */ -3, /* (268) expr ::= expr LT expr */
-3, /* (269) expr ::= expr LE expr */ -3, /* (269) expr ::= expr GT expr */
-3, /* (270) expr ::= expr GE expr */ -3, /* (270) expr ::= expr LE expr */
-3, /* (271) expr ::= expr NE expr */ -3, /* (271) expr ::= expr GE expr */
-3, /* (272) expr ::= expr EQ expr */ -3, /* (272) expr ::= expr NE expr */
-5, /* (273) expr ::= expr BETWEEN expr AND expr */ -3, /* (273) expr ::= expr EQ expr */
-3, /* (274) expr ::= expr AND expr */ -5, /* (274) expr ::= expr BETWEEN expr AND expr */
-3, /* (275) expr ::= expr OR expr */ -3, /* (275) expr ::= expr AND expr */
-3, /* (276) expr ::= expr PLUS expr */ -3, /* (276) expr ::= expr OR expr */
-3, /* (277) expr ::= expr MINUS expr */ -3, /* (277) expr ::= expr PLUS expr */
-3, /* (278) expr ::= expr STAR expr */ -3, /* (278) expr ::= expr MINUS expr */
-3, /* (279) expr ::= expr SLASH expr */ -3, /* (279) expr ::= expr STAR expr */
-3, /* (280) expr ::= expr REM expr */ -3, /* (280) expr ::= expr SLASH expr */
-3, /* (281) expr ::= expr LIKE expr */ -3, /* (281) expr ::= expr REM expr */
-3, /* (282) expr ::= expr MATCH expr */ -3, /* (282) expr ::= expr LIKE expr */
-3, /* (283) expr ::= expr NMATCH expr */ -3, /* (283) expr ::= expr MATCH expr */
-3, /* (284) expr ::= ID CONTAINS STRING */ -3, /* (284) expr ::= expr NMATCH expr */
-5, /* (285) expr ::= ID DOT ID CONTAINS STRING */ -3, /* (285) expr ::= ID CONTAINS STRING */
-3, /* (286) arrow ::= ID ARROW STRING */ -5, /* (286) expr ::= ID DOT ID CONTAINS STRING */
-5, /* (287) arrow ::= ID DOT ID ARROW STRING */ -3, /* (287) arrow ::= ID ARROW STRING */
-1, /* (288) expr ::= arrow */ -5, /* (288) arrow ::= ID DOT ID ARROW STRING */
-5, /* (289) expr ::= expr IN LP exprlist RP */ -1, /* (289) expr ::= arrow */
-3, /* (290) exprlist ::= exprlist COMMA expritem */ -5, /* (290) expr ::= expr IN LP exprlist RP */
-1, /* (291) exprlist ::= expritem */ -3, /* (291) exprlist ::= exprlist COMMA expritem */
-1, /* (292) expritem ::= expr */ -1, /* (292) exprlist ::= expritem */
0, /* (293) expritem ::= */ -1, /* (293) expritem ::= expr */
-3, /* (294) cmd ::= RESET QUERY CACHE */ 0, /* (294) expritem ::= */
-3, /* (295) cmd ::= SYNCDB ids REPLICA */ -3, /* (295) cmd ::= RESET QUERY CACHE */
-7, /* (296) cmd ::= ALTER TABLE ids cpxName ADD COLUMN columnlist */ -3, /* (296) cmd ::= SYNCDB ids REPLICA */
-7, /* (297) cmd ::= ALTER TABLE ids cpxName DROP COLUMN ids */ -7, /* (297) cmd ::= ALTER TABLE ids cpxName ADD COLUMN columnlist */
-7, /* (298) cmd ::= ALTER TABLE ids cpxName MODIFY COLUMN columnlist */ -7, /* (298) cmd ::= ALTER TABLE ids cpxName DROP COLUMN ids */
-7, /* (299) cmd ::= ALTER TABLE ids cpxName ADD TAG columnlist */ -7, /* (299) cmd ::= ALTER TABLE ids cpxName MODIFY COLUMN columnlist */
-7, /* (300) cmd ::= ALTER TABLE ids cpxName DROP TAG ids */ -7, /* (300) cmd ::= ALTER TABLE ids cpxName ADD TAG columnlist */
-8, /* (301) cmd ::= ALTER TABLE ids cpxName CHANGE TAG ids ids */ -7, /* (301) cmd ::= ALTER TABLE ids cpxName DROP TAG ids */
-9, /* (302) cmd ::= ALTER TABLE ids cpxName SET TAG ids EQ tagitem */ -8, /* (302) cmd ::= ALTER TABLE ids cpxName CHANGE TAG ids ids */
-7, /* (303) cmd ::= ALTER TABLE ids cpxName MODIFY TAG columnlist */ -9, /* (303) cmd ::= ALTER TABLE ids cpxName SET TAG ids EQ tagitem */
-7, /* (304) cmd ::= ALTER STABLE ids cpxName ADD COLUMN columnlist */ -7, /* (304) cmd ::= ALTER TABLE ids cpxName MODIFY TAG columnlist */
-7, /* (305) cmd ::= ALTER STABLE ids cpxName DROP COLUMN ids */ -7, /* (305) cmd ::= ALTER STABLE ids cpxName ADD COLUMN columnlist */
-7, /* (306) cmd ::= ALTER STABLE ids cpxName MODIFY COLUMN columnlist */ -7, /* (306) cmd ::= ALTER STABLE ids cpxName DROP COLUMN ids */
-7, /* (307) cmd ::= ALTER STABLE ids cpxName ADD TAG columnlist */ -7, /* (307) cmd ::= ALTER STABLE ids cpxName MODIFY COLUMN columnlist */
-7, /* (308) cmd ::= ALTER STABLE ids cpxName DROP TAG ids */ -7, /* (308) cmd ::= ALTER STABLE ids cpxName ADD TAG columnlist */
-8, /* (309) cmd ::= ALTER STABLE ids cpxName CHANGE TAG ids ids */ -7, /* (309) cmd ::= ALTER STABLE ids cpxName DROP TAG ids */
-9, /* (310) cmd ::= ALTER STABLE ids cpxName SET TAG ids EQ tagitem */ -8, /* (310) cmd ::= ALTER STABLE ids cpxName CHANGE TAG ids ids */
-7, /* (311) cmd ::= ALTER STABLE ids cpxName MODIFY TAG columnlist */ -9, /* (311) cmd ::= ALTER STABLE ids cpxName SET TAG ids EQ tagitem */
-3, /* (312) cmd ::= KILL CONNECTION INTEGER */ -7, /* (312) cmd ::= ALTER STABLE ids cpxName MODIFY TAG columnlist */
-5, /* (313) cmd ::= KILL STREAM INTEGER COLON INTEGER */ -3, /* (313) cmd ::= KILL CONNECTION INTEGER */
-5, /* (314) cmd ::= KILL QUERY INTEGER COLON INTEGER */ -5, /* (314) cmd ::= KILL STREAM INTEGER COLON INTEGER */
-5, /* (315) cmd ::= KILL QUERY INTEGER COLON INTEGER */
}; };
static void yy_accept(yyParser*); /* Forward Declaration */ static void yy_accept(yyParser*); /* Forward Declaration */
...@@ -2765,6 +2572,54 @@ static YYACTIONTYPE yy_reduce( ...@@ -2765,6 +2572,54 @@ static YYACTIONTYPE yy_reduce(
(void)yyLookahead; (void)yyLookahead;
(void)yyLookaheadToken; (void)yyLookaheadToken;
yymsp = yypParser->yytos; yymsp = yypParser->yytos;
#ifndef NDEBUG
if( yyTraceFILE && yyruleno<(int)(sizeof(yyRuleName)/sizeof(yyRuleName[0])) ){
yysize = yyRuleInfoNRhs[yyruleno];
if( yysize ){
fprintf(yyTraceFILE, "%sReduce %d [%s]%s, pop back to state %d.\n",
yyTracePrompt,
yyruleno, yyRuleName[yyruleno],
yyruleno<YYNRULE_WITH_ACTION ? "" : " without external action",
yymsp[yysize].stateno);
}else{
fprintf(yyTraceFILE, "%sReduce %d [%s]%s.\n",
yyTracePrompt, yyruleno, yyRuleName[yyruleno],
yyruleno<YYNRULE_WITH_ACTION ? "" : " without external action");
}
}
#endif /* NDEBUG */
/* 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( yyRuleInfoNRhs[yyruleno]==0 ){
#ifdef YYTRACKMAXSTACKDEPTH
if( (int)(yypParser->yytos - yypParser->yystack)>yypParser->yyhwm ){
yypParser->yyhwm++;
assert( yypParser->yyhwm == (int)(yypParser->yytos - yypParser->yystack));
}
#endif
#if YYSTACKDEPTH>0
if( yypParser->yytos>=yypParser->yystackEnd ){
yyStackOverflow(yypParser);
/* 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);
/* 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;
}
#endif
}
switch( yyruleno ){ switch( yyruleno ){
/* Beginning here are the reduction cases. A typical example /* Beginning here are the reduction cases. A typical example
...@@ -2950,16 +2805,16 @@ static YYACTIONTYPE yy_reduce( ...@@ -2950,16 +2805,16 @@ static YYACTIONTYPE yy_reduce(
break; break;
case 46: /* cmd ::= ALTER DATABASE ids alter_db_optr */ case 46: /* cmd ::= ALTER DATABASE ids alter_db_optr */
case 47: /* cmd ::= ALTER TOPIC ids alter_topic_optr */ yytestcase(yyruleno==47); case 47: /* cmd ::= ALTER TOPIC ids alter_topic_optr */ yytestcase(yyruleno==47);
{ SStrToken t = {0}; setCreateDbInfo(pInfo, TSDB_SQL_ALTER_DB, &yymsp[-1].minor.yy0, &yymsp[0].minor.yy470, &t);} { SStrToken t = {0}; setCreateDbInfo(pInfo, TSDB_SQL_ALTER_DB, &yymsp[-1].minor.yy0, &yymsp[0].minor.yy532, &t);}
break; break;
case 48: /* cmd ::= ALTER ACCOUNT ids acct_optr */ case 48: /* cmd ::= ALTER ACCOUNT ids acct_optr */
{ setCreateAcctSql(pInfo, TSDB_SQL_ALTER_ACCT, &yymsp[-1].minor.yy0, NULL, &yymsp[0].minor.yy51);} { setCreateAcctSql(pInfo, TSDB_SQL_ALTER_ACCT, &yymsp[-1].minor.yy0, NULL, &yymsp[0].minor.yy31);}
break; break;
case 49: /* cmd ::= ALTER ACCOUNT ids PASS ids acct_optr */ case 49: /* cmd ::= ALTER ACCOUNT ids PASS ids acct_optr */
{ setCreateAcctSql(pInfo, TSDB_SQL_ALTER_ACCT, &yymsp[-3].minor.yy0, &yymsp[-1].minor.yy0, &yymsp[0].minor.yy51);} { setCreateAcctSql(pInfo, TSDB_SQL_ALTER_ACCT, &yymsp[-3].minor.yy0, &yymsp[-1].minor.yy0, &yymsp[0].minor.yy31);}
break; break;
case 50: /* cmd ::= COMPACT VNODES IN LP exprlist RP */ case 50: /* cmd ::= COMPACT VNODES IN LP exprlist RP */
{ setCompactVnodeSql(pInfo, TSDB_SQL_COMPACT_VNODE, yymsp[-1].minor.yy189);} { setCompactVnodeSql(pInfo, TSDB_SQL_COMPACT_VNODE, yymsp[-1].minor.yy231);}
break; break;
case 51: /* ids ::= ID */ case 51: /* ids ::= ID */
case 52: /* ids ::= STRING */ yytestcase(yyruleno==52); case 52: /* ids ::= STRING */ yytestcase(yyruleno==52);
...@@ -2981,17 +2836,17 @@ static YYACTIONTYPE yy_reduce( ...@@ -2981,17 +2836,17 @@ static YYACTIONTYPE yy_reduce(
{ setDCLSqlElems(pInfo, TSDB_SQL_CREATE_DNODE, 1, &yymsp[0].minor.yy0);} { setDCLSqlElems(pInfo, TSDB_SQL_CREATE_DNODE, 1, &yymsp[0].minor.yy0);}
break; break;
case 58: /* cmd ::= CREATE ACCOUNT ids PASS ids acct_optr */ case 58: /* cmd ::= CREATE ACCOUNT ids PASS ids acct_optr */
{ setCreateAcctSql(pInfo, TSDB_SQL_CREATE_ACCT, &yymsp[-3].minor.yy0, &yymsp[-1].minor.yy0, &yymsp[0].minor.yy51);} { setCreateAcctSql(pInfo, TSDB_SQL_CREATE_ACCT, &yymsp[-3].minor.yy0, &yymsp[-1].minor.yy0, &yymsp[0].minor.yy31);}
break; break;
case 59: /* cmd ::= CREATE DATABASE ifnotexists ids db_optr */ case 59: /* cmd ::= CREATE DATABASE ifnotexists ids db_optr */
case 60: /* cmd ::= CREATE TOPIC ifnotexists ids topic_optr */ yytestcase(yyruleno==60); case 60: /* cmd ::= CREATE TOPIC ifnotexists ids topic_optr */ yytestcase(yyruleno==60);
{ setCreateDbInfo(pInfo, TSDB_SQL_CREATE_DB, &yymsp[-1].minor.yy0, &yymsp[0].minor.yy470, &yymsp[-2].minor.yy0);} { setCreateDbInfo(pInfo, TSDB_SQL_CREATE_DB, &yymsp[-1].minor.yy0, &yymsp[0].minor.yy532, &yymsp[-2].minor.yy0);}
break; break;
case 61: /* cmd ::= CREATE FUNCTION ids AS ids OUTPUTTYPE typename bufsize */ case 61: /* cmd ::= CREATE FUNCTION ids AS ids OUTPUTTYPE typename bufsize */
{ setCreateFuncInfo(pInfo, TSDB_SQL_CREATE_FUNCTION, &yymsp[-5].minor.yy0, &yymsp[-3].minor.yy0, &yymsp[-1].minor.yy279, &yymsp[0].minor.yy0, 1);} { setCreateFuncInfo(pInfo, TSDB_SQL_CREATE_FUNCTION, &yymsp[-5].minor.yy0, &yymsp[-3].minor.yy0, &yymsp[-1].minor.yy103, &yymsp[0].minor.yy0, 1);}
break; break;
case 62: /* cmd ::= CREATE AGGREGATE FUNCTION ids AS ids OUTPUTTYPE typename bufsize */ case 62: /* cmd ::= CREATE AGGREGATE FUNCTION ids AS ids OUTPUTTYPE typename bufsize */
{ setCreateFuncInfo(pInfo, TSDB_SQL_CREATE_FUNCTION, &yymsp[-5].minor.yy0, &yymsp[-3].minor.yy0, &yymsp[-1].minor.yy279, &yymsp[0].minor.yy0, 2);} { setCreateFuncInfo(pInfo, TSDB_SQL_CREATE_FUNCTION, &yymsp[-5].minor.yy0, &yymsp[-3].minor.yy0, &yymsp[-1].minor.yy103, &yymsp[0].minor.yy0, 2);}
break; break;
case 63: /* cmd ::= CREATE USER ids PASS ids */ case 63: /* cmd ::= CREATE USER ids PASS ids */
{ setCreateUserSql(pInfo, &yymsp[-2].minor.yy0, &yymsp[0].minor.yy0);} { setCreateUserSql(pInfo, &yymsp[-2].minor.yy0, &yymsp[0].minor.yy0);}
...@@ -3022,38 +2877,38 @@ static YYACTIONTYPE yy_reduce( ...@@ -3022,38 +2877,38 @@ static YYACTIONTYPE yy_reduce(
break; break;
case 84: /* acct_optr ::= pps tseries storage streams qtime dbs users conns state */ case 84: /* acct_optr ::= pps tseries storage streams qtime dbs users conns state */
{ {
yylhsminor.yy51.maxUsers = (yymsp[-2].minor.yy0.n>0)?atoi(yymsp[-2].minor.yy0.z):-1; yylhsminor.yy31.maxUsers = (yymsp[-2].minor.yy0.n>0)?atoi(yymsp[-2].minor.yy0.z):-1;
yylhsminor.yy51.maxDbs = (yymsp[-3].minor.yy0.n>0)?atoi(yymsp[-3].minor.yy0.z):-1; yylhsminor.yy31.maxDbs = (yymsp[-3].minor.yy0.n>0)?atoi(yymsp[-3].minor.yy0.z):-1;
yylhsminor.yy51.maxTimeSeries = (yymsp[-7].minor.yy0.n>0)?atoi(yymsp[-7].minor.yy0.z):-1; yylhsminor.yy31.maxTimeSeries = (yymsp[-7].minor.yy0.n>0)?atoi(yymsp[-7].minor.yy0.z):-1;
yylhsminor.yy51.maxStreams = (yymsp[-5].minor.yy0.n>0)?atoi(yymsp[-5].minor.yy0.z):-1; yylhsminor.yy31.maxStreams = (yymsp[-5].minor.yy0.n>0)?atoi(yymsp[-5].minor.yy0.z):-1;
yylhsminor.yy51.maxPointsPerSecond = (yymsp[-8].minor.yy0.n>0)?atoi(yymsp[-8].minor.yy0.z):-1; yylhsminor.yy31.maxPointsPerSecond = (yymsp[-8].minor.yy0.n>0)?atoi(yymsp[-8].minor.yy0.z):-1;
yylhsminor.yy51.maxStorage = (yymsp[-6].minor.yy0.n>0)?strtoll(yymsp[-6].minor.yy0.z, NULL, 10):-1; yylhsminor.yy31.maxStorage = (yymsp[-6].minor.yy0.n>0)?strtoll(yymsp[-6].minor.yy0.z, NULL, 10):-1;
yylhsminor.yy51.maxQueryTime = (yymsp[-4].minor.yy0.n>0)?strtoll(yymsp[-4].minor.yy0.z, NULL, 10):-1; yylhsminor.yy31.maxQueryTime = (yymsp[-4].minor.yy0.n>0)?strtoll(yymsp[-4].minor.yy0.z, NULL, 10):-1;
yylhsminor.yy51.maxConnections = (yymsp[-1].minor.yy0.n>0)?atoi(yymsp[-1].minor.yy0.z):-1; yylhsminor.yy31.maxConnections = (yymsp[-1].minor.yy0.n>0)?atoi(yymsp[-1].minor.yy0.z):-1;
yylhsminor.yy51.stat = yymsp[0].minor.yy0; yylhsminor.yy31.stat = yymsp[0].minor.yy0;
} }
yymsp[-8].minor.yy51 = yylhsminor.yy51; yymsp[-8].minor.yy31 = yylhsminor.yy31;
break; break;
case 85: /* intitemlist ::= intitemlist COMMA intitem */ case 85: /* intitemlist ::= intitemlist COMMA intitem */
case 154: /* tagitemlist ::= tagitemlist COMMA tagitem */ yytestcase(yyruleno==154); case 154: /* tagitemlist ::= tagitemlist COMMA tagitem */ yytestcase(yyruleno==154);
{ yylhsminor.yy189 = tVariantListAppend(yymsp[-2].minor.yy189, &yymsp[0].minor.yy162, -1); } { yylhsminor.yy231 = tVariantListAppend(yymsp[-2].minor.yy231, &yymsp[0].minor.yy176, -1); }
yymsp[-2].minor.yy189 = yylhsminor.yy189; yymsp[-2].minor.yy231 = yylhsminor.yy231;
break; break;
case 86: /* intitemlist ::= intitem */ case 86: /* intitemlist ::= intitem */
case 155: /* tagitemlist ::= tagitem */ yytestcase(yyruleno==155); case 155: /* tagitemlist ::= tagitem */ yytestcase(yyruleno==155);
{ yylhsminor.yy189 = tVariantListAppend(NULL, &yymsp[0].minor.yy162, -1); } { yylhsminor.yy231 = tVariantListAppend(NULL, &yymsp[0].minor.yy176, -1); }
yymsp[0].minor.yy189 = yylhsminor.yy189; yymsp[0].minor.yy231 = yylhsminor.yy231;
break; break;
case 87: /* intitem ::= INTEGER */ case 87: /* intitem ::= INTEGER */
case 156: /* tagitem ::= INTEGER */ yytestcase(yyruleno==156); case 156: /* tagitem ::= INTEGER */ yytestcase(yyruleno==156);
case 157: /* tagitem ::= FLOAT */ yytestcase(yyruleno==157); case 157: /* tagitem ::= FLOAT */ yytestcase(yyruleno==157);
case 158: /* tagitem ::= STRING */ yytestcase(yyruleno==158); case 158: /* tagitem ::= STRING */ yytestcase(yyruleno==158);
case 159: /* tagitem ::= BOOL */ yytestcase(yyruleno==159); case 159: /* tagitem ::= BOOL */ yytestcase(yyruleno==159);
{ toTSDBType(yymsp[0].minor.yy0.type); tVariantCreate(&yylhsminor.yy162, &yymsp[0].minor.yy0); } { toTSDBType(yymsp[0].minor.yy0.type); tVariantCreate(&yylhsminor.yy176, &yymsp[0].minor.yy0); }
yymsp[0].minor.yy162 = yylhsminor.yy162; yymsp[0].minor.yy176 = yylhsminor.yy176;
break; break;
case 88: /* keep ::= KEEP intitemlist */ case 88: /* keep ::= KEEP intitemlist */
{ yymsp[-1].minor.yy189 = yymsp[0].minor.yy189; } { yymsp[-1].minor.yy231 = yymsp[0].minor.yy231; }
break; break;
case 89: /* cache ::= CACHE INTEGER */ case 89: /* cache ::= CACHE INTEGER */
case 90: /* replica ::= REPLICA INTEGER */ yytestcase(yyruleno==90); case 90: /* replica ::= REPLICA INTEGER */ yytestcase(yyruleno==90);
...@@ -3073,232 +2928,232 @@ static YYACTIONTYPE yy_reduce( ...@@ -3073,232 +2928,232 @@ static YYACTIONTYPE yy_reduce(
{ yymsp[-1].minor.yy0 = yymsp[0].minor.yy0; } { yymsp[-1].minor.yy0 = yymsp[0].minor.yy0; }
break; break;
case 104: /* db_optr ::= */ case 104: /* db_optr ::= */
{setDefaultCreateDbOption(&yymsp[1].minor.yy470); yymsp[1].minor.yy470.dbType = TSDB_DB_TYPE_DEFAULT;} {setDefaultCreateDbOption(&yymsp[1].minor.yy532); yymsp[1].minor.yy532.dbType = TSDB_DB_TYPE_DEFAULT;}
break; break;
case 105: /* db_optr ::= db_optr cache */ case 105: /* db_optr ::= db_optr cache */
{ yylhsminor.yy470 = yymsp[-1].minor.yy470; yylhsminor.yy470.cacheBlockSize = strtol(yymsp[0].minor.yy0.z, NULL, 10); } { yylhsminor.yy532 = yymsp[-1].minor.yy532; yylhsminor.yy532.cacheBlockSize = strtol(yymsp[0].minor.yy0.z, NULL, 10); }
yymsp[-1].minor.yy470 = yylhsminor.yy470; yymsp[-1].minor.yy532 = yylhsminor.yy532;
break; break;
case 106: /* db_optr ::= db_optr replica */ case 106: /* db_optr ::= db_optr replica */
case 123: /* alter_db_optr ::= alter_db_optr replica */ yytestcase(yyruleno==123); case 123: /* alter_db_optr ::= alter_db_optr replica */ yytestcase(yyruleno==123);
{ yylhsminor.yy470 = yymsp[-1].minor.yy470; yylhsminor.yy470.replica = strtol(yymsp[0].minor.yy0.z, NULL, 10); } { yylhsminor.yy532 = yymsp[-1].minor.yy532; yylhsminor.yy532.replica = strtol(yymsp[0].minor.yy0.z, NULL, 10); }
yymsp[-1].minor.yy470 = yylhsminor.yy470; yymsp[-1].minor.yy532 = yylhsminor.yy532;
break; break;
case 107: /* db_optr ::= db_optr quorum */ case 107: /* db_optr ::= db_optr quorum */
case 124: /* alter_db_optr ::= alter_db_optr quorum */ yytestcase(yyruleno==124); case 124: /* alter_db_optr ::= alter_db_optr quorum */ yytestcase(yyruleno==124);
{ yylhsminor.yy470 = yymsp[-1].minor.yy470; yylhsminor.yy470.quorum = strtol(yymsp[0].minor.yy0.z, NULL, 10); } { yylhsminor.yy532 = yymsp[-1].minor.yy532; yylhsminor.yy532.quorum = strtol(yymsp[0].minor.yy0.z, NULL, 10); }
yymsp[-1].minor.yy470 = yylhsminor.yy470; yymsp[-1].minor.yy532 = yylhsminor.yy532;
break; break;
case 108: /* db_optr ::= db_optr days */ case 108: /* db_optr ::= db_optr days */
{ yylhsminor.yy470 = yymsp[-1].minor.yy470; yylhsminor.yy470.daysPerFile = strtol(yymsp[0].minor.yy0.z, NULL, 10); } { yylhsminor.yy532 = yymsp[-1].minor.yy532; yylhsminor.yy532.daysPerFile = strtol(yymsp[0].minor.yy0.z, NULL, 10); }
yymsp[-1].minor.yy470 = yylhsminor.yy470; yymsp[-1].minor.yy532 = yylhsminor.yy532;
break; break;
case 109: /* db_optr ::= db_optr minrows */ case 109: /* db_optr ::= db_optr minrows */
{ yylhsminor.yy470 = yymsp[-1].minor.yy470; yylhsminor.yy470.minRowsPerBlock = strtod(yymsp[0].minor.yy0.z, NULL); } { yylhsminor.yy532 = yymsp[-1].minor.yy532; yylhsminor.yy532.minRowsPerBlock = strtod(yymsp[0].minor.yy0.z, NULL); }
yymsp[-1].minor.yy470 = yylhsminor.yy470; yymsp[-1].minor.yy532 = yylhsminor.yy532;
break; break;
case 110: /* db_optr ::= db_optr maxrows */ case 110: /* db_optr ::= db_optr maxrows */
{ yylhsminor.yy470 = yymsp[-1].minor.yy470; yylhsminor.yy470.maxRowsPerBlock = strtod(yymsp[0].minor.yy0.z, NULL); } { yylhsminor.yy532 = yymsp[-1].minor.yy532; yylhsminor.yy532.maxRowsPerBlock = strtod(yymsp[0].minor.yy0.z, NULL); }
yymsp[-1].minor.yy470 = yylhsminor.yy470; yymsp[-1].minor.yy532 = yylhsminor.yy532;
break; break;
case 111: /* db_optr ::= db_optr blocks */ case 111: /* db_optr ::= db_optr blocks */
case 126: /* alter_db_optr ::= alter_db_optr blocks */ yytestcase(yyruleno==126); case 126: /* alter_db_optr ::= alter_db_optr blocks */ yytestcase(yyruleno==126);
{ yylhsminor.yy470 = yymsp[-1].minor.yy470; yylhsminor.yy470.numOfBlocks = strtol(yymsp[0].minor.yy0.z, NULL, 10); } { yylhsminor.yy532 = yymsp[-1].minor.yy532; yylhsminor.yy532.numOfBlocks = strtol(yymsp[0].minor.yy0.z, NULL, 10); }
yymsp[-1].minor.yy470 = yylhsminor.yy470; yymsp[-1].minor.yy532 = yylhsminor.yy532;
break; break;
case 112: /* db_optr ::= db_optr ctime */ case 112: /* db_optr ::= db_optr ctime */
{ yylhsminor.yy470 = yymsp[-1].minor.yy470; yylhsminor.yy470.commitTime = strtol(yymsp[0].minor.yy0.z, NULL, 10); } { yylhsminor.yy532 = yymsp[-1].minor.yy532; yylhsminor.yy532.commitTime = strtol(yymsp[0].minor.yy0.z, NULL, 10); }
yymsp[-1].minor.yy470 = yylhsminor.yy470; yymsp[-1].minor.yy532 = yylhsminor.yy532;
break; break;
case 113: /* db_optr ::= db_optr wal */ case 113: /* db_optr ::= db_optr wal */
{ yylhsminor.yy470 = yymsp[-1].minor.yy470; yylhsminor.yy470.walLevel = strtol(yymsp[0].minor.yy0.z, NULL, 10); } { yylhsminor.yy532 = yymsp[-1].minor.yy532; yylhsminor.yy532.walLevel = strtol(yymsp[0].minor.yy0.z, NULL, 10); }
yymsp[-1].minor.yy470 = yylhsminor.yy470; yymsp[-1].minor.yy532 = yylhsminor.yy532;
break; break;
case 114: /* db_optr ::= db_optr fsync */ case 114: /* db_optr ::= db_optr fsync */
{ yylhsminor.yy470 = yymsp[-1].minor.yy470; yylhsminor.yy470.fsyncPeriod = strtol(yymsp[0].minor.yy0.z, NULL, 10); } { yylhsminor.yy532 = yymsp[-1].minor.yy532; yylhsminor.yy532.fsyncPeriod = strtol(yymsp[0].minor.yy0.z, NULL, 10); }
yymsp[-1].minor.yy470 = yylhsminor.yy470; yymsp[-1].minor.yy532 = yylhsminor.yy532;
break; break;
case 115: /* db_optr ::= db_optr comp */ case 115: /* db_optr ::= db_optr comp */
case 127: /* alter_db_optr ::= alter_db_optr comp */ yytestcase(yyruleno==127); case 127: /* alter_db_optr ::= alter_db_optr comp */ yytestcase(yyruleno==127);
{ yylhsminor.yy470 = yymsp[-1].minor.yy470; yylhsminor.yy470.compressionLevel = strtol(yymsp[0].minor.yy0.z, NULL, 10); } { yylhsminor.yy532 = yymsp[-1].minor.yy532; yylhsminor.yy532.compressionLevel = strtol(yymsp[0].minor.yy0.z, NULL, 10); }
yymsp[-1].minor.yy470 = yylhsminor.yy470; yymsp[-1].minor.yy532 = yylhsminor.yy532;
break; break;
case 116: /* db_optr ::= db_optr prec */ case 116: /* db_optr ::= db_optr prec */
{ yylhsminor.yy470 = yymsp[-1].minor.yy470; yylhsminor.yy470.precision = yymsp[0].minor.yy0; } { yylhsminor.yy532 = yymsp[-1].minor.yy532; yylhsminor.yy532.precision = yymsp[0].minor.yy0; }
yymsp[-1].minor.yy470 = yylhsminor.yy470; yymsp[-1].minor.yy532 = yylhsminor.yy532;
break; break;
case 117: /* db_optr ::= db_optr keep */ case 117: /* db_optr ::= db_optr keep */
case 125: /* alter_db_optr ::= alter_db_optr keep */ yytestcase(yyruleno==125); case 125: /* alter_db_optr ::= alter_db_optr keep */ yytestcase(yyruleno==125);
{ yylhsminor.yy470 = yymsp[-1].minor.yy470; yylhsminor.yy470.keep = yymsp[0].minor.yy189; } { yylhsminor.yy532 = yymsp[-1].minor.yy532; yylhsminor.yy532.keep = yymsp[0].minor.yy231; }
yymsp[-1].minor.yy470 = yylhsminor.yy470; yymsp[-1].minor.yy532 = yylhsminor.yy532;
break; break;
case 118: /* db_optr ::= db_optr update */ case 118: /* db_optr ::= db_optr update */
case 128: /* alter_db_optr ::= alter_db_optr update */ yytestcase(yyruleno==128); case 128: /* alter_db_optr ::= alter_db_optr update */ yytestcase(yyruleno==128);
{ yylhsminor.yy470 = yymsp[-1].minor.yy470; yylhsminor.yy470.update = strtol(yymsp[0].minor.yy0.z, NULL, 10); } { yylhsminor.yy532 = yymsp[-1].minor.yy532; yylhsminor.yy532.update = strtol(yymsp[0].minor.yy0.z, NULL, 10); }
yymsp[-1].minor.yy470 = yylhsminor.yy470; yymsp[-1].minor.yy532 = yylhsminor.yy532;
break; break;
case 119: /* db_optr ::= db_optr cachelast */ case 119: /* db_optr ::= db_optr cachelast */
case 129: /* alter_db_optr ::= alter_db_optr cachelast */ yytestcase(yyruleno==129); case 129: /* alter_db_optr ::= alter_db_optr cachelast */ yytestcase(yyruleno==129);
{ yylhsminor.yy470 = yymsp[-1].minor.yy470; yylhsminor.yy470.cachelast = strtol(yymsp[0].minor.yy0.z, NULL, 10); } { yylhsminor.yy532 = yymsp[-1].minor.yy532; yylhsminor.yy532.cachelast = strtol(yymsp[0].minor.yy0.z, NULL, 10); }
yymsp[-1].minor.yy470 = yylhsminor.yy470; yymsp[-1].minor.yy532 = yylhsminor.yy532;
break; break;
case 120: /* topic_optr ::= db_optr */ case 120: /* topic_optr ::= db_optr */
case 130: /* alter_topic_optr ::= alter_db_optr */ yytestcase(yyruleno==130); case 130: /* alter_topic_optr ::= alter_db_optr */ yytestcase(yyruleno==130);
{ yylhsminor.yy470 = yymsp[0].minor.yy470; yylhsminor.yy470.dbType = TSDB_DB_TYPE_TOPIC; } { yylhsminor.yy532 = yymsp[0].minor.yy532; yylhsminor.yy532.dbType = TSDB_DB_TYPE_TOPIC; }
yymsp[0].minor.yy470 = yylhsminor.yy470; yymsp[0].minor.yy532 = yylhsminor.yy532;
break; break;
case 121: /* topic_optr ::= topic_optr partitions */ case 121: /* topic_optr ::= topic_optr partitions */
case 131: /* alter_topic_optr ::= alter_topic_optr partitions */ yytestcase(yyruleno==131); case 131: /* alter_topic_optr ::= alter_topic_optr partitions */ yytestcase(yyruleno==131);
{ yylhsminor.yy470 = yymsp[-1].minor.yy470; yylhsminor.yy470.partitions = strtol(yymsp[0].minor.yy0.z, NULL, 10); } { yylhsminor.yy532 = yymsp[-1].minor.yy532; yylhsminor.yy532.partitions = strtol(yymsp[0].minor.yy0.z, NULL, 10); }
yymsp[-1].minor.yy470 = yylhsminor.yy470; yymsp[-1].minor.yy532 = yylhsminor.yy532;
break; break;
case 122: /* alter_db_optr ::= */ case 122: /* alter_db_optr ::= */
{ setDefaultCreateDbOption(&yymsp[1].minor.yy470); yymsp[1].minor.yy470.dbType = TSDB_DB_TYPE_DEFAULT;} { setDefaultCreateDbOption(&yymsp[1].minor.yy532); yymsp[1].minor.yy532.dbType = TSDB_DB_TYPE_DEFAULT;}
break; break;
case 132: /* typename ::= ids */ case 132: /* typename ::= ids */
{ {
yymsp[0].minor.yy0.type = 0; yymsp[0].minor.yy0.type = 0;
tSetColumnType (&yylhsminor.yy279, &yymsp[0].minor.yy0); tSetColumnType (&yylhsminor.yy103, &yymsp[0].minor.yy0);
} }
yymsp[0].minor.yy279 = yylhsminor.yy279; yymsp[0].minor.yy103 = yylhsminor.yy103;
break; break;
case 133: /* typename ::= ids LP signed RP */ case 133: /* typename ::= ids LP signed RP */
{ {
if (yymsp[-1].minor.yy69 <= 0) { if (yymsp[-1].minor.yy549 <= 0) {
yymsp[-3].minor.yy0.type = 0; yymsp[-3].minor.yy0.type = 0;
tSetColumnType(&yylhsminor.yy279, &yymsp[-3].minor.yy0); tSetColumnType(&yylhsminor.yy103, &yymsp[-3].minor.yy0);
} else { } else {
yymsp[-3].minor.yy0.type = -yymsp[-1].minor.yy69; // negative value of name length yymsp[-3].minor.yy0.type = -yymsp[-1].minor.yy549; // negative value of name length
tSetColumnType(&yylhsminor.yy279, &yymsp[-3].minor.yy0); tSetColumnType(&yylhsminor.yy103, &yymsp[-3].minor.yy0);
} }
} }
yymsp[-3].minor.yy279 = yylhsminor.yy279; yymsp[-3].minor.yy103 = yylhsminor.yy103;
break; break;
case 134: /* typename ::= ids UNSIGNED */ case 134: /* typename ::= ids UNSIGNED */
{ {
yymsp[-1].minor.yy0.type = 0; yymsp[-1].minor.yy0.type = 0;
yymsp[-1].minor.yy0.n = ((yymsp[0].minor.yy0.z + yymsp[0].minor.yy0.n) - yymsp[-1].minor.yy0.z); yymsp[-1].minor.yy0.n = ((yymsp[0].minor.yy0.z + yymsp[0].minor.yy0.n) - yymsp[-1].minor.yy0.z);
tSetColumnType (&yylhsminor.yy279, &yymsp[-1].minor.yy0); tSetColumnType (&yylhsminor.yy103, &yymsp[-1].minor.yy0);
} }
yymsp[-1].minor.yy279 = yylhsminor.yy279; yymsp[-1].minor.yy103 = yylhsminor.yy103;
break; break;
case 135: /* signed ::= INTEGER */ case 135: /* signed ::= INTEGER */
{ yylhsminor.yy69 = strtol(yymsp[0].minor.yy0.z, NULL, 10); } { yylhsminor.yy549 = strtol(yymsp[0].minor.yy0.z, NULL, 10); }
yymsp[0].minor.yy69 = yylhsminor.yy69; yymsp[0].minor.yy549 = yylhsminor.yy549;
break; break;
case 136: /* signed ::= PLUS INTEGER */ case 136: /* signed ::= PLUS INTEGER */
{ yymsp[-1].minor.yy69 = strtol(yymsp[0].minor.yy0.z, NULL, 10); } { yymsp[-1].minor.yy549 = strtol(yymsp[0].minor.yy0.z, NULL, 10); }
break; break;
case 137: /* signed ::= MINUS INTEGER */ case 137: /* signed ::= MINUS INTEGER */
{ yymsp[-1].minor.yy69 = -strtol(yymsp[0].minor.yy0.z, NULL, 10);} { yymsp[-1].minor.yy549 = -strtol(yymsp[0].minor.yy0.z, NULL, 10);}
break; break;
case 141: /* cmd ::= CREATE TABLE create_table_list */ case 141: /* cmd ::= CREATE TABLE create_table_list */
{ pInfo->type = TSDB_SQL_CREATE_TABLE; pInfo->pCreateTableInfo = yymsp[0].minor.yy6;} { pInfo->type = TSDB_SQL_CREATE_TABLE; pInfo->pCreateTableInfo = yymsp[0].minor.yy422;}
break; break;
case 142: /* create_table_list ::= create_from_stable */ case 142: /* create_table_list ::= create_from_stable */
{ {
SCreateTableSql* pCreateTable = calloc(1, sizeof(SCreateTableSql)); SCreateTableSql* pCreateTable = calloc(1, sizeof(SCreateTableSql));
pCreateTable->childTableInfo = taosArrayInit(4, sizeof(SCreatedTableInfo)); pCreateTable->childTableInfo = taosArrayInit(4, sizeof(SCreatedTableInfo));
taosArrayPush(pCreateTable->childTableInfo, &yymsp[0].minor.yy208); taosArrayPush(pCreateTable->childTableInfo, &yymsp[0].minor.yy306);
pCreateTable->type = TSQL_CREATE_TABLE_FROM_STABLE; pCreateTable->type = TSQL_CREATE_TABLE_FROM_STABLE;
yylhsminor.yy6 = pCreateTable; yylhsminor.yy422 = pCreateTable;
} }
yymsp[0].minor.yy6 = yylhsminor.yy6; yymsp[0].minor.yy422 = yylhsminor.yy422;
break; break;
case 143: /* create_table_list ::= create_table_list create_from_stable */ case 143: /* create_table_list ::= create_table_list create_from_stable */
{ {
taosArrayPush(yymsp[-1].minor.yy6->childTableInfo, &yymsp[0].minor.yy208); taosArrayPush(yymsp[-1].minor.yy422->childTableInfo, &yymsp[0].minor.yy306);
yylhsminor.yy6 = yymsp[-1].minor.yy6; yylhsminor.yy422 = yymsp[-1].minor.yy422;
} }
yymsp[-1].minor.yy6 = yylhsminor.yy6; yymsp[-1].minor.yy422 = yylhsminor.yy422;
break; break;
case 144: /* create_table_args ::= ifnotexists ids cpxName LP columnlist RP */ case 144: /* create_table_args ::= ifnotexists ids cpxName LP columnlist RP */
{ {
yylhsminor.yy6 = tSetCreateTableInfo(yymsp[-1].minor.yy189, NULL, NULL, TSQL_CREATE_TABLE); yylhsminor.yy422 = tSetCreateTableInfo(yymsp[-1].minor.yy231, NULL, NULL, TSQL_CREATE_TABLE);
setSqlInfo(pInfo, yylhsminor.yy6, NULL, TSDB_SQL_CREATE_TABLE); setSqlInfo(pInfo, yylhsminor.yy422, NULL, TSDB_SQL_CREATE_TABLE);
yymsp[-4].minor.yy0.n += yymsp[-3].minor.yy0.n; yymsp[-4].minor.yy0.n += yymsp[-3].minor.yy0.n;
setCreatedTableName(pInfo, &yymsp[-4].minor.yy0, &yymsp[-5].minor.yy0); setCreatedTableName(pInfo, &yymsp[-4].minor.yy0, &yymsp[-5].minor.yy0);
} }
yymsp[-5].minor.yy6 = yylhsminor.yy6; yymsp[-5].minor.yy422 = yylhsminor.yy422;
break; break;
case 145: /* create_stable_args ::= ifnotexists ids cpxName LP columnlist RP TAGS LP columnlist RP */ case 145: /* create_stable_args ::= ifnotexists ids cpxName LP columnlist RP TAGS LP columnlist RP */
{ {
yylhsminor.yy6 = tSetCreateTableInfo(yymsp[-5].minor.yy189, yymsp[-1].minor.yy189, NULL, TSQL_CREATE_STABLE); yylhsminor.yy422 = tSetCreateTableInfo(yymsp[-5].minor.yy231, yymsp[-1].minor.yy231, NULL, TSQL_CREATE_STABLE);
setSqlInfo(pInfo, yylhsminor.yy6, NULL, TSDB_SQL_CREATE_TABLE); setSqlInfo(pInfo, yylhsminor.yy422, NULL, TSDB_SQL_CREATE_TABLE);
yymsp[-8].minor.yy0.n += yymsp[-7].minor.yy0.n; yymsp[-8].minor.yy0.n += yymsp[-7].minor.yy0.n;
setCreatedTableName(pInfo, &yymsp[-8].minor.yy0, &yymsp[-9].minor.yy0); setCreatedTableName(pInfo, &yymsp[-8].minor.yy0, &yymsp[-9].minor.yy0);
} }
yymsp[-9].minor.yy6 = yylhsminor.yy6; yymsp[-9].minor.yy422 = yylhsminor.yy422;
break; break;
case 146: /* create_from_stable ::= ifnotexists ids cpxName USING ids cpxName TAGS LP tagitemlist RP */ case 146: /* create_from_stable ::= ifnotexists ids cpxName USING ids cpxName TAGS LP tagitemlist RP */
{ {
yymsp[-5].minor.yy0.n += yymsp[-4].minor.yy0.n; yymsp[-5].minor.yy0.n += yymsp[-4].minor.yy0.n;
yymsp[-8].minor.yy0.n += yymsp[-7].minor.yy0.n; yymsp[-8].minor.yy0.n += yymsp[-7].minor.yy0.n;
yylhsminor.yy208 = createNewChildTableInfo(&yymsp[-5].minor.yy0, NULL, yymsp[-1].minor.yy189, &yymsp[-8].minor.yy0, &yymsp[-9].minor.yy0); yylhsminor.yy306 = createNewChildTableInfo(&yymsp[-5].minor.yy0, NULL, yymsp[-1].minor.yy231, &yymsp[-8].minor.yy0, &yymsp[-9].minor.yy0);
} }
yymsp[-9].minor.yy208 = yylhsminor.yy208; yymsp[-9].minor.yy306 = yylhsminor.yy306;
break; break;
case 147: /* create_from_stable ::= ifnotexists ids cpxName USING ids cpxName LP tagNamelist RP TAGS LP tagitemlist RP */ case 147: /* create_from_stable ::= ifnotexists ids cpxName USING ids cpxName LP tagNamelist RP TAGS LP tagitemlist RP */
{ {
yymsp[-8].minor.yy0.n += yymsp[-7].minor.yy0.n; yymsp[-8].minor.yy0.n += yymsp[-7].minor.yy0.n;
yymsp[-11].minor.yy0.n += yymsp[-10].minor.yy0.n; yymsp[-11].minor.yy0.n += yymsp[-10].minor.yy0.n;
yylhsminor.yy208 = createNewChildTableInfo(&yymsp[-8].minor.yy0, yymsp[-5].minor.yy189, yymsp[-1].minor.yy189, &yymsp[-11].minor.yy0, &yymsp[-12].minor.yy0); yylhsminor.yy306 = createNewChildTableInfo(&yymsp[-8].minor.yy0, yymsp[-5].minor.yy231, yymsp[-1].minor.yy231, &yymsp[-11].minor.yy0, &yymsp[-12].minor.yy0);
} }
yymsp[-12].minor.yy208 = yylhsminor.yy208; yymsp[-12].minor.yy306 = yylhsminor.yy306;
break; break;
case 148: /* tagNamelist ::= tagNamelist COMMA ids */ case 148: /* tagNamelist ::= tagNamelist COMMA ids */
{taosArrayPush(yymsp[-2].minor.yy189, &yymsp[0].minor.yy0); yylhsminor.yy189 = yymsp[-2].minor.yy189; } {taosArrayPush(yymsp[-2].minor.yy231, &yymsp[0].minor.yy0); yylhsminor.yy231 = yymsp[-2].minor.yy231; }
yymsp[-2].minor.yy189 = yylhsminor.yy189; yymsp[-2].minor.yy231 = yylhsminor.yy231;
break; break;
case 149: /* tagNamelist ::= ids */ case 149: /* tagNamelist ::= ids */
{yylhsminor.yy189 = taosArrayInit(4, sizeof(SStrToken)); taosArrayPush(yylhsminor.yy189, &yymsp[0].minor.yy0);} {yylhsminor.yy231 = taosArrayInit(4, sizeof(SStrToken)); taosArrayPush(yylhsminor.yy231, &yymsp[0].minor.yy0);}
yymsp[0].minor.yy189 = yylhsminor.yy189; yymsp[0].minor.yy231 = yylhsminor.yy231;
break; break;
case 150: /* create_table_args ::= ifnotexists ids cpxName AS select */ case 150: /* create_table_args ::= ifnotexists ids cpxName AS select */
{ {
yylhsminor.yy6 = tSetCreateTableInfo(NULL, NULL, yymsp[0].minor.yy16, TSQL_CREATE_STREAM); yylhsminor.yy422 = tSetCreateTableInfo(NULL, NULL, yymsp[0].minor.yy86, TSQL_CREATE_STREAM);
setSqlInfo(pInfo, yylhsminor.yy6, NULL, TSDB_SQL_CREATE_TABLE); setSqlInfo(pInfo, yylhsminor.yy422, NULL, TSDB_SQL_CREATE_TABLE);
yymsp[-3].minor.yy0.n += yymsp[-2].minor.yy0.n; yymsp[-3].minor.yy0.n += yymsp[-2].minor.yy0.n;
setCreatedTableName(pInfo, &yymsp[-3].minor.yy0, &yymsp[-4].minor.yy0); setCreatedTableName(pInfo, &yymsp[-3].minor.yy0, &yymsp[-4].minor.yy0);
} }
yymsp[-4].minor.yy6 = yylhsminor.yy6; yymsp[-4].minor.yy422 = yylhsminor.yy422;
break; break;
case 151: /* columnlist ::= columnlist COMMA column */ case 151: /* columnlist ::= columnlist COMMA column */
{taosArrayPush(yymsp[-2].minor.yy189, &yymsp[0].minor.yy279); yylhsminor.yy189 = yymsp[-2].minor.yy189; } {taosArrayPush(yymsp[-2].minor.yy231, &yymsp[0].minor.yy103); yylhsminor.yy231 = yymsp[-2].minor.yy231; }
yymsp[-2].minor.yy189 = yylhsminor.yy189; yymsp[-2].minor.yy231 = yylhsminor.yy231;
break; break;
case 152: /* columnlist ::= column */ case 152: /* columnlist ::= column */
{yylhsminor.yy189 = taosArrayInit(4, sizeof(TAOS_FIELD)); taosArrayPush(yylhsminor.yy189, &yymsp[0].minor.yy279);} {yylhsminor.yy231 = taosArrayInit(4, sizeof(TAOS_FIELD)); taosArrayPush(yylhsminor.yy231, &yymsp[0].minor.yy103);}
yymsp[0].minor.yy189 = yylhsminor.yy189; yymsp[0].minor.yy231 = yylhsminor.yy231;
break; break;
case 153: /* column ::= ids typename */ case 153: /* column ::= ids typename */
{ {
tSetColumnInfo(&yylhsminor.yy279, &yymsp[-1].minor.yy0, &yymsp[0].minor.yy279); tSetColumnInfo(&yylhsminor.yy103, &yymsp[-1].minor.yy0, &yymsp[0].minor.yy103);
} }
yymsp[-1].minor.yy279 = yylhsminor.yy279; yymsp[-1].minor.yy103 = yylhsminor.yy103;
break; break;
case 160: /* tagitem ::= NULL */ case 160: /* tagitem ::= NULL */
{ yymsp[0].minor.yy0.type = 0; tVariantCreate(&yylhsminor.yy162, &yymsp[0].minor.yy0); } { yymsp[0].minor.yy0.type = 0; tVariantCreate(&yylhsminor.yy176, &yymsp[0].minor.yy0); }
yymsp[0].minor.yy162 = yylhsminor.yy162; yymsp[0].minor.yy176 = yylhsminor.yy176;
break; break;
case 161: /* tagitem ::= NOW */ case 161: /* tagitem ::= NOW */
{ yymsp[0].minor.yy0.type = TSDB_DATA_TYPE_TIMESTAMP; tVariantCreateExt(&yylhsminor.yy162, &yymsp[0].minor.yy0, TK_NOW, true);} { yymsp[0].minor.yy0.type = TSDB_DATA_TYPE_TIMESTAMP; tVariantCreateExt(&yylhsminor.yy176, &yymsp[0].minor.yy0, TK_NOW, true);}
yymsp[0].minor.yy162 = yylhsminor.yy162; yymsp[0].minor.yy176 = yylhsminor.yy176;
break; break;
case 162: /* tagitem ::= NOW PLUS VARIABLE */ case 162: /* tagitem ::= NOW PLUS VARIABLE */
{ {
yymsp[0].minor.yy0.type = TSDB_DATA_TYPE_TIMESTAMP; yymsp[0].minor.yy0.type = TSDB_DATA_TYPE_TIMESTAMP;
tVariantCreateExt(&yymsp[-2].minor.yy162, &yymsp[0].minor.yy0, TK_PLUS, true); tVariantCreateExt(&yymsp[-2].minor.yy176, &yymsp[0].minor.yy0, TK_PLUS, true);
} }
break; break;
case 163: /* tagitem ::= NOW MINUS VARIABLE */ case 163: /* tagitem ::= NOW MINUS VARIABLE */
{ {
yymsp[0].minor.yy0.type = TSDB_DATA_TYPE_TIMESTAMP; yymsp[0].minor.yy0.type = TSDB_DATA_TYPE_TIMESTAMP;
tVariantCreateExt(&yymsp[-2].minor.yy162, &yymsp[0].minor.yy0, TK_MINUS, true); tVariantCreateExt(&yymsp[-2].minor.yy176, &yymsp[0].minor.yy0, TK_MINUS, true);
} }
break; break;
case 164: /* tagitem ::= MINUS INTEGER */ case 164: /* tagitem ::= MINUS INTEGER */
...@@ -3309,56 +3164,56 @@ static YYACTIONTYPE yy_reduce( ...@@ -3309,56 +3164,56 @@ static YYACTIONTYPE yy_reduce(
yymsp[-1].minor.yy0.n += yymsp[0].minor.yy0.n; yymsp[-1].minor.yy0.n += yymsp[0].minor.yy0.n;
yymsp[-1].minor.yy0.type = yymsp[0].minor.yy0.type; yymsp[-1].minor.yy0.type = yymsp[0].minor.yy0.type;
toTSDBType(yymsp[-1].minor.yy0.type); toTSDBType(yymsp[-1].minor.yy0.type);
tVariantCreate(&yylhsminor.yy162, &yymsp[-1].minor.yy0); tVariantCreate(&yylhsminor.yy176, &yymsp[-1].minor.yy0);
} }
yymsp[-1].minor.yy162 = yylhsminor.yy162; yymsp[-1].minor.yy176 = yylhsminor.yy176;
break; break;
case 168: /* select ::= SELECT selcollist from where_opt range_option interval_option sliding_opt session_option windowstate_option fill_opt groupby_opt having_opt orderby_opt slimit_opt limit_opt */ case 168: /* select ::= SELECT selcollist from where_opt range_option interval_option sliding_opt session_option windowstate_option fill_opt groupby_opt having_opt orderby_opt slimit_opt limit_opt */
{ {
yylhsminor.yy16 = tSetQuerySqlNode(&yymsp[-14].minor.yy0, yymsp[-13].minor.yy189, yymsp[-12].minor.yy36, yymsp[-11].minor.yy18, yymsp[-4].minor.yy189, yymsp[-2].minor.yy189, &yymsp[-9].minor.yy32, &yymsp[-7].minor.yy155, &yymsp[-6].minor.yy336, &yymsp[-8].minor.yy0, yymsp[-5].minor.yy189, &yymsp[0].minor.yy38, &yymsp[-1].minor.yy38, yymsp[-3].minor.yy18, &yymsp[-10].minor.yy124); yylhsminor.yy86 = tSetQuerySqlNode(&yymsp[-14].minor.yy0, yymsp[-13].minor.yy231, yymsp[-12].minor.yy484, yymsp[-11].minor.yy226, yymsp[-4].minor.yy231, yymsp[-2].minor.yy231, &yymsp[-9].minor.yy430, &yymsp[-7].minor.yy409, &yymsp[-6].minor.yy228, &yymsp[-8].minor.yy0, yymsp[-5].minor.yy231, &yymsp[0].minor.yy444, &yymsp[-1].minor.yy444, yymsp[-3].minor.yy226, &yymsp[-10].minor.yy480);
} }
yymsp[-14].minor.yy16 = yylhsminor.yy16; yymsp[-14].minor.yy86 = yylhsminor.yy86;
break; break;
case 169: /* select ::= LP select RP */ case 169: /* select ::= LP select RP */
{yymsp[-2].minor.yy16 = yymsp[-1].minor.yy16;} {yymsp[-2].minor.yy86 = yymsp[-1].minor.yy86;}
break; break;
case 170: /* union ::= select */ case 170: /* union ::= select */
{ yylhsminor.yy189 = setSubclause(NULL, yymsp[0].minor.yy16); } { yylhsminor.yy231 = setSubclause(NULL, yymsp[0].minor.yy86); }
yymsp[0].minor.yy189 = yylhsminor.yy189; yymsp[0].minor.yy231 = yylhsminor.yy231;
break; break;
case 171: /* union ::= union UNION ALL select */ case 171: /* union ::= union UNION ALL select */
{ yylhsminor.yy189 = appendSelectClause(yymsp[-3].minor.yy189, yymsp[0].minor.yy16); } { yylhsminor.yy231 = appendSelectClause(yymsp[-3].minor.yy231, yymsp[0].minor.yy86); }
yymsp[-3].minor.yy189 = yylhsminor.yy189; yymsp[-3].minor.yy231 = yylhsminor.yy231;
break; break;
case 172: /* cmd ::= union */ case 172: /* cmd ::= union */
{ setSqlInfo(pInfo, yymsp[0].minor.yy189, NULL, TSDB_SQL_SELECT); } { setSqlInfo(pInfo, yymsp[0].minor.yy231, NULL, TSDB_SQL_SELECT); }
break; break;
case 173: /* select ::= SELECT selcollist */ case 173: /* select ::= SELECT selcollist */
{ {
yylhsminor.yy16 = tSetQuerySqlNode(&yymsp[-1].minor.yy0, yymsp[0].minor.yy189, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL); yylhsminor.yy86 = tSetQuerySqlNode(&yymsp[-1].minor.yy0, yymsp[0].minor.yy231, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL);
} }
yymsp[-1].minor.yy16 = yylhsminor.yy16; yymsp[-1].minor.yy86 = yylhsminor.yy86;
break; break;
case 174: /* sclp ::= selcollist COMMA */ case 174: /* sclp ::= selcollist COMMA */
{yylhsminor.yy189 = yymsp[-1].minor.yy189;} {yylhsminor.yy231 = yymsp[-1].minor.yy231;}
yymsp[-1].minor.yy189 = yylhsminor.yy189; yymsp[-1].minor.yy231 = yylhsminor.yy231;
break; break;
case 175: /* sclp ::= */ case 175: /* sclp ::= */
case 216: /* orderby_opt ::= */ yytestcase(yyruleno==216); case 216: /* orderby_opt ::= */ yytestcase(yyruleno==216);
{yymsp[1].minor.yy189 = 0;} {yymsp[1].minor.yy231 = 0;}
break; break;
case 176: /* selcollist ::= sclp distinct expr as */ case 176: /* selcollist ::= sclp distinct expr as */
{ {
yylhsminor.yy189 = tSqlExprListAppend(yymsp[-3].minor.yy189, yymsp[-1].minor.yy18, yymsp[-2].minor.yy0.n? &yymsp[-2].minor.yy0:0, yymsp[0].minor.yy0.n?&yymsp[0].minor.yy0:0); yylhsminor.yy231 = tSqlExprListAppend(yymsp[-3].minor.yy231, yymsp[-1].minor.yy226, yymsp[-2].minor.yy0.n? &yymsp[-2].minor.yy0:0, yymsp[0].minor.yy0.n?&yymsp[0].minor.yy0:0);
} }
yymsp[-3].minor.yy189 = yylhsminor.yy189; yymsp[-3].minor.yy231 = yylhsminor.yy231;
break; break;
case 177: /* selcollist ::= sclp STAR */ case 177: /* selcollist ::= sclp STAR */
{ {
tSqlExpr *pNode = tSqlExprCreateIdValue(pInfo, NULL, TK_ALL); tSqlExpr *pNode = tSqlExprCreateIdValue(pInfo, NULL, TK_ALL);
yylhsminor.yy189 = tSqlExprListAppend(yymsp[-1].minor.yy189, pNode, 0, 0); yylhsminor.yy231 = tSqlExprListAppend(yymsp[-1].minor.yy231, pNode, 0, 0);
} }
yymsp[-1].minor.yy189 = yylhsminor.yy189; yymsp[-1].minor.yy231 = yylhsminor.yy231;
break; break;
case 178: /* as ::= AS ids */ case 178: /* as ::= AS ids */
{ yymsp[-1].minor.yy0 = yymsp[0].minor.yy0; } { yymsp[-1].minor.yy0 = yymsp[0].minor.yy0; }
...@@ -3376,114 +3231,114 @@ static YYACTIONTYPE yy_reduce( ...@@ -3376,114 +3231,114 @@ static YYACTIONTYPE yy_reduce(
break; break;
case 183: /* from ::= FROM tablelist */ case 183: /* from ::= FROM tablelist */
case 184: /* from ::= FROM sub */ yytestcase(yyruleno==184); case 184: /* from ::= FROM sub */ yytestcase(yyruleno==184);
{yymsp[-1].minor.yy36 = yymsp[0].minor.yy36;} {yymsp[-1].minor.yy484 = yymsp[0].minor.yy484;}
break; break;
case 185: /* sub ::= LP union RP */ case 185: /* sub ::= LP union RP */
{yymsp[-2].minor.yy36 = addSubqueryElem(NULL, yymsp[-1].minor.yy189, NULL);} {yymsp[-2].minor.yy484 = addSubqueryElem(NULL, yymsp[-1].minor.yy231, NULL);}
break; break;
case 186: /* sub ::= LP union RP ids */ case 186: /* sub ::= LP union RP ids */
{yymsp[-3].minor.yy36 = addSubqueryElem(NULL, yymsp[-2].minor.yy189, &yymsp[0].minor.yy0);} {yymsp[-3].minor.yy484 = addSubqueryElem(NULL, yymsp[-2].minor.yy231, &yymsp[0].minor.yy0);}
break; break;
case 187: /* sub ::= sub COMMA LP union RP ids */ case 187: /* sub ::= sub COMMA LP union RP ids */
{yylhsminor.yy36 = addSubqueryElem(yymsp[-5].minor.yy36, yymsp[-2].minor.yy189, &yymsp[0].minor.yy0);} {yylhsminor.yy484 = addSubqueryElem(yymsp[-5].minor.yy484, yymsp[-2].minor.yy231, &yymsp[0].minor.yy0);}
yymsp[-5].minor.yy36 = yylhsminor.yy36; yymsp[-5].minor.yy484 = yylhsminor.yy484;
break; break;
case 188: /* tablelist ::= ids cpxName */ case 188: /* tablelist ::= ids cpxName */
{ {
yymsp[-1].minor.yy0.n += yymsp[0].minor.yy0.n; yymsp[-1].minor.yy0.n += yymsp[0].minor.yy0.n;
yylhsminor.yy36 = setTableNameList(NULL, &yymsp[-1].minor.yy0, NULL); yylhsminor.yy484 = setTableNameList(NULL, &yymsp[-1].minor.yy0, NULL);
} }
yymsp[-1].minor.yy36 = yylhsminor.yy36; yymsp[-1].minor.yy484 = yylhsminor.yy484;
break; break;
case 189: /* tablelist ::= ids cpxName ids */ case 189: /* tablelist ::= ids cpxName ids */
{ {
yymsp[-2].minor.yy0.n += yymsp[-1].minor.yy0.n; yymsp[-2].minor.yy0.n += yymsp[-1].minor.yy0.n;
yylhsminor.yy36 = setTableNameList(NULL, &yymsp[-2].minor.yy0, &yymsp[0].minor.yy0); yylhsminor.yy484 = setTableNameList(NULL, &yymsp[-2].minor.yy0, &yymsp[0].minor.yy0);
} }
yymsp[-2].minor.yy36 = yylhsminor.yy36; yymsp[-2].minor.yy484 = yylhsminor.yy484;
break; break;
case 190: /* tablelist ::= tablelist COMMA ids cpxName */ case 190: /* tablelist ::= tablelist COMMA ids cpxName */
{ {
yymsp[-1].minor.yy0.n += yymsp[0].minor.yy0.n; yymsp[-1].minor.yy0.n += yymsp[0].minor.yy0.n;
yylhsminor.yy36 = setTableNameList(yymsp[-3].minor.yy36, &yymsp[-1].minor.yy0, NULL); yylhsminor.yy484 = setTableNameList(yymsp[-3].minor.yy484, &yymsp[-1].minor.yy0, NULL);
} }
yymsp[-3].minor.yy36 = yylhsminor.yy36; yymsp[-3].minor.yy484 = yylhsminor.yy484;
break; break;
case 191: /* tablelist ::= tablelist COMMA ids cpxName ids */ case 191: /* tablelist ::= tablelist COMMA ids cpxName ids */
{ {
yymsp[-2].minor.yy0.n += yymsp[-1].minor.yy0.n; yymsp[-2].minor.yy0.n += yymsp[-1].minor.yy0.n;
yylhsminor.yy36 = setTableNameList(yymsp[-4].minor.yy36, &yymsp[-2].minor.yy0, &yymsp[0].minor.yy0); yylhsminor.yy484 = setTableNameList(yymsp[-4].minor.yy484, &yymsp[-2].minor.yy0, &yymsp[0].minor.yy0);
} }
yymsp[-4].minor.yy36 = yylhsminor.yy36; yymsp[-4].minor.yy484 = yylhsminor.yy484;
break; break;
case 192: /* tmvar ::= VARIABLE */ case 192: /* tmvar ::= VARIABLE */
{yylhsminor.yy0 = yymsp[0].minor.yy0;} {yylhsminor.yy0 = yymsp[0].minor.yy0;}
yymsp[0].minor.yy0 = yylhsminor.yy0; yymsp[0].minor.yy0 = yylhsminor.yy0;
break; break;
case 193: /* timestamp ::= INTEGER */ case 193: /* timestamp ::= INTEGER */
{ yylhsminor.yy18 = tSqlExprCreateTimestamp(&yymsp[0].minor.yy0, TK_INTEGER);} { yylhsminor.yy226 = tSqlExprCreateTimestamp(&yymsp[0].minor.yy0, TK_INTEGER);}
yymsp[0].minor.yy18 = yylhsminor.yy18; yymsp[0].minor.yy226 = yylhsminor.yy226;
break; break;
case 194: /* timestamp ::= MINUS INTEGER */ case 194: /* timestamp ::= MINUS INTEGER */
case 195: /* timestamp ::= PLUS INTEGER */ yytestcase(yyruleno==195); case 195: /* timestamp ::= PLUS INTEGER */ yytestcase(yyruleno==195);
{ yymsp[-1].minor.yy0.n += yymsp[0].minor.yy0.n; yymsp[-1].minor.yy0.type = TK_INTEGER; yylhsminor.yy18 = tSqlExprCreateTimestamp(&yymsp[-1].minor.yy0, TK_INTEGER);} { yymsp[-1].minor.yy0.n += yymsp[0].minor.yy0.n; yymsp[-1].minor.yy0.type = TK_INTEGER; yylhsminor.yy226 = tSqlExprCreateTimestamp(&yymsp[-1].minor.yy0, TK_INTEGER);}
yymsp[-1].minor.yy18 = yylhsminor.yy18; yymsp[-1].minor.yy226 = yylhsminor.yy226;
break; break;
case 196: /* timestamp ::= STRING */ case 196: /* timestamp ::= STRING */
{ yylhsminor.yy18 = tSqlExprCreateTimestamp(&yymsp[0].minor.yy0, TK_STRING);} { yylhsminor.yy226 = tSqlExprCreateTimestamp(&yymsp[0].minor.yy0, TK_STRING);}
yymsp[0].minor.yy18 = yylhsminor.yy18; yymsp[0].minor.yy226 = yylhsminor.yy226;
break; break;
case 197: /* timestamp ::= NOW */ case 197: /* timestamp ::= NOW */
{ yylhsminor.yy18 = tSqlExprCreateTimestamp(&yymsp[0].minor.yy0, TK_NOW); } { yylhsminor.yy226 = tSqlExprCreateTimestamp(&yymsp[0].minor.yy0, TK_NOW); }
yymsp[0].minor.yy18 = yylhsminor.yy18; yymsp[0].minor.yy226 = yylhsminor.yy226;
break; break;
case 198: /* timestamp ::= NOW PLUS VARIABLE */ case 198: /* timestamp ::= NOW PLUS VARIABLE */
{yymsp[-2].minor.yy18 = tSqlExprCreateTimestamp(&yymsp[0].minor.yy0, TK_PLUS); } {yymsp[-2].minor.yy226 = tSqlExprCreateTimestamp(&yymsp[0].minor.yy0, TK_PLUS); }
break; break;
case 199: /* timestamp ::= NOW MINUS VARIABLE */ case 199: /* timestamp ::= NOW MINUS VARIABLE */
{yymsp[-2].minor.yy18 = tSqlExprCreateTimestamp(&yymsp[0].minor.yy0, TK_MINUS); } {yymsp[-2].minor.yy226 = tSqlExprCreateTimestamp(&yymsp[0].minor.yy0, TK_MINUS); }
break; break;
case 200: /* range_option ::= */ case 200: /* range_option ::= */
{yymsp[1].minor.yy124.start = 0; yymsp[1].minor.yy124.end = 0;} {yymsp[1].minor.yy480.start = 0; yymsp[1].minor.yy480.end = 0;}
break; break;
case 201: /* range_option ::= RANGE LP timestamp COMMA timestamp RP */ case 201: /* range_option ::= RANGE LP timestamp COMMA timestamp RP */
{yymsp[-5].minor.yy124.start = yymsp[-3].minor.yy18; yymsp[-5].minor.yy124.end = yymsp[-1].minor.yy18;} {yymsp[-5].minor.yy480.start = yymsp[-3].minor.yy226; yymsp[-5].minor.yy480.end = yymsp[-1].minor.yy226;}
break; break;
case 202: /* interval_option ::= intervalKey LP tmvar RP */ case 202: /* interval_option ::= intervalKey LP tmvar RP */
{yylhsminor.yy32.interval = yymsp[-1].minor.yy0; yylhsminor.yy32.offset.n = 0; yylhsminor.yy32.token = yymsp[-3].minor.yy516;} {yylhsminor.yy430.interval = yymsp[-1].minor.yy0; yylhsminor.yy430.offset.n = 0; yylhsminor.yy430.token = yymsp[-3].minor.yy310;}
yymsp[-3].minor.yy32 = yylhsminor.yy32; yymsp[-3].minor.yy430 = yylhsminor.yy430;
break; break;
case 203: /* interval_option ::= intervalKey LP tmvar COMMA tmvar RP */ case 203: /* interval_option ::= intervalKey LP tmvar COMMA tmvar RP */
{yylhsminor.yy32.interval = yymsp[-3].minor.yy0; yylhsminor.yy32.offset = yymsp[-1].minor.yy0; yylhsminor.yy32.token = yymsp[-5].minor.yy516;} {yylhsminor.yy430.interval = yymsp[-3].minor.yy0; yylhsminor.yy430.offset = yymsp[-1].minor.yy0; yylhsminor.yy430.token = yymsp[-5].minor.yy310;}
yymsp[-5].minor.yy32 = yylhsminor.yy32; yymsp[-5].minor.yy430 = yylhsminor.yy430;
break; break;
case 204: /* interval_option ::= */ case 204: /* interval_option ::= */
{memset(&yymsp[1].minor.yy32, 0, sizeof(yymsp[1].minor.yy32));} {memset(&yymsp[1].minor.yy430, 0, sizeof(yymsp[1].minor.yy430));}
break; break;
case 205: /* intervalKey ::= INTERVAL */ case 205: /* intervalKey ::= INTERVAL */
{yymsp[0].minor.yy516 = TK_INTERVAL;} {yymsp[0].minor.yy310 = TK_INTERVAL;}
break; break;
case 206: /* intervalKey ::= EVERY */ case 206: /* intervalKey ::= EVERY */
{yymsp[0].minor.yy516 = TK_EVERY; } {yymsp[0].minor.yy310 = TK_EVERY; }
break; break;
case 207: /* session_option ::= */ case 207: /* session_option ::= */
{yymsp[1].minor.yy155.col.n = 0; yymsp[1].minor.yy155.gap.n = 0;} {yymsp[1].minor.yy409.col.n = 0; yymsp[1].minor.yy409.gap.n = 0;}
break; break;
case 208: /* session_option ::= SESSION LP ids cpxName COMMA tmvar RP */ case 208: /* session_option ::= SESSION LP ids cpxName COMMA tmvar RP */
{ {
yymsp[-4].minor.yy0.n += yymsp[-3].minor.yy0.n; yymsp[-4].minor.yy0.n += yymsp[-3].minor.yy0.n;
yymsp[-6].minor.yy155.col = yymsp[-4].minor.yy0; yymsp[-6].minor.yy409.col = yymsp[-4].minor.yy0;
yymsp[-6].minor.yy155.gap = yymsp[-1].minor.yy0; yymsp[-6].minor.yy409.gap = yymsp[-1].minor.yy0;
} }
break; break;
case 209: /* windowstate_option ::= */ case 209: /* windowstate_option ::= */
{ yymsp[1].minor.yy336.col.n = 0; yymsp[1].minor.yy336.col.z = NULL;} { yymsp[1].minor.yy228.col.n = 0; yymsp[1].minor.yy228.col.z = NULL;}
break; break;
case 210: /* windowstate_option ::= STATE_WINDOW LP ids RP */ case 210: /* windowstate_option ::= STATE_WINDOW LP ids RP */
{ yymsp[-3].minor.yy336.col = yymsp[-1].minor.yy0; } { yymsp[-3].minor.yy228.col = yymsp[-1].minor.yy0; }
break; break;
case 211: /* fill_opt ::= */ case 211: /* fill_opt ::= */
{ yymsp[1].minor.yy189 = 0; } { yymsp[1].minor.yy231 = 0; }
break; break;
case 212: /* fill_opt ::= FILL LP ID COMMA tagitemlist RP */ case 212: /* fill_opt ::= FILL LP ID COMMA tagitemlist RP */
{ {
...@@ -3491,14 +3346,14 @@ static YYACTIONTYPE yy_reduce( ...@@ -3491,14 +3346,14 @@ static YYACTIONTYPE yy_reduce(
toTSDBType(yymsp[-3].minor.yy0.type); toTSDBType(yymsp[-3].minor.yy0.type);
tVariantCreate(&A, &yymsp[-3].minor.yy0); tVariantCreate(&A, &yymsp[-3].minor.yy0);
tVariantListInsert(yymsp[-1].minor.yy189, &A, -1, 0); tVariantListInsert(yymsp[-1].minor.yy231, &A, -1, 0);
yymsp[-5].minor.yy189 = yymsp[-1].minor.yy189; yymsp[-5].minor.yy231 = yymsp[-1].minor.yy231;
} }
break; break;
case 213: /* fill_opt ::= FILL LP ID RP */ case 213: /* fill_opt ::= FILL LP ID RP */
{ {
toTSDBType(yymsp[-1].minor.yy0.type); toTSDBType(yymsp[-1].minor.yy0.type);
yymsp[-3].minor.yy189 = tVariantListAppendToken(NULL, &yymsp[-1].minor.yy0, -1, true); yymsp[-3].minor.yy231 = tVariantListAppendToken(NULL, &yymsp[-1].minor.yy0, -1, true);
} }
break; break;
case 214: /* sliding_opt ::= SLIDING LP tmvar RP */ case 214: /* sliding_opt ::= SLIDING LP tmvar RP */
...@@ -3508,309 +3363,313 @@ static YYACTIONTYPE yy_reduce( ...@@ -3508,309 +3363,313 @@ static YYACTIONTYPE yy_reduce(
{yymsp[1].minor.yy0.n = 0; yymsp[1].minor.yy0.z = NULL; yymsp[1].minor.yy0.type = 0; } {yymsp[1].minor.yy0.n = 0; yymsp[1].minor.yy0.z = NULL; yymsp[1].minor.yy0.type = 0; }
break; break;
case 217: /* orderby_opt ::= ORDER BY sortlist */ case 217: /* orderby_opt ::= ORDER BY sortlist */
{yymsp[-2].minor.yy189 = yymsp[0].minor.yy189;} {yymsp[-2].minor.yy231 = yymsp[0].minor.yy231;}
break; break;
case 218: /* sortlist ::= sortlist COMMA item sortorder */ case 218: /* sortlist ::= sortlist COMMA item sortorder */
{ {
yylhsminor.yy189 = commonItemAppend(yymsp[-3].minor.yy189, &yymsp[-1].minor.yy162, NULL, false, yymsp[0].minor.yy420); yylhsminor.yy231 = commonItemAppend(yymsp[-3].minor.yy231, &yymsp[-1].minor.yy176, NULL, false, yymsp[0].minor.yy502);
} }
yymsp[-3].minor.yy189 = yylhsminor.yy189; yymsp[-3].minor.yy231 = yylhsminor.yy231;
break; break;
case 219: /* sortlist ::= sortlist COMMA arrow sortorder */ case 219: /* sortlist ::= sortlist COMMA arrow sortorder */
{ {
yylhsminor.yy189 = commonItemAppend(yymsp[-3].minor.yy189, NULL, yymsp[-1].minor.yy18, true, yymsp[0].minor.yy420); yylhsminor.yy231 = commonItemAppend(yymsp[-3].minor.yy231, NULL, yymsp[-1].minor.yy226, true, yymsp[0].minor.yy502);
} }
yymsp[-3].minor.yy189 = yylhsminor.yy189; yymsp[-3].minor.yy231 = yylhsminor.yy231;
break; break;
case 220: /* sortlist ::= item sortorder */ case 220: /* sortlist ::= item sortorder */
{ {
yylhsminor.yy189 = commonItemAppend(NULL, &yymsp[-1].minor.yy162, NULL, false, yymsp[0].minor.yy420); yylhsminor.yy231 = commonItemAppend(NULL, &yymsp[-1].minor.yy176, NULL, false, yymsp[0].minor.yy502);
} }
yymsp[-1].minor.yy189 = yylhsminor.yy189; yymsp[-1].minor.yy231 = yylhsminor.yy231;
break; break;
case 221: /* sortlist ::= arrow sortorder */ case 221: /* sortlist ::= arrow sortorder */
{ {
yylhsminor.yy189 = commonItemAppend(NULL, NULL, yymsp[-1].minor.yy18, true, yymsp[0].minor.yy420); yylhsminor.yy231 = commonItemAppend(NULL, NULL, yymsp[-1].minor.yy226, true, yymsp[0].minor.yy502);
} }
yymsp[-1].minor.yy189 = yylhsminor.yy189; yymsp[-1].minor.yy231 = yylhsminor.yy231;
break; break;
case 222: /* item ::= ID */ case 222: /* item ::= ID */
{ {
toTSDBType(yymsp[0].minor.yy0.type); toTSDBType(yymsp[0].minor.yy0.type);
tVariantCreate(&yylhsminor.yy162, &yymsp[0].minor.yy0); tVariantCreate(&yylhsminor.yy176, &yymsp[0].minor.yy0);
} }
yymsp[0].minor.yy162 = yylhsminor.yy162; yymsp[0].minor.yy176 = yylhsminor.yy176;
break; break;
case 223: /* item ::= ID DOT ID */ case 223: /* item ::= ID DOT ID */
{ {
toTSDBType(yymsp[-2].minor.yy0.type); toTSDBType(yymsp[-2].minor.yy0.type);
yymsp[-2].minor.yy0.n += (1+yymsp[0].minor.yy0.n); yymsp[-2].minor.yy0.n += (1+yymsp[0].minor.yy0.n);
tVariantCreate(&yylhsminor.yy162, &yymsp[-2].minor.yy0); tVariantCreate(&yylhsminor.yy176, &yymsp[-2].minor.yy0);
} }
yymsp[-2].minor.yy162 = yylhsminor.yy162; yymsp[-2].minor.yy176 = yylhsminor.yy176;
break; break;
case 224: /* sortorder ::= ASC */ case 224: /* sortorder ::= ASC */
{ yymsp[0].minor.yy420 = TSDB_ORDER_ASC; } { yymsp[0].minor.yy502 = TSDB_ORDER_ASC; }
break; break;
case 225: /* sortorder ::= DESC */ case 225: /* sortorder ::= DESC */
{ yymsp[0].minor.yy420 = TSDB_ORDER_DESC;} { yymsp[0].minor.yy502 = TSDB_ORDER_DESC;}
break; break;
case 226: /* sortorder ::= */ case 226: /* sortorder ::= */
{ yymsp[1].minor.yy420 = TSDB_ORDER_ASC; } { yymsp[1].minor.yy502 = TSDB_ORDER_ASC; }
break; break;
case 227: /* groupby_opt ::= */ case 227: /* groupby_opt ::= */
{ yymsp[1].minor.yy189 = 0;} { yymsp[1].minor.yy231 = 0;}
break; break;
case 228: /* groupby_opt ::= GROUP BY grouplist */ case 228: /* groupby_opt ::= GROUP BY grouplist */
{ yymsp[-2].minor.yy189 = yymsp[0].minor.yy189;} { yymsp[-2].minor.yy231 = yymsp[0].minor.yy231;}
break; break;
case 229: /* grouplist ::= grouplist COMMA item */ case 229: /* grouplist ::= grouplist COMMA item */
{ {
yylhsminor.yy189 = commonItemAppend(yymsp[-2].minor.yy189, &yymsp[0].minor.yy162, NULL, false, -1); yylhsminor.yy231 = commonItemAppend(yymsp[-2].minor.yy231, &yymsp[0].minor.yy176, NULL, false, -1);
} }
yymsp[-2].minor.yy189 = yylhsminor.yy189; yymsp[-2].minor.yy231 = yylhsminor.yy231;
break; break;
case 230: /* grouplist ::= grouplist COMMA arrow */ case 230: /* grouplist ::= grouplist COMMA arrow */
{ {
yylhsminor.yy189 = commonItemAppend(yymsp[-2].minor.yy189, NULL, yymsp[0].minor.yy18, true, -1); yylhsminor.yy231 = commonItemAppend(yymsp[-2].minor.yy231, NULL, yymsp[0].minor.yy226, true, -1);
} }
yymsp[-2].minor.yy189 = yylhsminor.yy189; yymsp[-2].minor.yy231 = yylhsminor.yy231;
break; break;
case 231: /* grouplist ::= item */ case 231: /* grouplist ::= item */
{ {
yylhsminor.yy189 = commonItemAppend(NULL, &yymsp[0].minor.yy162, NULL, false, -1); yylhsminor.yy231 = commonItemAppend(NULL, &yymsp[0].minor.yy176, NULL, false, -1);
} }
yymsp[0].minor.yy189 = yylhsminor.yy189; yymsp[0].minor.yy231 = yylhsminor.yy231;
break; break;
case 232: /* grouplist ::= arrow */ case 232: /* grouplist ::= arrow */
{ {
yylhsminor.yy189 = commonItemAppend(NULL, NULL, yymsp[0].minor.yy18, true, -1); yylhsminor.yy231 = commonItemAppend(NULL, NULL, yymsp[0].minor.yy226, true, -1);
} }
yymsp[0].minor.yy189 = yylhsminor.yy189; yymsp[0].minor.yy231 = yylhsminor.yy231;
break; break;
case 233: /* having_opt ::= */ case 233: /* having_opt ::= */
case 243: /* where_opt ::= */ yytestcase(yyruleno==243); case 243: /* where_opt ::= */ yytestcase(yyruleno==243);
case 293: /* expritem ::= */ yytestcase(yyruleno==293); case 294: /* expritem ::= */ yytestcase(yyruleno==294);
{yymsp[1].minor.yy18 = 0;} {yymsp[1].minor.yy226 = 0;}
break; break;
case 234: /* having_opt ::= HAVING expr */ case 234: /* having_opt ::= HAVING expr */
case 244: /* where_opt ::= WHERE expr */ yytestcase(yyruleno==244); case 244: /* where_opt ::= WHERE expr */ yytestcase(yyruleno==244);
{yymsp[-1].minor.yy18 = yymsp[0].minor.yy18;} {yymsp[-1].minor.yy226 = yymsp[0].minor.yy226;}
break; break;
case 235: /* limit_opt ::= */ case 235: /* limit_opt ::= */
case 239: /* slimit_opt ::= */ yytestcase(yyruleno==239); case 239: /* slimit_opt ::= */ yytestcase(yyruleno==239);
{yymsp[1].minor.yy38.limit = -1; yymsp[1].minor.yy38.offset = 0;} {yymsp[1].minor.yy444.limit = -1; yymsp[1].minor.yy444.offset = 0;}
break; break;
case 236: /* limit_opt ::= LIMIT signed */ case 236: /* limit_opt ::= LIMIT signed */
case 240: /* slimit_opt ::= SLIMIT signed */ yytestcase(yyruleno==240); case 240: /* slimit_opt ::= SLIMIT signed */ yytestcase(yyruleno==240);
{yymsp[-1].minor.yy38.limit = yymsp[0].minor.yy69; yymsp[-1].minor.yy38.offset = 0;} {yymsp[-1].minor.yy444.limit = yymsp[0].minor.yy549; yymsp[-1].minor.yy444.offset = 0;}
break; break;
case 237: /* limit_opt ::= LIMIT signed OFFSET signed */ case 237: /* limit_opt ::= LIMIT signed OFFSET signed */
{ yymsp[-3].minor.yy38.limit = yymsp[-2].minor.yy69; yymsp[-3].minor.yy38.offset = yymsp[0].minor.yy69;} { yymsp[-3].minor.yy444.limit = yymsp[-2].minor.yy549; yymsp[-3].minor.yy444.offset = yymsp[0].minor.yy549;}
break; break;
case 238: /* limit_opt ::= LIMIT signed COMMA signed */ case 238: /* limit_opt ::= LIMIT signed COMMA signed */
{ yymsp[-3].minor.yy38.limit = yymsp[0].minor.yy69; yymsp[-3].minor.yy38.offset = yymsp[-2].minor.yy69;} { yymsp[-3].minor.yy444.limit = yymsp[0].minor.yy549; yymsp[-3].minor.yy444.offset = yymsp[-2].minor.yy549;}
break; break;
case 241: /* slimit_opt ::= SLIMIT signed SOFFSET signed */ case 241: /* slimit_opt ::= SLIMIT signed SOFFSET signed */
{yymsp[-3].minor.yy38.limit = yymsp[-2].minor.yy69; yymsp[-3].minor.yy38.offset = yymsp[0].minor.yy69;} {yymsp[-3].minor.yy444.limit = yymsp[-2].minor.yy549; yymsp[-3].minor.yy444.offset = yymsp[0].minor.yy549;}
break; break;
case 242: /* slimit_opt ::= SLIMIT signed COMMA signed */ case 242: /* slimit_opt ::= SLIMIT signed COMMA signed */
{yymsp[-3].minor.yy38.limit = yymsp[0].minor.yy69; yymsp[-3].minor.yy38.offset = yymsp[-2].minor.yy69;} {yymsp[-3].minor.yy444.limit = yymsp[0].minor.yy549; yymsp[-3].minor.yy444.offset = yymsp[-2].minor.yy549;}
break; break;
case 245: /* expr ::= LP expr RP */ case 245: /* expr ::= LP expr RP */
{yylhsminor.yy18 = yymsp[-1].minor.yy18; yylhsminor.yy18->exprToken.z = yymsp[-2].minor.yy0.z; yylhsminor.yy18->exprToken.n = (yymsp[0].minor.yy0.z - yymsp[-2].minor.yy0.z + 1);} {yylhsminor.yy226 = yymsp[-1].minor.yy226; yylhsminor.yy226->exprToken.z = yymsp[-2].minor.yy0.z; yylhsminor.yy226->exprToken.n = (yymsp[0].minor.yy0.z - yymsp[-2].minor.yy0.z + 1);}
yymsp[-2].minor.yy18 = yylhsminor.yy18; yymsp[-2].minor.yy226 = yylhsminor.yy226;
break; break;
case 246: /* expr ::= ID */ case 246: /* expr ::= ID */
{ yylhsminor.yy18 = tSqlExprCreateIdValue(pInfo, &yymsp[0].minor.yy0, TK_ID);} { yylhsminor.yy226 = tSqlExprCreateIdValue(pInfo, &yymsp[0].minor.yy0, TK_ID);}
yymsp[0].minor.yy18 = yylhsminor.yy18; yymsp[0].minor.yy226 = yylhsminor.yy226;
break; break;
case 247: /* expr ::= ID DOT ID */ case 247: /* expr ::= ID DOT ID */
{ yymsp[-2].minor.yy0.n += (1+yymsp[0].minor.yy0.n); yylhsminor.yy18 = tSqlExprCreateIdValue(pInfo, &yymsp[-2].minor.yy0, TK_ID);} { yymsp[-2].minor.yy0.n += (1+yymsp[0].minor.yy0.n); yylhsminor.yy226 = tSqlExprCreateIdValue(pInfo, &yymsp[-2].minor.yy0, TK_ID);}
yymsp[-2].minor.yy18 = yylhsminor.yy18; yymsp[-2].minor.yy226 = yylhsminor.yy226;
break; break;
case 248: /* expr ::= ID DOT STAR */ case 248: /* expr ::= ID DOT STAR */
{ yymsp[-2].minor.yy0.n += (1+yymsp[0].minor.yy0.n); yylhsminor.yy18 = tSqlExprCreateIdValue(pInfo, &yymsp[-2].minor.yy0, TK_ALL);} { yymsp[-2].minor.yy0.n += (1+yymsp[0].minor.yy0.n); yylhsminor.yy226 = tSqlExprCreateIdValue(pInfo, &yymsp[-2].minor.yy0, TK_ALL);}
yymsp[-2].minor.yy18 = yylhsminor.yy18; yymsp[-2].minor.yy226 = yylhsminor.yy226;
break; break;
case 249: /* expr ::= INTEGER */ case 249: /* expr ::= INTEGER */
{ yylhsminor.yy18 = tSqlExprCreateIdValue(pInfo, &yymsp[0].minor.yy0, TK_INTEGER);} { yylhsminor.yy226 = tSqlExprCreateIdValue(pInfo, &yymsp[0].minor.yy0, TK_INTEGER);}
yymsp[0].minor.yy18 = yylhsminor.yy18; yymsp[0].minor.yy226 = yylhsminor.yy226;
break; break;
case 250: /* expr ::= MINUS INTEGER */ case 250: /* expr ::= MINUS INTEGER */
case 251: /* expr ::= PLUS INTEGER */ yytestcase(yyruleno==251); case 251: /* expr ::= PLUS INTEGER */ yytestcase(yyruleno==251);
{ yymsp[-1].minor.yy0.n += yymsp[0].minor.yy0.n; yymsp[-1].minor.yy0.type = TK_INTEGER; yylhsminor.yy18 = tSqlExprCreateIdValue(pInfo, &yymsp[-1].minor.yy0, TK_INTEGER);} { yymsp[-1].minor.yy0.n += yymsp[0].minor.yy0.n; yymsp[-1].minor.yy0.type = TK_INTEGER; yylhsminor.yy226 = tSqlExprCreateIdValue(pInfo, &yymsp[-1].minor.yy0, TK_INTEGER);}
yymsp[-1].minor.yy18 = yylhsminor.yy18; yymsp[-1].minor.yy226 = yylhsminor.yy226;
break; break;
case 252: /* expr ::= FLOAT */ case 252: /* expr ::= FLOAT */
{ yylhsminor.yy18 = tSqlExprCreateIdValue(pInfo, &yymsp[0].minor.yy0, TK_FLOAT);} { yylhsminor.yy226 = tSqlExprCreateIdValue(pInfo, &yymsp[0].minor.yy0, TK_FLOAT);}
yymsp[0].minor.yy18 = yylhsminor.yy18; yymsp[0].minor.yy226 = yylhsminor.yy226;
break; break;
case 253: /* expr ::= MINUS FLOAT */ case 253: /* expr ::= MINUS FLOAT */
case 254: /* expr ::= PLUS FLOAT */ yytestcase(yyruleno==254); case 254: /* expr ::= PLUS FLOAT */ yytestcase(yyruleno==254);
{ yymsp[-1].minor.yy0.n += yymsp[0].minor.yy0.n; yymsp[-1].minor.yy0.type = TK_FLOAT; yylhsminor.yy18 = tSqlExprCreateIdValue(pInfo, &yymsp[-1].minor.yy0, TK_FLOAT);} { yymsp[-1].minor.yy0.n += yymsp[0].minor.yy0.n; yymsp[-1].minor.yy0.type = TK_FLOAT; yylhsminor.yy226 = tSqlExprCreateIdValue(pInfo, &yymsp[-1].minor.yy0, TK_FLOAT);}
yymsp[-1].minor.yy18 = yylhsminor.yy18; yymsp[-1].minor.yy226 = yylhsminor.yy226;
break; break;
case 255: /* expr ::= STRING */ case 255: /* expr ::= STRING */
{ yylhsminor.yy18 = tSqlExprCreateIdValue(pInfo, &yymsp[0].minor.yy0, TK_STRING);} { yylhsminor.yy226 = tSqlExprCreateIdValue(pInfo, &yymsp[0].minor.yy0, TK_STRING);}
yymsp[0].minor.yy18 = yylhsminor.yy18; yymsp[0].minor.yy226 = yylhsminor.yy226;
break; break;
case 256: /* expr ::= NOW */ case 256: /* expr ::= NOW */
{ yylhsminor.yy18 = tSqlExprCreateIdValue(pInfo, &yymsp[0].minor.yy0, TK_NOW); } { yylhsminor.yy226 = tSqlExprCreateIdValue(pInfo, &yymsp[0].minor.yy0, TK_NOW); }
yymsp[0].minor.yy18 = yylhsminor.yy18; yymsp[0].minor.yy226 = yylhsminor.yy226;
break;
case 257: /* expr ::= TODAY */
{ yylhsminor.yy226 = tSqlExprCreateIdValue(pInfo, &yymsp[0].minor.yy0, TK_TODAY); }
yymsp[0].minor.yy226 = yylhsminor.yy226;
break; break;
case 257: /* expr ::= VARIABLE */ case 258: /* expr ::= VARIABLE */
{ yylhsminor.yy18 = tSqlExprCreateIdValue(pInfo, &yymsp[0].minor.yy0, TK_VARIABLE);} { yylhsminor.yy226 = tSqlExprCreateIdValue(pInfo, &yymsp[0].minor.yy0, TK_VARIABLE);}
yymsp[0].minor.yy18 = yylhsminor.yy18; yymsp[0].minor.yy226 = yylhsminor.yy226;
break; break;
case 258: /* expr ::= PLUS VARIABLE */ case 259: /* expr ::= PLUS VARIABLE */
case 259: /* expr ::= MINUS VARIABLE */ yytestcase(yyruleno==259); case 260: /* expr ::= MINUS VARIABLE */ yytestcase(yyruleno==260);
{ yymsp[-1].minor.yy0.n += yymsp[0].minor.yy0.n; yymsp[-1].minor.yy0.type = TK_VARIABLE; yylhsminor.yy18 = tSqlExprCreateIdValue(pInfo, &yymsp[-1].minor.yy0, TK_VARIABLE);} { yymsp[-1].minor.yy0.n += yymsp[0].minor.yy0.n; yymsp[-1].minor.yy0.type = TK_VARIABLE; yylhsminor.yy226 = tSqlExprCreateIdValue(pInfo, &yymsp[-1].minor.yy0, TK_VARIABLE);}
yymsp[-1].minor.yy18 = yylhsminor.yy18; yymsp[-1].minor.yy226 = yylhsminor.yy226;
break; break;
case 260: /* expr ::= BOOL */ case 261: /* expr ::= BOOL */
{ yylhsminor.yy18 = tSqlExprCreateIdValue(pInfo, &yymsp[0].minor.yy0, TK_BOOL);} { yylhsminor.yy226 = tSqlExprCreateIdValue(pInfo, &yymsp[0].minor.yy0, TK_BOOL);}
yymsp[0].minor.yy18 = yylhsminor.yy18; yymsp[0].minor.yy226 = yylhsminor.yy226;
break; break;
case 261: /* expr ::= NULL */ case 262: /* expr ::= NULL */
{ yylhsminor.yy18 = tSqlExprCreateIdValue(pInfo, &yymsp[0].minor.yy0, TK_NULL);} { yylhsminor.yy226 = tSqlExprCreateIdValue(pInfo, &yymsp[0].minor.yy0, TK_NULL);}
yymsp[0].minor.yy18 = yylhsminor.yy18; yymsp[0].minor.yy226 = yylhsminor.yy226;
break; break;
case 262: /* expr ::= ID LP exprlist RP */ case 263: /* expr ::= ID LP exprlist RP */
{ tStrTokenAppend(pInfo->funcs, &yymsp[-3].minor.yy0); yylhsminor.yy18 = tSqlExprCreateFunction(yymsp[-1].minor.yy189, &yymsp[-3].minor.yy0, &yymsp[0].minor.yy0, yymsp[-3].minor.yy0.type); } { tStrTokenAppend(pInfo->funcs, &yymsp[-3].minor.yy0); yylhsminor.yy226 = tSqlExprCreateFunction(yymsp[-1].minor.yy231, &yymsp[-3].minor.yy0, &yymsp[0].minor.yy0, yymsp[-3].minor.yy0.type); }
yymsp[-3].minor.yy18 = yylhsminor.yy18; yymsp[-3].minor.yy226 = yylhsminor.yy226;
break; break;
case 263: /* expr ::= ID LP STAR RP */ case 264: /* expr ::= ID LP STAR RP */
{ tStrTokenAppend(pInfo->funcs, &yymsp[-3].minor.yy0); yylhsminor.yy18 = tSqlExprCreateFunction(NULL, &yymsp[-3].minor.yy0, &yymsp[0].minor.yy0, yymsp[-3].minor.yy0.type); } { tStrTokenAppend(pInfo->funcs, &yymsp[-3].minor.yy0); yylhsminor.yy226 = tSqlExprCreateFunction(NULL, &yymsp[-3].minor.yy0, &yymsp[0].minor.yy0, yymsp[-3].minor.yy0.type); }
yymsp[-3].minor.yy18 = yylhsminor.yy18; yymsp[-3].minor.yy226 = yylhsminor.yy226;
break; break;
case 264: /* expr ::= ID LP expr AS typename RP */ case 265: /* expr ::= ID LP expr AS typename RP */
{ tStrTokenAppend(pInfo->funcs, &yymsp[-5].minor.yy0); yylhsminor.yy18 = tSqlExprCreateFuncWithParams(pInfo, yymsp[-3].minor.yy18, &yymsp[-1].minor.yy279, &yymsp[-5].minor.yy0, &yymsp[0].minor.yy0, yymsp[-5].minor.yy0.type); } { tStrTokenAppend(pInfo->funcs, &yymsp[-5].minor.yy0); yylhsminor.yy226 = tSqlExprCreateFuncWithParams(pInfo, yymsp[-3].minor.yy226, &yymsp[-1].minor.yy103, &yymsp[-5].minor.yy0, &yymsp[0].minor.yy0, yymsp[-5].minor.yy0.type); }
yymsp[-5].minor.yy18 = yylhsminor.yy18; yymsp[-5].minor.yy226 = yylhsminor.yy226;
break; break;
case 265: /* expr ::= expr IS NULL */ case 266: /* expr ::= expr IS NULL */
{yylhsminor.yy18 = tSqlExprCreate(yymsp[-2].minor.yy18, NULL, TK_ISNULL);} {yylhsminor.yy226 = tSqlExprCreate(yymsp[-2].minor.yy226, NULL, TK_ISNULL);}
yymsp[-2].minor.yy18 = yylhsminor.yy18; yymsp[-2].minor.yy226 = yylhsminor.yy226;
break; break;
case 266: /* expr ::= expr IS NOT NULL */ case 267: /* expr ::= expr IS NOT NULL */
{yylhsminor.yy18 = tSqlExprCreate(yymsp[-3].minor.yy18, NULL, TK_NOTNULL);} {yylhsminor.yy226 = tSqlExprCreate(yymsp[-3].minor.yy226, NULL, TK_NOTNULL);}
yymsp[-3].minor.yy18 = yylhsminor.yy18; yymsp[-3].minor.yy226 = yylhsminor.yy226;
break; break;
case 267: /* expr ::= expr LT expr */ case 268: /* expr ::= expr LT expr */
{yylhsminor.yy18 = tSqlExprCreate(yymsp[-2].minor.yy18, yymsp[0].minor.yy18, TK_LT);} {yylhsminor.yy226 = tSqlExprCreate(yymsp[-2].minor.yy226, yymsp[0].minor.yy226, TK_LT);}
yymsp[-2].minor.yy18 = yylhsminor.yy18; yymsp[-2].minor.yy226 = yylhsminor.yy226;
break; break;
case 268: /* expr ::= expr GT expr */ case 269: /* expr ::= expr GT expr */
{yylhsminor.yy18 = tSqlExprCreate(yymsp[-2].minor.yy18, yymsp[0].minor.yy18, TK_GT);} {yylhsminor.yy226 = tSqlExprCreate(yymsp[-2].minor.yy226, yymsp[0].minor.yy226, TK_GT);}
yymsp[-2].minor.yy18 = yylhsminor.yy18; yymsp[-2].minor.yy226 = yylhsminor.yy226;
break; break;
case 269: /* expr ::= expr LE expr */ case 270: /* expr ::= expr LE expr */
{yylhsminor.yy18 = tSqlExprCreate(yymsp[-2].minor.yy18, yymsp[0].minor.yy18, TK_LE);} {yylhsminor.yy226 = tSqlExprCreate(yymsp[-2].minor.yy226, yymsp[0].minor.yy226, TK_LE);}
yymsp[-2].minor.yy18 = yylhsminor.yy18; yymsp[-2].minor.yy226 = yylhsminor.yy226;
break; break;
case 270: /* expr ::= expr GE expr */ case 271: /* expr ::= expr GE expr */
{yylhsminor.yy18 = tSqlExprCreate(yymsp[-2].minor.yy18, yymsp[0].minor.yy18, TK_GE);} {yylhsminor.yy226 = tSqlExprCreate(yymsp[-2].minor.yy226, yymsp[0].minor.yy226, TK_GE);}
yymsp[-2].minor.yy18 = yylhsminor.yy18; yymsp[-2].minor.yy226 = yylhsminor.yy226;
break; break;
case 271: /* expr ::= expr NE expr */ case 272: /* expr ::= expr NE expr */
{yylhsminor.yy18 = tSqlExprCreate(yymsp[-2].minor.yy18, yymsp[0].minor.yy18, TK_NE);} {yylhsminor.yy226 = tSqlExprCreate(yymsp[-2].minor.yy226, yymsp[0].minor.yy226, TK_NE);}
yymsp[-2].minor.yy18 = yylhsminor.yy18; yymsp[-2].minor.yy226 = yylhsminor.yy226;
break; break;
case 272: /* expr ::= expr EQ expr */ case 273: /* expr ::= expr EQ expr */
{yylhsminor.yy18 = tSqlExprCreate(yymsp[-2].minor.yy18, yymsp[0].minor.yy18, TK_EQ);} {yylhsminor.yy226 = tSqlExprCreate(yymsp[-2].minor.yy226, yymsp[0].minor.yy226, TK_EQ);}
yymsp[-2].minor.yy18 = yylhsminor.yy18; yymsp[-2].minor.yy226 = yylhsminor.yy226;
break; break;
case 273: /* expr ::= expr BETWEEN expr AND expr */ case 274: /* expr ::= expr BETWEEN expr AND expr */
{ tSqlExpr* X2 = tSqlExprClone(yymsp[-4].minor.yy18); yylhsminor.yy18 = tSqlExprCreate(tSqlExprCreate(yymsp[-4].minor.yy18, yymsp[-2].minor.yy18, TK_GE), tSqlExprCreate(X2, yymsp[0].minor.yy18, TK_LE), TK_AND);} { tSqlExpr* X2 = tSqlExprClone(yymsp[-4].minor.yy226); yylhsminor.yy226 = tSqlExprCreate(tSqlExprCreate(yymsp[-4].minor.yy226, yymsp[-2].minor.yy226, TK_GE), tSqlExprCreate(X2, yymsp[0].minor.yy226, TK_LE), TK_AND);}
yymsp[-4].minor.yy18 = yylhsminor.yy18; yymsp[-4].minor.yy226 = yylhsminor.yy226;
break; break;
case 274: /* expr ::= expr AND expr */ case 275: /* expr ::= expr AND expr */
{yylhsminor.yy18 = tSqlExprCreate(yymsp[-2].minor.yy18, yymsp[0].minor.yy18, TK_AND);} {yylhsminor.yy226 = tSqlExprCreate(yymsp[-2].minor.yy226, yymsp[0].minor.yy226, TK_AND);}
yymsp[-2].minor.yy18 = yylhsminor.yy18; yymsp[-2].minor.yy226 = yylhsminor.yy226;
break; break;
case 275: /* expr ::= expr OR expr */ case 276: /* expr ::= expr OR expr */
{yylhsminor.yy18 = tSqlExprCreate(yymsp[-2].minor.yy18, yymsp[0].minor.yy18, TK_OR); } {yylhsminor.yy226 = tSqlExprCreate(yymsp[-2].minor.yy226, yymsp[0].minor.yy226, TK_OR); }
yymsp[-2].minor.yy18 = yylhsminor.yy18; yymsp[-2].minor.yy226 = yylhsminor.yy226;
break; break;
case 276: /* expr ::= expr PLUS expr */ case 277: /* expr ::= expr PLUS expr */
{yylhsminor.yy18 = tSqlExprCreate(yymsp[-2].minor.yy18, yymsp[0].minor.yy18, TK_PLUS); } {yylhsminor.yy226 = tSqlExprCreate(yymsp[-2].minor.yy226, yymsp[0].minor.yy226, TK_PLUS); }
yymsp[-2].minor.yy18 = yylhsminor.yy18; yymsp[-2].minor.yy226 = yylhsminor.yy226;
break; break;
case 277: /* expr ::= expr MINUS expr */ case 278: /* expr ::= expr MINUS expr */
{yylhsminor.yy18 = tSqlExprCreate(yymsp[-2].minor.yy18, yymsp[0].minor.yy18, TK_MINUS); } {yylhsminor.yy226 = tSqlExprCreate(yymsp[-2].minor.yy226, yymsp[0].minor.yy226, TK_MINUS); }
yymsp[-2].minor.yy18 = yylhsminor.yy18; yymsp[-2].minor.yy226 = yylhsminor.yy226;
break; break;
case 278: /* expr ::= expr STAR expr */ case 279: /* expr ::= expr STAR expr */
{yylhsminor.yy18 = tSqlExprCreate(yymsp[-2].minor.yy18, yymsp[0].minor.yy18, TK_STAR); } {yylhsminor.yy226 = tSqlExprCreate(yymsp[-2].minor.yy226, yymsp[0].minor.yy226, TK_STAR); }
yymsp[-2].minor.yy18 = yylhsminor.yy18; yymsp[-2].minor.yy226 = yylhsminor.yy226;
break; break;
case 279: /* expr ::= expr SLASH expr */ case 280: /* expr ::= expr SLASH expr */
{yylhsminor.yy18 = tSqlExprCreate(yymsp[-2].minor.yy18, yymsp[0].minor.yy18, TK_DIVIDE);} {yylhsminor.yy226 = tSqlExprCreate(yymsp[-2].minor.yy226, yymsp[0].minor.yy226, TK_DIVIDE);}
yymsp[-2].minor.yy18 = yylhsminor.yy18; yymsp[-2].minor.yy226 = yylhsminor.yy226;
break; break;
case 280: /* expr ::= expr REM expr */ case 281: /* expr ::= expr REM expr */
{yylhsminor.yy18 = tSqlExprCreate(yymsp[-2].minor.yy18, yymsp[0].minor.yy18, TK_REM); } {yylhsminor.yy226 = tSqlExprCreate(yymsp[-2].minor.yy226, yymsp[0].minor.yy226, TK_REM); }
yymsp[-2].minor.yy18 = yylhsminor.yy18; yymsp[-2].minor.yy226 = yylhsminor.yy226;
break; break;
case 281: /* expr ::= expr LIKE expr */ case 282: /* expr ::= expr LIKE expr */
{yylhsminor.yy18 = tSqlExprCreate(yymsp[-2].minor.yy18, yymsp[0].minor.yy18, TK_LIKE); } {yylhsminor.yy226 = tSqlExprCreate(yymsp[-2].minor.yy226, yymsp[0].minor.yy226, TK_LIKE); }
yymsp[-2].minor.yy18 = yylhsminor.yy18; yymsp[-2].minor.yy226 = yylhsminor.yy226;
break; break;
case 282: /* expr ::= expr MATCH expr */ case 283: /* expr ::= expr MATCH expr */
{yylhsminor.yy18 = tSqlExprCreate(yymsp[-2].minor.yy18, yymsp[0].minor.yy18, TK_MATCH); } {yylhsminor.yy226 = tSqlExprCreate(yymsp[-2].minor.yy226, yymsp[0].minor.yy226, TK_MATCH); }
yymsp[-2].minor.yy18 = yylhsminor.yy18; yymsp[-2].minor.yy226 = yylhsminor.yy226;
break; break;
case 283: /* expr ::= expr NMATCH expr */ case 284: /* expr ::= expr NMATCH expr */
{yylhsminor.yy18 = tSqlExprCreate(yymsp[-2].minor.yy18, yymsp[0].minor.yy18, TK_NMATCH); } {yylhsminor.yy226 = tSqlExprCreate(yymsp[-2].minor.yy226, yymsp[0].minor.yy226, TK_NMATCH); }
yymsp[-2].minor.yy18 = yylhsminor.yy18; yymsp[-2].minor.yy226 = yylhsminor.yy226;
break; break;
case 284: /* expr ::= ID CONTAINS STRING */ case 285: /* expr ::= ID CONTAINS STRING */
{ tSqlExpr* S = tSqlExprCreateIdValue(pInfo, &yymsp[-2].minor.yy0, TK_ID); tSqlExpr* M = tSqlExprCreateIdValue(pInfo, &yymsp[0].minor.yy0, TK_STRING); yylhsminor.yy18 = tSqlExprCreate(S, M, TK_CONTAINS); } { tSqlExpr* S = tSqlExprCreateIdValue(pInfo, &yymsp[-2].minor.yy0, TK_ID); tSqlExpr* M = tSqlExprCreateIdValue(pInfo, &yymsp[0].minor.yy0, TK_STRING); yylhsminor.yy226 = tSqlExprCreate(S, M, TK_CONTAINS); }
yymsp[-2].minor.yy18 = yylhsminor.yy18; yymsp[-2].minor.yy226 = yylhsminor.yy226;
break; break;
case 285: /* expr ::= ID DOT ID CONTAINS STRING */ case 286: /* expr ::= ID DOT ID CONTAINS STRING */
{ yymsp[-4].minor.yy0.n += (1+yymsp[-2].minor.yy0.n); tSqlExpr* S = tSqlExprCreateIdValue(pInfo, &yymsp[-4].minor.yy0, TK_ID); tSqlExpr* M = tSqlExprCreateIdValue(pInfo, &yymsp[0].minor.yy0, TK_STRING); yylhsminor.yy18 = tSqlExprCreate(S, M, TK_CONTAINS); } { yymsp[-4].minor.yy0.n += (1+yymsp[-2].minor.yy0.n); tSqlExpr* S = tSqlExprCreateIdValue(pInfo, &yymsp[-4].minor.yy0, TK_ID); tSqlExpr* M = tSqlExprCreateIdValue(pInfo, &yymsp[0].minor.yy0, TK_STRING); yylhsminor.yy226 = tSqlExprCreate(S, M, TK_CONTAINS); }
yymsp[-4].minor.yy18 = yylhsminor.yy18; yymsp[-4].minor.yy226 = yylhsminor.yy226;
break; break;
case 286: /* arrow ::= ID ARROW STRING */ case 287: /* arrow ::= ID ARROW STRING */
{tSqlExpr* S = tSqlExprCreateIdValue(pInfo, &yymsp[-2].minor.yy0, TK_ID); tSqlExpr* M = tSqlExprCreateIdValue(pInfo, &yymsp[0].minor.yy0, TK_STRING); yylhsminor.yy18 = tSqlExprCreate(S, M, TK_ARROW); } {tSqlExpr* S = tSqlExprCreateIdValue(pInfo, &yymsp[-2].minor.yy0, TK_ID); tSqlExpr* M = tSqlExprCreateIdValue(pInfo, &yymsp[0].minor.yy0, TK_STRING); yylhsminor.yy226 = tSqlExprCreate(S, M, TK_ARROW); }
yymsp[-2].minor.yy18 = yylhsminor.yy18; yymsp[-2].minor.yy226 = yylhsminor.yy226;
break; break;
case 287: /* arrow ::= ID DOT ID ARROW STRING */ case 288: /* arrow ::= ID DOT ID ARROW STRING */
{yymsp[-4].minor.yy0.n += (1+yymsp[-2].minor.yy0.n); tSqlExpr* S = tSqlExprCreateIdValue(pInfo, &yymsp[-4].minor.yy0, TK_ID); tSqlExpr* M = tSqlExprCreateIdValue(pInfo, &yymsp[0].minor.yy0, TK_STRING); yylhsminor.yy18 = tSqlExprCreate(S, M, TK_ARROW); } {yymsp[-4].minor.yy0.n += (1+yymsp[-2].minor.yy0.n); tSqlExpr* S = tSqlExprCreateIdValue(pInfo, &yymsp[-4].minor.yy0, TK_ID); tSqlExpr* M = tSqlExprCreateIdValue(pInfo, &yymsp[0].minor.yy0, TK_STRING); yylhsminor.yy226 = tSqlExprCreate(S, M, TK_ARROW); }
yymsp[-4].minor.yy18 = yylhsminor.yy18; yymsp[-4].minor.yy226 = yylhsminor.yy226;
break; break;
case 288: /* expr ::= arrow */ case 289: /* expr ::= arrow */
case 292: /* expritem ::= expr */ yytestcase(yyruleno==292); case 293: /* expritem ::= expr */ yytestcase(yyruleno==293);
{yylhsminor.yy18 = yymsp[0].minor.yy18;} {yylhsminor.yy226 = yymsp[0].minor.yy226;}
yymsp[0].minor.yy18 = yylhsminor.yy18; yymsp[0].minor.yy226 = yylhsminor.yy226;
break; break;
case 289: /* expr ::= expr IN LP exprlist RP */ case 290: /* expr ::= expr IN LP exprlist RP */
{yylhsminor.yy18 = tSqlExprCreate(yymsp[-4].minor.yy18, (tSqlExpr*)yymsp[-1].minor.yy189, TK_IN); } {yylhsminor.yy226 = tSqlExprCreate(yymsp[-4].minor.yy226, (tSqlExpr*)yymsp[-1].minor.yy231, TK_IN); }
yymsp[-4].minor.yy18 = yylhsminor.yy18; yymsp[-4].minor.yy226 = yylhsminor.yy226;
break; break;
case 290: /* exprlist ::= exprlist COMMA expritem */ case 291: /* exprlist ::= exprlist COMMA expritem */
{yylhsminor.yy189 = tSqlExprListAppend(yymsp[-2].minor.yy189,yymsp[0].minor.yy18,0, 0);} {yylhsminor.yy231 = tSqlExprListAppend(yymsp[-2].minor.yy231,yymsp[0].minor.yy226,0, 0);}
yymsp[-2].minor.yy189 = yylhsminor.yy189; yymsp[-2].minor.yy231 = yylhsminor.yy231;
break; break;
case 291: /* exprlist ::= expritem */ case 292: /* exprlist ::= expritem */
{yylhsminor.yy189 = tSqlExprListAppend(0,yymsp[0].minor.yy18,0, 0);} {yylhsminor.yy231 = tSqlExprListAppend(0,yymsp[0].minor.yy226,0, 0);}
yymsp[0].minor.yy189 = yylhsminor.yy189; yymsp[0].minor.yy231 = yylhsminor.yy231;
break; break;
case 294: /* cmd ::= RESET QUERY CACHE */ case 295: /* cmd ::= RESET QUERY CACHE */
{ setDCLSqlElems(pInfo, TSDB_SQL_RESET_CACHE, 0);} { setDCLSqlElems(pInfo, TSDB_SQL_RESET_CACHE, 0);}
break; break;
case 295: /* cmd ::= SYNCDB ids REPLICA */ case 296: /* cmd ::= SYNCDB ids REPLICA */
{ setDCLSqlElems(pInfo, TSDB_SQL_SYNC_DB_REPLICA, 1, &yymsp[-1].minor.yy0);} { setDCLSqlElems(pInfo, TSDB_SQL_SYNC_DB_REPLICA, 1, &yymsp[-1].minor.yy0);}
break; break;
case 296: /* cmd ::= ALTER TABLE ids cpxName ADD COLUMN columnlist */ case 297: /* cmd ::= ALTER TABLE ids cpxName ADD COLUMN columnlist */
{ {
yymsp[-4].minor.yy0.n += yymsp[-3].minor.yy0.n; yymsp[-4].minor.yy0.n += yymsp[-3].minor.yy0.n;
SAlterTableInfo* pAlterTable = tSetAlterTableInfo(&yymsp[-4].minor.yy0, yymsp[0].minor.yy189, NULL, TSDB_ALTER_TABLE_ADD_COLUMN, -1); SAlterTableInfo* pAlterTable = tSetAlterTableInfo(&yymsp[-4].minor.yy0, yymsp[0].minor.yy231, NULL, TSDB_ALTER_TABLE_ADD_COLUMN, -1);
setSqlInfo(pInfo, pAlterTable, NULL, TSDB_SQL_ALTER_TABLE); setSqlInfo(pInfo, pAlterTable, NULL, TSDB_SQL_ALTER_TABLE);
} }
break; break;
case 297: /* cmd ::= ALTER TABLE ids cpxName DROP COLUMN ids */ case 298: /* cmd ::= ALTER TABLE ids cpxName DROP COLUMN ids */
{ {
yymsp[-4].minor.yy0.n += yymsp[-3].minor.yy0.n; yymsp[-4].minor.yy0.n += yymsp[-3].minor.yy0.n;
...@@ -3821,21 +3680,21 @@ static YYACTIONTYPE yy_reduce( ...@@ -3821,21 +3680,21 @@ static YYACTIONTYPE yy_reduce(
setSqlInfo(pInfo, pAlterTable, NULL, TSDB_SQL_ALTER_TABLE); setSqlInfo(pInfo, pAlterTable, NULL, TSDB_SQL_ALTER_TABLE);
} }
break; break;
case 298: /* cmd ::= ALTER TABLE ids cpxName MODIFY COLUMN columnlist */ case 299: /* cmd ::= ALTER TABLE ids cpxName MODIFY COLUMN columnlist */
{ {
yymsp[-4].minor.yy0.n += yymsp[-3].minor.yy0.n; yymsp[-4].minor.yy0.n += yymsp[-3].minor.yy0.n;
SAlterTableInfo* pAlterTable = tSetAlterTableInfo(&yymsp[-4].minor.yy0, yymsp[0].minor.yy189, NULL, TSDB_ALTER_TABLE_CHANGE_COLUMN, -1); SAlterTableInfo* pAlterTable = tSetAlterTableInfo(&yymsp[-4].minor.yy0, yymsp[0].minor.yy231, NULL, TSDB_ALTER_TABLE_CHANGE_COLUMN, -1);
setSqlInfo(pInfo, pAlterTable, NULL, TSDB_SQL_ALTER_TABLE); setSqlInfo(pInfo, pAlterTable, NULL, TSDB_SQL_ALTER_TABLE);
} }
break; break;
case 299: /* cmd ::= ALTER TABLE ids cpxName ADD TAG columnlist */ case 300: /* cmd ::= ALTER TABLE ids cpxName ADD TAG columnlist */
{ {
yymsp[-4].minor.yy0.n += yymsp[-3].minor.yy0.n; yymsp[-4].minor.yy0.n += yymsp[-3].minor.yy0.n;
SAlterTableInfo* pAlterTable = tSetAlterTableInfo(&yymsp[-4].minor.yy0, yymsp[0].minor.yy189, NULL, TSDB_ALTER_TABLE_ADD_TAG_COLUMN, -1); SAlterTableInfo* pAlterTable = tSetAlterTableInfo(&yymsp[-4].minor.yy0, yymsp[0].minor.yy231, NULL, TSDB_ALTER_TABLE_ADD_TAG_COLUMN, -1);
setSqlInfo(pInfo, pAlterTable, NULL, TSDB_SQL_ALTER_TABLE); setSqlInfo(pInfo, pAlterTable, NULL, TSDB_SQL_ALTER_TABLE);
} }
break; break;
case 300: /* cmd ::= ALTER TABLE ids cpxName DROP TAG ids */ case 301: /* cmd ::= ALTER TABLE ids cpxName DROP TAG ids */
{ {
yymsp[-4].minor.yy0.n += yymsp[-3].minor.yy0.n; yymsp[-4].minor.yy0.n += yymsp[-3].minor.yy0.n;
...@@ -3846,7 +3705,7 @@ static YYACTIONTYPE yy_reduce( ...@@ -3846,7 +3705,7 @@ static YYACTIONTYPE yy_reduce(
setSqlInfo(pInfo, pAlterTable, NULL, TSDB_SQL_ALTER_TABLE); setSqlInfo(pInfo, pAlterTable, NULL, TSDB_SQL_ALTER_TABLE);
} }
break; break;
case 301: /* cmd ::= ALTER TABLE ids cpxName CHANGE TAG ids ids */ case 302: /* cmd ::= ALTER TABLE ids cpxName CHANGE TAG ids ids */
{ {
yymsp[-5].minor.yy0.n += yymsp[-4].minor.yy0.n; yymsp[-5].minor.yy0.n += yymsp[-4].minor.yy0.n;
...@@ -3860,33 +3719,33 @@ static YYACTIONTYPE yy_reduce( ...@@ -3860,33 +3719,33 @@ static YYACTIONTYPE yy_reduce(
setSqlInfo(pInfo, pAlterTable, NULL, TSDB_SQL_ALTER_TABLE); setSqlInfo(pInfo, pAlterTable, NULL, TSDB_SQL_ALTER_TABLE);
} }
break; break;
case 302: /* cmd ::= ALTER TABLE ids cpxName SET TAG ids EQ tagitem */ case 303: /* cmd ::= ALTER TABLE ids cpxName SET TAG ids EQ tagitem */
{ {
yymsp[-6].minor.yy0.n += yymsp[-5].minor.yy0.n; yymsp[-6].minor.yy0.n += yymsp[-5].minor.yy0.n;
toTSDBType(yymsp[-2].minor.yy0.type); toTSDBType(yymsp[-2].minor.yy0.type);
SArray* A = tVariantListAppendToken(NULL, &yymsp[-2].minor.yy0, -1, false); SArray* A = tVariantListAppendToken(NULL, &yymsp[-2].minor.yy0, -1, false);
A = tVariantListAppend(A, &yymsp[0].minor.yy162, -1); A = tVariantListAppend(A, &yymsp[0].minor.yy176, -1);
SAlterTableInfo* pAlterTable = tSetAlterTableInfo(&yymsp[-6].minor.yy0, NULL, A, TSDB_ALTER_TABLE_UPDATE_TAG_VAL, -1); SAlterTableInfo* pAlterTable = tSetAlterTableInfo(&yymsp[-6].minor.yy0, NULL, A, TSDB_ALTER_TABLE_UPDATE_TAG_VAL, -1);
setSqlInfo(pInfo, pAlterTable, NULL, TSDB_SQL_ALTER_TABLE); setSqlInfo(pInfo, pAlterTable, NULL, TSDB_SQL_ALTER_TABLE);
} }
break; break;
case 303: /* cmd ::= ALTER TABLE ids cpxName MODIFY TAG columnlist */ case 304: /* cmd ::= ALTER TABLE ids cpxName MODIFY TAG columnlist */
{ {
yymsp[-4].minor.yy0.n += yymsp[-3].minor.yy0.n; yymsp[-4].minor.yy0.n += yymsp[-3].minor.yy0.n;
SAlterTableInfo* pAlterTable = tSetAlterTableInfo(&yymsp[-4].minor.yy0, yymsp[0].minor.yy189, NULL, TSDB_ALTER_TABLE_MODIFY_TAG_COLUMN, -1); SAlterTableInfo* pAlterTable = tSetAlterTableInfo(&yymsp[-4].minor.yy0, yymsp[0].minor.yy231, NULL, TSDB_ALTER_TABLE_MODIFY_TAG_COLUMN, -1);
setSqlInfo(pInfo, pAlterTable, NULL, TSDB_SQL_ALTER_TABLE); setSqlInfo(pInfo, pAlterTable, NULL, TSDB_SQL_ALTER_TABLE);
} }
break; break;
case 304: /* cmd ::= ALTER STABLE ids cpxName ADD COLUMN columnlist */ case 305: /* cmd ::= ALTER STABLE ids cpxName ADD COLUMN columnlist */
{ {
yymsp[-4].minor.yy0.n += yymsp[-3].minor.yy0.n; yymsp[-4].minor.yy0.n += yymsp[-3].minor.yy0.n;
SAlterTableInfo* pAlterTable = tSetAlterTableInfo(&yymsp[-4].minor.yy0, yymsp[0].minor.yy189, NULL, TSDB_ALTER_TABLE_ADD_COLUMN, TSDB_SUPER_TABLE); SAlterTableInfo* pAlterTable = tSetAlterTableInfo(&yymsp[-4].minor.yy0, yymsp[0].minor.yy231, NULL, TSDB_ALTER_TABLE_ADD_COLUMN, TSDB_SUPER_TABLE);
setSqlInfo(pInfo, pAlterTable, NULL, TSDB_SQL_ALTER_TABLE); setSqlInfo(pInfo, pAlterTable, NULL, TSDB_SQL_ALTER_TABLE);
} }
break; break;
case 305: /* cmd ::= ALTER STABLE ids cpxName DROP COLUMN ids */ case 306: /* cmd ::= ALTER STABLE ids cpxName DROP COLUMN ids */
{ {
yymsp[-4].minor.yy0.n += yymsp[-3].minor.yy0.n; yymsp[-4].minor.yy0.n += yymsp[-3].minor.yy0.n;
...@@ -3897,21 +3756,21 @@ static YYACTIONTYPE yy_reduce( ...@@ -3897,21 +3756,21 @@ static YYACTIONTYPE yy_reduce(
setSqlInfo(pInfo, pAlterTable, NULL, TSDB_SQL_ALTER_TABLE); setSqlInfo(pInfo, pAlterTable, NULL, TSDB_SQL_ALTER_TABLE);
} }
break; break;
case 306: /* cmd ::= ALTER STABLE ids cpxName MODIFY COLUMN columnlist */ case 307: /* cmd ::= ALTER STABLE ids cpxName MODIFY COLUMN columnlist */
{ {
yymsp[-4].minor.yy0.n += yymsp[-3].minor.yy0.n; yymsp[-4].minor.yy0.n += yymsp[-3].minor.yy0.n;
SAlterTableInfo* pAlterTable = tSetAlterTableInfo(&yymsp[-4].minor.yy0, yymsp[0].minor.yy189, NULL, TSDB_ALTER_TABLE_CHANGE_COLUMN, TSDB_SUPER_TABLE); SAlterTableInfo* pAlterTable = tSetAlterTableInfo(&yymsp[-4].minor.yy0, yymsp[0].minor.yy231, NULL, TSDB_ALTER_TABLE_CHANGE_COLUMN, TSDB_SUPER_TABLE);
setSqlInfo(pInfo, pAlterTable, NULL, TSDB_SQL_ALTER_TABLE); setSqlInfo(pInfo, pAlterTable, NULL, TSDB_SQL_ALTER_TABLE);
} }
break; break;
case 307: /* cmd ::= ALTER STABLE ids cpxName ADD TAG columnlist */ case 308: /* cmd ::= ALTER STABLE ids cpxName ADD TAG columnlist */
{ {
yymsp[-4].minor.yy0.n += yymsp[-3].minor.yy0.n; yymsp[-4].minor.yy0.n += yymsp[-3].minor.yy0.n;
SAlterTableInfo* pAlterTable = tSetAlterTableInfo(&yymsp[-4].minor.yy0, yymsp[0].minor.yy189, NULL, TSDB_ALTER_TABLE_ADD_TAG_COLUMN, TSDB_SUPER_TABLE); SAlterTableInfo* pAlterTable = tSetAlterTableInfo(&yymsp[-4].minor.yy0, yymsp[0].minor.yy231, NULL, TSDB_ALTER_TABLE_ADD_TAG_COLUMN, TSDB_SUPER_TABLE);
setSqlInfo(pInfo, pAlterTable, NULL, TSDB_SQL_ALTER_TABLE); setSqlInfo(pInfo, pAlterTable, NULL, TSDB_SQL_ALTER_TABLE);
} }
break; break;
case 308: /* cmd ::= ALTER STABLE ids cpxName DROP TAG ids */ case 309: /* cmd ::= ALTER STABLE ids cpxName DROP TAG ids */
{ {
yymsp[-4].minor.yy0.n += yymsp[-3].minor.yy0.n; yymsp[-4].minor.yy0.n += yymsp[-3].minor.yy0.n;
...@@ -3922,7 +3781,7 @@ static YYACTIONTYPE yy_reduce( ...@@ -3922,7 +3781,7 @@ static YYACTIONTYPE yy_reduce(
setSqlInfo(pInfo, pAlterTable, NULL, TSDB_SQL_ALTER_TABLE); setSqlInfo(pInfo, pAlterTable, NULL, TSDB_SQL_ALTER_TABLE);
} }
break; break;
case 309: /* cmd ::= ALTER STABLE ids cpxName CHANGE TAG ids ids */ case 310: /* cmd ::= ALTER STABLE ids cpxName CHANGE TAG ids ids */
{ {
yymsp[-5].minor.yy0.n += yymsp[-4].minor.yy0.n; yymsp[-5].minor.yy0.n += yymsp[-4].minor.yy0.n;
...@@ -3936,32 +3795,32 @@ static YYACTIONTYPE yy_reduce( ...@@ -3936,32 +3795,32 @@ static YYACTIONTYPE yy_reduce(
setSqlInfo(pInfo, pAlterTable, NULL, TSDB_SQL_ALTER_TABLE); setSqlInfo(pInfo, pAlterTable, NULL, TSDB_SQL_ALTER_TABLE);
} }
break; break;
case 310: /* cmd ::= ALTER STABLE ids cpxName SET TAG ids EQ tagitem */ case 311: /* cmd ::= ALTER STABLE ids cpxName SET TAG ids EQ tagitem */
{ {
yymsp[-6].minor.yy0.n += yymsp[-5].minor.yy0.n; yymsp[-6].minor.yy0.n += yymsp[-5].minor.yy0.n;
toTSDBType(yymsp[-2].minor.yy0.type); toTSDBType(yymsp[-2].minor.yy0.type);
SArray* A = tVariantListAppendToken(NULL, &yymsp[-2].minor.yy0, -1, false); SArray* A = tVariantListAppendToken(NULL, &yymsp[-2].minor.yy0, -1, false);
A = tVariantListAppend(A, &yymsp[0].minor.yy162, -1); A = tVariantListAppend(A, &yymsp[0].minor.yy176, -1);
SAlterTableInfo* pAlterTable = tSetAlterTableInfo(&yymsp[-6].minor.yy0, NULL, A, TSDB_ALTER_TABLE_UPDATE_TAG_VAL, TSDB_SUPER_TABLE); SAlterTableInfo* pAlterTable = tSetAlterTableInfo(&yymsp[-6].minor.yy0, NULL, A, TSDB_ALTER_TABLE_UPDATE_TAG_VAL, TSDB_SUPER_TABLE);
setSqlInfo(pInfo, pAlterTable, NULL, TSDB_SQL_ALTER_TABLE); setSqlInfo(pInfo, pAlterTable, NULL, TSDB_SQL_ALTER_TABLE);
} }
break; break;
case 311: /* cmd ::= ALTER STABLE ids cpxName MODIFY TAG columnlist */ case 312: /* cmd ::= ALTER STABLE ids cpxName MODIFY TAG columnlist */
{ {
yymsp[-4].minor.yy0.n += yymsp[-3].minor.yy0.n; yymsp[-4].minor.yy0.n += yymsp[-3].minor.yy0.n;
SAlterTableInfo* pAlterTable = tSetAlterTableInfo(&yymsp[-4].minor.yy0, yymsp[0].minor.yy189, NULL, TSDB_ALTER_TABLE_MODIFY_TAG_COLUMN, TSDB_SUPER_TABLE); SAlterTableInfo* pAlterTable = tSetAlterTableInfo(&yymsp[-4].minor.yy0, yymsp[0].minor.yy231, NULL, TSDB_ALTER_TABLE_MODIFY_TAG_COLUMN, TSDB_SUPER_TABLE);
setSqlInfo(pInfo, pAlterTable, NULL, TSDB_SQL_ALTER_TABLE); setSqlInfo(pInfo, pAlterTable, NULL, TSDB_SQL_ALTER_TABLE);
} }
break; break;
case 312: /* cmd ::= KILL CONNECTION INTEGER */ case 313: /* cmd ::= KILL CONNECTION INTEGER */
{setKillSql(pInfo, TSDB_SQL_KILL_CONNECTION, &yymsp[0].minor.yy0);} {setKillSql(pInfo, TSDB_SQL_KILL_CONNECTION, &yymsp[0].minor.yy0);}
break; break;
case 313: /* cmd ::= KILL STREAM INTEGER COLON INTEGER */ case 314: /* 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);} {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; break;
case 314: /* cmd ::= KILL QUERY INTEGER COLON INTEGER */ case 315: /* 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);} {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; break;
default: default:
...@@ -4132,56 +3991,12 @@ void Parse( ...@@ -4132,56 +3991,12 @@ void Parse(
} }
#endif #endif
while(1){ /* Exit by "break" */ do{
assert( yypParser->yytos>=yypParser->yystack );
assert( yyact==yypParser->yytos->stateno ); assert( yyact==yypParser->yytos->stateno );
yyact = yy_find_shift_action((YYCODETYPE)yymajor,yyact); yyact = yy_find_shift_action((YYCODETYPE)yymajor,yyact);
if( yyact >= YY_MIN_REDUCE ){ if( yyact >= YY_MIN_REDUCE ){
unsigned int yyruleno = yyact - YY_MIN_REDUCE; /* Reduce by this rule */ yyact = yy_reduce(yypParser,yyact-YY_MIN_REDUCE,yymajor,
assert( yyruleno<(int)(sizeof(yyRuleName)/sizeof(yyRuleName[0])) ); yyminor ParseCTX_PARAM);
#ifndef NDEBUG
if( yyTraceFILE ){
int yysize = yyRuleInfoNRhs[yyruleno];
if( yysize ){
fprintf(yyTraceFILE, "%sReduce %d [%s]%s, pop back to state %d.\n",
yyTracePrompt,
yyruleno, yyRuleName[yyruleno],
yyruleno<YYNRULE_WITH_ACTION ? "" : " without external action",
yypParser->yytos[yysize].stateno);
}else{
fprintf(yyTraceFILE, "%sReduce %d [%s]%s.\n",
yyTracePrompt, yyruleno, yyRuleName[yyruleno],
yyruleno<YYNRULE_WITH_ACTION ? "" : " without external action");
}
}
#endif /* NDEBUG */
/* 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( yyRuleInfoNRhs[yyruleno]==0 ){
#ifdef YYTRACKMAXSTACKDEPTH
if( (int)(yypParser->yytos - yypParser->yystack)>yypParser->yyhwm ){
yypParser->yyhwm++;
assert( yypParser->yyhwm ==
(int)(yypParser->yytos - yypParser->yystack));
}
#endif
#if YYSTACKDEPTH>0
if( yypParser->yytos>=yypParser->yystackEnd ){
yyStackOverflow(yypParser);
break;
}
#else
if( yypParser->yytos>=&yypParser->yystack[yypParser->yystksz-1] ){
if( yyGrowStack(yypParser) ){
yyStackOverflow(yypParser);
break;
}
}
#endif
}
yyact = yy_reduce(yypParser,yyruleno,yymajor,yyminor ParseCTX_PARAM);
}else if( yyact <= YY_MAX_SHIFTREDUCE ){ }else if( yyact <= YY_MAX_SHIFTREDUCE ){
yy_shift(yypParser,yyact,(YYCODETYPE)yymajor,yyminor); yy_shift(yypParser,yyact,(YYCODETYPE)yymajor,yyminor);
#ifndef YYNOERRORRECOVERY #ifndef YYNOERRORRECOVERY
...@@ -4237,13 +4052,14 @@ void Parse( ...@@ -4237,13 +4052,14 @@ void Parse(
yy_destructor(yypParser, (YYCODETYPE)yymajor, &yyminorunion); yy_destructor(yypParser, (YYCODETYPE)yymajor, &yyminorunion);
yymajor = YYNOCODE; yymajor = YYNOCODE;
}else{ }else{
while( yypParser->yytos > yypParser->yystack ){ while( yypParser->yytos >= yypParser->yystack
yyact = yy_find_reduce_action(yypParser->yytos->stateno, && (yyact = yy_find_reduce_action(
YYERRORSYMBOL); yypParser->yytos->stateno,
if( yyact<=YY_MAX_SHIFTREDUCE ) break; YYERRORSYMBOL)) > YY_MAX_SHIFTREDUCE
){
yy_pop_parser_stack(yypParser); yy_pop_parser_stack(yypParser);
} }
if( yypParser->yytos <= yypParser->yystack || yymajor==0 ){ if( yypParser->yytos < yypParser->yystack || yymajor==0 ){
yy_destructor(yypParser,(YYCODETYPE)yymajor,&yyminorunion); yy_destructor(yypParser,(YYCODETYPE)yymajor,&yyminorunion);
yy_parse_failed(yypParser); yy_parse_failed(yypParser);
#ifndef YYNOERRORRECOVERY #ifndef YYNOERRORRECOVERY
...@@ -4293,7 +4109,7 @@ void Parse( ...@@ -4293,7 +4109,7 @@ void Parse(
break; break;
#endif #endif
} }
} }while( yypParser->yytos>yypParser->yystack );
#ifndef NDEBUG #ifndef NDEBUG
if( yyTraceFILE ){ if( yyTraceFILE ){
yyStackEntry *i; yyStackEntry *i;
......
...@@ -159,6 +159,7 @@ static SKeyword keywordTable[] = { ...@@ -159,6 +159,7 @@ static SKeyword keywordTable[] = {
{"SOFFSET", TK_SOFFSET}, {"SOFFSET", TK_SOFFSET},
{"WHERE", TK_WHERE}, {"WHERE", TK_WHERE},
{"NOW", TK_NOW}, {"NOW", TK_NOW},
{"TODAY", TK_TODAY},
{"INSERT", TK_INSERT}, {"INSERT", TK_INSERT},
{"INTO", TK_INTO}, {"INTO", TK_INTO},
{"VALUES", TK_VALUES}, {"VALUES", TK_VALUES},
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册