未验证 提交 82a947a3 编写于 作者: H haojun Liao 提交者: GitHub

Merge pull request #5550 from taosdata/feature/qrefactor

Feature/qrefactor
...@@ -367,7 +367,7 @@ typedef struct SSqlObj { ...@@ -367,7 +367,7 @@ typedef struct SSqlObj {
int64_t svgroupRid; int64_t svgroupRid;
int64_t squeryLock; int64_t squeryLock;
int32_t retryReason; // previous error code
struct SSqlObj *prev, *next; struct SSqlObj *prev, *next;
int64_t self; int64_t self;
} SSqlObj; } SSqlObj;
......
...@@ -310,9 +310,50 @@ void tscAsyncResultOnError(SSqlObj* pSql) { ...@@ -310,9 +310,50 @@ void tscAsyncResultOnError(SSqlObj* pSql) {
taosScheduleTask(tscQhandle, &schedMsg); taosScheduleTask(tscQhandle, &schedMsg);
} }
int tscSendMsgToServer(SSqlObj *pSql);
static int32_t updateMetaBeforeRetryQuery(SSqlObj* pSql, STableMetaInfo* pTableMetaInfo, SQueryInfo* pQueryInfo) {
// handle the invalid table error code for super table.
// update the pExpr info, colList info, number of table columns
// TODO Re-parse this sql and issue the corresponding subquery as an alternative for this case.
if (pSql->retryReason == TSDB_CODE_TDB_INVALID_TABLE_ID) {
int32_t numOfExprs = (int32_t) tscSqlExprNumOfExprs(pQueryInfo);
int32_t numOfCols = tscGetNumOfColumns(pTableMetaInfo->pTableMeta);
int32_t numOfTags = tscGetNumOfTags(pTableMetaInfo->pTableMeta);
SSchema *pSchema = tscGetTableSchema(pTableMetaInfo->pTableMeta);
for (int32_t i = 0; i < numOfExprs; ++i) {
SSqlExpr *pExpr = tscSqlExprGet(pQueryInfo, i);
pExpr->uid = pTableMetaInfo->pTableMeta->id.uid;
if (pExpr->colInfo.colIndex >= 0) {
int32_t index = pExpr->colInfo.colIndex;
if ((TSDB_COL_IS_NORMAL_COL(pExpr->colInfo.flag) && index >= numOfCols) ||
(TSDB_COL_IS_TAG(pExpr->colInfo.flag) && (index < numOfCols || index >= (numOfCols + numOfTags)))) {
return pSql->retryReason;
}
int tscSendMsgToServer(SSqlObj *pSql); if ((pSchema[pExpr->colInfo.colIndex].colId != pExpr->colInfo.colId) &&
strcasecmp(pExpr->colInfo.name, pSchema[pExpr->colInfo.colIndex].name) != 0) {
return pSql->retryReason;
}
}
}
// validate the table columns information
for (int32_t i = 0; i < taosArrayGetSize(pQueryInfo->colList); ++i) {
SColumn *pCol = taosArrayGetP(pQueryInfo->colList, i);
if (pCol->colIndex.columnIndex >= numOfCols) {
return pSql->retryReason;
}
}
} else {
// do nothing
}
return TSDB_CODE_SUCCESS;
}
void tscTableMetaCallBack(void *param, TAOS_RES *res, int code) { void tscTableMetaCallBack(void *param, TAOS_RES *res, int code) {
SSqlObj* pSql = (SSqlObj*)taosAcquireRef(tscObjRef, (int64_t)param); SSqlObj* pSql = (SSqlObj*)taosAcquireRef(tscObjRef, (int64_t)param);
...@@ -339,7 +380,8 @@ void tscTableMetaCallBack(void *param, TAOS_RES *res, int code) { ...@@ -339,7 +380,8 @@ void tscTableMetaCallBack(void *param, TAOS_RES *res, int code) {
if (TSDB_QUERY_HAS_TYPE(pQueryInfo->type, (TSDB_QUERY_TYPE_STABLE_SUBQUERY|TSDB_QUERY_TYPE_SUBQUERY|TSDB_QUERY_TYPE_TAG_FILTER_QUERY))) { if (TSDB_QUERY_HAS_TYPE(pQueryInfo->type, (TSDB_QUERY_TYPE_STABLE_SUBQUERY|TSDB_QUERY_TYPE_SUBQUERY|TSDB_QUERY_TYPE_TAG_FILTER_QUERY))) {
tscDebug("%p update local table meta, continue to process sql and send the corresponding query", pSql); tscDebug("%p update local table meta, continue to process sql and send the corresponding query", pSql);
STableMetaInfo* pTableMetaInfo = tscGetMetaInfo(pQueryInfo, 0); STableMetaInfo *pTableMetaInfo = tscGetMetaInfo(pQueryInfo, 0);
code = tscGetTableMeta(pSql, pTableMetaInfo); code = tscGetTableMeta(pSql, pTableMetaInfo);
assert(code == TSDB_CODE_TSC_ACTION_IN_PROGRESS || code == TSDB_CODE_SUCCESS); assert(code == TSDB_CODE_TSC_ACTION_IN_PROGRESS || code == TSDB_CODE_SUCCESS);
...@@ -349,6 +391,10 @@ void tscTableMetaCallBack(void *param, TAOS_RES *res, int code) { ...@@ -349,6 +391,10 @@ void tscTableMetaCallBack(void *param, TAOS_RES *res, int code) {
} }
assert((tscGetNumOfTags(pTableMetaInfo->pTableMeta) != 0)); assert((tscGetNumOfTags(pTableMetaInfo->pTableMeta) != 0));
code = updateMetaBeforeRetryQuery(pSql, pTableMetaInfo, pQueryInfo);
if (code != TSDB_CODE_SUCCESS) {
goto _error;
}
// tscProcessSql can add error into async res // tscProcessSql can add error into async res
tscProcessSql(pSql); tscProcessSql(pSql);
......
...@@ -670,7 +670,18 @@ int32_t tscToSQLCmd(SSqlObj* pSql, struct SSqlInfo* pInfo) { ...@@ -670,7 +670,18 @@ int32_t tscToSQLCmd(SSqlObj* pSql, struct SSqlInfo* pInfo) {
if ((code = setKillInfo(pSql, pInfo, pInfo->type)) != TSDB_CODE_SUCCESS) { if ((code = setKillInfo(pSql, pInfo, pInfo->type)) != TSDB_CODE_SUCCESS) {
return code; return code;
} }
break;
}
case TSDB_SQL_SYNC_DB_REPLICA: {
const char* msg1 = "invalid db name";
SStrToken* pzName = taosArrayGet(pInfo->pMiscInfo->a, 0);
assert(taosArrayGetSize(pInfo->pMiscInfo->a) == 1);
code = tNameSetDbName(&pTableMetaInfo->name, getAccountId(pSql), pzName);
if (code != TSDB_CODE_SUCCESS) {
return invalidSqlErrMsg(tscGetErrorMsgPayload(pCmd), msg1);
}
break; break;
} }
......
...@@ -350,8 +350,8 @@ void tscProcessMsgFromServer(SRpcMsg *rpcMsg, SRpcEpSet *pEpSet) { ...@@ -350,8 +350,8 @@ void tscProcessMsgFromServer(SRpcMsg *rpcMsg, SRpcEpSet *pEpSet) {
taosMsleep(duration); taosMsleep(duration);
} }
pSql->retryReason = rpcMsg->code;
rpcMsg->code = tscRenewTableMeta(pSql, 0); rpcMsg->code = tscRenewTableMeta(pSql, 0);
// if there is an error occurring, proceed to the following error handling procedure. // if there is an error occurring, proceed to the following error handling procedure.
if (rpcMsg->code == TSDB_CODE_TSC_ACTION_IN_PROGRESS) { if (rpcMsg->code == TSDB_CODE_TSC_ACTION_IN_PROGRESS) {
taosReleaseRef(tscObjRef, handle); taosReleaseRef(tscObjRef, handle);
...@@ -1284,6 +1284,23 @@ int32_t tscBuildUseDbMsg(SSqlObj *pSql, SSqlInfo *pInfo) { ...@@ -1284,6 +1284,23 @@ int32_t tscBuildUseDbMsg(SSqlObj *pSql, SSqlInfo *pInfo) {
return TSDB_CODE_SUCCESS; return TSDB_CODE_SUCCESS;
} }
int32_t tscBuildSyncDbReplicaMsg(SSqlObj* pSql, SSqlInfo *pInfo) {
SSqlCmd *pCmd = &pSql->cmd;
pCmd->payloadLen = sizeof(SSyncDbMsg);
if (TSDB_CODE_SUCCESS != tscAllocPayload(pCmd, pCmd->payloadLen)) {
tscError("%p failed to malloc for query msg", pSql);
return TSDB_CODE_TSC_OUT_OF_MEMORY;
}
SSyncDbMsg *pSyncMsg = (SSyncDbMsg *)pCmd->payload;
STableMetaInfo *pTableMetaInfo = tscGetTableMetaInfoFromCmd(pCmd, pCmd->clauseIndex, 0);
tNameExtractFullName(&pTableMetaInfo->name, pSyncMsg->db);
pCmd->msgType = TSDB_MSG_TYPE_CM_SYNC_DB;
return TSDB_CODE_SUCCESS;
}
int32_t tscBuildShowMsg(SSqlObj *pSql, SSqlInfo *pInfo) { int32_t tscBuildShowMsg(SSqlObj *pSql, SSqlInfo *pInfo) {
STscObj *pObj = pSql->pTscObj; STscObj *pObj = pSql->pTscObj;
SSqlCmd *pCmd = &pSql->cmd; SSqlCmd *pCmd = &pSql->cmd;
...@@ -2559,6 +2576,7 @@ void tscInitMsgsFp() { ...@@ -2559,6 +2576,7 @@ void tscInitMsgsFp() {
tscBuildMsg[TSDB_SQL_DROP_USER] = tscBuildDropUserAcctMsg; tscBuildMsg[TSDB_SQL_DROP_USER] = tscBuildDropUserAcctMsg;
tscBuildMsg[TSDB_SQL_DROP_ACCT] = tscBuildDropUserAcctMsg; tscBuildMsg[TSDB_SQL_DROP_ACCT] = tscBuildDropUserAcctMsg;
tscBuildMsg[TSDB_SQL_DROP_DB] = tscBuildDropDbMsg; tscBuildMsg[TSDB_SQL_DROP_DB] = tscBuildDropDbMsg;
tscBuildMsg[TSDB_SQL_SYNC_DB_REPLICA] = tscBuildSyncDbReplicaMsg;
tscBuildMsg[TSDB_SQL_DROP_TABLE] = tscBuildDropTableMsg; tscBuildMsg[TSDB_SQL_DROP_TABLE] = tscBuildDropTableMsg;
tscBuildMsg[TSDB_SQL_ALTER_USER] = tscBuildUserMsg; tscBuildMsg[TSDB_SQL_ALTER_USER] = tscBuildUserMsg;
tscBuildMsg[TSDB_SQL_CREATE_DNODE] = tscBuildCreateDnodeMsg; tscBuildMsg[TSDB_SQL_CREATE_DNODE] = tscBuildCreateDnodeMsg;
......
...@@ -51,6 +51,7 @@ enum { ...@@ -51,6 +51,7 @@ enum {
TSDB_DEFINE_SQL_TYPE( TSDB_SQL_ALTER_ACCT, "alter-acct" ) TSDB_DEFINE_SQL_TYPE( TSDB_SQL_ALTER_ACCT, "alter-acct" )
TSDB_DEFINE_SQL_TYPE( TSDB_SQL_ALTER_TABLE, "alter-table" ) TSDB_DEFINE_SQL_TYPE( TSDB_SQL_ALTER_TABLE, "alter-table" )
TSDB_DEFINE_SQL_TYPE( TSDB_SQL_ALTER_DB, "alter-db" ) TSDB_DEFINE_SQL_TYPE( TSDB_SQL_ALTER_DB, "alter-db" )
TSDB_DEFINE_SQL_TYPE(TSDB_SQL_SYNC_DB_REPLICA, "sync db-replica")
TSDB_DEFINE_SQL_TYPE( TSDB_SQL_CREATE_MNODE, "create-mnode" ) TSDB_DEFINE_SQL_TYPE( TSDB_SQL_CREATE_MNODE, "create-mnode" )
TSDB_DEFINE_SQL_TYPE( TSDB_SQL_DROP_MNODE, "drop-mnode" ) TSDB_DEFINE_SQL_TYPE( TSDB_SQL_DROP_MNODE, "drop-mnode" )
TSDB_DEFINE_SQL_TYPE( TSDB_SQL_CREATE_DNODE, "create-dnode" ) TSDB_DEFINE_SQL_TYPE( TSDB_SQL_CREATE_DNODE, "create-dnode" )
...@@ -87,13 +88,13 @@ enum { ...@@ -87,13 +88,13 @@ enum {
*/ */
TSDB_DEFINE_SQL_TYPE( TSDB_SQL_RETRIEVE_EMPTY_RESULT, "retrieve-empty-result" ) TSDB_DEFINE_SQL_TYPE( TSDB_SQL_RETRIEVE_EMPTY_RESULT, "retrieve-empty-result" )
TSDB_DEFINE_SQL_TYPE( TSDB_SQL_RESET_CACHE, "reset-cache" ) TSDB_DEFINE_SQL_TYPE( TSDB_SQL_RESET_CACHE, "reset-cache" )
TSDB_DEFINE_SQL_TYPE( TSDB_SQL_SERV_STATUS, "serv-status" ) TSDB_DEFINE_SQL_TYPE( TSDB_SQL_SERV_STATUS, "serv-status" )
TSDB_DEFINE_SQL_TYPE( TSDB_SQL_CURRENT_DB, "current-db" ) TSDB_DEFINE_SQL_TYPE( TSDB_SQL_CURRENT_DB, "current-db" )
TSDB_DEFINE_SQL_TYPE( TSDB_SQL_SERV_VERSION, "serv-version" ) TSDB_DEFINE_SQL_TYPE( TSDB_SQL_SERV_VERSION, "serv-version" )
TSDB_DEFINE_SQL_TYPE( TSDB_SQL_CLI_VERSION, "cli-version" ) TSDB_DEFINE_SQL_TYPE( TSDB_SQL_CLI_VERSION, "cli-version" )
TSDB_DEFINE_SQL_TYPE( TSDB_SQL_CURRENT_USER, "current-user ") TSDB_DEFINE_SQL_TYPE( TSDB_SQL_CURRENT_USER, "current-user ")
TSDB_DEFINE_SQL_TYPE( TSDB_SQL_CFG_LOCAL, "cfg-local" ) TSDB_DEFINE_SQL_TYPE( TSDB_SQL_CFG_LOCAL, "cfg-local" )
TSDB_DEFINE_SQL_TYPE( TSDB_SQL_MAX, "max" ) TSDB_DEFINE_SQL_TYPE( TSDB_SQL_MAX, "max" )
}; };
......
...@@ -49,6 +49,7 @@ int32_t dnodeInitShell() { ...@@ -49,6 +49,7 @@ int32_t dnodeInitShell() {
dnodeProcessShellMsgFp[TSDB_MSG_TYPE_CM_CREATE_DB] = dnodeDispatchToMWriteQueue; dnodeProcessShellMsgFp[TSDB_MSG_TYPE_CM_CREATE_DB] = dnodeDispatchToMWriteQueue;
dnodeProcessShellMsgFp[TSDB_MSG_TYPE_CM_CREATE_TP] = dnodeDispatchToMWriteQueue; dnodeProcessShellMsgFp[TSDB_MSG_TYPE_CM_CREATE_TP] = dnodeDispatchToMWriteQueue;
dnodeProcessShellMsgFp[TSDB_MSG_TYPE_CM_DROP_DB] = dnodeDispatchToMWriteQueue; dnodeProcessShellMsgFp[TSDB_MSG_TYPE_CM_DROP_DB] = dnodeDispatchToMWriteQueue;
dnodeProcessShellMsgFp[TSDB_MSG_TYPE_CM_SYNC_DB] = dnodeDispatchToMWriteQueue;
dnodeProcessShellMsgFp[TSDB_MSG_TYPE_CM_DROP_TP] = dnodeDispatchToMWriteQueue; dnodeProcessShellMsgFp[TSDB_MSG_TYPE_CM_DROP_TP] = dnodeDispatchToMWriteQueue;
dnodeProcessShellMsgFp[TSDB_MSG_TYPE_CM_ALTER_DB] = dnodeDispatchToMWriteQueue; dnodeProcessShellMsgFp[TSDB_MSG_TYPE_CM_ALTER_DB] = dnodeDispatchToMWriteQueue;
dnodeProcessShellMsgFp[TSDB_MSG_TYPE_CM_ALTER_TP] = dnodeDispatchToMWriteQueue; dnodeProcessShellMsgFp[TSDB_MSG_TYPE_CM_ALTER_TP] = dnodeDispatchToMWriteQueue;
......
...@@ -77,6 +77,7 @@ TAOS_DEFINE_MESSAGE_TYPE( TSDB_MSG_TYPE_CM_CREATE_DB, "create-db" ) ...@@ -77,6 +77,7 @@ TAOS_DEFINE_MESSAGE_TYPE( TSDB_MSG_TYPE_CM_CREATE_DB, "create-db" )
TAOS_DEFINE_MESSAGE_TYPE( TSDB_MSG_TYPE_CM_DROP_DB, "drop-db" ) TAOS_DEFINE_MESSAGE_TYPE( TSDB_MSG_TYPE_CM_DROP_DB, "drop-db" )
TAOS_DEFINE_MESSAGE_TYPE( TSDB_MSG_TYPE_CM_USE_DB, "use-db" ) TAOS_DEFINE_MESSAGE_TYPE( TSDB_MSG_TYPE_CM_USE_DB, "use-db" )
TAOS_DEFINE_MESSAGE_TYPE( TSDB_MSG_TYPE_CM_ALTER_DB, "alter-db" ) TAOS_DEFINE_MESSAGE_TYPE( TSDB_MSG_TYPE_CM_ALTER_DB, "alter-db" )
TAOS_DEFINE_MESSAGE_TYPE( TSDB_MSG_TYPE_CM_SYNC_DB, "sync-db-replica" )
TAOS_DEFINE_MESSAGE_TYPE( TSDB_MSG_TYPE_CM_CREATE_TABLE, "create-table" ) TAOS_DEFINE_MESSAGE_TYPE( TSDB_MSG_TYPE_CM_CREATE_TABLE, "create-table" )
TAOS_DEFINE_MESSAGE_TYPE( TSDB_MSG_TYPE_CM_DROP_TABLE, "drop-table" ) TAOS_DEFINE_MESSAGE_TYPE( TSDB_MSG_TYPE_CM_DROP_TABLE, "drop-table" )
TAOS_DEFINE_MESSAGE_TYPE( TSDB_MSG_TYPE_CM_ALTER_TABLE, "alter-table" ) TAOS_DEFINE_MESSAGE_TYPE( TSDB_MSG_TYPE_CM_ALTER_TABLE, "alter-table" )
...@@ -574,7 +575,7 @@ typedef struct { ...@@ -574,7 +575,7 @@ typedef struct {
typedef struct { typedef struct {
char db[TSDB_TABLE_FNAME_LEN]; char db[TSDB_TABLE_FNAME_LEN];
uint8_t ignoreNotExists; uint8_t ignoreNotExists;
} SDropDbMsg, SUseDbMsg; } SDropDbMsg, SUseDbMsg, SSyncDbMsg;
// IMPORTANT: sizeof(SVnodeStatisticInfo) should not exceed // IMPORTANT: sizeof(SVnodeStatisticInfo) should not exceed
// TSDB_FILE_HEADER_LEN/4 - TSDB_FILE_HEADER_VERSION_SIZE // TSDB_FILE_HEADER_LEN/4 - TSDB_FILE_HEADER_VERSION_SIZE
......
...@@ -152,56 +152,57 @@ ...@@ -152,56 +152,57 @@
#define TK_NOW 133 #define TK_NOW 133
#define TK_RESET 134 #define TK_RESET 134
#define TK_QUERY 135 #define TK_QUERY 135
#define TK_ADD 136 #define TK_SYNCDB 136
#define TK_COLUMN 137 #define TK_ADD 137
#define TK_TAG 138 #define TK_COLUMN 138
#define TK_CHANGE 139 #define TK_TAG 139
#define TK_SET 140 #define TK_CHANGE 140
#define TK_KILL 141 #define TK_SET 141
#define TK_CONNECTION 142 #define TK_KILL 142
#define TK_STREAM 143 #define TK_CONNECTION 143
#define TK_COLON 144 #define TK_STREAM 144
#define TK_ABORT 145 #define TK_COLON 145
#define TK_AFTER 146 #define TK_ABORT 146
#define TK_ATTACH 147 #define TK_AFTER 147
#define TK_BEFORE 148 #define TK_ATTACH 148
#define TK_BEGIN 149 #define TK_BEFORE 149
#define TK_CASCADE 150 #define TK_BEGIN 150
#define TK_CLUSTER 151 #define TK_CASCADE 151
#define TK_CONFLICT 152 #define TK_CLUSTER 152
#define TK_COPY 153 #define TK_CONFLICT 153
#define TK_DEFERRED 154 #define TK_COPY 154
#define TK_DELIMITERS 155 #define TK_DEFERRED 155
#define TK_DETACH 156 #define TK_DELIMITERS 156
#define TK_EACH 157 #define TK_DETACH 157
#define TK_END 158 #define TK_EACH 158
#define TK_EXPLAIN 159 #define TK_END 159
#define TK_FAIL 160 #define TK_EXPLAIN 160
#define TK_FOR 161 #define TK_FAIL 161
#define TK_IGNORE 162 #define TK_FOR 162
#define TK_IMMEDIATE 163 #define TK_IGNORE 163
#define TK_INITIALLY 164 #define TK_IMMEDIATE 164
#define TK_INSTEAD 165 #define TK_INITIALLY 165
#define TK_MATCH 166 #define TK_INSTEAD 166
#define TK_KEY 167 #define TK_MATCH 167
#define TK_OF 168 #define TK_KEY 168
#define TK_RAISE 169 #define TK_OF 169
#define TK_REPLACE 170 #define TK_RAISE 170
#define TK_RESTRICT 171 #define TK_REPLACE 171
#define TK_ROW 172 #define TK_RESTRICT 172
#define TK_STATEMENT 173 #define TK_ROW 173
#define TK_TRIGGER 174 #define TK_STATEMENT 174
#define TK_VIEW 175 #define TK_TRIGGER 175
#define TK_SEMI 176 #define TK_VIEW 176
#define TK_NONE 177 #define TK_SEMI 177
#define TK_PREV 178 #define TK_NONE 178
#define TK_LINEAR 179 #define TK_PREV 179
#define TK_IMPORT 180 #define TK_LINEAR 180
#define TK_TBNAME 181 #define TK_IMPORT 181
#define TK_JOIN 182 #define TK_TBNAME 182
#define TK_INSERT 183 #define TK_JOIN 183
#define TK_INTO 184 #define TK_INSERT 184
#define TK_VALUES 185 #define TK_INTO 185
#define TK_VALUES 186
#define TK_SPACE 300 #define TK_SPACE 300
......
...@@ -50,6 +50,7 @@ static int32_t mnodeGetDbMeta(STableMetaMsg *pMeta, SShowObj *pShow, void *pConn ...@@ -50,6 +50,7 @@ static int32_t mnodeGetDbMeta(STableMetaMsg *pMeta, SShowObj *pShow, void *pConn
static int32_t mnodeRetrieveDbs(SShowObj *pShow, char *data, int32_t rows, void *pConn); static int32_t mnodeRetrieveDbs(SShowObj *pShow, char *data, int32_t rows, void *pConn);
static int32_t mnodeProcessCreateDbMsg(SMnodeMsg *pMsg); static int32_t mnodeProcessCreateDbMsg(SMnodeMsg *pMsg);
static int32_t mnodeProcessDropDbMsg(SMnodeMsg *pMsg); static int32_t mnodeProcessDropDbMsg(SMnodeMsg *pMsg);
static int32_t mnodeProcessSyncDbMsg(SMnodeMsg *pMsg);
int32_t mnodeProcessAlterDbMsg(SMnodeMsg *pMsg); int32_t mnodeProcessAlterDbMsg(SMnodeMsg *pMsg);
#ifndef _TOPIC #ifndef _TOPIC
...@@ -178,6 +179,7 @@ int32_t mnodeInitDbs() { ...@@ -178,6 +179,7 @@ int32_t mnodeInitDbs() {
mnodeAddWriteMsgHandle(TSDB_MSG_TYPE_CM_CREATE_DB, mnodeProcessCreateDbMsg); mnodeAddWriteMsgHandle(TSDB_MSG_TYPE_CM_CREATE_DB, mnodeProcessCreateDbMsg);
mnodeAddWriteMsgHandle(TSDB_MSG_TYPE_CM_ALTER_DB, mnodeProcessAlterDbMsg); mnodeAddWriteMsgHandle(TSDB_MSG_TYPE_CM_ALTER_DB, mnodeProcessAlterDbMsg);
mnodeAddWriteMsgHandle(TSDB_MSG_TYPE_CM_DROP_DB, mnodeProcessDropDbMsg); mnodeAddWriteMsgHandle(TSDB_MSG_TYPE_CM_DROP_DB, mnodeProcessDropDbMsg);
mnodeAddWriteMsgHandle(TSDB_MSG_TYPE_CM_SYNC_DB, mnodeProcessSyncDbMsg);
mnodeAddShowMetaHandle(TSDB_MGMT_TABLE_DB, mnodeGetDbMeta); mnodeAddShowMetaHandle(TSDB_MGMT_TABLE_DB, mnodeGetDbMeta);
mnodeAddShowRetrieveHandle(TSDB_MGMT_TABLE_DB, mnodeRetrieveDbs); mnodeAddShowRetrieveHandle(TSDB_MGMT_TABLE_DB, mnodeRetrieveDbs);
mnodeAddShowFreeIterHandle(TSDB_MGMT_TABLE_DB, mnodeCancelGetNextDb); mnodeAddShowFreeIterHandle(TSDB_MGMT_TABLE_DB, mnodeCancelGetNextDb);
...@@ -1184,6 +1186,10 @@ static int32_t mnodeProcessDropDbMsg(SMnodeMsg *pMsg) { ...@@ -1184,6 +1186,10 @@ static int32_t mnodeProcessDropDbMsg(SMnodeMsg *pMsg) {
return mnodeDropDb(pMsg); return mnodeDropDb(pMsg);
} }
static int32_t mnodeProcessSyncDbMsg(SMnodeMsg *pMsg) {
return 0;
}
void mnodeDropAllDbs(SAcctObj *pAcct) { void mnodeDropAllDbs(SAcctObj *pAcct) {
int32_t numOfDbs = 0; int32_t numOfDbs = 0;
SDbObj *pDb = NULL; SDbObj *pDb = NULL;
......
...@@ -726,6 +726,9 @@ expritem(A) ::= . {A = 0;} ...@@ -726,6 +726,9 @@ expritem(A) ::= . {A = 0;}
///////////////////////////////////reset query cache////////////////////////////////////// ///////////////////////////////////reset query cache//////////////////////////////////////
cmd ::= RESET QUERY CACHE. { setDCLSqlElems(pInfo, TSDB_SQL_RESET_CACHE, 0);} cmd ::= RESET QUERY CACHE. { setDCLSqlElems(pInfo, TSDB_SQL_RESET_CACHE, 0);}
///////////////////////////////////sync replica database//////////////////////////////////
cmd ::= SYNCDB ids(X) REPLICA.{ setDCLSqlElems(pInfo, TSDB_SQL_SYNC_DB_REPLICA, 1, &X);}
///////////////////////////////////ALTER TABLE statement////////////////////////////////// ///////////////////////////////////ALTER TABLE statement//////////////////////////////////
cmd ::= ALTER TABLE ids(X) cpxName(F) ADD COLUMN columnlist(A). { cmd ::= ALTER TABLE ids(X) cpxName(F) ADD COLUMN columnlist(A). {
X.n += F.n; X.n += F.n;
......
...@@ -911,6 +911,7 @@ void setDCLSqlElems(SSqlInfo *pInfo, int32_t type, int32_t nParam, ...) { ...@@ -911,6 +911,7 @@ void setDCLSqlElems(SSqlInfo *pInfo, int32_t type, int32_t nParam, ...) {
SStrToken *pToken = va_arg(va, SStrToken *); SStrToken *pToken = va_arg(va, SStrToken *);
taosArrayPush(pInfo->pMiscInfo->a, pToken); taosArrayPush(pInfo->pMiscInfo->a, pToken);
} }
va_end(va); va_end(va);
} }
......
...@@ -100,6 +100,7 @@ static SKeyword keywordTable[] = { ...@@ -100,6 +100,7 @@ static SKeyword keywordTable[] = {
{"ACCOUNT", TK_ACCOUNT}, {"ACCOUNT", TK_ACCOUNT},
{"USE", TK_USE}, {"USE", TK_USE},
{"DESCRIBE", TK_DESCRIBE}, {"DESCRIBE", TK_DESCRIBE},
{"SYNCDB", TK_SYNCDB},
{"ALTER", TK_ALTER}, {"ALTER", TK_ALTER},
{"PASS", TK_PASS}, {"PASS", TK_PASS},
{"PRIVILEGE", TK_PRIVILEGE}, {"PRIVILEGE", TK_PRIVILEGE},
......
...@@ -97,28 +97,28 @@ ...@@ -97,28 +97,28 @@
#endif #endif
/************* Begin control #defines *****************************************/ /************* Begin control #defines *****************************************/
#define YYCODETYPE unsigned short int #define YYCODETYPE unsigned short int
#define YYNOCODE 263 #define YYNOCODE 264
#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;
SLimitVal yy18; SCreateTableSql* yy14;
SFromInfo* yy70; int yy20;
SSessionWindowVal yy87; tSqlExpr* yy118;
SCreateDbInfo yy94; SArray* yy159;
int yy116; SIntervalVal yy184;
SSubclauseInfo* yy141; SCreatedTableInfo yy206;
tSqlExpr* yy170; SSessionWindowVal yy249;
SCreateTableSql* yy194; SQuerySqlNode* yy272;
tVariant yy218; int64_t yy317;
SIntervalVal yy220; SCreateDbInfo yy322;
SCreatedTableInfo yy252; SCreateAcctInfo yy351;
SQuerySqlNode* yy254; SSubclauseInfo* yy391;
SCreateAcctInfo yy419; TAOS_FIELD yy407;
SArray* yy429; SLimitVal yy440;
TAOS_FIELD yy451; tVariant yy488;
int64_t yy481; SFromInfo* yy514;
} YYMINORTYPE; } YYMINORTYPE;
#ifndef YYSTACKDEPTH #ifndef YYSTACKDEPTH
#define YYSTACKDEPTH 100 #define YYSTACKDEPTH 100
...@@ -128,17 +128,17 @@ typedef union { ...@@ -128,17 +128,17 @@ typedef union {
#define ParseARG_FETCH SSqlInfo* pInfo = yypParser->pInfo #define ParseARG_FETCH SSqlInfo* pInfo = yypParser->pInfo
#define ParseARG_STORE yypParser->pInfo = pInfo #define ParseARG_STORE yypParser->pInfo = pInfo
#define YYFALLBACK 1 #define YYFALLBACK 1
#define YYNSTATE 313 #define YYNSTATE 315
#define YYNRULE 265 #define YYNRULE 266
#define YYNTOKEN 186 #define YYNTOKEN 187
#define YY_MAX_SHIFT 312 #define YY_MAX_SHIFT 314
#define YY_MIN_SHIFTREDUCE 502 #define YY_MIN_SHIFTREDUCE 505
#define YY_MAX_SHIFTREDUCE 766 #define YY_MAX_SHIFTREDUCE 770
#define YY_ERROR_ACTION 767 #define YY_ERROR_ACTION 771
#define YY_ACCEPT_ACTION 768 #define YY_ACCEPT_ACTION 772
#define YY_NO_ACTION 769 #define YY_NO_ACTION 773
#define YY_MIN_REDUCE 770 #define YY_MIN_REDUCE 774
#define YY_MAX_REDUCE 1034 #define YY_MAX_REDUCE 1039
/************* End control #defines *******************************************/ /************* End control #defines *******************************************/
/* Define the yytestcase() macro to be a no-op if is not already defined /* Define the yytestcase() macro to be a no-op if is not already defined
...@@ -204,259 +204,259 @@ typedef union { ...@@ -204,259 +204,259 @@ 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 (676) #define YY_ACTTAB_COUNT (679)
static const YYACTIONTYPE yy_action[] = { static const YYACTIONTYPE yy_action[] = {
/* 0 */ 910, 549, 201, 310, 205, 139, 937, 3, 166, 550, /* 0 */ 133, 552, 202, 312, 206, 140, 941, 17, 85, 553,
/* 10 */ 768, 312, 17, 47, 48, 139, 51, 52, 30, 180, /* 10 */ 772, 314, 179, 47, 48, 140, 51, 52, 30, 181,
/* 20 */ 213, 41, 180, 50, 260, 55, 53, 57, 54, 1016, /* 20 */ 214, 41, 181, 50, 262, 55, 53, 57, 54, 1020,
/* 30 */ 916, 208, 1017, 46, 45, 178, 180, 44, 43, 42, /* 30 */ 920, 209, 1021, 46, 45, 185, 181, 44, 43, 42,
/* 40 */ 47, 48, 219, 51, 52, 207, 1017, 213, 41, 549, /* 40 */ 47, 48, 908, 51, 52, 208, 1021, 214, 41, 552,
/* 50 */ 50, 260, 55, 53, 57, 54, 928, 550, 184, 202, /* 50 */ 50, 262, 55, 53, 57, 54, 932, 553, 1017, 203,
/* 60 */ 46, 45, 913, 218, 44, 43, 42, 48, 934, 51, /* 60 */ 46, 45, 917, 247, 44, 43, 42, 48, 938, 51,
/* 70 */ 52, 240, 968, 213, 41, 549, 50, 260, 55, 53, /* 70 */ 52, 242, 972, 214, 41, 552, 50, 262, 55, 53,
/* 80 */ 57, 54, 969, 550, 255, 220, 46, 45, 276, 916, /* 80 */ 57, 54, 973, 553, 257, 278, 46, 45, 298, 225,
/* 90 */ 44, 43, 42, 503, 504, 505, 506, 507, 508, 509, /* 90 */ 44, 43, 42, 506, 507, 508, 509, 510, 511, 512,
/* 100 */ 510, 511, 512, 513, 514, 515, 311, 628, 84, 230, /* 100 */ 513, 514, 515, 516, 517, 518, 313, 631, 1016, 231,
/* 110 */ 69, 916, 1013, 47, 48, 30, 51, 52, 296, 30, /* 110 */ 70, 552, 30, 47, 48, 1015, 51, 52, 819, 553,
/* 120 */ 213, 41, 549, 50, 260, 55, 53, 57, 54, 64, /* 120 */ 214, 41, 166, 50, 262, 55, 53, 57, 54, 44,
/* 130 */ 550, 306, 714, 46, 45, 286, 285, 44, 43, 42, /* 130 */ 43, 42, 717, 46, 45, 288, 287, 44, 43, 42,
/* 140 */ 47, 49, 904, 51, 52, 224, 1012, 213, 41, 65, /* 140 */ 47, 49, 198, 51, 52, 140, 140, 214, 41, 234,
/* 150 */ 50, 260, 55, 53, 57, 54, 216, 916, 902, 913, /* 150 */ 50, 262, 55, 53, 57, 54, 916, 238, 237, 227,
/* 160 */ 46, 45, 222, 912, 44, 43, 42, 23, 274, 305, /* 160 */ 46, 45, 285, 284, 44, 43, 42, 23, 276, 307,
/* 170 */ 304, 273, 272, 271, 303, 270, 302, 301, 300, 269, /* 170 */ 306, 275, 274, 273, 305, 272, 304, 303, 302, 271,
/* 180 */ 299, 298, 876, 139, 864, 865, 866, 867, 868, 869, /* 180 */ 301, 300, 880, 30, 868, 869, 870, 871, 872, 873,
/* 190 */ 870, 871, 872, 873, 874, 875, 877, 878, 51, 52, /* 190 */ 874, 875, 876, 877, 878, 879, 881, 882, 51, 52,
/* 200 */ 815, 139, 213, 41, 165, 50, 260, 55, 53, 57, /* 200 */ 18, 30, 214, 41, 906, 50, 262, 55, 53, 57,
/* 210 */ 54, 1011, 18, 81, 226, 46, 45, 283, 282, 44, /* 210 */ 54, 259, 79, 78, 25, 46, 45, 190, 199, 44,
/* 220 */ 43, 42, 212, 727, 928, 25, 718, 68, 721, 189, /* 220 */ 43, 42, 82, 191, 217, 28, 30, 917, 268, 118,
/* 230 */ 724, 223, 212, 727, 278, 190, 718, 276, 721, 203, /* 230 */ 117, 189, 12, 213, 730, 932, 84, 721, 81, 724,
/* 240 */ 724, 117, 116, 188, 899, 900, 29, 903, 257, 233, /* 240 */ 74, 727, 218, 213, 730, 917, 80, 721, 36, 724,
/* 250 */ 77, 44, 43, 42, 209, 210, 237, 236, 259, 901, /* 250 */ 204, 727, 30, 903, 904, 29, 907, 46, 45, 71,
/* 260 */ 23, 197, 305, 304, 209, 210, 225, 303, 78, 302, /* 260 */ 74, 44, 43, 42, 223, 210, 211, 281, 36, 261,
/* 270 */ 301, 300, 73, 299, 298, 884, 104, 30, 882, 883, /* 270 */ 917, 23, 914, 307, 306, 210, 211, 723, 305, 726,
/* 280 */ 36, 296, 720, 885, 723, 887, 888, 886, 667, 889, /* 280 */ 304, 303, 302, 278, 301, 300, 311, 310, 126, 677,
/* 290 */ 890, 55, 53, 57, 54, 132, 309, 308, 125, 46, /* 290 */ 241, 888, 68, 282, 886, 887, 917, 245, 197, 889,
/* 300 */ 45, 914, 239, 44, 43, 42, 102, 107, 30, 196, /* 300 */ 219, 891, 892, 890, 670, 893, 894, 55, 53, 57,
/* 310 */ 664, 73, 96, 106, 112, 115, 105, 24, 217, 36, /* 310 */ 54, 1, 154, 263, 220, 46, 45, 30, 221, 44,
/* 320 */ 674, 913, 109, 5, 155, 56, 261, 79, 243, 33, /* 320 */ 43, 42, 105, 103, 108, 308, 920, 298, 69, 97,
/* 330 */ 154, 91, 86, 90, 30, 56, 173, 169, 726, 30, /* 330 */ 107, 113, 116, 106, 224, 655, 56, 280, 652, 110,
/* 340 */ 70, 30, 171, 168, 120, 119, 118, 12, 726, 279, /* 340 */ 653, 226, 654, 30, 920, 667, 56, 5, 156, 729,
/* 350 */ 211, 83, 913, 80, 725, 824, 46, 45, 245, 165, /* 350 */ 183, 920, 24, 33, 155, 92, 87, 91, 286, 729,
/* 360 */ 44, 43, 42, 198, 725, 816, 671, 652, 182, 165, /* 360 */ 905, 917, 174, 170, 719, 728, 228, 229, 172, 169,
/* 370 */ 649, 719, 650, 722, 651, 280, 1, 153, 913, 716, /* 370 */ 121, 120, 119, 828, 820, 728, 918, 166, 166, 3,
/* 380 */ 284, 61, 288, 913, 183, 913, 241, 695, 696, 680, /* 380 */ 167, 243, 674, 212, 290, 31, 683, 917, 698, 699,
/* 390 */ 31, 686, 687, 134, 6, 60, 20, 747, 227, 228, /* 390 */ 135, 689, 690, 750, 731, 60, 20, 19, 19, 722,
/* 400 */ 728, 19, 638, 62, 19, 263, 31, 640, 265, 31, /* 400 */ 720, 725, 61, 64, 641, 184, 265, 643, 31, 733,
/* 410 */ 639, 60, 82, 28, 60, 717, 266, 95, 94, 14, /* 410 */ 31, 60, 267, 642, 115, 114, 83, 60, 96, 95,
/* 420 */ 13, 67, 730, 627, 185, 101, 100, 179, 16, 15, /* 420 */ 186, 14, 13, 65, 62, 180, 187, 6, 102, 101,
/* 430 */ 979, 656, 654, 657, 655, 114, 113, 130, 128, 186, /* 430 */ 67, 188, 630, 16, 15, 659, 657, 660, 658, 131,
/* 440 */ 187, 193, 194, 192, 177, 191, 181, 1026, 915, 978, /* 440 */ 129, 194, 195, 193, 656, 178, 192, 182, 1031, 919,
/* 450 */ 214, 975, 974, 215, 287, 131, 39, 936, 944, 946, /* 450 */ 983, 239, 982, 215, 979, 978, 216, 289, 39, 132,
/* 460 */ 133, 137, 929, 244, 129, 150, 961, 960, 911, 909, /* 460 */ 940, 948, 950, 130, 134, 933, 138, 246, 965, 964,
/* 470 */ 149, 679, 246, 151, 204, 152, 653, 250, 258, 827, /* 470 */ 151, 915, 150, 682, 248, 913, 205, 299, 104, 884,
/* 480 */ 140, 66, 141, 268, 37, 63, 175, 926, 34, 277, /* 480 */ 160, 260, 152, 153, 145, 143, 141, 831, 270, 66,
/* 490 */ 248, 823, 253, 142, 1031, 58, 92, 1030, 1028, 256, /* 490 */ 250, 930, 63, 255, 37, 176, 34, 279, 58, 142,
/* 500 */ 156, 143, 281, 1025, 98, 1024, 1022, 254, 157, 845, /* 500 */ 827, 1036, 93, 1035, 1033, 157, 283, 1030, 99, 1029,
/* 510 */ 35, 32, 38, 252, 176, 812, 108, 810, 110, 111, /* 510 */ 1027, 158, 849, 35, 258, 32, 38, 256, 177, 816,
/* 520 */ 808, 807, 229, 167, 805, 804, 803, 802, 801, 800, /* 520 */ 109, 814, 111, 112, 254, 812, 811, 230, 168, 252,
/* 530 */ 170, 172, 797, 795, 793, 791, 789, 174, 247, 242, /* 530 */ 809, 808, 807, 806, 805, 804, 171, 173, 801, 799,
/* 540 */ 71, 74, 249, 962, 40, 297, 103, 289, 290, 291, /* 540 */ 797, 795, 793, 175, 249, 244, 72, 75, 40, 251,
/* 550 */ 292, 293, 294, 295, 199, 221, 307, 766, 231, 232, /* 550 */ 966, 291, 292, 293, 294, 295, 296, 297, 309, 200,
/* 560 */ 267, 765, 234, 235, 764, 200, 238, 87, 88, 752, /* 560 */ 222, 770, 269, 232, 233, 769, 235, 201, 196, 88,
/* 570 */ 195, 243, 75, 8, 262, 806, 72, 659, 681, 135, /* 570 */ 89, 236, 768, 756, 755, 240, 245, 8, 810, 662,
/* 580 */ 76, 121, 159, 846, 160, 161, 158, 162, 164, 122, /* 580 */ 122, 161, 123, 165, 163, 803, 850, 159, 162, 164,
/* 590 */ 163, 799, 2, 123, 880, 124, 798, 790, 684, 144, /* 590 */ 124, 802, 73, 125, 794, 4, 2, 264, 76, 684,
/* 600 */ 147, 145, 146, 4, 136, 148, 892, 206, 251, 26, /* 600 */ 136, 137, 687, 77, 144, 148, 146, 147, 149, 896,
/* 610 */ 688, 138, 9, 10, 729, 27, 7, 11, 21, 731, /* 610 */ 207, 253, 26, 691, 139, 27, 9, 732, 10, 7,
/* 620 */ 22, 85, 264, 591, 587, 83, 585, 584, 583, 580, /* 620 */ 734, 11, 21, 266, 22, 86, 594, 84, 590, 588,
/* 630 */ 553, 275, 93, 89, 31, 630, 59, 97, 629, 99, /* 630 */ 587, 586, 583, 556, 277, 31, 59, 90, 633, 94,
/* 640 */ 626, 575, 573, 565, 571, 567, 569, 563, 561, 594, /* 640 */ 632, 629, 578, 98, 100, 576, 568, 574, 570, 572,
/* 650 */ 593, 592, 590, 589, 588, 586, 582, 581, 60, 551, /* 650 */ 566, 564, 597, 596, 595, 593, 592, 591, 589, 585,
/* 660 */ 519, 517, 770, 769, 769, 769, 769, 769, 769, 769, /* 660 */ 584, 60, 554, 522, 520, 774, 773, 773, 773, 773,
/* 670 */ 769, 769, 769, 769, 126, 127, /* 670 */ 773, 773, 773, 773, 773, 773, 773, 127, 128,
}; };
static const YYCODETYPE yy_lookahead[] = { static const YYCODETYPE yy_lookahead[] = {
/* 0 */ 190, 1, 189, 190, 209, 190, 190, 193, 194, 9, /* 0 */ 191, 1, 190, 191, 210, 191, 191, 252, 197, 9,
/* 10 */ 187, 188, 251, 13, 14, 190, 16, 17, 190, 251, /* 10 */ 188, 189, 252, 13, 14, 191, 16, 17, 191, 252,
/* 20 */ 20, 21, 251, 23, 24, 25, 26, 27, 28, 261, /* 20 */ 20, 21, 252, 23, 24, 25, 26, 27, 28, 262,
/* 30 */ 235, 260, 261, 33, 34, 251, 251, 37, 38, 39, /* 30 */ 236, 261, 262, 33, 34, 252, 252, 37, 38, 39,
/* 40 */ 13, 14, 232, 16, 17, 260, 261, 20, 21, 1, /* 40 */ 13, 14, 231, 16, 17, 261, 262, 20, 21, 1,
/* 50 */ 23, 24, 25, 26, 27, 28, 233, 9, 251, 231, /* 50 */ 23, 24, 25, 26, 27, 28, 234, 9, 252, 232,
/* 60 */ 33, 34, 234, 209, 37, 38, 39, 14, 252, 16, /* 60 */ 33, 34, 235, 254, 37, 38, 39, 14, 253, 16,
/* 70 */ 17, 248, 257, 20, 21, 1, 23, 24, 25, 26, /* 70 */ 17, 249, 258, 20, 21, 1, 23, 24, 25, 26,
/* 80 */ 27, 28, 257, 9, 259, 209, 33, 34, 79, 235, /* 80 */ 27, 28, 258, 9, 260, 79, 33, 34, 81, 67,
/* 90 */ 37, 38, 39, 45, 46, 47, 48, 49, 50, 51, /* 90 */ 37, 38, 39, 45, 46, 47, 48, 49, 50, 51,
/* 100 */ 52, 53, 54, 55, 56, 57, 58, 5, 196, 61, /* 100 */ 52, 53, 54, 55, 56, 57, 58, 5, 252, 61,
/* 110 */ 110, 235, 251, 13, 14, 190, 16, 17, 81, 190, /* 110 */ 110, 1, 191, 13, 14, 252, 16, 17, 196, 9,
/* 120 */ 20, 21, 1, 23, 24, 25, 26, 27, 28, 109, /* 120 */ 20, 21, 200, 23, 24, 25, 26, 27, 28, 37,
/* 130 */ 9, 209, 105, 33, 34, 33, 34, 37, 38, 39, /* 130 */ 38, 39, 105, 33, 34, 33, 34, 37, 38, 39,
/* 140 */ 13, 14, 230, 16, 17, 67, 251, 20, 21, 129, /* 140 */ 13, 14, 252, 16, 17, 191, 191, 20, 21, 135,
/* 150 */ 23, 24, 25, 26, 27, 28, 231, 235, 0, 234, /* 150 */ 23, 24, 25, 26, 27, 28, 235, 143, 144, 137,
/* 160 */ 33, 34, 67, 234, 37, 38, 39, 88, 89, 90, /* 160 */ 33, 34, 140, 141, 37, 38, 39, 88, 89, 90,
/* 170 */ 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, /* 170 */ 91, 92, 93, 94, 95, 96, 97, 98, 99, 100,
/* 180 */ 101, 102, 208, 190, 210, 211, 212, 213, 214, 215, /* 180 */ 101, 102, 209, 191, 211, 212, 213, 214, 215, 216,
/* 190 */ 216, 217, 218, 219, 220, 221, 222, 223, 16, 17, /* 190 */ 217, 218, 219, 220, 221, 222, 223, 224, 16, 17,
/* 200 */ 195, 190, 20, 21, 199, 23, 24, 25, 26, 27, /* 200 */ 44, 191, 20, 21, 0, 23, 24, 25, 26, 27,
/* 210 */ 28, 251, 44, 196, 136, 33, 34, 139, 140, 37, /* 210 */ 28, 256, 258, 258, 104, 33, 34, 61, 252, 37,
/* 220 */ 38, 39, 1, 2, 233, 104, 5, 196, 7, 61, /* 220 */ 38, 39, 197, 67, 232, 104, 191, 235, 107, 73,
/* 230 */ 9, 136, 1, 2, 139, 67, 5, 79, 7, 248, /* 230 */ 74, 75, 104, 1, 2, 234, 108, 5, 110, 7,
/* 240 */ 9, 73, 74, 75, 227, 228, 229, 230, 255, 135, /* 240 */ 104, 9, 232, 1, 2, 235, 237, 5, 112, 7,
/* 250 */ 257, 37, 38, 39, 33, 34, 142, 143, 37, 228, /* 250 */ 249, 9, 191, 228, 229, 230, 231, 33, 34, 250,
/* 260 */ 88, 251, 90, 91, 33, 34, 190, 95, 257, 97, /* 260 */ 104, 37, 38, 39, 67, 33, 34, 232, 112, 37,
/* 270 */ 98, 99, 104, 101, 102, 208, 76, 190, 211, 212, /* 270 */ 235, 88, 191, 90, 91, 33, 34, 5, 95, 7,
/* 280 */ 112, 81, 5, 216, 7, 218, 219, 220, 37, 222, /* 280 */ 97, 98, 99, 79, 101, 102, 64, 65, 66, 105,
/* 290 */ 223, 25, 26, 27, 28, 190, 64, 65, 66, 33, /* 290 */ 134, 209, 136, 232, 212, 213, 235, 113, 142, 217,
/* 300 */ 34, 225, 134, 37, 38, 39, 62, 63, 190, 141, /* 300 */ 210, 219, 220, 221, 37, 223, 224, 25, 26, 27,
/* 310 */ 109, 104, 68, 69, 70, 71, 72, 116, 231, 112, /* 310 */ 28, 198, 199, 15, 233, 33, 34, 191, 210, 37,
/* 320 */ 105, 234, 78, 62, 63, 104, 15, 236, 113, 68, /* 320 */ 38, 39, 76, 62, 63, 210, 236, 81, 197, 68,
/* 330 */ 69, 70, 71, 72, 190, 104, 62, 63, 117, 190, /* 330 */ 69, 70, 71, 72, 137, 2, 104, 140, 5, 78,
/* 340 */ 249, 190, 68, 69, 70, 71, 72, 104, 117, 231, /* 340 */ 7, 191, 9, 191, 236, 109, 104, 62, 63, 117,
/* 350 */ 60, 108, 234, 110, 133, 195, 33, 34, 253, 199, /* 350 */ 252, 236, 116, 68, 69, 70, 71, 72, 232, 117,
/* 360 */ 37, 38, 39, 251, 133, 195, 115, 2, 251, 199, /* 360 */ 229, 235, 62, 63, 1, 133, 33, 34, 68, 69,
/* 370 */ 5, 5, 7, 7, 9, 231, 197, 198, 234, 1, /* 370 */ 70, 71, 72, 196, 196, 133, 226, 200, 200, 194,
/* 380 */ 231, 109, 231, 234, 251, 234, 105, 124, 125, 105, /* 380 */ 195, 105, 115, 60, 232, 109, 105, 235, 124, 125,
/* 390 */ 109, 105, 105, 109, 104, 109, 109, 105, 33, 34, /* 390 */ 109, 105, 105, 105, 105, 109, 109, 109, 109, 5,
/* 400 */ 105, 109, 105, 131, 109, 105, 109, 105, 105, 109, /* 400 */ 37, 7, 109, 109, 105, 252, 105, 105, 109, 111,
/* 410 */ 105, 109, 109, 104, 109, 37, 107, 137, 138, 137, /* 410 */ 109, 109, 105, 105, 76, 77, 109, 109, 138, 139,
/* 420 */ 138, 104, 111, 106, 251, 137, 138, 251, 137, 138, /* 420 */ 252, 138, 139, 129, 131, 252, 252, 104, 138, 139,
/* 430 */ 226, 5, 5, 7, 7, 76, 77, 62, 63, 251, /* 430 */ 104, 252, 106, 138, 139, 5, 5, 7, 7, 62,
/* 440 */ 251, 251, 251, 251, 251, 251, 251, 235, 235, 226, /* 440 */ 63, 252, 252, 252, 111, 252, 252, 252, 236, 236,
/* 450 */ 226, 226, 226, 226, 226, 190, 250, 190, 190, 190, /* 450 */ 227, 191, 227, 227, 227, 227, 227, 227, 251, 191,
/* 460 */ 190, 190, 233, 233, 60, 190, 258, 258, 233, 190, /* 460 */ 191, 191, 191, 60, 191, 234, 191, 234, 259, 259,
/* 470 */ 237, 117, 254, 190, 254, 190, 111, 119, 122, 190, /* 470 */ 191, 234, 238, 117, 255, 191, 255, 103, 87, 225,
/* 480 */ 246, 128, 245, 190, 190, 130, 190, 247, 190, 190, /* 480 */ 206, 122, 191, 191, 243, 245, 247, 191, 191, 128,
/* 490 */ 254, 190, 254, 244, 190, 127, 190, 190, 190, 126, /* 490 */ 255, 248, 130, 255, 191, 191, 191, 191, 127, 246,
/* 500 */ 190, 243, 190, 190, 190, 190, 190, 121, 190, 190, /* 500 */ 191, 191, 191, 191, 191, 191, 191, 191, 191, 191,
/* 510 */ 190, 190, 190, 120, 190, 190, 190, 190, 190, 190, /* 510 */ 191, 191, 191, 191, 126, 191, 191, 121, 191, 191,
/* 520 */ 190, 190, 190, 190, 190, 190, 190, 190, 190, 190, /* 520 */ 191, 191, 191, 191, 120, 191, 191, 191, 191, 119,
/* 530 */ 190, 190, 190, 190, 190, 190, 190, 190, 118, 191, /* 530 */ 191, 191, 191, 191, 191, 191, 191, 191, 191, 191,
/* 540 */ 191, 191, 191, 191, 132, 103, 87, 86, 50, 83, /* 540 */ 191, 191, 191, 191, 118, 192, 192, 192, 132, 192,
/* 550 */ 85, 54, 84, 82, 191, 191, 79, 5, 144, 5, /* 550 */ 192, 86, 50, 83, 85, 54, 84, 82, 79, 192,
/* 560 */ 191, 5, 144, 5, 5, 191, 135, 196, 196, 89, /* 560 */ 192, 5, 192, 145, 5, 5, 145, 192, 192, 197,
/* 570 */ 191, 113, 109, 104, 107, 191, 114, 105, 105, 104, /* 570 */ 197, 5, 5, 90, 89, 135, 113, 104, 192, 105,
/* 580 */ 104, 192, 205, 207, 201, 204, 206, 202, 200, 192, /* 580 */ 193, 202, 193, 201, 203, 192, 208, 207, 205, 204,
/* 590 */ 203, 191, 197, 192, 224, 192, 191, 191, 105, 242, /* 590 */ 193, 192, 114, 193, 192, 194, 198, 107, 109, 105,
/* 600 */ 239, 241, 240, 193, 109, 238, 224, 1, 104, 109, /* 600 */ 104, 109, 105, 104, 244, 240, 242, 241, 239, 225,
/* 610 */ 105, 104, 123, 123, 105, 109, 104, 104, 104, 111, /* 610 */ 1, 104, 109, 105, 104, 109, 123, 105, 123, 104,
/* 620 */ 104, 76, 107, 9, 5, 108, 5, 5, 5, 5, /* 620 */ 111, 104, 104, 107, 104, 76, 9, 108, 5, 5,
/* 630 */ 80, 15, 138, 76, 109, 5, 16, 138, 5, 138, /* 630 */ 5, 5, 5, 80, 15, 109, 16, 76, 5, 139,
/* 640 */ 105, 5, 5, 5, 5, 5, 5, 5, 5, 5, /* 640 */ 5, 105, 5, 139, 139, 5, 5, 5, 5, 5,
/* 650 */ 5, 5, 5, 5, 5, 5, 5, 5, 109, 80, /* 650 */ 5, 5, 5, 5, 5, 5, 5, 5, 5, 5,
/* 660 */ 60, 59, 0, 262, 262, 262, 262, 262, 262, 262, /* 660 */ 5, 109, 80, 60, 59, 0, 263, 263, 263, 263,
/* 670 */ 262, 262, 262, 262, 21, 21, 262, 262, 262, 262, /* 670 */ 263, 263, 263, 263, 263, 263, 263, 21, 21, 263,
/* 680 */ 262, 262, 262, 262, 262, 262, 262, 262, 262, 262, /* 680 */ 263, 263, 263, 263, 263, 263, 263, 263, 263, 263,
/* 690 */ 262, 262, 262, 262, 262, 262, 262, 262, 262, 262, /* 690 */ 263, 263, 263, 263, 263, 263, 263, 263, 263, 263,
/* 700 */ 262, 262, 262, 262, 262, 262, 262, 262, 262, 262, /* 700 */ 263, 263, 263, 263, 263, 263, 263, 263, 263, 263,
/* 710 */ 262, 262, 262, 262, 262, 262, 262, 262, 262, 262, /* 710 */ 263, 263, 263, 263, 263, 263, 263, 263, 263, 263,
/* 720 */ 262, 262, 262, 262, 262, 262, 262, 262, 262, 262, /* 720 */ 263, 263, 263, 263, 263, 263, 263, 263, 263, 263,
/* 730 */ 262, 262, 262, 262, 262, 262, 262, 262, 262, 262, /* 730 */ 263, 263, 263, 263, 263, 263, 263, 263, 263, 263,
/* 740 */ 262, 262, 262, 262, 262, 262, 262, 262, 262, 262, /* 740 */ 263, 263, 263, 263, 263, 263, 263, 263, 263, 263,
/* 750 */ 262, 262, 262, 262, 262, 262, 262, 262, 262, 262, /* 750 */ 263, 263, 263, 263, 263, 263, 263, 263, 263, 263,
/* 760 */ 262, 262, 262, 262, 262, 262, 262, 262, 262, 262, /* 760 */ 263, 263, 263, 263, 263, 263, 263, 263, 263, 263,
/* 770 */ 262, 262, 262, 262, 262, 262, 262, 262, 262, 262, /* 770 */ 263, 263, 263, 263, 263, 263, 263, 263, 263, 263,
/* 780 */ 262, 262, 262, 262, 262, 262, 262, 262, 262, 262, /* 780 */ 263, 263, 263, 263, 263, 263, 263, 263, 263, 263,
/* 790 */ 262, 262, 262, 262, 262, 262, 262, 262, 262, 262, /* 790 */ 263, 263, 263, 263, 263, 263, 263, 263, 263, 263,
/* 800 */ 262, 262, 262, 262, 262, 262, 262, 262, 262, 262, /* 800 */ 263, 263, 263, 263, 263, 263, 263, 263, 263, 263,
/* 810 */ 262, 262, 262, 262, 262, 262, 262, 262, 262, 262, /* 810 */ 263, 263, 263, 263, 263, 263, 263, 263, 263, 263,
/* 820 */ 262, 262, 262, 262, 262, 262, 262, 262, 262, 262, /* 820 */ 263, 263, 263, 263, 263, 263, 263, 263, 263, 263,
/* 830 */ 262, 262, 262, 262, 262, 262, 262, 262, 262, 262, /* 830 */ 263, 263, 263, 263, 263, 263, 263, 263, 263, 263,
/* 840 */ 262, 262, 262, 262, 262, 262, 262, 262, 262, 262, /* 840 */ 263, 263, 263, 263, 263, 263, 263, 263, 263, 263,
/* 850 */ 262, 262, 262, 262, 262, 262, 262, 262, 262, 262, /* 850 */ 263, 263, 263, 263, 263, 263, 263, 263, 263, 263,
/* 860 */ 262, 262, /* 860 */ 263, 263, 263, 263, 263, 263,
}; };
#define YY_SHIFT_COUNT (312) #define YY_SHIFT_COUNT (314)
#define YY_SHIFT_MIN (0) #define YY_SHIFT_MIN (0)
#define YY_SHIFT_MAX (662) #define YY_SHIFT_MAX (665)
static const unsigned short int yy_shift_ofst[] = { static const unsigned short int yy_shift_ofst[] = {
/* 0 */ 168, 79, 79, 172, 172, 9, 221, 231, 74, 74, /* 0 */ 156, 79, 79, 183, 183, 6, 232, 242, 74, 74,
/* 10 */ 74, 74, 74, 74, 74, 74, 74, 0, 48, 231, /* 10 */ 74, 74, 74, 74, 74, 74, 74, 0, 48, 242,
/* 20 */ 365, 365, 365, 365, 121, 207, 74, 74, 74, 158, /* 20 */ 333, 333, 333, 333, 110, 136, 74, 74, 74, 204,
/* 30 */ 74, 74, 200, 9, 37, 37, 676, 676, 676, 231, /* 30 */ 74, 74, 246, 6, 7, 7, 679, 679, 679, 242,
/* 40 */ 231, 231, 231, 231, 231, 231, 231, 231, 231, 231, /* 40 */ 242, 242, 242, 242, 242, 242, 242, 242, 242, 242,
/* 50 */ 231, 231, 231, 231, 231, 231, 231, 231, 231, 365, /* 50 */ 242, 242, 242, 242, 242, 242, 242, 242, 242, 333,
/* 60 */ 365, 102, 102, 102, 102, 102, 102, 102, 74, 74, /* 60 */ 333, 102, 102, 102, 102, 102, 102, 102, 74, 74,
/* 70 */ 251, 74, 207, 207, 74, 74, 74, 263, 263, 201, /* 70 */ 74, 267, 74, 136, 136, 74, 74, 74, 264, 264,
/* 80 */ 207, 74, 74, 74, 74, 74, 74, 74, 74, 74, /* 80 */ 236, 136, 74, 74, 74, 74, 74, 74, 74, 74,
/* 90 */ 74, 74, 74, 74, 74, 74, 74, 74, 74, 74, /* 90 */ 74, 74, 74, 74, 74, 74, 74, 74, 74, 74,
/* 100 */ 74, 74, 74, 74, 74, 74, 74, 74, 74, 74, /* 100 */ 74, 74, 74, 74, 74, 74, 74, 74, 74, 74,
/* 110 */ 74, 74, 74, 74, 74, 74, 74, 74, 74, 74, /* 110 */ 74, 74, 74, 74, 74, 74, 74, 74, 74, 74,
/* 120 */ 74, 74, 74, 74, 74, 74, 74, 74, 74, 74, /* 120 */ 74, 74, 74, 74, 74, 74, 74, 74, 74, 74,
/* 130 */ 74, 404, 404, 404, 354, 354, 354, 404, 354, 404, /* 130 */ 74, 74, 403, 403, 403, 356, 356, 356, 403, 356,
/* 140 */ 353, 355, 368, 356, 373, 386, 393, 358, 420, 412, /* 140 */ 403, 361, 362, 371, 359, 388, 396, 404, 410, 426,
/* 150 */ 404, 404, 404, 442, 9, 9, 404, 404, 459, 461, /* 150 */ 416, 403, 403, 403, 374, 6, 6, 403, 403, 391,
/* 160 */ 498, 466, 465, 497, 468, 471, 442, 404, 477, 477, /* 160 */ 465, 502, 470, 469, 501, 472, 475, 374, 403, 479,
/* 170 */ 404, 477, 404, 477, 404, 676, 676, 27, 100, 127, /* 170 */ 479, 403, 479, 403, 479, 403, 679, 679, 27, 100,
/* 180 */ 100, 100, 53, 182, 266, 266, 266, 266, 244, 261, /* 180 */ 127, 100, 100, 53, 182, 282, 282, 282, 282, 261,
/* 190 */ 274, 323, 323, 323, 323, 78, 114, 214, 214, 243, /* 190 */ 285, 300, 224, 224, 224, 224, 22, 14, 92, 92,
/* 200 */ 95, 232, 281, 215, 284, 286, 287, 292, 295, 277, /* 200 */ 128, 197, 222, 276, 184, 281, 286, 287, 288, 289,
/* 210 */ 366, 378, 290, 311, 272, 20, 297, 300, 302, 303, /* 210 */ 272, 394, 363, 323, 298, 293, 294, 299, 301, 302,
/* 220 */ 305, 309, 280, 282, 288, 317, 291, 426, 427, 359, /* 220 */ 307, 308, 121, 280, 283, 290, 326, 295, 430, 431,
/* 230 */ 375, 552, 414, 554, 556, 418, 558, 559, 480, 431, /* 230 */ 338, 377, 556, 418, 559, 560, 421, 566, 567, 483,
/* 240 */ 458, 467, 469, 462, 472, 463, 473, 475, 493, 495, /* 240 */ 485, 440, 463, 490, 473, 478, 474, 489, 494, 496,
/* 250 */ 476, 606, 504, 505, 507, 500, 489, 506, 490, 509, /* 250 */ 497, 492, 499, 609, 507, 508, 510, 503, 493, 506,
/* 260 */ 512, 508, 513, 467, 514, 515, 516, 517, 545, 614, /* 260 */ 495, 512, 515, 509, 517, 490, 518, 516, 520, 519,
/* 270 */ 619, 621, 622, 623, 624, 550, 616, 557, 494, 525, /* 270 */ 549, 617, 623, 624, 625, 626, 627, 553, 619, 561,
/* 280 */ 525, 620, 499, 501, 525, 630, 633, 535, 525, 636, /* 280 */ 500, 526, 526, 620, 504, 505, 526, 633, 635, 536,
/* 290 */ 637, 638, 639, 640, 641, 642, 643, 644, 645, 646, /* 290 */ 526, 637, 640, 641, 642, 643, 644, 645, 646, 647,
/* 300 */ 647, 648, 649, 650, 651, 652, 549, 579, 653, 654, /* 300 */ 648, 649, 650, 651, 652, 653, 654, 655, 552, 582,
/* 310 */ 600, 602, 662, /* 310 */ 656, 657, 603, 605, 665,
}; };
#define YY_REDUCE_COUNT (176) #define YY_REDUCE_COUNT (177)
#define YY_REDUCE_MIN (-239) #define YY_REDUCE_MIN (-245)
#define YY_REDUCE_MAX (410) #define YY_REDUCE_MAX (402)
static const short yy_reduce_ofst[] = { static const short yy_reduce_ofst[] = {
/* 0 */ -177, -26, -26, 67, 67, 17, -229, -215, -172, -175, /* 0 */ -178, -27, -27, 82, 82, 25, -230, -216, -173, -176,
/* 10 */ -7, -75, 87, 118, 144, 149, 151, -184, -187, -232, /* 10 */ -45, -8, 10, 35, 61, 126, 152, -185, -188, -233,
/* 20 */ -205, -146, -124, -78, 105, -9, -185, 11, -190, -88, /* 20 */ -206, 90, 108, 115, -191, 1, -186, -46, 81, -189,
/* 30 */ 76, -71, 5, 31, 160, 170, 91, 179, -186, -239, /* 30 */ 150, -79, -78, 131, 177, 178, 9, 113, 185, -245,
/* 40 */ -216, -193, -139, -105, -40, 10, 112, 117, 133, 173, /* 40 */ -240, -217, -194, -144, -137, -110, -34, 98, 153, 168,
/* 50 */ 176, 188, 189, 190, 191, 192, 193, 194, 195, 212, /* 50 */ 173, 174, 179, 189, 190, 191, 193, 194, 195, 212,
/* 60 */ 213, 204, 223, 224, 225, 226, 227, 228, 265, 267, /* 60 */ 213, 223, 225, 226, 227, 228, 229, 230, 260, 268,
/* 70 */ 206, 268, 229, 230, 269, 270, 271, 208, 209, 233, /* 70 */ 269, 207, 270, 231, 233, 271, 273, 275, 209, 210,
/* 80 */ 235, 275, 279, 283, 285, 289, 293, 294, 296, 298, /* 80 */ 234, 237, 279, 284, 291, 292, 296, 297, 303, 304,
/* 90 */ 299, 301, 304, 306, 307, 308, 310, 312, 313, 314, /* 90 */ 305, 306, 309, 310, 311, 312, 313, 314, 315, 316,
/* 100 */ 315, 316, 318, 319, 320, 321, 322, 324, 325, 326, /* 100 */ 317, 318, 319, 320, 321, 322, 324, 325, 327, 328,
/* 110 */ 327, 328, 329, 330, 331, 332, 333, 334, 335, 336, /* 110 */ 329, 330, 331, 332, 334, 335, 336, 337, 339, 340,
/* 120 */ 337, 338, 339, 340, 341, 342, 343, 344, 345, 346, /* 120 */ 341, 342, 343, 344, 345, 346, 347, 348, 349, 350,
/* 130 */ 347, 348, 349, 350, 218, 220, 236, 351, 238, 352, /* 130 */ 351, 352, 353, 354, 355, 219, 221, 235, 357, 238,
/* 140 */ 240, 234, 237, 249, 258, 357, 360, 362, 361, 367, /* 140 */ 358, 243, 239, 253, 240, 360, 241, 364, 366, 365,
/* 150 */ 363, 364, 369, 370, 371, 372, 374, 379, 376, 380, /* 150 */ 369, 367, 368, 370, 254, 372, 373, 375, 376, 378,
/* 160 */ 377, 383, 381, 385, 387, 388, 382, 384, 389, 397, /* 160 */ 380, 274, 379, 383, 381, 385, 382, 384, 386, 387,
/* 170 */ 400, 401, 405, 403, 406, 395, 410, /* 170 */ 389, 393, 397, 399, 400, 402, 398, 401,
}; };
static const YYACTIONTYPE yy_default[] = { static const YYACTIONTYPE yy_default[] = {
/* 0 */ 767, 879, 825, 891, 813, 822, 1019, 1019, 767, 767, /* 0 */ 771, 883, 829, 895, 817, 826, 1023, 1023, 771, 771,
/* 10 */ 767, 767, 767, 767, 767, 767, 767, 938, 786, 1019, /* 10 */ 771, 771, 771, 771, 771, 771, 771, 942, 790, 1023,
/* 20 */ 767, 767, 767, 767, 767, 767, 767, 767, 767, 822, /* 20 */ 771, 771, 771, 771, 771, 771, 771, 771, 771, 826,
/* 30 */ 767, 767, 828, 822, 828, 828, 933, 863, 881, 767, /* 30 */ 771, 771, 832, 826, 832, 832, 937, 867, 885, 771,
/* 40 */ 767, 767, 767, 767, 767, 767, 767, 767, 767, 767, /* 40 */ 771, 771, 771, 771, 771, 771, 771, 771, 771, 771,
/* 50 */ 767, 767, 767, 767, 767, 767, 767, 767, 767, 767, /* 50 */ 771, 771, 771, 771, 771, 771, 771, 771, 771, 771,
/* 60 */ 767, 767, 767, 767, 767, 767, 767, 767, 767, 767, /* 60 */ 771, 771, 771, 771, 771, 771, 771, 771, 771, 771,
/* 70 */ 940, 943, 767, 767, 945, 767, 767, 965, 965, 931, /* 70 */ 771, 944, 947, 771, 771, 949, 771, 771, 969, 969,
/* 80 */ 767, 767, 767, 767, 767, 767, 767, 767, 767, 767, /* 80 */ 935, 771, 771, 771, 771, 771, 771, 771, 771, 771,
/* 90 */ 767, 767, 767, 767, 767, 767, 767, 767, 767, 767, /* 90 */ 771, 771, 771, 771, 771, 771, 771, 771, 771, 771,
/* 100 */ 767, 767, 767, 767, 767, 767, 767, 767, 811, 767, /* 100 */ 771, 771, 771, 771, 771, 771, 771, 771, 771, 815,
/* 110 */ 809, 767, 767, 767, 767, 767, 767, 767, 767, 767, /* 110 */ 771, 813, 771, 771, 771, 771, 771, 771, 771, 771,
/* 120 */ 767, 767, 767, 767, 767, 796, 767, 767, 767, 767, /* 120 */ 771, 771, 771, 771, 771, 771, 800, 771, 771, 771,
/* 130 */ 767, 788, 788, 788, 767, 767, 767, 788, 767, 788, /* 130 */ 771, 771, 792, 792, 792, 771, 771, 771, 792, 771,
/* 140 */ 972, 976, 970, 958, 966, 957, 953, 951, 950, 980, /* 140 */ 792, 976, 980, 974, 962, 970, 961, 957, 955, 954,
/* 150 */ 788, 788, 788, 826, 822, 822, 788, 788, 844, 842, /* 150 */ 984, 792, 792, 792, 830, 826, 826, 792, 792, 848,
/* 160 */ 840, 832, 838, 834, 836, 830, 814, 788, 820, 820, /* 160 */ 846, 844, 836, 842, 838, 840, 834, 818, 792, 824,
/* 170 */ 788, 820, 788, 820, 788, 863, 881, 767, 981, 767, /* 170 */ 824, 792, 824, 792, 824, 792, 867, 885, 771, 985,
/* 180 */ 1018, 971, 1008, 1007, 1014, 1006, 1005, 1004, 767, 767, /* 180 */ 771, 1022, 975, 1012, 1011, 1018, 1010, 1009, 1008, 771,
/* 190 */ 767, 1000, 1001, 1003, 1002, 767, 767, 1010, 1009, 767, /* 190 */ 771, 771, 1004, 1005, 1007, 1006, 771, 771, 1014, 1013,
/* 200 */ 767, 767, 767, 767, 767, 767, 767, 767, 767, 767, /* 200 */ 771, 771, 771, 771, 771, 771, 771, 771, 771, 771,
/* 210 */ 767, 767, 983, 767, 977, 973, 767, 767, 767, 767, /* 210 */ 771, 771, 771, 987, 771, 981, 977, 771, 771, 771,
/* 220 */ 767, 767, 767, 767, 767, 893, 767, 767, 767, 767, /* 220 */ 771, 771, 771, 771, 771, 771, 897, 771, 771, 771,
/* 230 */ 767, 767, 767, 767, 767, 767, 767, 767, 767, 767, /* 230 */ 771, 771, 771, 771, 771, 771, 771, 771, 771, 771,
/* 240 */ 930, 767, 767, 767, 767, 941, 767, 767, 767, 767, /* 240 */ 771, 771, 934, 771, 771, 771, 771, 945, 771, 771,
/* 250 */ 767, 767, 767, 767, 767, 967, 767, 959, 767, 767, /* 250 */ 771, 771, 771, 771, 771, 771, 771, 971, 771, 963,
/* 260 */ 767, 767, 767, 905, 767, 767, 767, 767, 767, 767, /* 260 */ 771, 771, 771, 771, 771, 909, 771, 771, 771, 771,
/* 270 */ 767, 767, 767, 767, 767, 767, 767, 767, 767, 1029, /* 270 */ 771, 771, 771, 771, 771, 771, 771, 771, 771, 771,
/* 280 */ 1027, 767, 767, 767, 1023, 767, 767, 767, 1021, 767, /* 280 */ 771, 1034, 1032, 771, 771, 771, 1028, 771, 771, 771,
/* 290 */ 767, 767, 767, 767, 767, 767, 767, 767, 767, 767, /* 290 */ 1026, 771, 771, 771, 771, 771, 771, 771, 771, 771,
/* 300 */ 767, 767, 767, 767, 767, 767, 847, 767, 794, 792, /* 300 */ 771, 771, 771, 771, 771, 771, 771, 771, 851, 771,
/* 310 */ 767, 784, 767, /* 310 */ 798, 796, 771, 788, 771,
}; };
/********** End of lemon-generated parsing tables *****************************/ /********** End of lemon-generated parsing tables *****************************/
...@@ -612,6 +612,7 @@ static const YYCODETYPE yyFallback[] = { ...@@ -612,6 +612,7 @@ static const YYCODETYPE yyFallback[] = {
1, /* NOW => ID */ 1, /* NOW => ID */
0, /* RESET => nothing */ 0, /* RESET => nothing */
0, /* QUERY => nothing */ 0, /* QUERY => nothing */
0, /* SYNCDB => nothing */
0, /* ADD => nothing */ 0, /* ADD => nothing */
0, /* COLUMN => nothing */ 0, /* COLUMN => nothing */
0, /* TAG => nothing */ 0, /* TAG => nothing */
...@@ -884,132 +885,133 @@ static const char *const yyTokenName[] = { ...@@ -884,132 +885,133 @@ static const char *const yyTokenName[] = {
/* 133 */ "NOW", /* 133 */ "NOW",
/* 134 */ "RESET", /* 134 */ "RESET",
/* 135 */ "QUERY", /* 135 */ "QUERY",
/* 136 */ "ADD", /* 136 */ "SYNCDB",
/* 137 */ "COLUMN", /* 137 */ "ADD",
/* 138 */ "TAG", /* 138 */ "COLUMN",
/* 139 */ "CHANGE", /* 139 */ "TAG",
/* 140 */ "SET", /* 140 */ "CHANGE",
/* 141 */ "KILL", /* 141 */ "SET",
/* 142 */ "CONNECTION", /* 142 */ "KILL",
/* 143 */ "STREAM", /* 143 */ "CONNECTION",
/* 144 */ "COLON", /* 144 */ "STREAM",
/* 145 */ "ABORT", /* 145 */ "COLON",
/* 146 */ "AFTER", /* 146 */ "ABORT",
/* 147 */ "ATTACH", /* 147 */ "AFTER",
/* 148 */ "BEFORE", /* 148 */ "ATTACH",
/* 149 */ "BEGIN", /* 149 */ "BEFORE",
/* 150 */ "CASCADE", /* 150 */ "BEGIN",
/* 151 */ "CLUSTER", /* 151 */ "CASCADE",
/* 152 */ "CONFLICT", /* 152 */ "CLUSTER",
/* 153 */ "COPY", /* 153 */ "CONFLICT",
/* 154 */ "DEFERRED", /* 154 */ "COPY",
/* 155 */ "DELIMITERS", /* 155 */ "DEFERRED",
/* 156 */ "DETACH", /* 156 */ "DELIMITERS",
/* 157 */ "EACH", /* 157 */ "DETACH",
/* 158 */ "END", /* 158 */ "EACH",
/* 159 */ "EXPLAIN", /* 159 */ "END",
/* 160 */ "FAIL", /* 160 */ "EXPLAIN",
/* 161 */ "FOR", /* 161 */ "FAIL",
/* 162 */ "IGNORE", /* 162 */ "FOR",
/* 163 */ "IMMEDIATE", /* 163 */ "IGNORE",
/* 164 */ "INITIALLY", /* 164 */ "IMMEDIATE",
/* 165 */ "INSTEAD", /* 165 */ "INITIALLY",
/* 166 */ "MATCH", /* 166 */ "INSTEAD",
/* 167 */ "KEY", /* 167 */ "MATCH",
/* 168 */ "OF", /* 168 */ "KEY",
/* 169 */ "RAISE", /* 169 */ "OF",
/* 170 */ "REPLACE", /* 170 */ "RAISE",
/* 171 */ "RESTRICT", /* 171 */ "REPLACE",
/* 172 */ "ROW", /* 172 */ "RESTRICT",
/* 173 */ "STATEMENT", /* 173 */ "ROW",
/* 174 */ "TRIGGER", /* 174 */ "STATEMENT",
/* 175 */ "VIEW", /* 175 */ "TRIGGER",
/* 176 */ "SEMI", /* 176 */ "VIEW",
/* 177 */ "NONE", /* 177 */ "SEMI",
/* 178 */ "PREV", /* 178 */ "NONE",
/* 179 */ "LINEAR", /* 179 */ "PREV",
/* 180 */ "IMPORT", /* 180 */ "LINEAR",
/* 181 */ "TBNAME", /* 181 */ "IMPORT",
/* 182 */ "JOIN", /* 182 */ "TBNAME",
/* 183 */ "INSERT", /* 183 */ "JOIN",
/* 184 */ "INTO", /* 184 */ "INSERT",
/* 185 */ "VALUES", /* 185 */ "INTO",
/* 186 */ "error", /* 186 */ "VALUES",
/* 187 */ "program", /* 187 */ "error",
/* 188 */ "cmd", /* 188 */ "program",
/* 189 */ "dbPrefix", /* 189 */ "cmd",
/* 190 */ "ids", /* 190 */ "dbPrefix",
/* 191 */ "cpxName", /* 191 */ "ids",
/* 192 */ "ifexists", /* 192 */ "cpxName",
/* 193 */ "alter_db_optr", /* 193 */ "ifexists",
/* 194 */ "alter_topic_optr", /* 194 */ "alter_db_optr",
/* 195 */ "acct_optr", /* 195 */ "alter_topic_optr",
/* 196 */ "ifnotexists", /* 196 */ "acct_optr",
/* 197 */ "db_optr", /* 197 */ "ifnotexists",
/* 198 */ "topic_optr", /* 198 */ "db_optr",
/* 199 */ "pps", /* 199 */ "topic_optr",
/* 200 */ "tseries", /* 200 */ "pps",
/* 201 */ "dbs", /* 201 */ "tseries",
/* 202 */ "streams", /* 202 */ "dbs",
/* 203 */ "storage", /* 203 */ "streams",
/* 204 */ "qtime", /* 204 */ "storage",
/* 205 */ "users", /* 205 */ "qtime",
/* 206 */ "conns", /* 206 */ "users",
/* 207 */ "state", /* 207 */ "conns",
/* 208 */ "keep", /* 208 */ "state",
/* 209 */ "tagitemlist", /* 209 */ "keep",
/* 210 */ "cache", /* 210 */ "tagitemlist",
/* 211 */ "replica", /* 211 */ "cache",
/* 212 */ "quorum", /* 212 */ "replica",
/* 213 */ "days", /* 213 */ "quorum",
/* 214 */ "minrows", /* 214 */ "days",
/* 215 */ "maxrows", /* 215 */ "minrows",
/* 216 */ "blocks", /* 216 */ "maxrows",
/* 217 */ "ctime", /* 217 */ "blocks",
/* 218 */ "wal", /* 218 */ "ctime",
/* 219 */ "fsync", /* 219 */ "wal",
/* 220 */ "comp", /* 220 */ "fsync",
/* 221 */ "prec", /* 221 */ "comp",
/* 222 */ "update", /* 222 */ "prec",
/* 223 */ "cachelast", /* 223 */ "update",
/* 224 */ "partitions", /* 224 */ "cachelast",
/* 225 */ "typename", /* 225 */ "partitions",
/* 226 */ "signed", /* 226 */ "typename",
/* 227 */ "create_table_args", /* 227 */ "signed",
/* 228 */ "create_stable_args", /* 228 */ "create_table_args",
/* 229 */ "create_table_list", /* 229 */ "create_stable_args",
/* 230 */ "create_from_stable", /* 230 */ "create_table_list",
/* 231 */ "columnlist", /* 231 */ "create_from_stable",
/* 232 */ "tagNamelist", /* 232 */ "columnlist",
/* 233 */ "select", /* 233 */ "tagNamelist",
/* 234 */ "column", /* 234 */ "select",
/* 235 */ "tagitem", /* 235 */ "column",
/* 236 */ "selcollist", /* 236 */ "tagitem",
/* 237 */ "from", /* 237 */ "selcollist",
/* 238 */ "where_opt", /* 238 */ "from",
/* 239 */ "interval_opt", /* 239 */ "where_opt",
/* 240 */ "session_option", /* 240 */ "interval_opt",
/* 241 */ "fill_opt", /* 241 */ "session_option",
/* 242 */ "sliding_opt", /* 242 */ "fill_opt",
/* 243 */ "groupby_opt", /* 243 */ "sliding_opt",
/* 244 */ "orderby_opt", /* 244 */ "groupby_opt",
/* 245 */ "having_opt", /* 245 */ "orderby_opt",
/* 246 */ "slimit_opt", /* 246 */ "having_opt",
/* 247 */ "limit_opt", /* 247 */ "slimit_opt",
/* 248 */ "union", /* 248 */ "limit_opt",
/* 249 */ "sclp", /* 249 */ "union",
/* 250 */ "distinct", /* 250 */ "sclp",
/* 251 */ "expr", /* 251 */ "distinct",
/* 252 */ "as", /* 252 */ "expr",
/* 253 */ "tablelist", /* 253 */ "as",
/* 254 */ "tmvar", /* 254 */ "tablelist",
/* 255 */ "sortlist", /* 255 */ "tmvar",
/* 256 */ "sortitem", /* 256 */ "sortlist",
/* 257 */ "item", /* 257 */ "sortitem",
/* 258 */ "sortorder", /* 258 */ "item",
/* 259 */ "grouplist", /* 259 */ "sortorder",
/* 260 */ "exprlist", /* 260 */ "grouplist",
/* 261 */ "expritem", /* 261 */ "exprlist",
/* 262 */ "expritem",
}; };
#endif /* defined(YYCOVERAGE) || !defined(NDEBUG) */ #endif /* defined(YYCOVERAGE) || !defined(NDEBUG) */
...@@ -1268,20 +1270,21 @@ static const char *const yyRuleName[] = { ...@@ -1268,20 +1270,21 @@ static const char *const yyRuleName[] = {
/* 248 */ "expritem ::= expr", /* 248 */ "expritem ::= expr",
/* 249 */ "expritem ::=", /* 249 */ "expritem ::=",
/* 250 */ "cmd ::= RESET QUERY CACHE", /* 250 */ "cmd ::= RESET QUERY CACHE",
/* 251 */ "cmd ::= ALTER TABLE ids cpxName ADD COLUMN columnlist", /* 251 */ "cmd ::= SYNCDB ids REPLICA",
/* 252 */ "cmd ::= ALTER TABLE ids cpxName DROP COLUMN ids", /* 252 */ "cmd ::= ALTER TABLE ids cpxName ADD COLUMN columnlist",
/* 253 */ "cmd ::= ALTER TABLE ids cpxName ADD TAG columnlist", /* 253 */ "cmd ::= ALTER TABLE ids cpxName DROP COLUMN ids",
/* 254 */ "cmd ::= ALTER TABLE ids cpxName DROP TAG ids", /* 254 */ "cmd ::= ALTER TABLE ids cpxName ADD TAG columnlist",
/* 255 */ "cmd ::= ALTER TABLE ids cpxName CHANGE TAG ids ids", /* 255 */ "cmd ::= ALTER TABLE ids cpxName DROP TAG ids",
/* 256 */ "cmd ::= ALTER TABLE ids cpxName SET TAG ids EQ tagitem", /* 256 */ "cmd ::= ALTER TABLE ids cpxName CHANGE TAG ids ids",
/* 257 */ "cmd ::= ALTER STABLE ids cpxName ADD COLUMN columnlist", /* 257 */ "cmd ::= ALTER TABLE ids cpxName SET TAG ids EQ tagitem",
/* 258 */ "cmd ::= ALTER STABLE ids cpxName DROP COLUMN ids", /* 258 */ "cmd ::= ALTER STABLE ids cpxName ADD COLUMN columnlist",
/* 259 */ "cmd ::= ALTER STABLE ids cpxName ADD TAG columnlist", /* 259 */ "cmd ::= ALTER STABLE ids cpxName DROP COLUMN ids",
/* 260 */ "cmd ::= ALTER STABLE ids cpxName DROP TAG ids", /* 260 */ "cmd ::= ALTER STABLE ids cpxName ADD TAG columnlist",
/* 261 */ "cmd ::= ALTER STABLE ids cpxName CHANGE TAG ids ids", /* 261 */ "cmd ::= ALTER STABLE ids cpxName DROP TAG ids",
/* 262 */ "cmd ::= KILL CONNECTION INTEGER", /* 262 */ "cmd ::= ALTER STABLE ids cpxName CHANGE TAG ids ids",
/* 263 */ "cmd ::= KILL STREAM INTEGER COLON INTEGER", /* 263 */ "cmd ::= KILL CONNECTION INTEGER",
/* 264 */ "cmd ::= KILL QUERY INTEGER COLON INTEGER", /* 264 */ "cmd ::= KILL STREAM INTEGER COLON INTEGER",
/* 265 */ "cmd ::= KILL QUERY INTEGER COLON INTEGER",
}; };
#endif /* NDEBUG */ #endif /* NDEBUG */
...@@ -1402,52 +1405,52 @@ static void yy_destructor( ...@@ -1402,52 +1405,52 @@ static void yy_destructor(
** inside the C code. ** inside the C code.
*/ */
/********* Begin destructor definitions ***************************************/ /********* Begin destructor definitions ***************************************/
case 208: /* keep */ case 209: /* keep */
case 209: /* tagitemlist */ case 210: /* tagitemlist */
case 231: /* columnlist */ case 232: /* columnlist */
case 232: /* tagNamelist */ case 233: /* tagNamelist */
case 241: /* fill_opt */ case 242: /* fill_opt */
case 243: /* groupby_opt */ case 244: /* groupby_opt */
case 244: /* orderby_opt */ case 245: /* orderby_opt */
case 255: /* sortlist */ case 256: /* sortlist */
case 259: /* grouplist */ case 260: /* grouplist */
{ {
taosArrayDestroy((yypminor->yy429)); taosArrayDestroy((yypminor->yy159));
} }
break; break;
case 229: /* create_table_list */ case 230: /* create_table_list */
{ {
destroyCreateTableSql((yypminor->yy194)); destroyCreateTableSql((yypminor->yy14));
} }
break; break;
case 233: /* select */ case 234: /* select */
{ {
destroyQuerySqlNode((yypminor->yy254)); destroyQuerySqlNode((yypminor->yy272));
} }
break; break;
case 236: /* selcollist */ case 237: /* selcollist */
case 249: /* sclp */ case 250: /* sclp */
case 260: /* exprlist */ case 261: /* exprlist */
{ {
tSqlExprListDestroy((yypminor->yy429)); tSqlExprListDestroy((yypminor->yy159));
} }
break; break;
case 238: /* where_opt */ case 239: /* where_opt */
case 245: /* having_opt */ case 246: /* having_opt */
case 251: /* expr */ case 252: /* expr */
case 261: /* expritem */ case 262: /* expritem */
{ {
tSqlExprDestroy((yypminor->yy170)); tSqlExprDestroy((yypminor->yy118));
} }
break; break;
case 248: /* union */ case 249: /* union */
{ {
destroyAllSelectClause((yypminor->yy141)); destroyAllSelectClause((yypminor->yy391));
} }
break; break;
case 256: /* sortitem */ case 257: /* sortitem */
{ {
tVariantDestroy(&(yypminor->yy218)); tVariantDestroy(&(yypminor->yy488));
} }
break; break;
/********* End destructor definitions *****************************************/ /********* End destructor definitions *****************************************/
...@@ -1741,271 +1744,272 @@ static const struct { ...@@ -1741,271 +1744,272 @@ static const struct {
YYCODETYPE lhs; /* Symbol on the left-hand side of the rule */ YYCODETYPE lhs; /* Symbol on the left-hand side of the rule */
signed char nrhs; /* Negative of the number of RHS symbols in the rule */ signed char nrhs; /* Negative of the number of RHS symbols in the rule */
} yyRuleInfo[] = { } yyRuleInfo[] = {
{ 187, -1 }, /* (0) program ::= cmd */ { 188, -1 }, /* (0) program ::= cmd */
{ 188, -2 }, /* (1) cmd ::= SHOW DATABASES */ { 189, -2 }, /* (1) cmd ::= SHOW DATABASES */
{ 188, -2 }, /* (2) cmd ::= SHOW TOPICS */ { 189, -2 }, /* (2) cmd ::= SHOW TOPICS */
{ 188, -2 }, /* (3) cmd ::= SHOW MNODES */ { 189, -2 }, /* (3) cmd ::= SHOW MNODES */
{ 188, -2 }, /* (4) cmd ::= SHOW DNODES */ { 189, -2 }, /* (4) cmd ::= SHOW DNODES */
{ 188, -2 }, /* (5) cmd ::= SHOW ACCOUNTS */ { 189, -2 }, /* (5) cmd ::= SHOW ACCOUNTS */
{ 188, -2 }, /* (6) cmd ::= SHOW USERS */ { 189, -2 }, /* (6) cmd ::= SHOW USERS */
{ 188, -2 }, /* (7) cmd ::= SHOW MODULES */ { 189, -2 }, /* (7) cmd ::= SHOW MODULES */
{ 188, -2 }, /* (8) cmd ::= SHOW QUERIES */ { 189, -2 }, /* (8) cmd ::= SHOW QUERIES */
{ 188, -2 }, /* (9) cmd ::= SHOW CONNECTIONS */ { 189, -2 }, /* (9) cmd ::= SHOW CONNECTIONS */
{ 188, -2 }, /* (10) cmd ::= SHOW STREAMS */ { 189, -2 }, /* (10) cmd ::= SHOW STREAMS */
{ 188, -2 }, /* (11) cmd ::= SHOW VARIABLES */ { 189, -2 }, /* (11) cmd ::= SHOW VARIABLES */
{ 188, -2 }, /* (12) cmd ::= SHOW SCORES */ { 189, -2 }, /* (12) cmd ::= SHOW SCORES */
{ 188, -2 }, /* (13) cmd ::= SHOW GRANTS */ { 189, -2 }, /* (13) cmd ::= SHOW GRANTS */
{ 188, -2 }, /* (14) cmd ::= SHOW VNODES */ { 189, -2 }, /* (14) cmd ::= SHOW VNODES */
{ 188, -3 }, /* (15) cmd ::= SHOW VNODES IPTOKEN */ { 189, -3 }, /* (15) cmd ::= SHOW VNODES IPTOKEN */
{ 189, 0 }, /* (16) dbPrefix ::= */ { 190, 0 }, /* (16) dbPrefix ::= */
{ 189, -2 }, /* (17) dbPrefix ::= ids DOT */ { 190, -2 }, /* (17) dbPrefix ::= ids DOT */
{ 191, 0 }, /* (18) cpxName ::= */ { 192, 0 }, /* (18) cpxName ::= */
{ 191, -2 }, /* (19) cpxName ::= DOT ids */ { 192, -2 }, /* (19) cpxName ::= DOT ids */
{ 188, -5 }, /* (20) cmd ::= SHOW CREATE TABLE ids cpxName */ { 189, -5 }, /* (20) cmd ::= SHOW CREATE TABLE ids cpxName */
{ 188, -4 }, /* (21) cmd ::= SHOW CREATE DATABASE ids */ { 189, -4 }, /* (21) cmd ::= SHOW CREATE DATABASE ids */
{ 188, -3 }, /* (22) cmd ::= SHOW dbPrefix TABLES */ { 189, -3 }, /* (22) cmd ::= SHOW dbPrefix TABLES */
{ 188, -5 }, /* (23) cmd ::= SHOW dbPrefix TABLES LIKE ids */ { 189, -5 }, /* (23) cmd ::= SHOW dbPrefix TABLES LIKE ids */
{ 188, -3 }, /* (24) cmd ::= SHOW dbPrefix STABLES */ { 189, -3 }, /* (24) cmd ::= SHOW dbPrefix STABLES */
{ 188, -5 }, /* (25) cmd ::= SHOW dbPrefix STABLES LIKE ids */ { 189, -5 }, /* (25) cmd ::= SHOW dbPrefix STABLES LIKE ids */
{ 188, -3 }, /* (26) cmd ::= SHOW dbPrefix VGROUPS */ { 189, -3 }, /* (26) cmd ::= SHOW dbPrefix VGROUPS */
{ 188, -4 }, /* (27) cmd ::= SHOW dbPrefix VGROUPS ids */ { 189, -4 }, /* (27) cmd ::= SHOW dbPrefix VGROUPS ids */
{ 188, -5 }, /* (28) cmd ::= DROP TABLE ifexists ids cpxName */ { 189, -5 }, /* (28) cmd ::= DROP TABLE ifexists ids cpxName */
{ 188, -5 }, /* (29) cmd ::= DROP STABLE ifexists ids cpxName */ { 189, -5 }, /* (29) cmd ::= DROP STABLE ifexists ids cpxName */
{ 188, -4 }, /* (30) cmd ::= DROP DATABASE ifexists ids */ { 189, -4 }, /* (30) cmd ::= DROP DATABASE ifexists ids */
{ 188, -4 }, /* (31) cmd ::= DROP TOPIC ifexists ids */ { 189, -4 }, /* (31) cmd ::= DROP TOPIC ifexists ids */
{ 188, -3 }, /* (32) cmd ::= DROP DNODE ids */ { 189, -3 }, /* (32) cmd ::= DROP DNODE ids */
{ 188, -3 }, /* (33) cmd ::= DROP USER ids */ { 189, -3 }, /* (33) cmd ::= DROP USER ids */
{ 188, -3 }, /* (34) cmd ::= DROP ACCOUNT ids */ { 189, -3 }, /* (34) cmd ::= DROP ACCOUNT ids */
{ 188, -2 }, /* (35) cmd ::= USE ids */ { 189, -2 }, /* (35) cmd ::= USE ids */
{ 188, -3 }, /* (36) cmd ::= DESCRIBE ids cpxName */ { 189, -3 }, /* (36) cmd ::= DESCRIBE ids cpxName */
{ 188, -5 }, /* (37) cmd ::= ALTER USER ids PASS ids */ { 189, -5 }, /* (37) cmd ::= ALTER USER ids PASS ids */
{ 188, -5 }, /* (38) cmd ::= ALTER USER ids PRIVILEGE ids */ { 189, -5 }, /* (38) cmd ::= ALTER USER ids PRIVILEGE ids */
{ 188, -4 }, /* (39) cmd ::= ALTER DNODE ids ids */ { 189, -4 }, /* (39) cmd ::= ALTER DNODE ids ids */
{ 188, -5 }, /* (40) cmd ::= ALTER DNODE ids ids ids */ { 189, -5 }, /* (40) cmd ::= ALTER DNODE ids ids ids */
{ 188, -3 }, /* (41) cmd ::= ALTER LOCAL ids */ { 189, -3 }, /* (41) cmd ::= ALTER LOCAL ids */
{ 188, -4 }, /* (42) cmd ::= ALTER LOCAL ids ids */ { 189, -4 }, /* (42) cmd ::= ALTER LOCAL ids ids */
{ 188, -4 }, /* (43) cmd ::= ALTER DATABASE ids alter_db_optr */ { 189, -4 }, /* (43) cmd ::= ALTER DATABASE ids alter_db_optr */
{ 188, -4 }, /* (44) cmd ::= ALTER TOPIC ids alter_topic_optr */ { 189, -4 }, /* (44) cmd ::= ALTER TOPIC ids alter_topic_optr */
{ 188, -4 }, /* (45) cmd ::= ALTER ACCOUNT ids acct_optr */ { 189, -4 }, /* (45) cmd ::= ALTER ACCOUNT ids acct_optr */
{ 188, -6 }, /* (46) cmd ::= ALTER ACCOUNT ids PASS ids acct_optr */ { 189, -6 }, /* (46) cmd ::= ALTER ACCOUNT ids PASS ids acct_optr */
{ 190, -1 }, /* (47) ids ::= ID */ { 191, -1 }, /* (47) ids ::= ID */
{ 190, -1 }, /* (48) ids ::= STRING */ { 191, -1 }, /* (48) ids ::= STRING */
{ 192, -2 }, /* (49) ifexists ::= IF EXISTS */ { 193, -2 }, /* (49) ifexists ::= IF EXISTS */
{ 192, 0 }, /* (50) ifexists ::= */ { 193, 0 }, /* (50) ifexists ::= */
{ 196, -3 }, /* (51) ifnotexists ::= IF NOT EXISTS */ { 197, -3 }, /* (51) ifnotexists ::= IF NOT EXISTS */
{ 196, 0 }, /* (52) ifnotexists ::= */ { 197, 0 }, /* (52) ifnotexists ::= */
{ 188, -3 }, /* (53) cmd ::= CREATE DNODE ids */ { 189, -3 }, /* (53) cmd ::= CREATE DNODE ids */
{ 188, -6 }, /* (54) cmd ::= CREATE ACCOUNT ids PASS ids acct_optr */ { 189, -6 }, /* (54) cmd ::= CREATE ACCOUNT ids PASS ids acct_optr */
{ 188, -5 }, /* (55) cmd ::= CREATE DATABASE ifnotexists ids db_optr */ { 189, -5 }, /* (55) cmd ::= CREATE DATABASE ifnotexists ids db_optr */
{ 188, -5 }, /* (56) cmd ::= CREATE TOPIC ifnotexists ids topic_optr */ { 189, -5 }, /* (56) cmd ::= CREATE TOPIC ifnotexists ids topic_optr */
{ 188, -5 }, /* (57) cmd ::= CREATE USER ids PASS ids */ { 189, -5 }, /* (57) cmd ::= CREATE USER ids PASS ids */
{ 199, 0 }, /* (58) pps ::= */ { 200, 0 }, /* (58) pps ::= */
{ 199, -2 }, /* (59) pps ::= PPS INTEGER */ { 200, -2 }, /* (59) pps ::= PPS INTEGER */
{ 200, 0 }, /* (60) tseries ::= */ { 201, 0 }, /* (60) tseries ::= */
{ 200, -2 }, /* (61) tseries ::= TSERIES INTEGER */ { 201, -2 }, /* (61) tseries ::= TSERIES INTEGER */
{ 201, 0 }, /* (62) dbs ::= */ { 202, 0 }, /* (62) dbs ::= */
{ 201, -2 }, /* (63) dbs ::= DBS INTEGER */ { 202, -2 }, /* (63) dbs ::= DBS INTEGER */
{ 202, 0 }, /* (64) streams ::= */ { 203, 0 }, /* (64) streams ::= */
{ 202, -2 }, /* (65) streams ::= STREAMS INTEGER */ { 203, -2 }, /* (65) streams ::= STREAMS INTEGER */
{ 203, 0 }, /* (66) storage ::= */ { 204, 0 }, /* (66) storage ::= */
{ 203, -2 }, /* (67) storage ::= STORAGE INTEGER */ { 204, -2 }, /* (67) storage ::= STORAGE INTEGER */
{ 204, 0 }, /* (68) qtime ::= */ { 205, 0 }, /* (68) qtime ::= */
{ 204, -2 }, /* (69) qtime ::= QTIME INTEGER */ { 205, -2 }, /* (69) qtime ::= QTIME INTEGER */
{ 205, 0 }, /* (70) users ::= */ { 206, 0 }, /* (70) users ::= */
{ 205, -2 }, /* (71) users ::= USERS INTEGER */ { 206, -2 }, /* (71) users ::= USERS INTEGER */
{ 206, 0 }, /* (72) conns ::= */ { 207, 0 }, /* (72) conns ::= */
{ 206, -2 }, /* (73) conns ::= CONNS INTEGER */ { 207, -2 }, /* (73) conns ::= CONNS INTEGER */
{ 207, 0 }, /* (74) state ::= */ { 208, 0 }, /* (74) state ::= */
{ 207, -2 }, /* (75) state ::= STATE ids */ { 208, -2 }, /* (75) state ::= STATE ids */
{ 195, -9 }, /* (76) acct_optr ::= pps tseries storage streams qtime dbs users conns state */ { 196, -9 }, /* (76) acct_optr ::= pps tseries storage streams qtime dbs users conns state */
{ 208, -2 }, /* (77) keep ::= KEEP tagitemlist */ { 209, -2 }, /* (77) keep ::= KEEP tagitemlist */
{ 210, -2 }, /* (78) cache ::= CACHE INTEGER */ { 211, -2 }, /* (78) cache ::= CACHE INTEGER */
{ 211, -2 }, /* (79) replica ::= REPLICA INTEGER */ { 212, -2 }, /* (79) replica ::= REPLICA INTEGER */
{ 212, -2 }, /* (80) quorum ::= QUORUM INTEGER */ { 213, -2 }, /* (80) quorum ::= QUORUM INTEGER */
{ 213, -2 }, /* (81) days ::= DAYS INTEGER */ { 214, -2 }, /* (81) days ::= DAYS INTEGER */
{ 214, -2 }, /* (82) minrows ::= MINROWS INTEGER */ { 215, -2 }, /* (82) minrows ::= MINROWS INTEGER */
{ 215, -2 }, /* (83) maxrows ::= MAXROWS INTEGER */ { 216, -2 }, /* (83) maxrows ::= MAXROWS INTEGER */
{ 216, -2 }, /* (84) blocks ::= BLOCKS INTEGER */ { 217, -2 }, /* (84) blocks ::= BLOCKS INTEGER */
{ 217, -2 }, /* (85) ctime ::= CTIME INTEGER */ { 218, -2 }, /* (85) ctime ::= CTIME INTEGER */
{ 218, -2 }, /* (86) wal ::= WAL INTEGER */ { 219, -2 }, /* (86) wal ::= WAL INTEGER */
{ 219, -2 }, /* (87) fsync ::= FSYNC INTEGER */ { 220, -2 }, /* (87) fsync ::= FSYNC INTEGER */
{ 220, -2 }, /* (88) comp ::= COMP INTEGER */ { 221, -2 }, /* (88) comp ::= COMP INTEGER */
{ 221, -2 }, /* (89) prec ::= PRECISION STRING */ { 222, -2 }, /* (89) prec ::= PRECISION STRING */
{ 222, -2 }, /* (90) update ::= UPDATE INTEGER */ { 223, -2 }, /* (90) update ::= UPDATE INTEGER */
{ 223, -2 }, /* (91) cachelast ::= CACHELAST INTEGER */ { 224, -2 }, /* (91) cachelast ::= CACHELAST INTEGER */
{ 224, -2 }, /* (92) partitions ::= PARTITIONS INTEGER */ { 225, -2 }, /* (92) partitions ::= PARTITIONS INTEGER */
{ 197, 0 }, /* (93) db_optr ::= */ { 198, 0 }, /* (93) db_optr ::= */
{ 197, -2 }, /* (94) db_optr ::= db_optr cache */ { 198, -2 }, /* (94) db_optr ::= db_optr cache */
{ 197, -2 }, /* (95) db_optr ::= db_optr replica */ { 198, -2 }, /* (95) db_optr ::= db_optr replica */
{ 197, -2 }, /* (96) db_optr ::= db_optr quorum */ { 198, -2 }, /* (96) db_optr ::= db_optr quorum */
{ 197, -2 }, /* (97) db_optr ::= db_optr days */ { 198, -2 }, /* (97) db_optr ::= db_optr days */
{ 197, -2 }, /* (98) db_optr ::= db_optr minrows */ { 198, -2 }, /* (98) db_optr ::= db_optr minrows */
{ 197, -2 }, /* (99) db_optr ::= db_optr maxrows */ { 198, -2 }, /* (99) db_optr ::= db_optr maxrows */
{ 197, -2 }, /* (100) db_optr ::= db_optr blocks */ { 198, -2 }, /* (100) db_optr ::= db_optr blocks */
{ 197, -2 }, /* (101) db_optr ::= db_optr ctime */ { 198, -2 }, /* (101) db_optr ::= db_optr ctime */
{ 197, -2 }, /* (102) db_optr ::= db_optr wal */ { 198, -2 }, /* (102) db_optr ::= db_optr wal */
{ 197, -2 }, /* (103) db_optr ::= db_optr fsync */ { 198, -2 }, /* (103) db_optr ::= db_optr fsync */
{ 197, -2 }, /* (104) db_optr ::= db_optr comp */ { 198, -2 }, /* (104) db_optr ::= db_optr comp */
{ 197, -2 }, /* (105) db_optr ::= db_optr prec */ { 198, -2 }, /* (105) db_optr ::= db_optr prec */
{ 197, -2 }, /* (106) db_optr ::= db_optr keep */ { 198, -2 }, /* (106) db_optr ::= db_optr keep */
{ 197, -2 }, /* (107) db_optr ::= db_optr update */ { 198, -2 }, /* (107) db_optr ::= db_optr update */
{ 197, -2 }, /* (108) db_optr ::= db_optr cachelast */ { 198, -2 }, /* (108) db_optr ::= db_optr cachelast */
{ 198, -1 }, /* (109) topic_optr ::= db_optr */ { 199, -1 }, /* (109) topic_optr ::= db_optr */
{ 198, -2 }, /* (110) topic_optr ::= topic_optr partitions */ { 199, -2 }, /* (110) topic_optr ::= topic_optr partitions */
{ 193, 0 }, /* (111) alter_db_optr ::= */ { 194, 0 }, /* (111) alter_db_optr ::= */
{ 193, -2 }, /* (112) alter_db_optr ::= alter_db_optr replica */ { 194, -2 }, /* (112) alter_db_optr ::= alter_db_optr replica */
{ 193, -2 }, /* (113) alter_db_optr ::= alter_db_optr quorum */ { 194, -2 }, /* (113) alter_db_optr ::= alter_db_optr quorum */
{ 193, -2 }, /* (114) alter_db_optr ::= alter_db_optr keep */ { 194, -2 }, /* (114) alter_db_optr ::= alter_db_optr keep */
{ 193, -2 }, /* (115) alter_db_optr ::= alter_db_optr blocks */ { 194, -2 }, /* (115) alter_db_optr ::= alter_db_optr blocks */
{ 193, -2 }, /* (116) alter_db_optr ::= alter_db_optr comp */ { 194, -2 }, /* (116) alter_db_optr ::= alter_db_optr comp */
{ 193, -2 }, /* (117) alter_db_optr ::= alter_db_optr wal */ { 194, -2 }, /* (117) alter_db_optr ::= alter_db_optr wal */
{ 193, -2 }, /* (118) alter_db_optr ::= alter_db_optr fsync */ { 194, -2 }, /* (118) alter_db_optr ::= alter_db_optr fsync */
{ 193, -2 }, /* (119) alter_db_optr ::= alter_db_optr update */ { 194, -2 }, /* (119) alter_db_optr ::= alter_db_optr update */
{ 193, -2 }, /* (120) alter_db_optr ::= alter_db_optr cachelast */ { 194, -2 }, /* (120) alter_db_optr ::= alter_db_optr cachelast */
{ 194, -1 }, /* (121) alter_topic_optr ::= alter_db_optr */ { 195, -1 }, /* (121) alter_topic_optr ::= alter_db_optr */
{ 194, -2 }, /* (122) alter_topic_optr ::= alter_topic_optr partitions */ { 195, -2 }, /* (122) alter_topic_optr ::= alter_topic_optr partitions */
{ 225, -1 }, /* (123) typename ::= ids */ { 226, -1 }, /* (123) typename ::= ids */
{ 225, -4 }, /* (124) typename ::= ids LP signed RP */ { 226, -4 }, /* (124) typename ::= ids LP signed RP */
{ 225, -2 }, /* (125) typename ::= ids UNSIGNED */ { 226, -2 }, /* (125) typename ::= ids UNSIGNED */
{ 226, -1 }, /* (126) signed ::= INTEGER */ { 227, -1 }, /* (126) signed ::= INTEGER */
{ 226, -2 }, /* (127) signed ::= PLUS INTEGER */ { 227, -2 }, /* (127) signed ::= PLUS INTEGER */
{ 226, -2 }, /* (128) signed ::= MINUS INTEGER */ { 227, -2 }, /* (128) signed ::= MINUS INTEGER */
{ 188, -3 }, /* (129) cmd ::= CREATE TABLE create_table_args */ { 189, -3 }, /* (129) cmd ::= CREATE TABLE create_table_args */
{ 188, -3 }, /* (130) cmd ::= CREATE TABLE create_stable_args */ { 189, -3 }, /* (130) cmd ::= CREATE TABLE create_stable_args */
{ 188, -3 }, /* (131) cmd ::= CREATE STABLE create_stable_args */ { 189, -3 }, /* (131) cmd ::= CREATE STABLE create_stable_args */
{ 188, -3 }, /* (132) cmd ::= CREATE TABLE create_table_list */ { 189, -3 }, /* (132) cmd ::= CREATE TABLE create_table_list */
{ 229, -1 }, /* (133) create_table_list ::= create_from_stable */ { 230, -1 }, /* (133) create_table_list ::= create_from_stable */
{ 229, -2 }, /* (134) create_table_list ::= create_table_list create_from_stable */ { 230, -2 }, /* (134) create_table_list ::= create_table_list create_from_stable */
{ 227, -6 }, /* (135) create_table_args ::= ifnotexists ids cpxName LP columnlist RP */ { 228, -6 }, /* (135) create_table_args ::= ifnotexists ids cpxName LP columnlist RP */
{ 228, -10 }, /* (136) create_stable_args ::= ifnotexists ids cpxName LP columnlist RP TAGS LP columnlist RP */ { 229, -10 }, /* (136) create_stable_args ::= ifnotexists ids cpxName LP columnlist RP TAGS LP columnlist RP */
{ 230, -10 }, /* (137) create_from_stable ::= ifnotexists ids cpxName USING ids cpxName TAGS LP tagitemlist RP */ { 231, -10 }, /* (137) create_from_stable ::= ifnotexists ids cpxName USING ids cpxName TAGS LP tagitemlist RP */
{ 230, -13 }, /* (138) create_from_stable ::= ifnotexists ids cpxName USING ids cpxName LP tagNamelist RP TAGS LP tagitemlist RP */ { 231, -13 }, /* (138) create_from_stable ::= ifnotexists ids cpxName USING ids cpxName LP tagNamelist RP TAGS LP tagitemlist RP */
{ 232, -3 }, /* (139) tagNamelist ::= tagNamelist COMMA ids */ { 233, -3 }, /* (139) tagNamelist ::= tagNamelist COMMA ids */
{ 232, -1 }, /* (140) tagNamelist ::= ids */ { 233, -1 }, /* (140) tagNamelist ::= ids */
{ 227, -5 }, /* (141) create_table_args ::= ifnotexists ids cpxName AS select */ { 228, -5 }, /* (141) create_table_args ::= ifnotexists ids cpxName AS select */
{ 231, -3 }, /* (142) columnlist ::= columnlist COMMA column */ { 232, -3 }, /* (142) columnlist ::= columnlist COMMA column */
{ 231, -1 }, /* (143) columnlist ::= column */ { 232, -1 }, /* (143) columnlist ::= column */
{ 234, -2 }, /* (144) column ::= ids typename */ { 235, -2 }, /* (144) column ::= ids typename */
{ 209, -3 }, /* (145) tagitemlist ::= tagitemlist COMMA tagitem */ { 210, -3 }, /* (145) tagitemlist ::= tagitemlist COMMA tagitem */
{ 209, -1 }, /* (146) tagitemlist ::= tagitem */ { 210, -1 }, /* (146) tagitemlist ::= tagitem */
{ 235, -1 }, /* (147) tagitem ::= INTEGER */ { 236, -1 }, /* (147) tagitem ::= INTEGER */
{ 235, -1 }, /* (148) tagitem ::= FLOAT */ { 236, -1 }, /* (148) tagitem ::= FLOAT */
{ 235, -1 }, /* (149) tagitem ::= STRING */ { 236, -1 }, /* (149) tagitem ::= STRING */
{ 235, -1 }, /* (150) tagitem ::= BOOL */ { 236, -1 }, /* (150) tagitem ::= BOOL */
{ 235, -1 }, /* (151) tagitem ::= NULL */ { 236, -1 }, /* (151) tagitem ::= NULL */
{ 235, -2 }, /* (152) tagitem ::= MINUS INTEGER */ { 236, -2 }, /* (152) tagitem ::= MINUS INTEGER */
{ 235, -2 }, /* (153) tagitem ::= MINUS FLOAT */ { 236, -2 }, /* (153) tagitem ::= MINUS FLOAT */
{ 235, -2 }, /* (154) tagitem ::= PLUS INTEGER */ { 236, -2 }, /* (154) tagitem ::= PLUS INTEGER */
{ 235, -2 }, /* (155) tagitem ::= PLUS FLOAT */ { 236, -2 }, /* (155) tagitem ::= PLUS FLOAT */
{ 233, -13 }, /* (156) select ::= SELECT selcollist from where_opt interval_opt session_option fill_opt sliding_opt groupby_opt orderby_opt having_opt slimit_opt limit_opt */ { 234, -13 }, /* (156) select ::= SELECT selcollist from where_opt interval_opt session_option fill_opt sliding_opt groupby_opt orderby_opt having_opt slimit_opt limit_opt */
{ 233, -3 }, /* (157) select ::= LP select RP */ { 234, -3 }, /* (157) select ::= LP select RP */
{ 248, -1 }, /* (158) union ::= select */ { 249, -1 }, /* (158) union ::= select */
{ 248, -4 }, /* (159) union ::= union UNION ALL select */ { 249, -4 }, /* (159) union ::= union UNION ALL select */
{ 188, -1 }, /* (160) cmd ::= union */ { 189, -1 }, /* (160) cmd ::= union */
{ 233, -2 }, /* (161) select ::= SELECT selcollist */ { 234, -2 }, /* (161) select ::= SELECT selcollist */
{ 249, -2 }, /* (162) sclp ::= selcollist COMMA */ { 250, -2 }, /* (162) sclp ::= selcollist COMMA */
{ 249, 0 }, /* (163) sclp ::= */ { 250, 0 }, /* (163) sclp ::= */
{ 236, -4 }, /* (164) selcollist ::= sclp distinct expr as */ { 237, -4 }, /* (164) selcollist ::= sclp distinct expr as */
{ 236, -2 }, /* (165) selcollist ::= sclp STAR */ { 237, -2 }, /* (165) selcollist ::= sclp STAR */
{ 252, -2 }, /* (166) as ::= AS ids */ { 253, -2 }, /* (166) as ::= AS ids */
{ 252, -1 }, /* (167) as ::= ids */ { 253, -1 }, /* (167) as ::= ids */
{ 252, 0 }, /* (168) as ::= */ { 253, 0 }, /* (168) as ::= */
{ 250, -1 }, /* (169) distinct ::= DISTINCT */ { 251, -1 }, /* (169) distinct ::= DISTINCT */
{ 250, 0 }, /* (170) distinct ::= */ { 251, 0 }, /* (170) distinct ::= */
{ 237, -2 }, /* (171) from ::= FROM tablelist */ { 238, -2 }, /* (171) from ::= FROM tablelist */
{ 237, -4 }, /* (172) from ::= FROM LP union RP */ { 238, -4 }, /* (172) from ::= FROM LP union RP */
{ 253, -2 }, /* (173) tablelist ::= ids cpxName */ { 254, -2 }, /* (173) tablelist ::= ids cpxName */
{ 253, -3 }, /* (174) tablelist ::= ids cpxName ids */ { 254, -3 }, /* (174) tablelist ::= ids cpxName ids */
{ 253, -4 }, /* (175) tablelist ::= tablelist COMMA ids cpxName */ { 254, -4 }, /* (175) tablelist ::= tablelist COMMA ids cpxName */
{ 253, -5 }, /* (176) tablelist ::= tablelist COMMA ids cpxName ids */ { 254, -5 }, /* (176) tablelist ::= tablelist COMMA ids cpxName ids */
{ 254, -1 }, /* (177) tmvar ::= VARIABLE */ { 255, -1 }, /* (177) tmvar ::= VARIABLE */
{ 239, -4 }, /* (178) interval_opt ::= INTERVAL LP tmvar RP */ { 240, -4 }, /* (178) interval_opt ::= INTERVAL LP tmvar RP */
{ 239, -6 }, /* (179) interval_opt ::= INTERVAL LP tmvar COMMA tmvar RP */ { 240, -6 }, /* (179) interval_opt ::= INTERVAL LP tmvar COMMA tmvar RP */
{ 239, 0 }, /* (180) interval_opt ::= */ { 240, 0 }, /* (180) interval_opt ::= */
{ 240, 0 }, /* (181) session_option ::= */ { 241, 0 }, /* (181) session_option ::= */
{ 240, -7 }, /* (182) session_option ::= SESSION LP ids cpxName COMMA tmvar RP */ { 241, -7 }, /* (182) session_option ::= SESSION LP ids cpxName COMMA tmvar RP */
{ 241, 0 }, /* (183) fill_opt ::= */ { 242, 0 }, /* (183) fill_opt ::= */
{ 241, -6 }, /* (184) fill_opt ::= FILL LP ID COMMA tagitemlist RP */ { 242, -6 }, /* (184) fill_opt ::= FILL LP ID COMMA tagitemlist RP */
{ 241, -4 }, /* (185) fill_opt ::= FILL LP ID RP */ { 242, -4 }, /* (185) fill_opt ::= FILL LP ID RP */
{ 242, -4 }, /* (186) sliding_opt ::= SLIDING LP tmvar RP */ { 243, -4 }, /* (186) sliding_opt ::= SLIDING LP tmvar RP */
{ 242, 0 }, /* (187) sliding_opt ::= */ { 243, 0 }, /* (187) sliding_opt ::= */
{ 244, 0 }, /* (188) orderby_opt ::= */ { 245, 0 }, /* (188) orderby_opt ::= */
{ 244, -3 }, /* (189) orderby_opt ::= ORDER BY sortlist */ { 245, -3 }, /* (189) orderby_opt ::= ORDER BY sortlist */
{ 255, -4 }, /* (190) sortlist ::= sortlist COMMA item sortorder */ { 256, -4 }, /* (190) sortlist ::= sortlist COMMA item sortorder */
{ 255, -2 }, /* (191) sortlist ::= item sortorder */ { 256, -2 }, /* (191) sortlist ::= item sortorder */
{ 257, -2 }, /* (192) item ::= ids cpxName */ { 258, -2 }, /* (192) item ::= ids cpxName */
{ 258, -1 }, /* (193) sortorder ::= ASC */ { 259, -1 }, /* (193) sortorder ::= ASC */
{ 258, -1 }, /* (194) sortorder ::= DESC */ { 259, -1 }, /* (194) sortorder ::= DESC */
{ 258, 0 }, /* (195) sortorder ::= */ { 259, 0 }, /* (195) sortorder ::= */
{ 243, 0 }, /* (196) groupby_opt ::= */ { 244, 0 }, /* (196) groupby_opt ::= */
{ 243, -3 }, /* (197) groupby_opt ::= GROUP BY grouplist */ { 244, -3 }, /* (197) groupby_opt ::= GROUP BY grouplist */
{ 259, -3 }, /* (198) grouplist ::= grouplist COMMA item */ { 260, -3 }, /* (198) grouplist ::= grouplist COMMA item */
{ 259, -1 }, /* (199) grouplist ::= item */ { 260, -1 }, /* (199) grouplist ::= item */
{ 245, 0 }, /* (200) having_opt ::= */ { 246, 0 }, /* (200) having_opt ::= */
{ 245, -2 }, /* (201) having_opt ::= HAVING expr */ { 246, -2 }, /* (201) having_opt ::= HAVING expr */
{ 247, 0 }, /* (202) limit_opt ::= */ { 248, 0 }, /* (202) limit_opt ::= */
{ 247, -2 }, /* (203) limit_opt ::= LIMIT signed */ { 248, -2 }, /* (203) limit_opt ::= LIMIT signed */
{ 247, -4 }, /* (204) limit_opt ::= LIMIT signed OFFSET signed */ { 248, -4 }, /* (204) limit_opt ::= LIMIT signed OFFSET signed */
{ 247, -4 }, /* (205) limit_opt ::= LIMIT signed COMMA signed */ { 248, -4 }, /* (205) limit_opt ::= LIMIT signed COMMA signed */
{ 246, 0 }, /* (206) slimit_opt ::= */ { 247, 0 }, /* (206) slimit_opt ::= */
{ 246, -2 }, /* (207) slimit_opt ::= SLIMIT signed */ { 247, -2 }, /* (207) slimit_opt ::= SLIMIT signed */
{ 246, -4 }, /* (208) slimit_opt ::= SLIMIT signed SOFFSET signed */ { 247, -4 }, /* (208) slimit_opt ::= SLIMIT signed SOFFSET signed */
{ 246, -4 }, /* (209) slimit_opt ::= SLIMIT signed COMMA signed */ { 247, -4 }, /* (209) slimit_opt ::= SLIMIT signed COMMA signed */
{ 238, 0 }, /* (210) where_opt ::= */ { 239, 0 }, /* (210) where_opt ::= */
{ 238, -2 }, /* (211) where_opt ::= WHERE expr */ { 239, -2 }, /* (211) where_opt ::= WHERE expr */
{ 251, -3 }, /* (212) expr ::= LP expr RP */ { 252, -3 }, /* (212) expr ::= LP expr RP */
{ 251, -1 }, /* (213) expr ::= ID */ { 252, -1 }, /* (213) expr ::= ID */
{ 251, -3 }, /* (214) expr ::= ID DOT ID */ { 252, -3 }, /* (214) expr ::= ID DOT ID */
{ 251, -3 }, /* (215) expr ::= ID DOT STAR */ { 252, -3 }, /* (215) expr ::= ID DOT STAR */
{ 251, -1 }, /* (216) expr ::= INTEGER */ { 252, -1 }, /* (216) expr ::= INTEGER */
{ 251, -2 }, /* (217) expr ::= MINUS INTEGER */ { 252, -2 }, /* (217) expr ::= MINUS INTEGER */
{ 251, -2 }, /* (218) expr ::= PLUS INTEGER */ { 252, -2 }, /* (218) expr ::= PLUS INTEGER */
{ 251, -1 }, /* (219) expr ::= FLOAT */ { 252, -1 }, /* (219) expr ::= FLOAT */
{ 251, -2 }, /* (220) expr ::= MINUS FLOAT */ { 252, -2 }, /* (220) expr ::= MINUS FLOAT */
{ 251, -2 }, /* (221) expr ::= PLUS FLOAT */ { 252, -2 }, /* (221) expr ::= PLUS FLOAT */
{ 251, -1 }, /* (222) expr ::= STRING */ { 252, -1 }, /* (222) expr ::= STRING */
{ 251, -1 }, /* (223) expr ::= NOW */ { 252, -1 }, /* (223) expr ::= NOW */
{ 251, -1 }, /* (224) expr ::= VARIABLE */ { 252, -1 }, /* (224) expr ::= VARIABLE */
{ 251, -1 }, /* (225) expr ::= BOOL */ { 252, -1 }, /* (225) expr ::= BOOL */
{ 251, -4 }, /* (226) expr ::= ID LP exprlist RP */ { 252, -4 }, /* (226) expr ::= ID LP exprlist RP */
{ 251, -4 }, /* (227) expr ::= ID LP STAR RP */ { 252, -4 }, /* (227) expr ::= ID LP STAR RP */
{ 251, -3 }, /* (228) expr ::= expr IS NULL */ { 252, -3 }, /* (228) expr ::= expr IS NULL */
{ 251, -4 }, /* (229) expr ::= expr IS NOT NULL */ { 252, -4 }, /* (229) expr ::= expr IS NOT NULL */
{ 251, -3 }, /* (230) expr ::= expr LT expr */ { 252, -3 }, /* (230) expr ::= expr LT expr */
{ 251, -3 }, /* (231) expr ::= expr GT expr */ { 252, -3 }, /* (231) expr ::= expr GT expr */
{ 251, -3 }, /* (232) expr ::= expr LE expr */ { 252, -3 }, /* (232) expr ::= expr LE expr */
{ 251, -3 }, /* (233) expr ::= expr GE expr */ { 252, -3 }, /* (233) expr ::= expr GE expr */
{ 251, -3 }, /* (234) expr ::= expr NE expr */ { 252, -3 }, /* (234) expr ::= expr NE expr */
{ 251, -3 }, /* (235) expr ::= expr EQ expr */ { 252, -3 }, /* (235) expr ::= expr EQ expr */
{ 251, -5 }, /* (236) expr ::= expr BETWEEN expr AND expr */ { 252, -5 }, /* (236) expr ::= expr BETWEEN expr AND expr */
{ 251, -3 }, /* (237) expr ::= expr AND expr */ { 252, -3 }, /* (237) expr ::= expr AND expr */
{ 251, -3 }, /* (238) expr ::= expr OR expr */ { 252, -3 }, /* (238) expr ::= expr OR expr */
{ 251, -3 }, /* (239) expr ::= expr PLUS expr */ { 252, -3 }, /* (239) expr ::= expr PLUS expr */
{ 251, -3 }, /* (240) expr ::= expr MINUS expr */ { 252, -3 }, /* (240) expr ::= expr MINUS expr */
{ 251, -3 }, /* (241) expr ::= expr STAR expr */ { 252, -3 }, /* (241) expr ::= expr STAR expr */
{ 251, -3 }, /* (242) expr ::= expr SLASH expr */ { 252, -3 }, /* (242) expr ::= expr SLASH expr */
{ 251, -3 }, /* (243) expr ::= expr REM expr */ { 252, -3 }, /* (243) expr ::= expr REM expr */
{ 251, -3 }, /* (244) expr ::= expr LIKE expr */ { 252, -3 }, /* (244) expr ::= expr LIKE expr */
{ 251, -5 }, /* (245) expr ::= expr IN LP exprlist RP */ { 252, -5 }, /* (245) expr ::= expr IN LP exprlist RP */
{ 260, -3 }, /* (246) exprlist ::= exprlist COMMA expritem */ { 261, -3 }, /* (246) exprlist ::= exprlist COMMA expritem */
{ 260, -1 }, /* (247) exprlist ::= expritem */ { 261, -1 }, /* (247) exprlist ::= expritem */
{ 261, -1 }, /* (248) expritem ::= expr */ { 262, -1 }, /* (248) expritem ::= expr */
{ 261, 0 }, /* (249) expritem ::= */ { 262, 0 }, /* (249) expritem ::= */
{ 188, -3 }, /* (250) cmd ::= RESET QUERY CACHE */ { 189, -3 }, /* (250) cmd ::= RESET QUERY CACHE */
{ 188, -7 }, /* (251) cmd ::= ALTER TABLE ids cpxName ADD COLUMN columnlist */ { 189, -3 }, /* (251) cmd ::= SYNCDB ids REPLICA */
{ 188, -7 }, /* (252) cmd ::= ALTER TABLE ids cpxName DROP COLUMN ids */ { 189, -7 }, /* (252) cmd ::= ALTER TABLE ids cpxName ADD COLUMN columnlist */
{ 188, -7 }, /* (253) cmd ::= ALTER TABLE ids cpxName ADD TAG columnlist */ { 189, -7 }, /* (253) cmd ::= ALTER TABLE ids cpxName DROP COLUMN ids */
{ 188, -7 }, /* (254) cmd ::= ALTER TABLE ids cpxName DROP TAG ids */ { 189, -7 }, /* (254) cmd ::= ALTER TABLE ids cpxName ADD TAG columnlist */
{ 188, -8 }, /* (255) cmd ::= ALTER TABLE ids cpxName CHANGE TAG ids ids */ { 189, -7 }, /* (255) cmd ::= ALTER TABLE ids cpxName DROP TAG ids */
{ 188, -9 }, /* (256) cmd ::= ALTER TABLE ids cpxName SET TAG ids EQ tagitem */ { 189, -8 }, /* (256) cmd ::= ALTER TABLE ids cpxName CHANGE TAG ids ids */
{ 188, -7 }, /* (257) cmd ::= ALTER STABLE ids cpxName ADD COLUMN columnlist */ { 189, -9 }, /* (257) cmd ::= ALTER TABLE ids cpxName SET TAG ids EQ tagitem */
{ 188, -7 }, /* (258) cmd ::= ALTER STABLE ids cpxName DROP COLUMN ids */ { 189, -7 }, /* (258) cmd ::= ALTER STABLE ids cpxName ADD COLUMN columnlist */
{ 188, -7 }, /* (259) cmd ::= ALTER STABLE ids cpxName ADD TAG columnlist */ { 189, -7 }, /* (259) cmd ::= ALTER STABLE ids cpxName DROP COLUMN ids */
{ 188, -7 }, /* (260) cmd ::= ALTER STABLE ids cpxName DROP TAG ids */ { 189, -7 }, /* (260) cmd ::= ALTER STABLE ids cpxName ADD TAG columnlist */
{ 188, -8 }, /* (261) cmd ::= ALTER STABLE ids cpxName CHANGE TAG ids ids */ { 189, -7 }, /* (261) cmd ::= ALTER STABLE ids cpxName DROP TAG ids */
{ 188, -3 }, /* (262) cmd ::= KILL CONNECTION INTEGER */ { 189, -8 }, /* (262) cmd ::= ALTER STABLE ids cpxName CHANGE TAG ids ids */
{ 188, -5 }, /* (263) cmd ::= KILL STREAM INTEGER COLON INTEGER */ { 189, -3 }, /* (263) cmd ::= KILL CONNECTION INTEGER */
{ 188, -5 }, /* (264) cmd ::= KILL QUERY INTEGER COLON INTEGER */ { 189, -5 }, /* (264) cmd ::= KILL STREAM INTEGER COLON INTEGER */
{ 189, -5 }, /* (265) cmd ::= KILL QUERY INTEGER COLON INTEGER */
}; };
static void yy_accept(yyParser*); /* Forward Declaration */ static void yy_accept(yyParser*); /* Forward Declaration */
...@@ -2252,13 +2256,13 @@ static void yy_reduce( ...@@ -2252,13 +2256,13 @@ static void yy_reduce(
break; break;
case 43: /* cmd ::= ALTER DATABASE ids alter_db_optr */ case 43: /* cmd ::= ALTER DATABASE ids alter_db_optr */
case 44: /* cmd ::= ALTER TOPIC ids alter_topic_optr */ yytestcase(yyruleno==44); case 44: /* cmd ::= ALTER TOPIC ids alter_topic_optr */ yytestcase(yyruleno==44);
{ SStrToken t = {0}; setCreateDbInfo(pInfo, TSDB_SQL_ALTER_DB, &yymsp[-1].minor.yy0, &yymsp[0].minor.yy94, &t);} { SStrToken t = {0}; setCreateDbInfo(pInfo, TSDB_SQL_ALTER_DB, &yymsp[-1].minor.yy0, &yymsp[0].minor.yy322, &t);}
break; break;
case 45: /* cmd ::= ALTER ACCOUNT ids acct_optr */ case 45: /* cmd ::= ALTER ACCOUNT ids acct_optr */
{ setCreateAcctSql(pInfo, TSDB_SQL_ALTER_ACCT, &yymsp[-1].minor.yy0, NULL, &yymsp[0].minor.yy419);} { setCreateAcctSql(pInfo, TSDB_SQL_ALTER_ACCT, &yymsp[-1].minor.yy0, NULL, &yymsp[0].minor.yy351);}
break; break;
case 46: /* cmd ::= ALTER ACCOUNT ids PASS ids acct_optr */ case 46: /* 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.yy419);} { setCreateAcctSql(pInfo, TSDB_SQL_ALTER_ACCT, &yymsp[-3].minor.yy0, &yymsp[-1].minor.yy0, &yymsp[0].minor.yy351);}
break; break;
case 47: /* ids ::= ID */ case 47: /* ids ::= ID */
case 48: /* ids ::= STRING */ yytestcase(yyruleno==48); case 48: /* ids ::= STRING */ yytestcase(yyruleno==48);
...@@ -2280,11 +2284,11 @@ static void yy_reduce( ...@@ -2280,11 +2284,11 @@ static void 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 54: /* cmd ::= CREATE ACCOUNT ids PASS ids acct_optr */ case 54: /* 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.yy419);} { setCreateAcctSql(pInfo, TSDB_SQL_CREATE_ACCT, &yymsp[-3].minor.yy0, &yymsp[-1].minor.yy0, &yymsp[0].minor.yy351);}
break; break;
case 55: /* cmd ::= CREATE DATABASE ifnotexists ids db_optr */ case 55: /* cmd ::= CREATE DATABASE ifnotexists ids db_optr */
case 56: /* cmd ::= CREATE TOPIC ifnotexists ids topic_optr */ yytestcase(yyruleno==56); case 56: /* cmd ::= CREATE TOPIC ifnotexists ids topic_optr */ yytestcase(yyruleno==56);
{ setCreateDbInfo(pInfo, TSDB_SQL_CREATE_DB, &yymsp[-1].minor.yy0, &yymsp[0].minor.yy94, &yymsp[-2].minor.yy0);} { setCreateDbInfo(pInfo, TSDB_SQL_CREATE_DB, &yymsp[-1].minor.yy0, &yymsp[0].minor.yy322, &yymsp[-2].minor.yy0);}
break; break;
case 57: /* cmd ::= CREATE USER ids PASS ids */ case 57: /* 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);}
...@@ -2313,20 +2317,20 @@ static void yy_reduce( ...@@ -2313,20 +2317,20 @@ static void yy_reduce(
break; break;
case 76: /* acct_optr ::= pps tseries storage streams qtime dbs users conns state */ case 76: /* acct_optr ::= pps tseries storage streams qtime dbs users conns state */
{ {
yylhsminor.yy419.maxUsers = (yymsp[-2].minor.yy0.n>0)?atoi(yymsp[-2].minor.yy0.z):-1; yylhsminor.yy351.maxUsers = (yymsp[-2].minor.yy0.n>0)?atoi(yymsp[-2].minor.yy0.z):-1;
yylhsminor.yy419.maxDbs = (yymsp[-3].minor.yy0.n>0)?atoi(yymsp[-3].minor.yy0.z):-1; yylhsminor.yy351.maxDbs = (yymsp[-3].minor.yy0.n>0)?atoi(yymsp[-3].minor.yy0.z):-1;
yylhsminor.yy419.maxTimeSeries = (yymsp[-7].minor.yy0.n>0)?atoi(yymsp[-7].minor.yy0.z):-1; yylhsminor.yy351.maxTimeSeries = (yymsp[-7].minor.yy0.n>0)?atoi(yymsp[-7].minor.yy0.z):-1;
yylhsminor.yy419.maxStreams = (yymsp[-5].minor.yy0.n>0)?atoi(yymsp[-5].minor.yy0.z):-1; yylhsminor.yy351.maxStreams = (yymsp[-5].minor.yy0.n>0)?atoi(yymsp[-5].minor.yy0.z):-1;
yylhsminor.yy419.maxPointsPerSecond = (yymsp[-8].minor.yy0.n>0)?atoi(yymsp[-8].minor.yy0.z):-1; yylhsminor.yy351.maxPointsPerSecond = (yymsp[-8].minor.yy0.n>0)?atoi(yymsp[-8].minor.yy0.z):-1;
yylhsminor.yy419.maxStorage = (yymsp[-6].minor.yy0.n>0)?strtoll(yymsp[-6].minor.yy0.z, NULL, 10):-1; yylhsminor.yy351.maxStorage = (yymsp[-6].minor.yy0.n>0)?strtoll(yymsp[-6].minor.yy0.z, NULL, 10):-1;
yylhsminor.yy419.maxQueryTime = (yymsp[-4].minor.yy0.n>0)?strtoll(yymsp[-4].minor.yy0.z, NULL, 10):-1; yylhsminor.yy351.maxQueryTime = (yymsp[-4].minor.yy0.n>0)?strtoll(yymsp[-4].minor.yy0.z, NULL, 10):-1;
yylhsminor.yy419.maxConnections = (yymsp[-1].minor.yy0.n>0)?atoi(yymsp[-1].minor.yy0.z):-1; yylhsminor.yy351.maxConnections = (yymsp[-1].minor.yy0.n>0)?atoi(yymsp[-1].minor.yy0.z):-1;
yylhsminor.yy419.stat = yymsp[0].minor.yy0; yylhsminor.yy351.stat = yymsp[0].minor.yy0;
} }
yymsp[-8].minor.yy419 = yylhsminor.yy419; yymsp[-8].minor.yy351 = yylhsminor.yy351;
break; break;
case 77: /* keep ::= KEEP tagitemlist */ case 77: /* keep ::= KEEP tagitemlist */
{ yymsp[-1].minor.yy429 = yymsp[0].minor.yy429; } { yymsp[-1].minor.yy159 = yymsp[0].minor.yy159; }
break; break;
case 78: /* cache ::= CACHE INTEGER */ case 78: /* cache ::= CACHE INTEGER */
case 79: /* replica ::= REPLICA INTEGER */ yytestcase(yyruleno==79); case 79: /* replica ::= REPLICA INTEGER */ yytestcase(yyruleno==79);
...@@ -2346,234 +2350,234 @@ static void yy_reduce( ...@@ -2346,234 +2350,234 @@ static void yy_reduce(
{ yymsp[-1].minor.yy0 = yymsp[0].minor.yy0; } { yymsp[-1].minor.yy0 = yymsp[0].minor.yy0; }
break; break;
case 93: /* db_optr ::= */ case 93: /* db_optr ::= */
{setDefaultCreateDbOption(&yymsp[1].minor.yy94); yymsp[1].minor.yy94.dbType = TSDB_DB_TYPE_DEFAULT;} {setDefaultCreateDbOption(&yymsp[1].minor.yy322); yymsp[1].minor.yy322.dbType = TSDB_DB_TYPE_DEFAULT;}
break; break;
case 94: /* db_optr ::= db_optr cache */ case 94: /* db_optr ::= db_optr cache */
{ yylhsminor.yy94 = yymsp[-1].minor.yy94; yylhsminor.yy94.cacheBlockSize = strtol(yymsp[0].minor.yy0.z, NULL, 10); } { yylhsminor.yy322 = yymsp[-1].minor.yy322; yylhsminor.yy322.cacheBlockSize = strtol(yymsp[0].minor.yy0.z, NULL, 10); }
yymsp[-1].minor.yy94 = yylhsminor.yy94; yymsp[-1].minor.yy322 = yylhsminor.yy322;
break; break;
case 95: /* db_optr ::= db_optr replica */ case 95: /* db_optr ::= db_optr replica */
case 112: /* alter_db_optr ::= alter_db_optr replica */ yytestcase(yyruleno==112); case 112: /* alter_db_optr ::= alter_db_optr replica */ yytestcase(yyruleno==112);
{ yylhsminor.yy94 = yymsp[-1].minor.yy94; yylhsminor.yy94.replica = strtol(yymsp[0].minor.yy0.z, NULL, 10); } { yylhsminor.yy322 = yymsp[-1].minor.yy322; yylhsminor.yy322.replica = strtol(yymsp[0].minor.yy0.z, NULL, 10); }
yymsp[-1].minor.yy94 = yylhsminor.yy94; yymsp[-1].minor.yy322 = yylhsminor.yy322;
break; break;
case 96: /* db_optr ::= db_optr quorum */ case 96: /* db_optr ::= db_optr quorum */
case 113: /* alter_db_optr ::= alter_db_optr quorum */ yytestcase(yyruleno==113); case 113: /* alter_db_optr ::= alter_db_optr quorum */ yytestcase(yyruleno==113);
{ yylhsminor.yy94 = yymsp[-1].minor.yy94; yylhsminor.yy94.quorum = strtol(yymsp[0].minor.yy0.z, NULL, 10); } { yylhsminor.yy322 = yymsp[-1].minor.yy322; yylhsminor.yy322.quorum = strtol(yymsp[0].minor.yy0.z, NULL, 10); }
yymsp[-1].minor.yy94 = yylhsminor.yy94; yymsp[-1].minor.yy322 = yylhsminor.yy322;
break; break;
case 97: /* db_optr ::= db_optr days */ case 97: /* db_optr ::= db_optr days */
{ yylhsminor.yy94 = yymsp[-1].minor.yy94; yylhsminor.yy94.daysPerFile = strtol(yymsp[0].minor.yy0.z, NULL, 10); } { yylhsminor.yy322 = yymsp[-1].minor.yy322; yylhsminor.yy322.daysPerFile = strtol(yymsp[0].minor.yy0.z, NULL, 10); }
yymsp[-1].minor.yy94 = yylhsminor.yy94; yymsp[-1].minor.yy322 = yylhsminor.yy322;
break; break;
case 98: /* db_optr ::= db_optr minrows */ case 98: /* db_optr ::= db_optr minrows */
{ yylhsminor.yy94 = yymsp[-1].minor.yy94; yylhsminor.yy94.minRowsPerBlock = strtod(yymsp[0].minor.yy0.z, NULL); } { yylhsminor.yy322 = yymsp[-1].minor.yy322; yylhsminor.yy322.minRowsPerBlock = strtod(yymsp[0].minor.yy0.z, NULL); }
yymsp[-1].minor.yy94 = yylhsminor.yy94; yymsp[-1].minor.yy322 = yylhsminor.yy322;
break; break;
case 99: /* db_optr ::= db_optr maxrows */ case 99: /* db_optr ::= db_optr maxrows */
{ yylhsminor.yy94 = yymsp[-1].minor.yy94; yylhsminor.yy94.maxRowsPerBlock = strtod(yymsp[0].minor.yy0.z, NULL); } { yylhsminor.yy322 = yymsp[-1].minor.yy322; yylhsminor.yy322.maxRowsPerBlock = strtod(yymsp[0].minor.yy0.z, NULL); }
yymsp[-1].minor.yy94 = yylhsminor.yy94; yymsp[-1].minor.yy322 = yylhsminor.yy322;
break; break;
case 100: /* db_optr ::= db_optr blocks */ case 100: /* db_optr ::= db_optr blocks */
case 115: /* alter_db_optr ::= alter_db_optr blocks */ yytestcase(yyruleno==115); case 115: /* alter_db_optr ::= alter_db_optr blocks */ yytestcase(yyruleno==115);
{ yylhsminor.yy94 = yymsp[-1].minor.yy94; yylhsminor.yy94.numOfBlocks = strtol(yymsp[0].minor.yy0.z, NULL, 10); } { yylhsminor.yy322 = yymsp[-1].minor.yy322; yylhsminor.yy322.numOfBlocks = strtol(yymsp[0].minor.yy0.z, NULL, 10); }
yymsp[-1].minor.yy94 = yylhsminor.yy94; yymsp[-1].minor.yy322 = yylhsminor.yy322;
break; break;
case 101: /* db_optr ::= db_optr ctime */ case 101: /* db_optr ::= db_optr ctime */
{ yylhsminor.yy94 = yymsp[-1].minor.yy94; yylhsminor.yy94.commitTime = strtol(yymsp[0].minor.yy0.z, NULL, 10); } { yylhsminor.yy322 = yymsp[-1].minor.yy322; yylhsminor.yy322.commitTime = strtol(yymsp[0].minor.yy0.z, NULL, 10); }
yymsp[-1].minor.yy94 = yylhsminor.yy94; yymsp[-1].minor.yy322 = yylhsminor.yy322;
break; break;
case 102: /* db_optr ::= db_optr wal */ case 102: /* db_optr ::= db_optr wal */
case 117: /* alter_db_optr ::= alter_db_optr wal */ yytestcase(yyruleno==117); case 117: /* alter_db_optr ::= alter_db_optr wal */ yytestcase(yyruleno==117);
{ yylhsminor.yy94 = yymsp[-1].minor.yy94; yylhsminor.yy94.walLevel = strtol(yymsp[0].minor.yy0.z, NULL, 10); } { yylhsminor.yy322 = yymsp[-1].minor.yy322; yylhsminor.yy322.walLevel = strtol(yymsp[0].minor.yy0.z, NULL, 10); }
yymsp[-1].minor.yy94 = yylhsminor.yy94; yymsp[-1].minor.yy322 = yylhsminor.yy322;
break; break;
case 103: /* db_optr ::= db_optr fsync */ case 103: /* db_optr ::= db_optr fsync */
case 118: /* alter_db_optr ::= alter_db_optr fsync */ yytestcase(yyruleno==118); case 118: /* alter_db_optr ::= alter_db_optr fsync */ yytestcase(yyruleno==118);
{ yylhsminor.yy94 = yymsp[-1].minor.yy94; yylhsminor.yy94.fsyncPeriod = strtol(yymsp[0].minor.yy0.z, NULL, 10); } { yylhsminor.yy322 = yymsp[-1].minor.yy322; yylhsminor.yy322.fsyncPeriod = strtol(yymsp[0].minor.yy0.z, NULL, 10); }
yymsp[-1].minor.yy94 = yylhsminor.yy94; yymsp[-1].minor.yy322 = yylhsminor.yy322;
break; break;
case 104: /* db_optr ::= db_optr comp */ case 104: /* db_optr ::= db_optr comp */
case 116: /* alter_db_optr ::= alter_db_optr comp */ yytestcase(yyruleno==116); case 116: /* alter_db_optr ::= alter_db_optr comp */ yytestcase(yyruleno==116);
{ yylhsminor.yy94 = yymsp[-1].minor.yy94; yylhsminor.yy94.compressionLevel = strtol(yymsp[0].minor.yy0.z, NULL, 10); } { yylhsminor.yy322 = yymsp[-1].minor.yy322; yylhsminor.yy322.compressionLevel = strtol(yymsp[0].minor.yy0.z, NULL, 10); }
yymsp[-1].minor.yy94 = yylhsminor.yy94; yymsp[-1].minor.yy322 = yylhsminor.yy322;
break; break;
case 105: /* db_optr ::= db_optr prec */ case 105: /* db_optr ::= db_optr prec */
{ yylhsminor.yy94 = yymsp[-1].minor.yy94; yylhsminor.yy94.precision = yymsp[0].minor.yy0; } { yylhsminor.yy322 = yymsp[-1].minor.yy322; yylhsminor.yy322.precision = yymsp[0].minor.yy0; }
yymsp[-1].minor.yy94 = yylhsminor.yy94; yymsp[-1].minor.yy322 = yylhsminor.yy322;
break; break;
case 106: /* db_optr ::= db_optr keep */ case 106: /* db_optr ::= db_optr keep */
case 114: /* alter_db_optr ::= alter_db_optr keep */ yytestcase(yyruleno==114); case 114: /* alter_db_optr ::= alter_db_optr keep */ yytestcase(yyruleno==114);
{ yylhsminor.yy94 = yymsp[-1].minor.yy94; yylhsminor.yy94.keep = yymsp[0].minor.yy429; } { yylhsminor.yy322 = yymsp[-1].minor.yy322; yylhsminor.yy322.keep = yymsp[0].minor.yy159; }
yymsp[-1].minor.yy94 = yylhsminor.yy94; yymsp[-1].minor.yy322 = yylhsminor.yy322;
break; break;
case 107: /* db_optr ::= db_optr update */ case 107: /* db_optr ::= db_optr update */
case 119: /* alter_db_optr ::= alter_db_optr update */ yytestcase(yyruleno==119); case 119: /* alter_db_optr ::= alter_db_optr update */ yytestcase(yyruleno==119);
{ yylhsminor.yy94 = yymsp[-1].minor.yy94; yylhsminor.yy94.update = strtol(yymsp[0].minor.yy0.z, NULL, 10); } { yylhsminor.yy322 = yymsp[-1].minor.yy322; yylhsminor.yy322.update = strtol(yymsp[0].minor.yy0.z, NULL, 10); }
yymsp[-1].minor.yy94 = yylhsminor.yy94; yymsp[-1].minor.yy322 = yylhsminor.yy322;
break; break;
case 108: /* db_optr ::= db_optr cachelast */ case 108: /* db_optr ::= db_optr cachelast */
case 120: /* alter_db_optr ::= alter_db_optr cachelast */ yytestcase(yyruleno==120); case 120: /* alter_db_optr ::= alter_db_optr cachelast */ yytestcase(yyruleno==120);
{ yylhsminor.yy94 = yymsp[-1].minor.yy94; yylhsminor.yy94.cachelast = strtol(yymsp[0].minor.yy0.z, NULL, 10); } { yylhsminor.yy322 = yymsp[-1].minor.yy322; yylhsminor.yy322.cachelast = strtol(yymsp[0].minor.yy0.z, NULL, 10); }
yymsp[-1].minor.yy94 = yylhsminor.yy94; yymsp[-1].minor.yy322 = yylhsminor.yy322;
break; break;
case 109: /* topic_optr ::= db_optr */ case 109: /* topic_optr ::= db_optr */
case 121: /* alter_topic_optr ::= alter_db_optr */ yytestcase(yyruleno==121); case 121: /* alter_topic_optr ::= alter_db_optr */ yytestcase(yyruleno==121);
{ yylhsminor.yy94 = yymsp[0].minor.yy94; yylhsminor.yy94.dbType = TSDB_DB_TYPE_TOPIC; } { yylhsminor.yy322 = yymsp[0].minor.yy322; yylhsminor.yy322.dbType = TSDB_DB_TYPE_TOPIC; }
yymsp[0].minor.yy94 = yylhsminor.yy94; yymsp[0].minor.yy322 = yylhsminor.yy322;
break; break;
case 110: /* topic_optr ::= topic_optr partitions */ case 110: /* topic_optr ::= topic_optr partitions */
case 122: /* alter_topic_optr ::= alter_topic_optr partitions */ yytestcase(yyruleno==122); case 122: /* alter_topic_optr ::= alter_topic_optr partitions */ yytestcase(yyruleno==122);
{ yylhsminor.yy94 = yymsp[-1].minor.yy94; yylhsminor.yy94.partitions = strtol(yymsp[0].minor.yy0.z, NULL, 10); } { yylhsminor.yy322 = yymsp[-1].minor.yy322; yylhsminor.yy322.partitions = strtol(yymsp[0].minor.yy0.z, NULL, 10); }
yymsp[-1].minor.yy94 = yylhsminor.yy94; yymsp[-1].minor.yy322 = yylhsminor.yy322;
break; break;
case 111: /* alter_db_optr ::= */ case 111: /* alter_db_optr ::= */
{ setDefaultCreateDbOption(&yymsp[1].minor.yy94); yymsp[1].minor.yy94.dbType = TSDB_DB_TYPE_DEFAULT;} { setDefaultCreateDbOption(&yymsp[1].minor.yy322); yymsp[1].minor.yy322.dbType = TSDB_DB_TYPE_DEFAULT;}
break; break;
case 123: /* typename ::= ids */ case 123: /* typename ::= ids */
{ {
yymsp[0].minor.yy0.type = 0; yymsp[0].minor.yy0.type = 0;
tSetColumnType (&yylhsminor.yy451, &yymsp[0].minor.yy0); tSetColumnType (&yylhsminor.yy407, &yymsp[0].minor.yy0);
} }
yymsp[0].minor.yy451 = yylhsminor.yy451; yymsp[0].minor.yy407 = yylhsminor.yy407;
break; break;
case 124: /* typename ::= ids LP signed RP */ case 124: /* typename ::= ids LP signed RP */
{ {
if (yymsp[-1].minor.yy481 <= 0) { if (yymsp[-1].minor.yy317 <= 0) {
yymsp[-3].minor.yy0.type = 0; yymsp[-3].minor.yy0.type = 0;
tSetColumnType(&yylhsminor.yy451, &yymsp[-3].minor.yy0); tSetColumnType(&yylhsminor.yy407, &yymsp[-3].minor.yy0);
} else { } else {
yymsp[-3].minor.yy0.type = -yymsp[-1].minor.yy481; // negative value of name length yymsp[-3].minor.yy0.type = -yymsp[-1].minor.yy317; // negative value of name length
tSetColumnType(&yylhsminor.yy451, &yymsp[-3].minor.yy0); tSetColumnType(&yylhsminor.yy407, &yymsp[-3].minor.yy0);
} }
} }
yymsp[-3].minor.yy451 = yylhsminor.yy451; yymsp[-3].minor.yy407 = yylhsminor.yy407;
break; break;
case 125: /* typename ::= ids UNSIGNED */ case 125: /* 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.yy451, &yymsp[-1].minor.yy0); tSetColumnType (&yylhsminor.yy407, &yymsp[-1].minor.yy0);
} }
yymsp[-1].minor.yy451 = yylhsminor.yy451; yymsp[-1].minor.yy407 = yylhsminor.yy407;
break; break;
case 126: /* signed ::= INTEGER */ case 126: /* signed ::= INTEGER */
{ yylhsminor.yy481 = strtol(yymsp[0].minor.yy0.z, NULL, 10); } { yylhsminor.yy317 = strtol(yymsp[0].minor.yy0.z, NULL, 10); }
yymsp[0].minor.yy481 = yylhsminor.yy481; yymsp[0].minor.yy317 = yylhsminor.yy317;
break; break;
case 127: /* signed ::= PLUS INTEGER */ case 127: /* signed ::= PLUS INTEGER */
{ yymsp[-1].minor.yy481 = strtol(yymsp[0].minor.yy0.z, NULL, 10); } { yymsp[-1].minor.yy317 = strtol(yymsp[0].minor.yy0.z, NULL, 10); }
break; break;
case 128: /* signed ::= MINUS INTEGER */ case 128: /* signed ::= MINUS INTEGER */
{ yymsp[-1].minor.yy481 = -strtol(yymsp[0].minor.yy0.z, NULL, 10);} { yymsp[-1].minor.yy317 = -strtol(yymsp[0].minor.yy0.z, NULL, 10);}
break; break;
case 132: /* cmd ::= CREATE TABLE create_table_list */ case 132: /* cmd ::= CREATE TABLE create_table_list */
{ pInfo->type = TSDB_SQL_CREATE_TABLE; pInfo->pCreateTableInfo = yymsp[0].minor.yy194;} { pInfo->type = TSDB_SQL_CREATE_TABLE; pInfo->pCreateTableInfo = yymsp[0].minor.yy14;}
break; break;
case 133: /* create_table_list ::= create_from_stable */ case 133: /* 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.yy252); taosArrayPush(pCreateTable->childTableInfo, &yymsp[0].minor.yy206);
pCreateTable->type = TSQL_CREATE_TABLE_FROM_STABLE; pCreateTable->type = TSQL_CREATE_TABLE_FROM_STABLE;
yylhsminor.yy194 = pCreateTable; yylhsminor.yy14 = pCreateTable;
} }
yymsp[0].minor.yy194 = yylhsminor.yy194; yymsp[0].minor.yy14 = yylhsminor.yy14;
break; break;
case 134: /* create_table_list ::= create_table_list create_from_stable */ case 134: /* create_table_list ::= create_table_list create_from_stable */
{ {
taosArrayPush(yymsp[-1].minor.yy194->childTableInfo, &yymsp[0].minor.yy252); taosArrayPush(yymsp[-1].minor.yy14->childTableInfo, &yymsp[0].minor.yy206);
yylhsminor.yy194 = yymsp[-1].minor.yy194; yylhsminor.yy14 = yymsp[-1].minor.yy14;
} }
yymsp[-1].minor.yy194 = yylhsminor.yy194; yymsp[-1].minor.yy14 = yylhsminor.yy14;
break; break;
case 135: /* create_table_args ::= ifnotexists ids cpxName LP columnlist RP */ case 135: /* create_table_args ::= ifnotexists ids cpxName LP columnlist RP */
{ {
yylhsminor.yy194 = tSetCreateTableInfo(yymsp[-1].minor.yy429, NULL, NULL, TSQL_CREATE_TABLE); yylhsminor.yy14 = tSetCreateTableInfo(yymsp[-1].minor.yy159, NULL, NULL, TSQL_CREATE_TABLE);
setSqlInfo(pInfo, yylhsminor.yy194, NULL, TSDB_SQL_CREATE_TABLE); setSqlInfo(pInfo, yylhsminor.yy14, 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.yy194 = yylhsminor.yy194; yymsp[-5].minor.yy14 = yylhsminor.yy14;
break; break;
case 136: /* create_stable_args ::= ifnotexists ids cpxName LP columnlist RP TAGS LP columnlist RP */ case 136: /* create_stable_args ::= ifnotexists ids cpxName LP columnlist RP TAGS LP columnlist RP */
{ {
yylhsminor.yy194 = tSetCreateTableInfo(yymsp[-5].minor.yy429, yymsp[-1].minor.yy429, NULL, TSQL_CREATE_STABLE); yylhsminor.yy14 = tSetCreateTableInfo(yymsp[-5].minor.yy159, yymsp[-1].minor.yy159, NULL, TSQL_CREATE_STABLE);
setSqlInfo(pInfo, yylhsminor.yy194, NULL, TSDB_SQL_CREATE_TABLE); setSqlInfo(pInfo, yylhsminor.yy14, 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.yy194 = yylhsminor.yy194; yymsp[-9].minor.yy14 = yylhsminor.yy14;
break; break;
case 137: /* create_from_stable ::= ifnotexists ids cpxName USING ids cpxName TAGS LP tagitemlist RP */ case 137: /* 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.yy252 = createNewChildTableInfo(&yymsp[-5].minor.yy0, NULL, yymsp[-1].minor.yy429, &yymsp[-8].minor.yy0, &yymsp[-9].minor.yy0); yylhsminor.yy206 = createNewChildTableInfo(&yymsp[-5].minor.yy0, NULL, yymsp[-1].minor.yy159, &yymsp[-8].minor.yy0, &yymsp[-9].minor.yy0);
} }
yymsp[-9].minor.yy252 = yylhsminor.yy252; yymsp[-9].minor.yy206 = yylhsminor.yy206;
break; break;
case 138: /* create_from_stable ::= ifnotexists ids cpxName USING ids cpxName LP tagNamelist RP TAGS LP tagitemlist RP */ case 138: /* 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.yy252 = createNewChildTableInfo(&yymsp[-8].minor.yy0, yymsp[-5].minor.yy429, yymsp[-1].minor.yy429, &yymsp[-11].minor.yy0, &yymsp[-12].minor.yy0); yylhsminor.yy206 = createNewChildTableInfo(&yymsp[-8].minor.yy0, yymsp[-5].minor.yy159, yymsp[-1].minor.yy159, &yymsp[-11].minor.yy0, &yymsp[-12].minor.yy0);
} }
yymsp[-12].minor.yy252 = yylhsminor.yy252; yymsp[-12].minor.yy206 = yylhsminor.yy206;
break; break;
case 139: /* tagNamelist ::= tagNamelist COMMA ids */ case 139: /* tagNamelist ::= tagNamelist COMMA ids */
{taosArrayPush(yymsp[-2].minor.yy429, &yymsp[0].minor.yy0); yylhsminor.yy429 = yymsp[-2].minor.yy429; } {taosArrayPush(yymsp[-2].minor.yy159, &yymsp[0].minor.yy0); yylhsminor.yy159 = yymsp[-2].minor.yy159; }
yymsp[-2].minor.yy429 = yylhsminor.yy429; yymsp[-2].minor.yy159 = yylhsminor.yy159;
break; break;
case 140: /* tagNamelist ::= ids */ case 140: /* tagNamelist ::= ids */
{yylhsminor.yy429 = taosArrayInit(4, sizeof(SStrToken)); taosArrayPush(yylhsminor.yy429, &yymsp[0].minor.yy0);} {yylhsminor.yy159 = taosArrayInit(4, sizeof(SStrToken)); taosArrayPush(yylhsminor.yy159, &yymsp[0].minor.yy0);}
yymsp[0].minor.yy429 = yylhsminor.yy429; yymsp[0].minor.yy159 = yylhsminor.yy159;
break; break;
case 141: /* create_table_args ::= ifnotexists ids cpxName AS select */ case 141: /* create_table_args ::= ifnotexists ids cpxName AS select */
{ {
yylhsminor.yy194 = tSetCreateTableInfo(NULL, NULL, yymsp[0].minor.yy254, TSQL_CREATE_STREAM); yylhsminor.yy14 = tSetCreateTableInfo(NULL, NULL, yymsp[0].minor.yy272, TSQL_CREATE_STREAM);
setSqlInfo(pInfo, yylhsminor.yy194, NULL, TSDB_SQL_CREATE_TABLE); setSqlInfo(pInfo, yylhsminor.yy14, 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.yy194 = yylhsminor.yy194; yymsp[-4].minor.yy14 = yylhsminor.yy14;
break; break;
case 142: /* columnlist ::= columnlist COMMA column */ case 142: /* columnlist ::= columnlist COMMA column */
{taosArrayPush(yymsp[-2].minor.yy429, &yymsp[0].minor.yy451); yylhsminor.yy429 = yymsp[-2].minor.yy429; } {taosArrayPush(yymsp[-2].minor.yy159, &yymsp[0].minor.yy407); yylhsminor.yy159 = yymsp[-2].minor.yy159; }
yymsp[-2].minor.yy429 = yylhsminor.yy429; yymsp[-2].minor.yy159 = yylhsminor.yy159;
break; break;
case 143: /* columnlist ::= column */ case 143: /* columnlist ::= column */
{yylhsminor.yy429 = taosArrayInit(4, sizeof(TAOS_FIELD)); taosArrayPush(yylhsminor.yy429, &yymsp[0].minor.yy451);} {yylhsminor.yy159 = taosArrayInit(4, sizeof(TAOS_FIELD)); taosArrayPush(yylhsminor.yy159, &yymsp[0].minor.yy407);}
yymsp[0].minor.yy429 = yylhsminor.yy429; yymsp[0].minor.yy159 = yylhsminor.yy159;
break; break;
case 144: /* column ::= ids typename */ case 144: /* column ::= ids typename */
{ {
tSetColumnInfo(&yylhsminor.yy451, &yymsp[-1].minor.yy0, &yymsp[0].minor.yy451); tSetColumnInfo(&yylhsminor.yy407, &yymsp[-1].minor.yy0, &yymsp[0].minor.yy407);
} }
yymsp[-1].minor.yy451 = yylhsminor.yy451; yymsp[-1].minor.yy407 = yylhsminor.yy407;
break; break;
case 145: /* tagitemlist ::= tagitemlist COMMA tagitem */ case 145: /* tagitemlist ::= tagitemlist COMMA tagitem */
{ yylhsminor.yy429 = tVariantListAppend(yymsp[-2].minor.yy429, &yymsp[0].minor.yy218, -1); } { yylhsminor.yy159 = tVariantListAppend(yymsp[-2].minor.yy159, &yymsp[0].minor.yy488, -1); }
yymsp[-2].minor.yy429 = yylhsminor.yy429; yymsp[-2].minor.yy159 = yylhsminor.yy159;
break; break;
case 146: /* tagitemlist ::= tagitem */ case 146: /* tagitemlist ::= tagitem */
{ yylhsminor.yy429 = tVariantListAppend(NULL, &yymsp[0].minor.yy218, -1); } { yylhsminor.yy159 = tVariantListAppend(NULL, &yymsp[0].minor.yy488, -1); }
yymsp[0].minor.yy429 = yylhsminor.yy429; yymsp[0].minor.yy159 = yylhsminor.yy159;
break; break;
case 147: /* tagitem ::= INTEGER */ case 147: /* tagitem ::= INTEGER */
case 148: /* tagitem ::= FLOAT */ yytestcase(yyruleno==148); case 148: /* tagitem ::= FLOAT */ yytestcase(yyruleno==148);
case 149: /* tagitem ::= STRING */ yytestcase(yyruleno==149); case 149: /* tagitem ::= STRING */ yytestcase(yyruleno==149);
case 150: /* tagitem ::= BOOL */ yytestcase(yyruleno==150); case 150: /* tagitem ::= BOOL */ yytestcase(yyruleno==150);
{ toTSDBType(yymsp[0].minor.yy0.type); tVariantCreate(&yylhsminor.yy218, &yymsp[0].minor.yy0); } { toTSDBType(yymsp[0].minor.yy0.type); tVariantCreate(&yylhsminor.yy488, &yymsp[0].minor.yy0); }
yymsp[0].minor.yy218 = yylhsminor.yy218; yymsp[0].minor.yy488 = yylhsminor.yy488;
break; break;
case 151: /* tagitem ::= NULL */ case 151: /* tagitem ::= NULL */
{ yymsp[0].minor.yy0.type = 0; tVariantCreate(&yylhsminor.yy218, &yymsp[0].minor.yy0); } { yymsp[0].minor.yy0.type = 0; tVariantCreate(&yylhsminor.yy488, &yymsp[0].minor.yy0); }
yymsp[0].minor.yy218 = yylhsminor.yy218; yymsp[0].minor.yy488 = yylhsminor.yy488;
break; break;
case 152: /* tagitem ::= MINUS INTEGER */ case 152: /* tagitem ::= MINUS INTEGER */
case 153: /* tagitem ::= MINUS FLOAT */ yytestcase(yyruleno==153); case 153: /* tagitem ::= MINUS FLOAT */ yytestcase(yyruleno==153);
...@@ -2583,56 +2587,56 @@ static void yy_reduce( ...@@ -2583,56 +2587,56 @@ static void 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.yy218, &yymsp[-1].minor.yy0); tVariantCreate(&yylhsminor.yy488, &yymsp[-1].minor.yy0);
} }
yymsp[-1].minor.yy218 = yylhsminor.yy218; yymsp[-1].minor.yy488 = yylhsminor.yy488;
break; break;
case 156: /* select ::= SELECT selcollist from where_opt interval_opt session_option fill_opt sliding_opt groupby_opt orderby_opt having_opt slimit_opt limit_opt */ case 156: /* select ::= SELECT selcollist from where_opt interval_opt session_option fill_opt sliding_opt groupby_opt orderby_opt having_opt slimit_opt limit_opt */
{ {
yylhsminor.yy254 = tSetQuerySqlNode(&yymsp[-12].minor.yy0, yymsp[-11].minor.yy429, yymsp[-10].minor.yy70, yymsp[-9].minor.yy170, yymsp[-4].minor.yy429, yymsp[-3].minor.yy429, &yymsp[-8].minor.yy220, &yymsp[-7].minor.yy87, &yymsp[-5].minor.yy0, yymsp[-6].minor.yy429, &yymsp[0].minor.yy18, &yymsp[-1].minor.yy18); yylhsminor.yy272 = tSetQuerySqlNode(&yymsp[-12].minor.yy0, yymsp[-11].minor.yy159, yymsp[-10].minor.yy514, yymsp[-9].minor.yy118, yymsp[-4].minor.yy159, yymsp[-3].minor.yy159, &yymsp[-8].minor.yy184, &yymsp[-7].minor.yy249, &yymsp[-5].minor.yy0, yymsp[-6].minor.yy159, &yymsp[0].minor.yy440, &yymsp[-1].minor.yy440);
} }
yymsp[-12].minor.yy254 = yylhsminor.yy254; yymsp[-12].minor.yy272 = yylhsminor.yy272;
break; break;
case 157: /* select ::= LP select RP */ case 157: /* select ::= LP select RP */
{yymsp[-2].minor.yy254 = yymsp[-1].minor.yy254;} {yymsp[-2].minor.yy272 = yymsp[-1].minor.yy272;}
break; break;
case 158: /* union ::= select */ case 158: /* union ::= select */
{ yylhsminor.yy141 = setSubclause(NULL, yymsp[0].minor.yy254); } { yylhsminor.yy391 = setSubclause(NULL, yymsp[0].minor.yy272); }
yymsp[0].minor.yy141 = yylhsminor.yy141; yymsp[0].minor.yy391 = yylhsminor.yy391;
break; break;
case 159: /* union ::= union UNION ALL select */ case 159: /* union ::= union UNION ALL select */
{ yylhsminor.yy141 = appendSelectClause(yymsp[-3].minor.yy141, yymsp[0].minor.yy254); } { yylhsminor.yy391 = appendSelectClause(yymsp[-3].minor.yy391, yymsp[0].minor.yy272); }
yymsp[-3].minor.yy141 = yylhsminor.yy141; yymsp[-3].minor.yy391 = yylhsminor.yy391;
break; break;
case 160: /* cmd ::= union */ case 160: /* cmd ::= union */
{ setSqlInfo(pInfo, yymsp[0].minor.yy141, NULL, TSDB_SQL_SELECT); } { setSqlInfo(pInfo, yymsp[0].minor.yy391, NULL, TSDB_SQL_SELECT); }
break; break;
case 161: /* select ::= SELECT selcollist */ case 161: /* select ::= SELECT selcollist */
{ {
yylhsminor.yy254 = tSetQuerySqlNode(&yymsp[-1].minor.yy0, yymsp[0].minor.yy429, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL); yylhsminor.yy272 = tSetQuerySqlNode(&yymsp[-1].minor.yy0, yymsp[0].minor.yy159, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL);
} }
yymsp[-1].minor.yy254 = yylhsminor.yy254; yymsp[-1].minor.yy272 = yylhsminor.yy272;
break; break;
case 162: /* sclp ::= selcollist COMMA */ case 162: /* sclp ::= selcollist COMMA */
{yylhsminor.yy429 = yymsp[-1].minor.yy429;} {yylhsminor.yy159 = yymsp[-1].minor.yy159;}
yymsp[-1].minor.yy429 = yylhsminor.yy429; yymsp[-1].minor.yy159 = yylhsminor.yy159;
break; break;
case 163: /* sclp ::= */ case 163: /* sclp ::= */
case 188: /* orderby_opt ::= */ yytestcase(yyruleno==188); case 188: /* orderby_opt ::= */ yytestcase(yyruleno==188);
{yymsp[1].minor.yy429 = 0;} {yymsp[1].minor.yy159 = 0;}
break; break;
case 164: /* selcollist ::= sclp distinct expr as */ case 164: /* selcollist ::= sclp distinct expr as */
{ {
yylhsminor.yy429 = tSqlExprListAppend(yymsp[-3].minor.yy429, yymsp[-1].minor.yy170, yymsp[-2].minor.yy0.n? &yymsp[-2].minor.yy0:0, yymsp[0].minor.yy0.n?&yymsp[0].minor.yy0:0); yylhsminor.yy159 = tSqlExprListAppend(yymsp[-3].minor.yy159, yymsp[-1].minor.yy118, yymsp[-2].minor.yy0.n? &yymsp[-2].minor.yy0:0, yymsp[0].minor.yy0.n?&yymsp[0].minor.yy0:0);
} }
yymsp[-3].minor.yy429 = yylhsminor.yy429; yymsp[-3].minor.yy159 = yylhsminor.yy159;
break; break;
case 165: /* selcollist ::= sclp STAR */ case 165: /* selcollist ::= sclp STAR */
{ {
tSqlExpr *pNode = tSqlExprCreateIdValue(NULL, TK_ALL); tSqlExpr *pNode = tSqlExprCreateIdValue(NULL, TK_ALL);
yylhsminor.yy429 = tSqlExprListAppend(yymsp[-1].minor.yy429, pNode, 0, 0); yylhsminor.yy159 = tSqlExprListAppend(yymsp[-1].minor.yy159, pNode, 0, 0);
} }
yymsp[-1].minor.yy429 = yylhsminor.yy429; yymsp[-1].minor.yy159 = yylhsminor.yy159;
break; break;
case 166: /* as ::= AS ids */ case 166: /* as ::= AS ids */
{ yymsp[-1].minor.yy0 = yymsp[0].minor.yy0; } { yymsp[-1].minor.yy0 = yymsp[0].minor.yy0; }
...@@ -2649,35 +2653,35 @@ static void yy_reduce( ...@@ -2649,35 +2653,35 @@ static void yy_reduce(
yymsp[0].minor.yy0 = yylhsminor.yy0; yymsp[0].minor.yy0 = yylhsminor.yy0;
break; break;
case 171: /* from ::= FROM tablelist */ case 171: /* from ::= FROM tablelist */
{yymsp[-1].minor.yy70 = yymsp[0].minor.yy429;} {yymsp[-1].minor.yy514 = yymsp[0].minor.yy159;}
break; break;
case 172: /* from ::= FROM LP union RP */ case 172: /* from ::= FROM LP union RP */
{yymsp[-3].minor.yy70 = yymsp[-1].minor.yy141;} {yymsp[-3].minor.yy514 = yymsp[-1].minor.yy391;}
break; break;
case 173: /* tablelist ::= ids cpxName */ case 173: /* tablelist ::= ids cpxName */
{ {
toTSDBType(yymsp[-1].minor.yy0.type); toTSDBType(yymsp[-1].minor.yy0.type);
yymsp[-1].minor.yy0.n += yymsp[0].minor.yy0.n; yymsp[-1].minor.yy0.n += yymsp[0].minor.yy0.n;
yylhsminor.yy429 = setTableNameList(NULL, &yymsp[-1].minor.yy0, NULL); yylhsminor.yy159 = setTableNameList(NULL, &yymsp[-1].minor.yy0, NULL);
} }
yymsp[-1].minor.yy429 = yylhsminor.yy429; yymsp[-1].minor.yy159 = yylhsminor.yy159;
break; break;
case 174: /* tablelist ::= ids cpxName ids */ case 174: /* tablelist ::= ids cpxName ids */
{ {
toTSDBType(yymsp[-2].minor.yy0.type); toTSDBType(yymsp[-2].minor.yy0.type);
toTSDBType(yymsp[0].minor.yy0.type); toTSDBType(yymsp[0].minor.yy0.type);
yymsp[-2].minor.yy0.n += yymsp[-1].minor.yy0.n; yymsp[-2].minor.yy0.n += yymsp[-1].minor.yy0.n;
yylhsminor.yy429 = setTableNameList(NULL, &yymsp[-2].minor.yy0, &yymsp[0].minor.yy0); yylhsminor.yy159 = setTableNameList(NULL, &yymsp[-2].minor.yy0, &yymsp[0].minor.yy0);
} }
yymsp[-2].minor.yy429 = yylhsminor.yy429; yymsp[-2].minor.yy159 = yylhsminor.yy159;
break; break;
case 175: /* tablelist ::= tablelist COMMA ids cpxName */ case 175: /* tablelist ::= tablelist COMMA ids cpxName */
{ {
toTSDBType(yymsp[-1].minor.yy0.type); toTSDBType(yymsp[-1].minor.yy0.type);
yymsp[-1].minor.yy0.n += yymsp[0].minor.yy0.n; yymsp[-1].minor.yy0.n += yymsp[0].minor.yy0.n;
yylhsminor.yy429 = setTableNameList(yymsp[-3].minor.yy429, &yymsp[-1].minor.yy0, NULL); yylhsminor.yy159 = setTableNameList(yymsp[-3].minor.yy159, &yymsp[-1].minor.yy0, NULL);
} }
yymsp[-3].minor.yy429 = yylhsminor.yy429; yymsp[-3].minor.yy159 = yylhsminor.yy159;
break; break;
case 176: /* tablelist ::= tablelist COMMA ids cpxName ids */ case 176: /* tablelist ::= tablelist COMMA ids cpxName ids */
{ {
...@@ -2685,35 +2689,35 @@ static void yy_reduce( ...@@ -2685,35 +2689,35 @@ static void yy_reduce(
toTSDBType(yymsp[0].minor.yy0.type); toTSDBType(yymsp[0].minor.yy0.type);
yymsp[-2].minor.yy0.n += yymsp[-1].minor.yy0.n; yymsp[-2].minor.yy0.n += yymsp[-1].minor.yy0.n;
yylhsminor.yy429 = setTableNameList(yymsp[-4].minor.yy429, &yymsp[-2].minor.yy0, &yymsp[0].minor.yy0); yylhsminor.yy159 = setTableNameList(yymsp[-4].minor.yy159, &yymsp[-2].minor.yy0, &yymsp[0].minor.yy0);
} }
yymsp[-4].minor.yy429 = yylhsminor.yy429; yymsp[-4].minor.yy159 = yylhsminor.yy159;
break; break;
case 177: /* tmvar ::= VARIABLE */ case 177: /* 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 178: /* interval_opt ::= INTERVAL LP tmvar RP */ case 178: /* interval_opt ::= INTERVAL LP tmvar RP */
{yymsp[-3].minor.yy220.interval = yymsp[-1].minor.yy0; yymsp[-3].minor.yy220.offset.n = 0;} {yymsp[-3].minor.yy184.interval = yymsp[-1].minor.yy0; yymsp[-3].minor.yy184.offset.n = 0;}
break; break;
case 179: /* interval_opt ::= INTERVAL LP tmvar COMMA tmvar RP */ case 179: /* interval_opt ::= INTERVAL LP tmvar COMMA tmvar RP */
{yymsp[-5].minor.yy220.interval = yymsp[-3].minor.yy0; yymsp[-5].minor.yy220.offset = yymsp[-1].minor.yy0;} {yymsp[-5].minor.yy184.interval = yymsp[-3].minor.yy0; yymsp[-5].minor.yy184.offset = yymsp[-1].minor.yy0;}
break; break;
case 180: /* interval_opt ::= */ case 180: /* interval_opt ::= */
{memset(&yymsp[1].minor.yy220, 0, sizeof(yymsp[1].minor.yy220));} {memset(&yymsp[1].minor.yy184, 0, sizeof(yymsp[1].minor.yy184));}
break; break;
case 181: /* session_option ::= */ case 181: /* session_option ::= */
{yymsp[1].minor.yy87.col.n = 0; yymsp[1].minor.yy87.gap.n = 0;} {yymsp[1].minor.yy249.col.n = 0; yymsp[1].minor.yy249.gap.n = 0;}
break; break;
case 182: /* session_option ::= SESSION LP ids cpxName COMMA tmvar RP */ case 182: /* 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.yy87.col = yymsp[-4].minor.yy0; yymsp[-6].minor.yy249.col = yymsp[-4].minor.yy0;
yymsp[-6].minor.yy87.gap = yymsp[-1].minor.yy0; yymsp[-6].minor.yy249.gap = yymsp[-1].minor.yy0;
} }
break; break;
case 183: /* fill_opt ::= */ case 183: /* fill_opt ::= */
{ yymsp[1].minor.yy429 = 0; } { yymsp[1].minor.yy159 = 0; }
break; break;
case 184: /* fill_opt ::= FILL LP ID COMMA tagitemlist RP */ case 184: /* fill_opt ::= FILL LP ID COMMA tagitemlist RP */
{ {
...@@ -2721,14 +2725,14 @@ static void yy_reduce( ...@@ -2721,14 +2725,14 @@ static void 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.yy429, &A, -1, 0); tVariantListInsert(yymsp[-1].minor.yy159, &A, -1, 0);
yymsp[-5].minor.yy429 = yymsp[-1].minor.yy429; yymsp[-5].minor.yy159 = yymsp[-1].minor.yy159;
} }
break; break;
case 185: /* fill_opt ::= FILL LP ID RP */ case 185: /* fill_opt ::= FILL LP ID RP */
{ {
toTSDBType(yymsp[-1].minor.yy0.type); toTSDBType(yymsp[-1].minor.yy0.type);
yymsp[-3].minor.yy429 = tVariantListAppendToken(NULL, &yymsp[-1].minor.yy0, -1); yymsp[-3].minor.yy159 = tVariantListAppendToken(NULL, &yymsp[-1].minor.yy0, -1);
} }
break; break;
case 186: /* sliding_opt ::= SLIDING LP tmvar RP */ case 186: /* sliding_opt ::= SLIDING LP tmvar RP */
...@@ -2738,238 +2742,241 @@ static void yy_reduce( ...@@ -2738,238 +2742,241 @@ static void 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 189: /* orderby_opt ::= ORDER BY sortlist */ case 189: /* orderby_opt ::= ORDER BY sortlist */
{yymsp[-2].minor.yy429 = yymsp[0].minor.yy429;} {yymsp[-2].minor.yy159 = yymsp[0].minor.yy159;}
break; break;
case 190: /* sortlist ::= sortlist COMMA item sortorder */ case 190: /* sortlist ::= sortlist COMMA item sortorder */
{ {
yylhsminor.yy429 = tVariantListAppend(yymsp[-3].minor.yy429, &yymsp[-1].minor.yy218, yymsp[0].minor.yy116); yylhsminor.yy159 = tVariantListAppend(yymsp[-3].minor.yy159, &yymsp[-1].minor.yy488, yymsp[0].minor.yy20);
} }
yymsp[-3].minor.yy429 = yylhsminor.yy429; yymsp[-3].minor.yy159 = yylhsminor.yy159;
break; break;
case 191: /* sortlist ::= item sortorder */ case 191: /* sortlist ::= item sortorder */
{ {
yylhsminor.yy429 = tVariantListAppend(NULL, &yymsp[-1].minor.yy218, yymsp[0].minor.yy116); yylhsminor.yy159 = tVariantListAppend(NULL, &yymsp[-1].minor.yy488, yymsp[0].minor.yy20);
} }
yymsp[-1].minor.yy429 = yylhsminor.yy429; yymsp[-1].minor.yy159 = yylhsminor.yy159;
break; break;
case 192: /* item ::= ids cpxName */ case 192: /* item ::= ids cpxName */
{ {
toTSDBType(yymsp[-1].minor.yy0.type); toTSDBType(yymsp[-1].minor.yy0.type);
yymsp[-1].minor.yy0.n += yymsp[0].minor.yy0.n; yymsp[-1].minor.yy0.n += yymsp[0].minor.yy0.n;
tVariantCreate(&yylhsminor.yy218, &yymsp[-1].minor.yy0); tVariantCreate(&yylhsminor.yy488, &yymsp[-1].minor.yy0);
} }
yymsp[-1].minor.yy218 = yylhsminor.yy218; yymsp[-1].minor.yy488 = yylhsminor.yy488;
break; break;
case 193: /* sortorder ::= ASC */ case 193: /* sortorder ::= ASC */
{ yymsp[0].minor.yy116 = TSDB_ORDER_ASC; } { yymsp[0].minor.yy20 = TSDB_ORDER_ASC; }
break; break;
case 194: /* sortorder ::= DESC */ case 194: /* sortorder ::= DESC */
{ yymsp[0].minor.yy116 = TSDB_ORDER_DESC;} { yymsp[0].minor.yy20 = TSDB_ORDER_DESC;}
break; break;
case 195: /* sortorder ::= */ case 195: /* sortorder ::= */
{ yymsp[1].minor.yy116 = TSDB_ORDER_ASC; } { yymsp[1].minor.yy20 = TSDB_ORDER_ASC; }
break; break;
case 196: /* groupby_opt ::= */ case 196: /* groupby_opt ::= */
{ yymsp[1].minor.yy429 = 0;} { yymsp[1].minor.yy159 = 0;}
break; break;
case 197: /* groupby_opt ::= GROUP BY grouplist */ case 197: /* groupby_opt ::= GROUP BY grouplist */
{ yymsp[-2].minor.yy429 = yymsp[0].minor.yy429;} { yymsp[-2].minor.yy159 = yymsp[0].minor.yy159;}
break; break;
case 198: /* grouplist ::= grouplist COMMA item */ case 198: /* grouplist ::= grouplist COMMA item */
{ {
yylhsminor.yy429 = tVariantListAppend(yymsp[-2].minor.yy429, &yymsp[0].minor.yy218, -1); yylhsminor.yy159 = tVariantListAppend(yymsp[-2].minor.yy159, &yymsp[0].minor.yy488, -1);
} }
yymsp[-2].minor.yy429 = yylhsminor.yy429; yymsp[-2].minor.yy159 = yylhsminor.yy159;
break; break;
case 199: /* grouplist ::= item */ case 199: /* grouplist ::= item */
{ {
yylhsminor.yy429 = tVariantListAppend(NULL, &yymsp[0].minor.yy218, -1); yylhsminor.yy159 = tVariantListAppend(NULL, &yymsp[0].minor.yy488, -1);
} }
yymsp[0].minor.yy429 = yylhsminor.yy429; yymsp[0].minor.yy159 = yylhsminor.yy159;
break; break;
case 200: /* having_opt ::= */ case 200: /* having_opt ::= */
case 210: /* where_opt ::= */ yytestcase(yyruleno==210); case 210: /* where_opt ::= */ yytestcase(yyruleno==210);
case 249: /* expritem ::= */ yytestcase(yyruleno==249); case 249: /* expritem ::= */ yytestcase(yyruleno==249);
{yymsp[1].minor.yy170 = 0;} {yymsp[1].minor.yy118 = 0;}
break; break;
case 201: /* having_opt ::= HAVING expr */ case 201: /* having_opt ::= HAVING expr */
case 211: /* where_opt ::= WHERE expr */ yytestcase(yyruleno==211); case 211: /* where_opt ::= WHERE expr */ yytestcase(yyruleno==211);
{yymsp[-1].minor.yy170 = yymsp[0].minor.yy170;} {yymsp[-1].minor.yy118 = yymsp[0].minor.yy118;}
break; break;
case 202: /* limit_opt ::= */ case 202: /* limit_opt ::= */
case 206: /* slimit_opt ::= */ yytestcase(yyruleno==206); case 206: /* slimit_opt ::= */ yytestcase(yyruleno==206);
{yymsp[1].minor.yy18.limit = -1; yymsp[1].minor.yy18.offset = 0;} {yymsp[1].minor.yy440.limit = -1; yymsp[1].minor.yy440.offset = 0;}
break; break;
case 203: /* limit_opt ::= LIMIT signed */ case 203: /* limit_opt ::= LIMIT signed */
case 207: /* slimit_opt ::= SLIMIT signed */ yytestcase(yyruleno==207); case 207: /* slimit_opt ::= SLIMIT signed */ yytestcase(yyruleno==207);
{yymsp[-1].minor.yy18.limit = yymsp[0].minor.yy481; yymsp[-1].minor.yy18.offset = 0;} {yymsp[-1].minor.yy440.limit = yymsp[0].minor.yy317; yymsp[-1].minor.yy440.offset = 0;}
break; break;
case 204: /* limit_opt ::= LIMIT signed OFFSET signed */ case 204: /* limit_opt ::= LIMIT signed OFFSET signed */
{ yymsp[-3].minor.yy18.limit = yymsp[-2].minor.yy481; yymsp[-3].minor.yy18.offset = yymsp[0].minor.yy481;} { yymsp[-3].minor.yy440.limit = yymsp[-2].minor.yy317; yymsp[-3].minor.yy440.offset = yymsp[0].minor.yy317;}
break; break;
case 205: /* limit_opt ::= LIMIT signed COMMA signed */ case 205: /* limit_opt ::= LIMIT signed COMMA signed */
{ yymsp[-3].minor.yy18.limit = yymsp[0].minor.yy481; yymsp[-3].minor.yy18.offset = yymsp[-2].minor.yy481;} { yymsp[-3].minor.yy440.limit = yymsp[0].minor.yy317; yymsp[-3].minor.yy440.offset = yymsp[-2].minor.yy317;}
break; break;
case 208: /* slimit_opt ::= SLIMIT signed SOFFSET signed */ case 208: /* slimit_opt ::= SLIMIT signed SOFFSET signed */
{yymsp[-3].minor.yy18.limit = yymsp[-2].minor.yy481; yymsp[-3].minor.yy18.offset = yymsp[0].minor.yy481;} {yymsp[-3].minor.yy440.limit = yymsp[-2].minor.yy317; yymsp[-3].minor.yy440.offset = yymsp[0].minor.yy317;}
break; break;
case 209: /* slimit_opt ::= SLIMIT signed COMMA signed */ case 209: /* slimit_opt ::= SLIMIT signed COMMA signed */
{yymsp[-3].minor.yy18.limit = yymsp[0].minor.yy481; yymsp[-3].minor.yy18.offset = yymsp[-2].minor.yy481;} {yymsp[-3].minor.yy440.limit = yymsp[0].minor.yy317; yymsp[-3].minor.yy440.offset = yymsp[-2].minor.yy317;}
break; break;
case 212: /* expr ::= LP expr RP */ case 212: /* expr ::= LP expr RP */
{yylhsminor.yy170 = yymsp[-1].minor.yy170; yylhsminor.yy170->token.z = yymsp[-2].minor.yy0.z; yylhsminor.yy170->token.n = (yymsp[0].minor.yy0.z - yymsp[-2].minor.yy0.z + 1);} {yylhsminor.yy118 = yymsp[-1].minor.yy118; yylhsminor.yy118->token.z = yymsp[-2].minor.yy0.z; yylhsminor.yy118->token.n = (yymsp[0].minor.yy0.z - yymsp[-2].minor.yy0.z + 1);}
yymsp[-2].minor.yy170 = yylhsminor.yy170; yymsp[-2].minor.yy118 = yylhsminor.yy118;
break; break;
case 213: /* expr ::= ID */ case 213: /* expr ::= ID */
{ yylhsminor.yy170 = tSqlExprCreateIdValue(&yymsp[0].minor.yy0, TK_ID);} { yylhsminor.yy118 = tSqlExprCreateIdValue(&yymsp[0].minor.yy0, TK_ID);}
yymsp[0].minor.yy170 = yylhsminor.yy170; yymsp[0].minor.yy118 = yylhsminor.yy118;
break; break;
case 214: /* expr ::= ID DOT ID */ case 214: /* expr ::= ID DOT ID */
{ yymsp[-2].minor.yy0.n += (1+yymsp[0].minor.yy0.n); yylhsminor.yy170 = tSqlExprCreateIdValue(&yymsp[-2].minor.yy0, TK_ID);} { yymsp[-2].minor.yy0.n += (1+yymsp[0].minor.yy0.n); yylhsminor.yy118 = tSqlExprCreateIdValue(&yymsp[-2].minor.yy0, TK_ID);}
yymsp[-2].minor.yy170 = yylhsminor.yy170; yymsp[-2].minor.yy118 = yylhsminor.yy118;
break; break;
case 215: /* expr ::= ID DOT STAR */ case 215: /* expr ::= ID DOT STAR */
{ yymsp[-2].minor.yy0.n += (1+yymsp[0].minor.yy0.n); yylhsminor.yy170 = tSqlExprCreateIdValue(&yymsp[-2].minor.yy0, TK_ALL);} { yymsp[-2].minor.yy0.n += (1+yymsp[0].minor.yy0.n); yylhsminor.yy118 = tSqlExprCreateIdValue(&yymsp[-2].minor.yy0, TK_ALL);}
yymsp[-2].minor.yy170 = yylhsminor.yy170; yymsp[-2].minor.yy118 = yylhsminor.yy118;
break; break;
case 216: /* expr ::= INTEGER */ case 216: /* expr ::= INTEGER */
{ yylhsminor.yy170 = tSqlExprCreateIdValue(&yymsp[0].minor.yy0, TK_INTEGER);} { yylhsminor.yy118 = tSqlExprCreateIdValue(&yymsp[0].minor.yy0, TK_INTEGER);}
yymsp[0].minor.yy170 = yylhsminor.yy170; yymsp[0].minor.yy118 = yylhsminor.yy118;
break; break;
case 217: /* expr ::= MINUS INTEGER */ case 217: /* expr ::= MINUS INTEGER */
case 218: /* expr ::= PLUS INTEGER */ yytestcase(yyruleno==218); case 218: /* expr ::= PLUS INTEGER */ yytestcase(yyruleno==218);
{ yymsp[-1].minor.yy0.n += yymsp[0].minor.yy0.n; yymsp[-1].minor.yy0.type = TK_INTEGER; yylhsminor.yy170 = tSqlExprCreateIdValue(&yymsp[-1].minor.yy0, TK_INTEGER);} { yymsp[-1].minor.yy0.n += yymsp[0].minor.yy0.n; yymsp[-1].minor.yy0.type = TK_INTEGER; yylhsminor.yy118 = tSqlExprCreateIdValue(&yymsp[-1].minor.yy0, TK_INTEGER);}
yymsp[-1].minor.yy170 = yylhsminor.yy170; yymsp[-1].minor.yy118 = yylhsminor.yy118;
break; break;
case 219: /* expr ::= FLOAT */ case 219: /* expr ::= FLOAT */
{ yylhsminor.yy170 = tSqlExprCreateIdValue(&yymsp[0].minor.yy0, TK_FLOAT);} { yylhsminor.yy118 = tSqlExprCreateIdValue(&yymsp[0].minor.yy0, TK_FLOAT);}
yymsp[0].minor.yy170 = yylhsminor.yy170; yymsp[0].minor.yy118 = yylhsminor.yy118;
break; break;
case 220: /* expr ::= MINUS FLOAT */ case 220: /* expr ::= MINUS FLOAT */
case 221: /* expr ::= PLUS FLOAT */ yytestcase(yyruleno==221); case 221: /* expr ::= PLUS FLOAT */ yytestcase(yyruleno==221);
{ yymsp[-1].minor.yy0.n += yymsp[0].minor.yy0.n; yymsp[-1].minor.yy0.type = TK_FLOAT; yylhsminor.yy170 = tSqlExprCreateIdValue(&yymsp[-1].minor.yy0, TK_FLOAT);} { yymsp[-1].minor.yy0.n += yymsp[0].minor.yy0.n; yymsp[-1].minor.yy0.type = TK_FLOAT; yylhsminor.yy118 = tSqlExprCreateIdValue(&yymsp[-1].minor.yy0, TK_FLOAT);}
yymsp[-1].minor.yy170 = yylhsminor.yy170; yymsp[-1].minor.yy118 = yylhsminor.yy118;
break; break;
case 222: /* expr ::= STRING */ case 222: /* expr ::= STRING */
{ yylhsminor.yy170 = tSqlExprCreateIdValue(&yymsp[0].minor.yy0, TK_STRING);} { yylhsminor.yy118 = tSqlExprCreateIdValue(&yymsp[0].minor.yy0, TK_STRING);}
yymsp[0].minor.yy170 = yylhsminor.yy170; yymsp[0].minor.yy118 = yylhsminor.yy118;
break; break;
case 223: /* expr ::= NOW */ case 223: /* expr ::= NOW */
{ yylhsminor.yy170 = tSqlExprCreateIdValue(&yymsp[0].minor.yy0, TK_NOW); } { yylhsminor.yy118 = tSqlExprCreateIdValue(&yymsp[0].minor.yy0, TK_NOW); }
yymsp[0].minor.yy170 = yylhsminor.yy170; yymsp[0].minor.yy118 = yylhsminor.yy118;
break; break;
case 224: /* expr ::= VARIABLE */ case 224: /* expr ::= VARIABLE */
{ yylhsminor.yy170 = tSqlExprCreateIdValue(&yymsp[0].minor.yy0, TK_VARIABLE);} { yylhsminor.yy118 = tSqlExprCreateIdValue(&yymsp[0].minor.yy0, TK_VARIABLE);}
yymsp[0].minor.yy170 = yylhsminor.yy170; yymsp[0].minor.yy118 = yylhsminor.yy118;
break; break;
case 225: /* expr ::= BOOL */ case 225: /* expr ::= BOOL */
{ yylhsminor.yy170 = tSqlExprCreateIdValue(&yymsp[0].minor.yy0, TK_BOOL);} { yylhsminor.yy118 = tSqlExprCreateIdValue(&yymsp[0].minor.yy0, TK_BOOL);}
yymsp[0].minor.yy170 = yylhsminor.yy170; yymsp[0].minor.yy118 = yylhsminor.yy118;
break; break;
case 226: /* expr ::= ID LP exprlist RP */ case 226: /* expr ::= ID LP exprlist RP */
{ yylhsminor.yy170 = tSqlExprCreateFunction(yymsp[-1].minor.yy429, &yymsp[-3].minor.yy0, &yymsp[0].minor.yy0, yymsp[-3].minor.yy0.type); } { yylhsminor.yy118 = tSqlExprCreateFunction(yymsp[-1].minor.yy159, &yymsp[-3].minor.yy0, &yymsp[0].minor.yy0, yymsp[-3].minor.yy0.type); }
yymsp[-3].minor.yy170 = yylhsminor.yy170; yymsp[-3].minor.yy118 = yylhsminor.yy118;
break; break;
case 227: /* expr ::= ID LP STAR RP */ case 227: /* expr ::= ID LP STAR RP */
{ yylhsminor.yy170 = tSqlExprCreateFunction(NULL, &yymsp[-3].minor.yy0, &yymsp[0].minor.yy0, yymsp[-3].minor.yy0.type); } { yylhsminor.yy118 = tSqlExprCreateFunction(NULL, &yymsp[-3].minor.yy0, &yymsp[0].minor.yy0, yymsp[-3].minor.yy0.type); }
yymsp[-3].minor.yy170 = yylhsminor.yy170; yymsp[-3].minor.yy118 = yylhsminor.yy118;
break; break;
case 228: /* expr ::= expr IS NULL */ case 228: /* expr ::= expr IS NULL */
{yylhsminor.yy170 = tSqlExprCreate(yymsp[-2].minor.yy170, NULL, TK_ISNULL);} {yylhsminor.yy118 = tSqlExprCreate(yymsp[-2].minor.yy118, NULL, TK_ISNULL);}
yymsp[-2].minor.yy170 = yylhsminor.yy170; yymsp[-2].minor.yy118 = yylhsminor.yy118;
break; break;
case 229: /* expr ::= expr IS NOT NULL */ case 229: /* expr ::= expr IS NOT NULL */
{yylhsminor.yy170 = tSqlExprCreate(yymsp[-3].minor.yy170, NULL, TK_NOTNULL);} {yylhsminor.yy118 = tSqlExprCreate(yymsp[-3].minor.yy118, NULL, TK_NOTNULL);}
yymsp[-3].minor.yy170 = yylhsminor.yy170; yymsp[-3].minor.yy118 = yylhsminor.yy118;
break; break;
case 230: /* expr ::= expr LT expr */ case 230: /* expr ::= expr LT expr */
{yylhsminor.yy170 = tSqlExprCreate(yymsp[-2].minor.yy170, yymsp[0].minor.yy170, TK_LT);} {yylhsminor.yy118 = tSqlExprCreate(yymsp[-2].minor.yy118, yymsp[0].minor.yy118, TK_LT);}
yymsp[-2].minor.yy170 = yylhsminor.yy170; yymsp[-2].minor.yy118 = yylhsminor.yy118;
break; break;
case 231: /* expr ::= expr GT expr */ case 231: /* expr ::= expr GT expr */
{yylhsminor.yy170 = tSqlExprCreate(yymsp[-2].minor.yy170, yymsp[0].minor.yy170, TK_GT);} {yylhsminor.yy118 = tSqlExprCreate(yymsp[-2].minor.yy118, yymsp[0].minor.yy118, TK_GT);}
yymsp[-2].minor.yy170 = yylhsminor.yy170; yymsp[-2].minor.yy118 = yylhsminor.yy118;
break; break;
case 232: /* expr ::= expr LE expr */ case 232: /* expr ::= expr LE expr */
{yylhsminor.yy170 = tSqlExprCreate(yymsp[-2].minor.yy170, yymsp[0].minor.yy170, TK_LE);} {yylhsminor.yy118 = tSqlExprCreate(yymsp[-2].minor.yy118, yymsp[0].minor.yy118, TK_LE);}
yymsp[-2].minor.yy170 = yylhsminor.yy170; yymsp[-2].minor.yy118 = yylhsminor.yy118;
break; break;
case 233: /* expr ::= expr GE expr */ case 233: /* expr ::= expr GE expr */
{yylhsminor.yy170 = tSqlExprCreate(yymsp[-2].minor.yy170, yymsp[0].minor.yy170, TK_GE);} {yylhsminor.yy118 = tSqlExprCreate(yymsp[-2].minor.yy118, yymsp[0].minor.yy118, TK_GE);}
yymsp[-2].minor.yy170 = yylhsminor.yy170; yymsp[-2].minor.yy118 = yylhsminor.yy118;
break; break;
case 234: /* expr ::= expr NE expr */ case 234: /* expr ::= expr NE expr */
{yylhsminor.yy170 = tSqlExprCreate(yymsp[-2].minor.yy170, yymsp[0].minor.yy170, TK_NE);} {yylhsminor.yy118 = tSqlExprCreate(yymsp[-2].minor.yy118, yymsp[0].minor.yy118, TK_NE);}
yymsp[-2].minor.yy170 = yylhsminor.yy170; yymsp[-2].minor.yy118 = yylhsminor.yy118;
break; break;
case 235: /* expr ::= expr EQ expr */ case 235: /* expr ::= expr EQ expr */
{yylhsminor.yy170 = tSqlExprCreate(yymsp[-2].minor.yy170, yymsp[0].minor.yy170, TK_EQ);} {yylhsminor.yy118 = tSqlExprCreate(yymsp[-2].minor.yy118, yymsp[0].minor.yy118, TK_EQ);}
yymsp[-2].minor.yy170 = yylhsminor.yy170; yymsp[-2].minor.yy118 = yylhsminor.yy118;
break; break;
case 236: /* expr ::= expr BETWEEN expr AND expr */ case 236: /* expr ::= expr BETWEEN expr AND expr */
{ tSqlExpr* X2 = tSqlExprClone(yymsp[-4].minor.yy170); yylhsminor.yy170 = tSqlExprCreate(tSqlExprCreate(yymsp[-4].minor.yy170, yymsp[-2].minor.yy170, TK_GE), tSqlExprCreate(X2, yymsp[0].minor.yy170, TK_LE), TK_AND);} { tSqlExpr* X2 = tSqlExprClone(yymsp[-4].minor.yy118); yylhsminor.yy118 = tSqlExprCreate(tSqlExprCreate(yymsp[-4].minor.yy118, yymsp[-2].minor.yy118, TK_GE), tSqlExprCreate(X2, yymsp[0].minor.yy118, TK_LE), TK_AND);}
yymsp[-4].minor.yy170 = yylhsminor.yy170; yymsp[-4].minor.yy118 = yylhsminor.yy118;
break; break;
case 237: /* expr ::= expr AND expr */ case 237: /* expr ::= expr AND expr */
{yylhsminor.yy170 = tSqlExprCreate(yymsp[-2].minor.yy170, yymsp[0].minor.yy170, TK_AND);} {yylhsminor.yy118 = tSqlExprCreate(yymsp[-2].minor.yy118, yymsp[0].minor.yy118, TK_AND);}
yymsp[-2].minor.yy170 = yylhsminor.yy170; yymsp[-2].minor.yy118 = yylhsminor.yy118;
break; break;
case 238: /* expr ::= expr OR expr */ case 238: /* expr ::= expr OR expr */
{yylhsminor.yy170 = tSqlExprCreate(yymsp[-2].minor.yy170, yymsp[0].minor.yy170, TK_OR); } {yylhsminor.yy118 = tSqlExprCreate(yymsp[-2].minor.yy118, yymsp[0].minor.yy118, TK_OR); }
yymsp[-2].minor.yy170 = yylhsminor.yy170; yymsp[-2].minor.yy118 = yylhsminor.yy118;
break; break;
case 239: /* expr ::= expr PLUS expr */ case 239: /* expr ::= expr PLUS expr */
{yylhsminor.yy170 = tSqlExprCreate(yymsp[-2].minor.yy170, yymsp[0].minor.yy170, TK_PLUS); } {yylhsminor.yy118 = tSqlExprCreate(yymsp[-2].minor.yy118, yymsp[0].minor.yy118, TK_PLUS); }
yymsp[-2].minor.yy170 = yylhsminor.yy170; yymsp[-2].minor.yy118 = yylhsminor.yy118;
break; break;
case 240: /* expr ::= expr MINUS expr */ case 240: /* expr ::= expr MINUS expr */
{yylhsminor.yy170 = tSqlExprCreate(yymsp[-2].minor.yy170, yymsp[0].minor.yy170, TK_MINUS); } {yylhsminor.yy118 = tSqlExprCreate(yymsp[-2].minor.yy118, yymsp[0].minor.yy118, TK_MINUS); }
yymsp[-2].minor.yy170 = yylhsminor.yy170; yymsp[-2].minor.yy118 = yylhsminor.yy118;
break; break;
case 241: /* expr ::= expr STAR expr */ case 241: /* expr ::= expr STAR expr */
{yylhsminor.yy170 = tSqlExprCreate(yymsp[-2].minor.yy170, yymsp[0].minor.yy170, TK_STAR); } {yylhsminor.yy118 = tSqlExprCreate(yymsp[-2].minor.yy118, yymsp[0].minor.yy118, TK_STAR); }
yymsp[-2].minor.yy170 = yylhsminor.yy170; yymsp[-2].minor.yy118 = yylhsminor.yy118;
break; break;
case 242: /* expr ::= expr SLASH expr */ case 242: /* expr ::= expr SLASH expr */
{yylhsminor.yy170 = tSqlExprCreate(yymsp[-2].minor.yy170, yymsp[0].minor.yy170, TK_DIVIDE);} {yylhsminor.yy118 = tSqlExprCreate(yymsp[-2].minor.yy118, yymsp[0].minor.yy118, TK_DIVIDE);}
yymsp[-2].minor.yy170 = yylhsminor.yy170; yymsp[-2].minor.yy118 = yylhsminor.yy118;
break; break;
case 243: /* expr ::= expr REM expr */ case 243: /* expr ::= expr REM expr */
{yylhsminor.yy170 = tSqlExprCreate(yymsp[-2].minor.yy170, yymsp[0].minor.yy170, TK_REM); } {yylhsminor.yy118 = tSqlExprCreate(yymsp[-2].minor.yy118, yymsp[0].minor.yy118, TK_REM); }
yymsp[-2].minor.yy170 = yylhsminor.yy170; yymsp[-2].minor.yy118 = yylhsminor.yy118;
break; break;
case 244: /* expr ::= expr LIKE expr */ case 244: /* expr ::= expr LIKE expr */
{yylhsminor.yy170 = tSqlExprCreate(yymsp[-2].minor.yy170, yymsp[0].minor.yy170, TK_LIKE); } {yylhsminor.yy118 = tSqlExprCreate(yymsp[-2].minor.yy118, yymsp[0].minor.yy118, TK_LIKE); }
yymsp[-2].minor.yy170 = yylhsminor.yy170; yymsp[-2].minor.yy118 = yylhsminor.yy118;
break; break;
case 245: /* expr ::= expr IN LP exprlist RP */ case 245: /* expr ::= expr IN LP exprlist RP */
{yylhsminor.yy170 = tSqlExprCreate(yymsp[-4].minor.yy170, (tSqlExpr*)yymsp[-1].minor.yy429, TK_IN); } {yylhsminor.yy118 = tSqlExprCreate(yymsp[-4].minor.yy118, (tSqlExpr*)yymsp[-1].minor.yy159, TK_IN); }
yymsp[-4].minor.yy170 = yylhsminor.yy170; yymsp[-4].minor.yy118 = yylhsminor.yy118;
break; break;
case 246: /* exprlist ::= exprlist COMMA expritem */ case 246: /* exprlist ::= exprlist COMMA expritem */
{yylhsminor.yy429 = tSqlExprListAppend(yymsp[-2].minor.yy429,yymsp[0].minor.yy170,0, 0);} {yylhsminor.yy159 = tSqlExprListAppend(yymsp[-2].minor.yy159,yymsp[0].minor.yy118,0, 0);}
yymsp[-2].minor.yy429 = yylhsminor.yy429; yymsp[-2].minor.yy159 = yylhsminor.yy159;
break; break;
case 247: /* exprlist ::= expritem */ case 247: /* exprlist ::= expritem */
{yylhsminor.yy429 = tSqlExprListAppend(0,yymsp[0].minor.yy170,0, 0);} {yylhsminor.yy159 = tSqlExprListAppend(0,yymsp[0].minor.yy118,0, 0);}
yymsp[0].minor.yy429 = yylhsminor.yy429; yymsp[0].minor.yy159 = yylhsminor.yy159;
break; break;
case 248: /* expritem ::= expr */ case 248: /* expritem ::= expr */
{yylhsminor.yy170 = yymsp[0].minor.yy170;} {yylhsminor.yy118 = yymsp[0].minor.yy118;}
yymsp[0].minor.yy170 = yylhsminor.yy170; yymsp[0].minor.yy118 = yylhsminor.yy118;
break; break;
case 250: /* cmd ::= RESET QUERY CACHE */ case 250: /* cmd ::= RESET QUERY CACHE */
{ setDCLSqlElems(pInfo, TSDB_SQL_RESET_CACHE, 0);} { setDCLSqlElems(pInfo, TSDB_SQL_RESET_CACHE, 0);}
break; break;
case 251: /* cmd ::= ALTER TABLE ids cpxName ADD COLUMN columnlist */ case 251: /* cmd ::= SYNCDB ids REPLICA */
{ setDCLSqlElems(pInfo, TSDB_SQL_SYNC_DB_REPLICA, 1, &yymsp[-1].minor.yy0);}
break;
case 252: /* 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.yy429, NULL, TSDB_ALTER_TABLE_ADD_COLUMN, -1); SAlterTableInfo* pAlterTable = tSetAlterTableInfo(&yymsp[-4].minor.yy0, yymsp[0].minor.yy159, 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 252: /* cmd ::= ALTER TABLE ids cpxName DROP COLUMN ids */ case 253: /* 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;
...@@ -2980,14 +2987,14 @@ static void yy_reduce( ...@@ -2980,14 +2987,14 @@ static void yy_reduce(
setSqlInfo(pInfo, pAlterTable, NULL, TSDB_SQL_ALTER_TABLE); setSqlInfo(pInfo, pAlterTable, NULL, TSDB_SQL_ALTER_TABLE);
} }
break; break;
case 253: /* cmd ::= ALTER TABLE ids cpxName ADD TAG columnlist */ case 254: /* 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.yy429, NULL, TSDB_ALTER_TABLE_ADD_TAG_COLUMN, -1); SAlterTableInfo* pAlterTable = tSetAlterTableInfo(&yymsp[-4].minor.yy0, yymsp[0].minor.yy159, NULL, TSDB_ALTER_TABLE_ADD_TAG_COLUMN, -1);
setSqlInfo(pInfo, pAlterTable, NULL, TSDB_SQL_ALTER_TABLE); setSqlInfo(pInfo, pAlterTable, NULL, TSDB_SQL_ALTER_TABLE);
} }
break; break;
case 254: /* cmd ::= ALTER TABLE ids cpxName DROP TAG ids */ case 255: /* 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;
...@@ -2998,7 +3005,7 @@ static void yy_reduce( ...@@ -2998,7 +3005,7 @@ static void yy_reduce(
setSqlInfo(pInfo, pAlterTable, NULL, TSDB_SQL_ALTER_TABLE); setSqlInfo(pInfo, pAlterTable, NULL, TSDB_SQL_ALTER_TABLE);
} }
break; break;
case 255: /* cmd ::= ALTER TABLE ids cpxName CHANGE TAG ids ids */ case 256: /* 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;
...@@ -3012,26 +3019,26 @@ static void yy_reduce( ...@@ -3012,26 +3019,26 @@ static void yy_reduce(
setSqlInfo(pInfo, pAlterTable, NULL, TSDB_SQL_ALTER_TABLE); setSqlInfo(pInfo, pAlterTable, NULL, TSDB_SQL_ALTER_TABLE);
} }
break; break;
case 256: /* cmd ::= ALTER TABLE ids cpxName SET TAG ids EQ tagitem */ case 257: /* 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); SArray* A = tVariantListAppendToken(NULL, &yymsp[-2].minor.yy0, -1);
A = tVariantListAppend(A, &yymsp[0].minor.yy218, -1); A = tVariantListAppend(A, &yymsp[0].minor.yy488, -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 257: /* cmd ::= ALTER STABLE ids cpxName ADD COLUMN columnlist */ case 258: /* 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.yy429, NULL, TSDB_ALTER_TABLE_ADD_COLUMN, TSDB_SUPER_TABLE); SAlterTableInfo* pAlterTable = tSetAlterTableInfo(&yymsp[-4].minor.yy0, yymsp[0].minor.yy159, NULL, TSDB_ALTER_TABLE_ADD_COLUMN, TSDB_SUPER_TABLE);
setSqlInfo(pInfo, pAlterTable, NULL, TSDB_SQL_ALTER_TABLE); setSqlInfo(pInfo, pAlterTable, NULL, TSDB_SQL_ALTER_TABLE);
} }
break; break;
case 258: /* cmd ::= ALTER STABLE ids cpxName DROP COLUMN ids */ case 259: /* 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;
...@@ -3042,14 +3049,14 @@ static void yy_reduce( ...@@ -3042,14 +3049,14 @@ static void yy_reduce(
setSqlInfo(pInfo, pAlterTable, NULL, TSDB_SQL_ALTER_TABLE); setSqlInfo(pInfo, pAlterTable, NULL, TSDB_SQL_ALTER_TABLE);
} }
break; break;
case 259: /* cmd ::= ALTER STABLE ids cpxName ADD TAG columnlist */ case 260: /* 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.yy429, NULL, TSDB_ALTER_TABLE_ADD_TAG_COLUMN, TSDB_SUPER_TABLE); SAlterTableInfo* pAlterTable = tSetAlterTableInfo(&yymsp[-4].minor.yy0, yymsp[0].minor.yy159, NULL, TSDB_ALTER_TABLE_ADD_TAG_COLUMN, TSDB_SUPER_TABLE);
setSqlInfo(pInfo, pAlterTable, NULL, TSDB_SQL_ALTER_TABLE); setSqlInfo(pInfo, pAlterTable, NULL, TSDB_SQL_ALTER_TABLE);
} }
break; break;
case 260: /* cmd ::= ALTER STABLE ids cpxName DROP TAG ids */ case 261: /* 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;
...@@ -3060,7 +3067,7 @@ static void yy_reduce( ...@@ -3060,7 +3067,7 @@ static void yy_reduce(
setSqlInfo(pInfo, pAlterTable, NULL, TSDB_SQL_ALTER_TABLE); setSqlInfo(pInfo, pAlterTable, NULL, TSDB_SQL_ALTER_TABLE);
} }
break; break;
case 261: /* cmd ::= ALTER STABLE ids cpxName CHANGE TAG ids ids */ case 262: /* 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;
...@@ -3074,13 +3081,13 @@ static void yy_reduce( ...@@ -3074,13 +3081,13 @@ static void yy_reduce(
setSqlInfo(pInfo, pAlterTable, NULL, TSDB_SQL_ALTER_TABLE); setSqlInfo(pInfo, pAlterTable, NULL, TSDB_SQL_ALTER_TABLE);
} }
break; break;
case 262: /* cmd ::= KILL CONNECTION INTEGER */ case 263: /* 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 263: /* cmd ::= KILL STREAM INTEGER COLON INTEGER */ case 264: /* 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 264: /* cmd ::= KILL QUERY INTEGER COLON INTEGER */ case 265: /* 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:
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册