From aee99f114fe74cfcc20a309f56b60ccd3ee39423 Mon Sep 17 00:00:00 2001 From: slguan Date: Sun, 23 Feb 2020 16:18:28 +0800 Subject: [PATCH] sort out connect message from client to mgmt --- src/client/inc/tscUtil.h | 4 +- src/client/src/tscAst.c | 18 +- src/client/src/tscFunctionImpl.c | 2 +- src/client/src/tscLocal.c | 6 +- src/client/src/tscParseInsert.c | 18 +- src/client/src/tscSQLParser.c | 78 ++-- src/client/src/tscSchemaUtil.c | 22 +- src/client/src/tscSecondaryMerge.c | 14 +- src/client/src/tscServer.c | 111 +++-- src/client/src/tscUtil.c | 10 +- src/dnode/src/dnodeMgmt.c | 2 +- src/inc/mnode.h | 8 +- src/inc/taosmsg.h | 89 ++-- src/mnode/inc/mgmtAcct.h | 2 +- src/mnode/inc/mgmtChildTable.h | 2 +- src/mnode/inc/mgmtDb.h | 4 +- src/mnode/inc/mgmtNormalTable.h | 4 +- src/mnode/inc/mgmtStreamTable.h | 2 +- src/mnode/inc/mgmtSuperTable.h | 6 +- src/mnode/inc/mgmtTable.h | 2 +- src/mnode/src/mgmtAcct.c | 4 +- src/mnode/src/mgmtChildTable.c | 20 +- src/mnode/src/mgmtConn.c | 2 +- src/mnode/src/mgmtDb.c | 10 +- src/mnode/src/mgmtDnode.c | 8 +- src/mnode/src/mgmtDnodeInt.c | 6 +- src/mnode/src/mgmtNormalTable.c | 44 +- src/mnode/src/mgmtProfile.c | 4 +- src/mnode/src/mgmtShell.c | 699 +++++++++++++++-------------- src/mnode/src/mgmtStreamTable.c | 38 +- src/mnode/src/mgmtSuperTable.c | 76 ++-- src/mnode/src/mgmtTable.c | 14 +- src/mnode/src/mgmtUser.c | 2 +- src/mnode/src/mgmtVgroup.c | 2 +- src/util/inc/tast.h | 8 +- src/util/inc/textbuffer.h | 14 +- src/util/inc/tschemautil.h | 12 +- src/util/src/textbuffer.c | 26 +- src/util/src/tinterpolation.c | 20 +- src/util/src/tpercentile.c | 2 +- 40 files changed, 718 insertions(+), 697 deletions(-) diff --git a/src/client/inc/tscUtil.h b/src/client/inc/tscUtil.h index f60861a349..44e3819bb7 100644 --- a/src/client/inc/tscUtil.h +++ b/src/client/inc/tscUtil.h @@ -110,7 +110,7 @@ bool tscQueryMetricTags(SQueryInfo* pQueryInfo); bool tscIsSelectivityWithTagQuery(SSqlCmd* pCmd); void tscAddSpecialColumnForSelect(SQueryInfo* pQueryInfo, int32_t outputColIndex, int16_t functionId, SColumnIndex* pIndex, - SSchema* pColSchema, int16_t isTag); + SCMSchema* pColSchema, int16_t isTag); void addRequiredTagColumn(SQueryInfo* pQueryInfo, int32_t tagColIndex, int32_t tableIndex); @@ -124,7 +124,7 @@ void tscGetDBInfoFromMeterId(char* meterId, char* db); int tscAllocPayload(SSqlCmd* pCmd, int size); -void tscFieldInfoSetValFromSchema(SFieldInfo* pFieldInfo, int32_t index, SSchema* pSchema); +void tscFieldInfoSetValFromSchema(SFieldInfo* pFieldInfo, int32_t index, SCMSchema* pSchema); void tscFieldInfoSetValFromField(SFieldInfo* pFieldInfo, int32_t index, TAOS_FIELD* pField); void tscFieldInfoSetValue(SFieldInfo* pFieldInfo, int32_t index, int8_t type, const char* name, int16_t bytes); void tscFieldInfoUpdateVisible(SFieldInfo* pFieldInfo, int32_t index, bool visible); diff --git a/src/client/src/tscAst.c b/src/client/src/tscAst.c index c740f65dcf..36d61c6cba 100644 --- a/src/client/src/tscAst.c +++ b/src/client/src/tscAst.c @@ -40,10 +40,10 @@ * */ -static tSQLSyntaxNode *tSQLSyntaxNodeCreate(SSchema *pSchema, int32_t numOfCols, SSQLToken *pToken); +static tSQLSyntaxNode *tSQLSyntaxNodeCreate(SCMSchema *pSchema, int32_t numOfCols, SSQLToken *pToken); static void tSQLSyntaxNodeDestroy(tSQLSyntaxNode *pNode, void (*fp)(void *)); -static tSQLSyntaxNode *createSyntaxTree(SSchema *pSchema, int32_t numOfCols, char *str, int32_t *i); +static tSQLSyntaxNode *createSyntaxTree(SCMSchema *pSchema, int32_t numOfCols, char *str, int32_t *i); static void destroySyntaxTree(tSQLSyntaxNode *); static uint8_t isQueryOnPrimaryKey(const char *primaryColumnName, const tSQLSyntaxNode *pLeft, @@ -101,7 +101,7 @@ static void reviseBinaryExprIfNecessary(tSQLSyntaxNode **pLeft, tSQLSyntaxNode * } } -static tSQLSyntaxNode *tSQLSyntaxNodeCreate(SSchema *pSchema, int32_t numOfCols, SSQLToken *pToken) { +static tSQLSyntaxNode *tSQLSyntaxNodeCreate(SCMSchema *pSchema, int32_t numOfCols, SSQLToken *pToken) { /* if the token is not a value, return false */ if (pToken->type == TK_RP || (pToken->type != TK_INTEGER && pToken->type != TK_FLOAT && pToken->type != TK_ID && pToken->type != TK_TBNAME && pToken->type != TK_STRING && pToken->type != TK_BOOL)) { @@ -127,15 +127,15 @@ static tSQLSyntaxNode *tSQLSyntaxNodeCreate(SSchema *pSchema, int32_t numOfCols, } } - nodeSize += sizeof(SSchema); + nodeSize += sizeof(SCMSchema); pNode = calloc(1, nodeSize); - pNode->pSchema = (struct SSchema *)((char *)pNode + sizeof(tSQLSyntaxNode)); + pNode->pSchema = (struct SCMSchema *)((char *)pNode + sizeof(tSQLSyntaxNode)); pNode->nodeType = TSQL_NODE_COL; if (pToken->type == TK_ID) { pNode->colId = (int16_t)pSchema[i].colId; - memcpy(pNode->pSchema, &pSchema[i], sizeof(SSchema)); + memcpy(pNode->pSchema, &pSchema[i], sizeof(SCMSchema)); } else { pNode->colId = -1; pNode->pSchema->type = TSDB_DATA_TYPE_BINARY; @@ -193,7 +193,7 @@ static uint8_t getBinaryExprOptr(SSQLToken *pToken) { } // previous generated expr is reduced as the left child -static tSQLSyntaxNode *parseRemainStr(char *pstr, tSQLBinaryExpr *pExpr, SSchema *pSchema, int32_t optr, +static tSQLSyntaxNode *parseRemainStr(char *pstr, tSQLBinaryExpr *pExpr, SCMSchema *pSchema, int32_t optr, int32_t numOfCols, int32_t *i) { // set the previous generated node as the left child of new root tSQLSyntaxNode *pLeft = malloc(sizeof(tSQLSyntaxNode)); @@ -238,7 +238,7 @@ uint8_t isQueryOnPrimaryKey(const char *primaryColumnName, const tSQLSyntaxNode } } -static tSQLSyntaxNode *createSyntaxTree(SSchema *pSchema, int32_t numOfCols, char *str, int32_t *i) { +static tSQLSyntaxNode *createSyntaxTree(SCMSchema *pSchema, int32_t numOfCols, char *str, int32_t *i) { SSQLToken t0; t0 = tStrGetToken(str, i, false, 0, NULL); @@ -337,7 +337,7 @@ static tSQLSyntaxNode *createSyntaxTree(SSchema *pSchema, int32_t numOfCols, cha } } -void tSQLBinaryExprFromString(tSQLBinaryExpr **pExpr, SSchema *pSchema, int32_t numOfCols, char *src, int32_t len) { +void tSQLBinaryExprFromString(tSQLBinaryExpr **pExpr, SCMSchema *pSchema, int32_t numOfCols, char *src, int32_t len) { *pExpr = NULL; if (len <= 0 || src == NULL || pSchema == NULL || numOfCols <= 0) { return; diff --git a/src/client/src/tscFunctionImpl.c b/src/client/src/tscFunctionImpl.c index 837a0ce005..c4841440c2 100644 --- a/src/client/src/tscFunctionImpl.c +++ b/src/client/src/tscFunctionImpl.c @@ -2437,7 +2437,7 @@ static bool percentile_function_setup(SQLFunctionCtx *pCtx) { } SResultInfo *pResInfo = GET_RES_INFO(pCtx); - SSchema field[1] = {{pCtx->inputType, "dummyCol", 0, pCtx->inputBytes}}; + SCMSchema field[1] = {{pCtx->inputType, "dummyCol", 0, pCtx->inputBytes}}; SColumnModel *pModel = createColumnModel(field, 1, 1000); int32_t orderIdx = 0; diff --git a/src/client/src/tscLocal.c b/src/client/src/tscLocal.c index f5e34e5132..e4863a2016 100644 --- a/src/client/src/tscLocal.c +++ b/src/client/src/tscLocal.c @@ -85,7 +85,7 @@ static int32_t tscMaxLengthOfTagsFields(SSqlObj *pSql) { } char * pTagValue = tsGetTagsValue(pMeta); - SSchema *pTagsSchema = tsGetTagSchema(pMeta); + SCMSchema *pTagsSchema = tsGetTagSchema(pMeta); int32_t len = getToStringLength(pTagValue, pTagsSchema[0].bytes, pTagsSchema[0].type); @@ -125,7 +125,7 @@ static int32_t tscSetValueToResObj(SSqlObj *pSql, int32_t rowLen) { } tscInitResObjForLocalQuery(pSql, totalNumOfRows, rowLen); - SSchema *pSchema = tsGetSchema(pMeta); + SCMSchema *pSchema = tsGetSchema(pMeta); for (int32_t i = 0; i < numOfRows; ++i) { TAOS_FIELD *pField = tscFieldInfoGetField(pQueryInfo, 0); @@ -286,7 +286,7 @@ static int tscBuildMetricTagProjectionResult(SSqlObj *pSql) { SMeterMetaInfo *pMeterMetaInfo = tscGetMeterMetaInfoFromQueryInfo(pQueryInfo, 0); SMetricMeta *pMetricMeta = pMeterMetaInfo->pMetricMeta; - SSchema * pSchema = tsGetTagSchema(pMeterMetaInfo->pMeterMeta); + SCMSchema * pSchema = tsGetTagSchema(pMeterMetaInfo->pMeterMeta); int32_t vOffset[TSDB_MAX_COLUMNS] = {0}; diff --git a/src/client/src/tscParseInsert.c b/src/client/src/tscParseInsert.c index 8039fbe405..ada5fa8632 100644 --- a/src/client/src/tscParseInsert.c +++ b/src/client/src/tscParseInsert.c @@ -144,7 +144,7 @@ int tsParseTime(SSQLToken *pToken, int64_t *time, char **next, char *error, int1 return TSDB_CODE_SUCCESS; } -int32_t tsParseOneColumnData(SSchema *pSchema, SSQLToken *pToken, char *payload, char *msg, char **str, bool primaryKey, +int32_t tsParseOneColumnData(SCMSchema *pSchema, SSQLToken *pToken, char *payload, char *msg, char **str, bool primaryKey, int16_t timePrec) { int64_t iv; int32_t numType; @@ -389,7 +389,7 @@ static int32_t tsCheckTimestamp(STableDataBlocks *pDataBlocks, const char *start return TSDB_CODE_SUCCESS; } -int tsParseOneRowData(char **str, STableDataBlocks *pDataBlocks, SSchema schema[], SParsedDataColInfo *spd, char *error, +int tsParseOneRowData(char **str, STableDataBlocks *pDataBlocks, SCMSchema schema[], SParsedDataColInfo *spd, char *error, int16_t timePrec, int32_t *code, char *tmpTokenBuf) { int32_t index = 0; // bool isPrevOptr; //fang, never used @@ -402,7 +402,7 @@ int tsParseOneRowData(char **str, STableDataBlocks *pDataBlocks, SSchema schema[ // the start position in data block buffer of current value in sql char * start = payload + spd->elems[i].offset; int16_t colIndex = spd->elems[i].colIndex; - SSchema *pSchema = schema + colIndex; + SCMSchema *pSchema = schema + colIndex; rowSize += pSchema->bytes; index = 0; @@ -503,7 +503,7 @@ int tsParseValues(char **str, STableDataBlocks *pDataBlock, SMeterMeta *pMeterMe int16_t numOfRows = 0; - SSchema *pSchema = tsGetSchema(pMeterMeta); + SCMSchema *pSchema = tsGetSchema(pMeterMeta); int32_t precision = pMeterMeta->precision; if (spd->hasVal[0] == false) { @@ -558,7 +558,7 @@ int tsParseValues(char **str, STableDataBlocks *pDataBlock, SMeterMeta *pMeterMe } } -static void tscSetAssignedColumnInfo(SParsedDataColInfo *spd, SSchema *pSchema, int32_t numOfCols) { +static void tscSetAssignedColumnInfo(SParsedDataColInfo *spd, SCMSchema *pSchema, int32_t numOfCols) { spd->numOfCols = numOfCols; spd->numOfAssignedCols = numOfCols; @@ -786,7 +786,7 @@ static int32_t tscCheckIfCreateTable(char **sqlstr, SSqlObj *pSql) { return tscInvalidSQLErrMsg(pCmd->payload, "create table only from super table is allowed", sToken.z); } - SSchema *pTagSchema = tsGetTagSchema(pSTableMeterMetaInfo->pMeterMeta); + SCMSchema *pTagSchema = tsGetTagSchema(pSTableMeterMetaInfo->pMeterMeta); index = 0; sToken = tStrGetToken(sql, &index, false, 0, NULL); @@ -1094,7 +1094,7 @@ int doParseInsertSql(SSqlObj *pSql, char *str) { if (sToken.type == TK_VALUES) { SParsedDataColInfo spd = {.numOfCols = pMeterMetaInfo->pMeterMeta->numOfColumns}; - SSchema * pSchema = tsGetSchema(pMeterMetaInfo->pMeterMeta); + SCMSchema * pSchema = tsGetSchema(pMeterMetaInfo->pMeterMeta); tscSetAssignedColumnInfo(&spd, pSchema, pMeterMetaInfo->pMeterMeta->numOfColumns); @@ -1149,7 +1149,7 @@ int doParseInsertSql(SSqlObj *pSql, char *str) { } else if (sToken.type == TK_LP) { /* insert into tablename(col1, col2,..., coln) values(v1, v2,... vn); */ SMeterMeta *pMeterMeta = tscGetMeterMetaInfo(pCmd, pCmd->clauseIndex, 0)->pMeterMeta; - SSchema * pSchema = tsGetSchema(pMeterMeta); + SCMSchema * pSchema = tsGetSchema(pMeterMeta); if (validateDataSource(pCmd, DATA_FROM_SQL_STRING, sToken.z) != TSDB_CODE_SUCCESS) { goto _error_clean; @@ -1403,7 +1403,7 @@ static int tscInsertDataFromFile(SSqlObj *pSql, FILE *fp, char *tmpTokenBuf) { int count = 0; SParsedDataColInfo spd = {.numOfCols = pMeterMeta->numOfColumns}; - SSchema * pSchema = tsGetSchema(pMeterMeta); + SCMSchema * pSchema = tsGetSchema(pMeterMeta); tscSetAssignedColumnInfo(&spd, pSchema, pMeterMeta->numOfColumns); diff --git a/src/client/src/tscSQLParser.c b/src/client/src/tscSQLParser.c index e5499fd04f..90da7c059b 100644 --- a/src/client/src/tscSQLParser.c +++ b/src/client/src/tscSQLParser.c @@ -78,7 +78,7 @@ static int32_t addProjectionExprAndResultField(SQueryInfo* pQueryInfo, tSQLExprI static int32_t parseWhereClause(SQueryInfo* pQueryInfo, tSQLExpr** pExpr, SSqlObj* pSql); static int32_t parseFillClause(SQueryInfo* pQueryInfo, SQuerySQL* pQuerySQL); -static int32_t parseOrderbyClause(SQueryInfo* pQueryInfo, SQuerySQL* pQuerySql, SSchema* pSchema); +static int32_t parseOrderbyClause(SQueryInfo* pQueryInfo, SQuerySQL* pQuerySql, SCMSchema* pSchema); static int32_t tsRewriteFieldNameIfNecessary(SQueryInfo* pQueryInfo); static int32_t setAlterTableInfo(SSqlObj* pSql, struct SSqlInfo* pInfo); @@ -106,7 +106,7 @@ static int32_t optrToString(tSQLExpr* pExpr, char** exprString); static int32_t getMeterIndex(SSQLToken* pTableToken, SQueryInfo* pQueryInfo, SColumnIndex* pIndex); static int32_t doFunctionsCompatibleCheck(SSqlCmd* pCmd, SQueryInfo* pQueryInfo); static int32_t doLocalQueryProcess(SQueryInfo* pQueryInfo, SQuerySQL* pQuerySql); -static int32_t tscCheckCreateDbParams(SSqlCmd* pCmd, SCreateDbMsg* pCreate); +static int32_t tscCheckCreateDbParams(SSqlCmd* pCmd, SCMCreateDbMsg* pCreate); static SColumnList getColumnList(int32_t num, int16_t tableIndex, int32_t columnIndex); @@ -392,7 +392,7 @@ int32_t tscToSQLCmd(SSqlObj* pSql, struct SSqlInfo* pInfo) { char* pMsg = pCmd->payload + tsRpcHeadSize; pMsg += sizeof(SMgmtHead); - SCfgMsg* pCfg = (SCfgMsg*)pMsg; + SCMCfgDnodeMsg* pCfg = (SCMCfgDnodeMsg*)pMsg; strncpy(pCfg->ip, pDCL->a[0].z, pDCL->a[0].n); strncpy(pCfg->config, pDCL->a[1].z, pDCL->a[1].n); @@ -905,7 +905,7 @@ bool validateOneTags(SSqlCmd* pCmd, TAOS_FIELD* pTagField) { return false; } - SSchema* pTagSchema = tsGetTagSchema(pMeterMetaInfo->pMeterMeta); + SCMSchema* pTagSchema = tsGetTagSchema(pMeterMetaInfo->pMeterMeta); int32_t nLen = 0; for (int32_t i = 0; i < pMeterMeta->numOfTags; ++i) { @@ -931,7 +931,7 @@ bool validateOneTags(SSqlCmd* pCmd, TAOS_FIELD* pTagField) { } // field name must be unique - SSchema* pSchema = tsGetSchema(pMeterMeta); + SCMSchema* pSchema = tsGetSchema(pMeterMeta); for (int32_t i = 0; i < pMeterMeta->numOfTags + pMeterMeta->numOfColumns; ++i) { if (strncasecmp(pTagField->name, pSchema[i].name, TSDB_COL_NAME_LEN) == 0) { @@ -972,7 +972,7 @@ bool validateOneColumn(SSqlCmd* pCmd, TAOS_FIELD* pColField) { return false; } - SSchema* pSchema = tsGetSchema(pMeterMeta); + SCMSchema* pSchema = tsGetSchema(pMeterMeta); int32_t nLen = 0; for (int32_t i = 0; i < pMeterMeta->numOfColumns; ++i) { @@ -1217,7 +1217,7 @@ SSqlExpr* doAddProjectCol(SQueryInfo* pQueryInfo, int32_t outputIndex, int32_t c SMeterMetaInfo* pMeterMetaInfo = tscGetMeterMetaInfoFromQueryInfo(pQueryInfo, tableIndex); SMeterMeta* pMeterMeta = pMeterMetaInfo->pMeterMeta; - SSchema* pSchema = tsGetColumnSchema(pMeterMeta, colIdx); + SCMSchema* pSchema = tsGetColumnSchema(pMeterMeta, colIdx); int32_t numOfCols = pMeterMeta->numOfColumns; int16_t functionId = (int16_t)((colIdx >= numOfCols) ? TSDB_FUNC_TAGPRJ : TSDB_FUNC_PRJ); @@ -1269,7 +1269,7 @@ static void addProjectQueryCol(SQueryInfo* pQueryInfo, int32_t startPos, SColumn SMeterMetaInfo* pMeterMetaInfo = tscGetMeterMetaInfoFromQueryInfo(pQueryInfo, pIndex->tableIndex); SMeterMeta* pMeterMeta = pMeterMetaInfo->pMeterMeta; - SSchema* pSchema = tsGetColumnSchema(pMeterMeta, pIndex->columnIndex); + SCMSchema* pSchema = tsGetColumnSchema(pMeterMeta, pIndex->columnIndex); char* colName = (pItem->aliasName == NULL) ? pSchema->name : pItem->aliasName; @@ -1285,7 +1285,7 @@ static void addProjectQueryCol(SQueryInfo* pQueryInfo, int32_t startPos, SColumn } void tscAddSpecialColumnForSelect(SQueryInfo* pQueryInfo, int32_t outputColIndex, int16_t functionId, - SColumnIndex* pIndex, SSchema* pColSchema, int16_t flag) { + SColumnIndex* pIndex, SCMSchema* pColSchema, int16_t flag) { SSqlExpr* pExpr = tscSqlExprInsert(pQueryInfo, outputColIndex, functionId, pIndex, pColSchema->type, pColSchema->bytes, pColSchema->bytes); @@ -1307,7 +1307,7 @@ static int32_t doAddProjectionExprAndResultFields(SQueryInfo* pQueryInfo, SColum int32_t numOfTotalColumns = 0; SMeterMeta* pMeterMeta = pMeterMetaInfo->pMeterMeta; - SSchema* pSchema = tsGetSchema(pMeterMeta); + SCMSchema* pSchema = tsGetSchema(pMeterMeta); if (UTIL_METER_IS_SUPERTABLE(pMeterMetaInfo)) { numOfTotalColumns = pMeterMeta->numOfColumns + pMeterMeta->numOfTags; @@ -1361,7 +1361,7 @@ int32_t addProjectionExprAndResultField(SQueryInfo* pQueryInfo, tSQLExprItem* pI } if (index.columnIndex == TSDB_TBNAME_COLUMN_INDEX) { - SSchema colSchema = {.type = TSDB_DATA_TYPE_BINARY, .bytes = TSDB_METER_NAME_LEN}; + SCMSchema colSchema = {.type = TSDB_DATA_TYPE_BINARY, .bytes = TSDB_METER_NAME_LEN}; strcpy(colSchema.name, TSQL_TBNAME_L); pQueryInfo->type = TSDB_QUERY_TYPE_STABLE_QUERY; @@ -1383,7 +1383,7 @@ int32_t addProjectionExprAndResultField(SQueryInfo* pQueryInfo, tSQLExprItem* pI return TSDB_CODE_SUCCESS; } -static int32_t setExprInfoForFunctions(SQueryInfo* pQueryInfo, SSchema* pSchema, int32_t functionID, char* aliasName, +static int32_t setExprInfoForFunctions(SQueryInfo* pQueryInfo, SCMSchema* pSchema, int32_t functionID, char* aliasName, int32_t resColIdx, SColumnIndex* pColIndex) { int16_t type = 0; int16_t bytes = 0; @@ -1536,7 +1536,7 @@ int32_t addExprAndResultField(SQueryInfo* pQueryInfo, int32_t colIdx, tSQLExprIt // 2. check if sql function can be applied on this column data type pMeterMetaInfo = tscGetMeterMetaInfoFromQueryInfo(pQueryInfo, index.tableIndex); - SSchema* pSchema = tsGetColumnSchema(pMeterMetaInfo->pMeterMeta, index.columnIndex); + SCMSchema* pSchema = tsGetColumnSchema(pMeterMetaInfo->pMeterMeta, index.columnIndex); int16_t colType = pSchema->type; if (colType <= TSDB_DATA_TYPE_BOOL || colType >= TSDB_DATA_TYPE_BINARY) { @@ -1637,7 +1637,7 @@ int32_t addExprAndResultField(SQueryInfo* pQueryInfo, int32_t colIdx, tSQLExprIt } pMeterMetaInfo = tscGetMeterMetaInfoFromQueryInfo(pQueryInfo, index.tableIndex); - SSchema* pSchema = tsGetSchema(pMeterMetaInfo->pMeterMeta); + SCMSchema* pSchema = tsGetSchema(pMeterMetaInfo->pMeterMeta); for (int32_t j = 0; j < pMeterMetaInfo->pMeterMeta->numOfColumns; ++j) { index.columnIndex = j; @@ -1652,7 +1652,7 @@ int32_t addExprAndResultField(SQueryInfo* pQueryInfo, int32_t colIdx, tSQLExprIt } pMeterMetaInfo = tscGetMeterMetaInfoFromQueryInfo(pQueryInfo, index.tableIndex); - SSchema* pSchema = tsGetSchema(pMeterMetaInfo->pMeterMeta); + SCMSchema* pSchema = tsGetSchema(pMeterMetaInfo->pMeterMeta); // functions can not be applied to tags if ((index.columnIndex >= pMeterMetaInfo->pMeterMeta->numOfColumns) || (index.columnIndex < 0)) { @@ -1671,7 +1671,7 @@ int32_t addExprAndResultField(SQueryInfo* pQueryInfo, int32_t colIdx, tSQLExprIt for (int32_t j = 0; j < pQueryInfo->numOfTables; ++j) { pMeterMetaInfo = tscGetMeterMetaInfoFromQueryInfo(pQueryInfo, j); - SSchema* pSchema = tsGetSchema(pMeterMetaInfo->pMeterMeta); + SCMSchema* pSchema = tsGetSchema(pMeterMetaInfo->pMeterMeta); for (int32_t i = 0; i < pMeterMetaInfo->pMeterMeta->numOfColumns; ++i) { SColumnIndex index = {.tableIndex = j, .columnIndex = i}; @@ -1711,7 +1711,7 @@ int32_t addExprAndResultField(SQueryInfo* pQueryInfo, int32_t colIdx, tSQLExprIt } pMeterMetaInfo = tscGetMeterMetaInfoFromQueryInfo(pQueryInfo, index.tableIndex); - SSchema* pSchema = tsGetSchema(pMeterMetaInfo->pMeterMeta); + SCMSchema* pSchema = tsGetSchema(pMeterMetaInfo->pMeterMeta); // functions can not be applied to tags if (index.columnIndex >= pMeterMetaInfo->pMeterMeta->numOfColumns) { @@ -1838,7 +1838,7 @@ static int16_t doGetColumnIndex(SQueryInfo* pQueryInfo, int32_t index, SSQLToken SMeterMeta* pMeterMeta = tscGetMeterMetaInfoFromQueryInfo(pQueryInfo, index)->pMeterMeta; int32_t numOfCols = pMeterMeta->numOfColumns + pMeterMeta->numOfTags; - SSchema* pSchema = tsGetSchema(pMeterMeta); + SCMSchema* pSchema = tsGetSchema(pMeterMeta); int16_t columnIndex = COLUMN_INDEX_INITIAL_VAL; @@ -2361,8 +2361,8 @@ int32_t parseGroupbyClause(SQueryInfo* pQueryInfo, tVariantList* pList, SSqlCmd* } SMeterMeta* pMeterMeta = NULL; - SSchema* pSchema = NULL; - SSchema s = tsGetTbnameColumnSchema(); + SCMSchema* pSchema = NULL; + SCMSchema s = tsGetTbnameColumnSchema(); int32_t tableIndex = COLUMN_INDEX_INITIAL_VAL; @@ -2465,7 +2465,7 @@ static int32_t doExtractColumnFilterInfo(SQueryInfo* pQueryInfo, SColumnFilterIn tSQLExpr* pRight = pExpr->pRight; SMeterMetaInfo* pMeterMetaInfo = tscGetMeterMetaInfoFromQueryInfo(pQueryInfo, columnIndex->tableIndex); - SSchema* pSchema = tsGetColumnSchema(pMeterMetaInfo->pMeterMeta, columnIndex->columnIndex); + SCMSchema* pSchema = tsGetColumnSchema(pMeterMetaInfo->pMeterMeta, columnIndex->columnIndex); int16_t colType = pSchema->type; if (colType >= TSDB_DATA_TYPE_TINYINT && colType <= TSDB_DATA_TYPE_BIGINT) { @@ -2705,7 +2705,7 @@ static int32_t extractColumnFilterInfo(SQueryInfo* pQueryInfo, SColumnIndex* pIn SMeterMetaInfo* pMeterMetaInfo = tscGetMeterMetaInfoFromQueryInfo(pQueryInfo, pIndex->tableIndex); SMeterMeta* pMeterMeta = pMeterMetaInfo->pMeterMeta; - SSchema* pSchema = tsGetColumnSchema(pMeterMeta, pIndex->columnIndex); + SCMSchema* pSchema = tsGetColumnSchema(pMeterMeta, pIndex->columnIndex); const char* msg1 = "non binary column not support like operator"; const char* msg2 = "binary column not support this operator"; @@ -2928,7 +2928,7 @@ static int32_t validateSQLExpr(tSQLExpr* pExpr, SQueryInfo* pQueryInfo, SColumnL // if column is timestamp, bool, binary, nchar, not support arithmetic, so return invalid sql SMeterMeta* pMeterMeta = tscGetMeterMetaInfoFromQueryInfo(pQueryInfo, index.tableIndex)->pMeterMeta; - SSchema* pSchema = tsGetSchema(pMeterMeta) + index.columnIndex; + SCMSchema* pSchema = tsGetSchema(pMeterMeta) + index.columnIndex; if ((pSchema->type == TSDB_DATA_TYPE_TIMESTAMP) || (pSchema->type == TSDB_DATA_TYPE_BOOL) || (pSchema->type == TSDB_DATA_TYPE_BINARY) || (pSchema->type == TSDB_DATA_TYPE_NCHAR)){ return TSDB_CODE_INVALID_SQL; @@ -3064,11 +3064,11 @@ static bool validateJoinExprNode(SQueryInfo* pQueryInfo, tSQLExpr* pExpr, SColum // todo extract function SMeterMetaInfo* pLeftMeterMeta = tscGetMeterMetaInfoFromQueryInfo(pQueryInfo, pLeftIndex->tableIndex); - SSchema* pLeftSchema = tsGetSchema(pLeftMeterMeta->pMeterMeta); + SCMSchema* pLeftSchema = tsGetSchema(pLeftMeterMeta->pMeterMeta); int16_t leftType = pLeftSchema[pLeftIndex->columnIndex].type; SMeterMetaInfo* pRightMeterMeta = tscGetMeterMetaInfoFromQueryInfo(pQueryInfo, rightIndex.tableIndex); - SSchema* pRightSchema = tsGetSchema(pRightMeterMeta->pMeterMeta); + SCMSchema* pRightSchema = tsGetSchema(pRightMeterMeta->pMeterMeta); int16_t rightType = pRightSchema[rightIndex.columnIndex].type; if (leftType != rightType) { @@ -3176,7 +3176,7 @@ static int32_t handleExprInQueryCond(SQueryInfo* pQueryInfo, tSQLExpr** pExpr, S return TSDB_CODE_INVALID_SQL; } - SSchema* pSchema = tsGetSchema(pMeterMetaInfo->pMeterMeta); + SCMSchema* pSchema = tsGetSchema(pMeterMetaInfo->pMeterMeta); if ((!isTablenameToken(&pLeft->colInfo)) && pSchema[index.columnIndex].type != TSDB_DATA_TYPE_BINARY && pSchema[index.columnIndex].type != TSDB_DATA_TYPE_NCHAR) { @@ -3912,7 +3912,7 @@ static void setDefaultOrderInfo(SQueryInfo* pQueryInfo) { } } -int32_t parseOrderbyClause(SQueryInfo* pQueryInfo, SQuerySQL* pQuerySql, SSchema* pSchema) { +int32_t parseOrderbyClause(SQueryInfo* pQueryInfo, SQuerySQL* pQuerySql, SCMSchema* pSchema) { const char* msg0 = "only support order by primary timestamp"; const char* msg1 = "invalid column name"; const char* msg2 = "only support order by primary timestamp and queried column"; @@ -4209,7 +4209,7 @@ int32_t setAlterTableInfo(SSqlObj* pSql, struct SSqlInfo* pInfo) { return invalidSqlErrMsg(pQueryInfo->msg, msg2); } - SSchema* pTagsSchema = tsGetColumnSchema(pMeterMetaInfo->pMeterMeta, columnIndex.columnIndex); + SCMSchema* pTagsSchema = tsGetColumnSchema(pMeterMetaInfo->pMeterMeta, columnIndex.columnIndex); if (tVariantDump(&pVarList->a[1].pVar, pAlterSQL->tagData.data /*pCmd->payload*/, pTagsSchema->type) != TSDB_CODE_SUCCESS) { return invalidSqlErrMsg(pQueryInfo->msg, msg1); @@ -4573,7 +4573,7 @@ int32_t parseLimitClause(SQueryInfo* pQueryInfo, int32_t clauseIndex, SQuerySQL* return TSDB_CODE_SUCCESS; } -static int32_t setKeepOption(SSqlCmd* pCmd, SCreateDbMsg* pMsg, SCreateDBInfo* pCreateDb) { +static int32_t setKeepOption(SSqlCmd* pCmd, SCMCreateDbMsg* pMsg, SCreateDBInfo* pCreateDb) { const char* msg = "invalid number of options"; pMsg->daysToKeep = htonl(-1); @@ -4604,7 +4604,7 @@ static int32_t setKeepOption(SSqlCmd* pCmd, SCreateDbMsg* pMsg, SCreateDBInfo* p return TSDB_CODE_SUCCESS; } -static int32_t setTimePrecisionOption(SSqlCmd* pCmd, SCreateDbMsg* pMsg, SCreateDBInfo* pCreateDbInfo) { +static int32_t setTimePrecisionOption(SSqlCmd* pCmd, SCMCreateDbMsg* pMsg, SCreateDBInfo* pCreateDbInfo) { const char* msg = "invalid time precision"; pMsg->precision = TSDB_TIME_PRECISION_MILLI; // millisecond by default @@ -4628,7 +4628,7 @@ static int32_t setTimePrecisionOption(SSqlCmd* pCmd, SCreateDbMsg* pMsg, SCreate return TSDB_CODE_SUCCESS; } -static void setCreateDBOption(SCreateDbMsg* pMsg, SCreateDBInfo* pCreateDb) { +static void setCreateDBOption(SCMCreateDbMsg* pMsg, SCreateDBInfo* pCreateDb) { pMsg->blocksPerMeter = htons(pCreateDb->numOfBlocksPerTable); pMsg->compression = pCreateDb->compressionLevel; @@ -4643,7 +4643,7 @@ static void setCreateDBOption(SCreateDbMsg* pMsg, SCreateDBInfo* pCreateDb) { } int32_t parseCreateDBOptions(SSqlCmd* pCmd, SCreateDBInfo* pCreateDbSql) { - SCreateDbMsg* pMsg = (SCreateDbMsg*)(pCmd->payload + tsRpcHeadSize + sizeof(SMgmtHead)); + SCMCreateDbMsg* pMsg = (SCMCreateDbMsg*)(pCmd->payload + tsRpcHeadSize + sizeof(SMgmtHead)); setCreateDBOption(pMsg, pCreateDbSql); if (setKeepOption(pCmd, pMsg, pCreateDbSql) != TSDB_CODE_SUCCESS) { @@ -4694,7 +4694,7 @@ void addGroupInfoForSubquery(SSqlObj* pParentObj, SSqlObj* pSql, int32_t subClau SMeterMetaInfo* pMeterMetaInfo = tscGetMeterMetaInfoFromQueryInfo(pQueryInfo, tableIndex); int16_t columnInfo = tscGetJoinTagColIndexByUid(&pQueryInfo->tagCond, pMeterMetaInfo->pMeterMeta->uid); SColumnIndex index = {.tableIndex = 0, .columnIndex = columnInfo}; - SSchema* pSchema = tsGetTagSchema(pMeterMetaInfo->pMeterMeta); + SCMSchema* pSchema = tsGetTagSchema(pMeterMetaInfo->pMeterMeta); int16_t type = pSchema[index.columnIndex].type; int16_t bytes = pSchema[index.columnIndex].bytes; @@ -4730,7 +4730,7 @@ void doAddGroupColumnForSubquery(SQueryInfo* pQueryInfo, int32_t tagIndex) { SMeterMetaInfo* pMeterMetaInfo = tscGetMeterMetaInfoFromQueryInfo(pQueryInfo, 0); - SSchema* pSchema = tsGetColumnSchema(pMeterMetaInfo->pMeterMeta, index); + SCMSchema* pSchema = tsGetColumnSchema(pMeterMetaInfo->pMeterMeta, index); SColumnIndex colIndex = {.tableIndex = 0, .columnIndex = index}; SSqlExpr* pExpr = tscSqlExprInsert(pQueryInfo, pQueryInfo->fieldsInfo.numOfOutputCols, TSDB_FUNC_PRJ, &colIndex, @@ -4763,12 +4763,12 @@ static void doUpdateSqlFunctionForTagPrj(SQueryInfo* pQueryInfo) { } SMeterMetaInfo* pMeterMetaInfo = tscGetMeterMetaInfoFromQueryInfo(pQueryInfo, 0); - SSchema* pSchema = tsGetSchema(pMeterMetaInfo->pMeterMeta); + SCMSchema* pSchema = tsGetSchema(pMeterMetaInfo->pMeterMeta); for (int32_t i = 0; i < pQueryInfo->fieldsInfo.numOfOutputCols; ++i) { SSqlExpr* pExpr = tscSqlExprGet(pQueryInfo, i); if (pExpr->functionId != TSDB_FUNC_TAG_DUMMY && pExpr->functionId != TSDB_FUNC_TS_DUMMY) { - SSchema* pColSchema = &pSchema[pExpr->colInfo.colIdx]; + SCMSchema* pColSchema = &pSchema[pExpr->colInfo.colIdx]; getResultDataInfo(pColSchema->type, pColSchema->bytes, pExpr->functionId, pExpr->param[0].i64Key, &pExpr->resType, &pExpr->resBytes, &pExpr->interResBytes, tagLength, true); } @@ -4940,7 +4940,7 @@ static int32_t doAddGroupbyColumnsOnDemand(SQueryInfo* pQueryInfo) { SMeterMetaInfo* pMeterMetaInfo = tscGetMeterMetaInfoFromQueryInfo(pQueryInfo, 0); - SSchema* pSchema = tsGetSchema(pMeterMetaInfo->pMeterMeta); + SCMSchema* pSchema = tsGetSchema(pMeterMetaInfo->pMeterMeta); int16_t bytes = 0; int16_t type = 0; char* name = NULL; @@ -5138,7 +5138,7 @@ int32_t doLocalQueryProcess(SQueryInfo* pQueryInfo, SQuerySQL* pQuerySql) { } // can only perform the parameters based on the macro definitation -int32_t tscCheckCreateDbParams(SSqlCmd* pCmd, SCreateDbMsg* pCreate) { +int32_t tscCheckCreateDbParams(SSqlCmd* pCmd, SCMCreateDbMsg* pCreate) { char msg[512] = {0}; if (pCreate->commitLog != -1 && (pCreate->commitLog < 0 || pCreate->commitLog > 1)) { @@ -5338,7 +5338,7 @@ int32_t doCheckForCreateFromStable(SSqlObj* pSql, SSqlInfo* pInfo) { } // too long tag values will return invalid sql, not be truncated automatically - SSchema* pTagSchema = tsGetTagSchema(pStableMeterMetaInfo->pMeterMeta); + SCMSchema* pTagSchema = tsGetTagSchema(pStableMeterMetaInfo->pMeterMeta); char* tagVal = pCreateTable->usingInfo.tagdata.data; for (int32_t i = 0; i < pList->nExpr; ++i) { diff --git a/src/client/src/tscSchemaUtil.c b/src/client/src/tscSchemaUtil.c index 648c25657c..a1152dd86d 100644 --- a/src/client/src/tscSchemaUtil.c +++ b/src/client/src/tscSchemaUtil.c @@ -20,7 +20,7 @@ #include "ttypes.h" #include "tutil.h" -bool isValidSchema(struct SSchema* pSchema, int32_t numOfCols) { +bool isValidSchema(struct SCMSchema* pSchema, int32_t numOfCols) { if (!VALIDNUMOFCOLS(numOfCols)) { return false; } @@ -64,14 +64,14 @@ bool isValidSchema(struct SSchema* pSchema, int32_t numOfCols) { return (rowLen <= TSDB_MAX_BYTES_PER_ROW); } -struct SSchema* tsGetSchema(SMeterMeta* pMeta) { +struct SCMSchema* tsGetSchema(SMeterMeta* pMeta) { if (pMeta == NULL) { return NULL; } return tsGetColumnSchema(pMeta, 0); } -struct SSchema* tsGetTagSchema(SMeterMeta* pMeta) { +struct SCMSchema* tsGetTagSchema(SMeterMeta* pMeta) { if (pMeta == NULL || pMeta->numOfTags == 0) { return NULL; } @@ -79,12 +79,12 @@ struct SSchema* tsGetTagSchema(SMeterMeta* pMeta) { return tsGetColumnSchema(pMeta, pMeta->numOfColumns); } -struct SSchema* tsGetColumnSchema(SMeterMeta* pMeta, int32_t startCol) { - return (SSchema*)(((char*)pMeta + sizeof(SMeterMeta)) + startCol * sizeof(SSchema)); +struct SCMSchema* tsGetColumnSchema(SMeterMeta* pMeta, int32_t startCol) { + return (SCMSchema*)(((char*)pMeta + sizeof(SMeterMeta)) + startCol * sizeof(SCMSchema)); } -struct SSchema tsGetTbnameColumnSchema() { - struct SSchema s = {.colId = TSDB_TBNAME_COLUMN_INDEX, .type = TSDB_DATA_TYPE_BINARY, .bytes = TSDB_METER_NAME_LEN}; +struct SCMSchema tsGetTbnameColumnSchema() { + struct SCMSchema s = {.colId = TSDB_TBNAME_COLUMN_INDEX, .type = TSDB_DATA_TYPE_BINARY, .bytes = TSDB_METER_NAME_LEN}; strcpy(s.name, TSQL_TBNAME_L); return s; @@ -96,7 +96,7 @@ struct SSchema tsGetTbnameColumnSchema() { * +--------------------+ * |SMeterMeta Body data| sizeof(SMeterMeta) * +--------------------+ - * |Schema data | numOfTotalColumns * sizeof(SSchema) + * |Schema data | numOfTotalColumns * sizeof(SCMSchema) * +--------------------+ * |Tags data | tag_col_1.bytes + tag_col_2.bytes + .... * +--------------------+ @@ -106,7 +106,7 @@ struct SSchema tsGetTbnameColumnSchema() { */ char* tsGetTagsValue(SMeterMeta* pMeta) { int32_t numOfTotalCols = pMeta->numOfColumns + pMeta->numOfTags; - uint32_t offset = sizeof(SMeterMeta) + numOfTotalCols * sizeof(SSchema); + uint32_t offset = sizeof(SMeterMeta) + numOfTotalCols * sizeof(SCMSchema); return ((char*)pMeta + offset); } @@ -120,10 +120,10 @@ bool tsMeterMetaIdentical(SMeterMeta* p1, SMeterMeta* p2) { return true; } - size_t size = sizeof(SMeterMeta) + p1->numOfColumns * sizeof(SSchema); + size_t size = sizeof(SMeterMeta) + p1->numOfColumns * sizeof(SCMSchema); for (int32_t i = 0; i < p1->numOfTags; ++i) { - SSchema* pColSchema = tsGetColumnSchema(p1, i + p1->numOfColumns); + SCMSchema* pColSchema = tsGetColumnSchema(p1, i + p1->numOfColumns); size += pColSchema->bytes; } diff --git a/src/client/src/tscSecondaryMerge.c b/src/client/src/tscSecondaryMerge.c index ca57030539..603262438f 100644 --- a/src/client/src/tscSecondaryMerge.c +++ b/src/client/src/tscSecondaryMerge.c @@ -68,7 +68,7 @@ static void tscInitSqlContext(SSqlCmd *pCmd, SSqlRes *pRes, SLocalReducer *pRedu // input buffer hold only one point data int16_t offset = getColumnModelOffset(pDesc->pColumnModel, i); - SSchema* pSchema = getColumnModelSchema(pDesc->pColumnModel, i); + SCMSchema* pSchema = getColumnModelSchema(pDesc->pColumnModel, i); pCtx->aInputElemBuf = pReducer->pTempBuffer->data + offset; @@ -336,7 +336,7 @@ void tscCreateLocalReducer(tExtMemBuffer **pMemBuffer, int32_t numOfBuffer, tOrd if (pQueryInfo->groupbyExpr.numOfGroupCols > 0) { pInterpoInfo->pTags[0] = (char *)pInterpoInfo->pTags + POINTER_BYTES * pQueryInfo->groupbyExpr.numOfGroupCols; for (int32_t i = 1; i < pQueryInfo->groupbyExpr.numOfGroupCols; ++i) { - SSchema* pSchema = getColumnModelSchema(pReducer->resColModel, startIndex + i - 1); + SCMSchema* pSchema = getColumnModelSchema(pReducer->resColModel, startIndex + i - 1); pInterpoInfo->pTags[i] = pSchema->bytes + pInterpoInfo->pTags[i - 1]; } } else { @@ -599,7 +599,7 @@ int32_t tscLocalReducerEnvCreate(SSqlObj *pSql, tExtMemBuffer ***pMemBuffer, tOr SSqlCmd *pCmd = &pSql->cmd; SSqlRes *pRes = &pSql->res; - SSchema * pSchema = NULL; + SCMSchema * pSchema = NULL; SColumnModel *pModel = NULL; *pFinalModel = NULL; @@ -613,7 +613,7 @@ int32_t tscLocalReducerEnvCreate(SSqlObj *pSql, tExtMemBuffer ***pMemBuffer, tOr return pRes->code; } - pSchema = (SSchema *)calloc(1, sizeof(SSchema) * pQueryInfo->fieldsInfo.numOfOutputCols); + pSchema = (SCMSchema *)calloc(1, sizeof(SCMSchema) * pQueryInfo->fieldsInfo.numOfOutputCols); if (pSchema == NULL) { tscError("%p failed to allocate memory", pSql); pRes->code = TSDB_CODE_CLI_OUT_OF_MEMORY; @@ -647,7 +647,7 @@ int32_t tscLocalReducerEnvCreate(SSqlObj *pSql, tExtMemBuffer ***pMemBuffer, tOr return pRes->code; } - memset(pSchema, 0, sizeof(SSchema) * pQueryInfo->fieldsInfo.numOfOutputCols); + memset(pSchema, 0, sizeof(SCMSchema) * pQueryInfo->fieldsInfo.numOfOutputCols); for (int32_t i = 0; i < pQueryInfo->fieldsInfo.numOfOutputCols; ++i) { TAOS_FIELD *pField = tscFieldInfoGetField(pQueryInfo, i); @@ -985,7 +985,7 @@ static void savePreviousRow(SLocalReducer *pLocalReducer, tFilePage *tmpBuffer) // copy to previous temp buffer for (int32_t i = 0; i < pColumnModel->numOfCols; ++i) { - SSchema* pSchema = getColumnModelSchema(pColumnModel, i); + SCMSchema* pSchema = getColumnModelSchema(pColumnModel, i); int16_t offset = getColumnModelOffset(pColumnModel, i); memcpy(pLocalReducer->prevRowOfInput + offset, tmpBuffer->data + offset, pSchema->bytes); @@ -1208,7 +1208,7 @@ bool doGenerateFinalResults(SSqlObj *pSql, SLocalReducer *pLocalReducer, bool no for (int32_t i = 0; i < pQueryInfo->groupbyExpr.numOfGroupCols; ++i) { int16_t offset = getColumnModelOffset(pModel, startIndex + i); - SSchema* pSchema = getColumnModelSchema(pModel, startIndex + i); + SCMSchema* pSchema = getColumnModelSchema(pModel, startIndex + i); memcpy(pInterpoInfo->pTags[i], pLocalReducer->pBufForInterpo + offset * pResBuf->numOfElems, pSchema->bytes); diff --git a/src/client/src/tscServer.c b/src/client/src/tscServer.c index 24a6cb6178..9639d4f0d4 100644 --- a/src/client/src/tscServer.c +++ b/src/client/src/tscServer.c @@ -401,7 +401,7 @@ int32_t tscLaunchJoinSubquery(SSqlObj *pSql, int16_t tableIndex, SJoinSubquerySu // set the ts,tags that involved in join, as the output column of intermediate result tscClearSubqueryInfo(&pNew->cmd); - SSchema colSchema = {.type = TSDB_DATA_TYPE_BINARY, .bytes = 1}; + SCMSchema colSchema = {.type = TSDB_DATA_TYPE_BINARY, .bytes = 1}; SColumnIndex index = {0, PRIMARYKEY_TIMESTAMP_COL_INDEX}; tscAddSpecialColumnForSelect(pNewQueryInfo, 0, TSDB_FUNC_TS_COMP, &index, &colSchema, TSDB_COL_NORMAL); @@ -1459,11 +1459,11 @@ int tscBuildQueryMsg(SSqlObj *pSql, SSqlInfo *pInfo) { // set column list ids char * pMsg = (char *)(pQueryMsg->colList) + pQueryInfo->colList.numOfCols * sizeof(SColumnInfo); - SSchema *pSchema = tsGetSchema(pMeterMeta); + SCMSchema *pSchema = tsGetSchema(pMeterMeta); for (int32_t i = 0; i < pQueryInfo->colList.numOfCols; ++i) { SColumnBase *pCol = tscColumnBaseInfoGet(&pQueryInfo->colList, i); - SSchema * pColSchema = &pSchema[pCol->colIndex.columnIndex]; + SCMSchema * pColSchema = &pSchema[pCol->colIndex.columnIndex]; if (pCol->colIndex.columnIndex >= pMeterMeta->numOfColumns || pColSchema->type < TSDB_DATA_TYPE_BOOL || pColSchema->type > TSDB_DATA_TYPE_NCHAR) { @@ -1571,18 +1571,18 @@ int tscBuildQueryMsg(SSqlObj *pSql, SSqlInfo *pInfo) { // only include the required tag column schema. If a tag is not required, it won't be sent to vnode if (pMeterMetaInfo->numOfTags > 0) { // always transfer tag schema to vnode if exists - SSchema *pTagSchema = tsGetTagSchema(pMeterMeta); + SCMSchema *pTagSchema = tsGetTagSchema(pMeterMeta); for (int32_t j = 0; j < pMeterMetaInfo->numOfTags; ++j) { if (pMeterMetaInfo->tagColumnIndex[j] == TSDB_TBNAME_COLUMN_INDEX) { - SSchema tbSchema = { + SCMSchema tbSchema = { .bytes = TSDB_METER_NAME_LEN, .colId = TSDB_TBNAME_COLUMN_INDEX, .type = TSDB_DATA_TYPE_BINARY}; - memcpy(pMsg, &tbSchema, sizeof(SSchema)); + memcpy(pMsg, &tbSchema, sizeof(SCMSchema)); } else { - memcpy(pMsg, &pTagSchema[pMeterMetaInfo->tagColumnIndex[j]], sizeof(SSchema)); + memcpy(pMsg, &pTagSchema[pMeterMetaInfo->tagColumnIndex[j]], sizeof(SCMSchema)); } - pMsg += sizeof(SSchema); + pMsg += sizeof(SCMSchema); } } @@ -1651,19 +1651,19 @@ int tscBuildQueryMsg(SSqlObj *pSql, SSqlInfo *pInfo) { } int32_t tscBuildCreateDbMsg(SSqlObj *pSql, SSqlInfo *pInfo) { - SCreateDbMsg *pCreateDbMsg; + SCMCreateDbMsg *pCreateDbMsg; char * pMsg, *pStart; SSqlCmd *pCmd = &pSql->cmd; pMsg = doBuildMsgHeader(pSql, &pStart); - pCreateDbMsg = (SCreateDbMsg *)pMsg; + pCreateDbMsg = (SCMCreateDbMsg *)pMsg; assert(pCmd->numOfClause == 1); SMeterMetaInfo *pMeterMetaInfo = tscGetMeterMetaInfo(pCmd, pCmd->clauseIndex, 0); strncpy(pCreateDbMsg->db, pMeterMetaInfo->name, tListLen(pCreateDbMsg->db)); - pMsg += sizeof(SCreateDbMsg); + pMsg += sizeof(SCMCreateDbMsg); pCmd->payloadLen = pMsg - pStart; pCmd->msgType = TSDB_MSG_TYPE_CREATE_DB; @@ -1672,7 +1672,7 @@ int32_t tscBuildCreateDbMsg(SSqlObj *pSql, SSqlInfo *pInfo) { } int32_t tscBuildCreateDnodeMsg(SSqlObj *pSql, SSqlInfo *pInfo) { - SCreateDnodeMsg *pCreate; + SCMCreateDnodeMsg *pCreate; char *pMsg, *pStart; @@ -1680,10 +1680,10 @@ int32_t tscBuildCreateDnodeMsg(SSqlObj *pSql, SSqlInfo *pInfo) { pMsg = doBuildMsgHeader(pSql, &pStart); - pCreate = (SCreateDnodeMsg *)pMsg; + pCreate = (SCMCreateDnodeMsg *)pMsg; strncpy(pCreate->ip, pInfo->pDCLInfo->a[0].z, pInfo->pDCLInfo->a[0].n); - pMsg += sizeof(SCreateDnodeMsg); + pMsg += sizeof(SCMCreateDnodeMsg); pCmd->payloadLen = pMsg - pStart; pCmd->msgType = TSDB_MSG_TYPE_CREATE_DNODE; @@ -1775,7 +1775,7 @@ int32_t tscBuildCfgDnodeMsg(SSqlObj *pSql, SSqlInfo *pInfo) { SSqlCmd *pCmd = &pSql->cmd; char *pMsg = doBuildMsgHeader(pSql, &pStart); - pMsg += sizeof(SCfgMsg); + pMsg += sizeof(SCMCfgDnodeMsg); pCmd->payloadLen = pMsg - pStart; pCmd->msgType = TSDB_MSG_TYPE_DNODE_CFG; @@ -1799,19 +1799,19 @@ char *doBuildMsgHeader(SSqlObj *pSql, char **pStart) { } int32_t tscBuildDropDbMsg(SSqlObj *pSql, SSqlInfo *pInfo) { - SDropDbMsg *pDropDbMsg; + SCMDropDbMsg *pDropDbMsg; char * pMsg, *pStart; SSqlCmd *pCmd = &pSql->cmd; pMsg = doBuildMsgHeader(pSql, &pStart); - pDropDbMsg = (SDropDbMsg *)pMsg; + pDropDbMsg = (SCMDropDbMsg *)pMsg; SMeterMetaInfo *pMeterMetaInfo = tscGetMeterMetaInfo(pCmd, pCmd->clauseIndex, 0); strncpy(pDropDbMsg->db, pMeterMetaInfo->name, tListLen(pDropDbMsg->db)); pDropDbMsg->ignoreNotExists = pInfo->pDCLInfo->existsCheck ? 1 : 0; - pMsg += sizeof(SDropDbMsg); + pMsg += sizeof(SCMDropDbMsg); pCmd->payloadLen = pMsg - pStart; pCmd->msgType = TSDB_MSG_TYPE_DROP_DB; @@ -1851,18 +1851,18 @@ int32_t tscBuildDropTableMsg(SSqlObj *pSql, SSqlInfo *pInfo) { } int32_t tscBuildDropDnodeMsg(SSqlObj *pSql, SSqlInfo *pInfo) { - SDropDnodeMsg *pDrop; + SCMDropDnodeMsg *pDrop; char * pMsg, *pStart; SSqlCmd * pCmd = &pSql->cmd; SMeterMetaInfo *pMeterMetaInfo = tscGetMeterMetaInfo(pCmd, pCmd->clauseIndex, 0); pMsg = doBuildMsgHeader(pSql, &pStart); - pDrop = (SDropDnodeMsg *)pMsg; + pDrop = (SCMDropDnodeMsg *)pMsg; strcpy(pDrop->ip, pMeterMetaInfo->name); - pMsg += sizeof(SDropDnodeMsg); + pMsg += sizeof(SCMDropDnodeMsg); pCmd->payloadLen = pMsg - pStart; pCmd->msgType = TSDB_MSG_TYPE_DROP_DNODE; @@ -1891,18 +1891,18 @@ int32_t tscBuildDropAcctMsg(SSqlObj *pSql, SSqlInfo *pInfo) { } int32_t tscBuildUseDbMsg(SSqlObj *pSql, SSqlInfo *pInfo) { - SUseDbMsg *pUseDbMsg; + SCMUseDbMsg *pUseDbMsg; char * pMsg, *pStart; SSqlCmd *pCmd = &pSql->cmd; pMsg = doBuildMsgHeader(pSql, &pStart); - pUseDbMsg = (SUseDbMsg *)pMsg; + pUseDbMsg = (SCMUseDbMsg *)pMsg; SMeterMetaInfo *pMeterMetaInfo = tscGetMeterMetaInfo(pCmd, pCmd->clauseIndex, 0); strcpy(pUseDbMsg->db, pMeterMetaInfo->name); - pMsg += sizeof(SUseDbMsg); + pMsg += sizeof(SCMUseDbMsg); pCmd->payloadLen = pMsg - pStart; pCmd->msgType = TSDB_MSG_TYPE_USE_DB; @@ -1918,7 +1918,7 @@ int32_t tscBuildShowMsg(SSqlObj *pSql, SSqlInfo *pInfo) { SSqlCmd *pCmd = &pSql->cmd; STscObj *pObj = pSql->pTscObj; - int32_t size = minMsgSize() + sizeof(SMgmtHead) + sizeof(SShowTableMsg) + pCmd->payloadLen + TSDB_EXTRA_PAYLOAD_SIZE; + int32_t size = minMsgSize() + sizeof(SMgmtHead) + sizeof(SCMShowTableMsg) + pCmd->payloadLen + TSDB_EXTRA_PAYLOAD_SIZE; if (TSDB_CODE_SUCCESS != tscAllocPayload(pCmd, size)) { tscError("%p failed to malloc for show msg", pSql); return -1; @@ -1951,7 +1951,7 @@ int32_t tscBuildShowMsg(SSqlObj *pSql, SSqlInfo *pInfo) { strncpy(pShowMsg->payload, pPattern->z, pPattern->n); pShowMsg->payloadLen = htons(pPattern->n); } - pMsg += (sizeof(SShowTableMsg) + pPattern->n); + pMsg += (sizeof(SCMShowTableMsg) + pPattern->n); } else { SSQLToken *pIpAddr = &pShowInfo->prefix; assert(pIpAddr->n > 0 && pIpAddr->type > 0); @@ -1959,7 +1959,7 @@ int32_t tscBuildShowMsg(SSqlObj *pSql, SSqlInfo *pInfo) { strncpy(pShowMsg->payload, pIpAddr->z, pIpAddr->n); pShowMsg->payloadLen = htons(pIpAddr->n); - pMsg += (sizeof(SShowTableMsg) + pIpAddr->n); + pMsg += (sizeof(SCMShowTableMsg) + pIpAddr->n); } pCmd->payloadLen = pMsg - pStart; @@ -1971,18 +1971,17 @@ int32_t tscBuildShowMsg(SSqlObj *pSql, SSqlInfo *pInfo) { } int32_t tscBuildKillMsg(SSqlObj *pSql, SSqlInfo *pInfo) { - SKillQuery *pKill; + SCMKillQueryMsg *pKill; char * pMsg, *pStart; SSqlCmd *pCmd = &pSql->cmd; pMsg = doBuildMsgHeader(pSql, &pStart); - pKill = (SKillQuery *)pMsg; + pKill = (SCMKillQueryMsg *)pMsg; - pKill->handle = 0; strncpy(pKill->queryId, pInfo->pDCLInfo->ip.z, pInfo->pDCLInfo->ip.n); - pMsg += sizeof(SKillQuery); + pMsg += sizeof(SCMKillQueryMsg); pCmd->payloadLen = pMsg - pStart; @@ -2003,13 +2002,13 @@ int32_t tscBuildKillMsg(SSqlObj *pSql, SSqlInfo *pInfo) { int tscEstimateCreateTableMsgLength(SSqlObj *pSql, SSqlInfo *pInfo) { SSqlCmd *pCmd = &(pSql->cmd); - int32_t size = minMsgSize() + sizeof(SMgmtHead) + sizeof(SCreateTableMsg); + int32_t size = minMsgSize() + sizeof(SMgmtHead) + sizeof(SCMCreateTableMsg); SCreateTableSQL *pCreateTableInfo = pInfo->pCreateTableInfo; if (pCreateTableInfo->type == TSQL_CREATE_TABLE_FROM_STABLE) { size += sizeof(STagData); } else { - size += sizeof(SSchema) * (pCmd->numOfCols + pCmd->count); + size += sizeof(SCMSchema) * (pCmd->numOfCols + pCmd->count); } if (pCreateTableInfo->pSelect != NULL) { @@ -2020,10 +2019,10 @@ int tscEstimateCreateTableMsgLength(SSqlObj *pSql, SSqlInfo *pInfo) { } int tscBuildCreateTableMsg(SSqlObj *pSql, SSqlInfo *pInfo) { - SCreateTableMsg *pCreateTableMsg; + SCMCreateTableMsg *pCreateTableMsg; char * pMsg, *pStart; int msgLen = 0; - SSchema * pSchema; + SCMSchema * pSchema; int size = 0; SSqlCmd *pCmd = &pSql->cmd; @@ -2048,8 +2047,8 @@ int tscBuildCreateTableMsg(SSqlObj *pSql, SSqlInfo *pInfo) { pMsg += sizeof(SMgmtHead); - pCreateTableMsg = (SCreateTableMsg *)pMsg; - strcpy(pCreateTableMsg->meterId, pMeterMetaInfo->name); + pCreateTableMsg = (SCMCreateTableMsg *)pMsg; + strcpy(pCreateTableMsg->tableId, pMeterMetaInfo->name); SCreateTableSQL *pCreateTable = pInfo->pCreateTableInfo; @@ -2100,7 +2099,7 @@ int tscBuildCreateTableMsg(SSqlObj *pSql, SSqlInfo *pInfo) { int tscEstimateAlterTableMsgLength(SSqlCmd *pCmd) { SQueryInfo *pQueryInfo = tscGetQueryInfoDetail(pCmd, 0); - return minMsgSize() + sizeof(SMgmtHead) + sizeof(SAlterTableMsg) + sizeof(SSchema) * tscNumOfFields(pQueryInfo) + + return minMsgSize() + sizeof(SMgmtHead) + sizeof(SAlterTableMsg) + sizeof(SCMSchema) * tscNumOfFields(pQueryInfo) + TSDB_EXTRA_PAYLOAD_SIZE; } @@ -2131,13 +2130,13 @@ int tscBuildAlterTableMsg(SSqlObj *pSql, SSqlInfo *pInfo) { SAlterTableSQL *pAlterInfo = pInfo->pAlterInfo; pAlterTableMsg = (SAlterTableMsg *)pMsg; - strcpy(pAlterTableMsg->meterId, pMeterMetaInfo->name); + strcpy(pAlterTableMsg->tableId, pMeterMetaInfo->name); pAlterTableMsg->type = htons(pAlterInfo->type); pAlterTableMsg->numOfCols = htons(tscNumOfFields(pQueryInfo)); memcpy(pAlterTableMsg->tagVal, pAlterInfo->tagData.data, TSDB_MAX_TAGS_LEN); - SSchema *pSchema = pAlterTableMsg->schema; + SCMSchema *pSchema = pAlterTableMsg->schema; for (int i = 0; i < tscNumOfFields(pQueryInfo); ++i) { TAOS_FIELD *pField = tscFieldInfoGetField(pQueryInfo, i); @@ -2159,7 +2158,7 @@ int tscBuildAlterTableMsg(SSqlObj *pSql, SSqlInfo *pInfo) { } int tscAlterDbMsg(SSqlObj *pSql, SSqlInfo *pInfo) { - SAlterDbMsg *pAlterDbMsg; + SCMAlterDbMsg *pAlterDbMsg; char * pMsg, *pStart; int msgLen = 0; @@ -2174,10 +2173,10 @@ int tscAlterDbMsg(SSqlObj *pSql, SSqlInfo *pInfo) { strcpy(pMgmt->db, pObj->db); pMsg += sizeof(SMgmtHead); - pAlterDbMsg = (SAlterDbMsg *)pMsg; + pAlterDbMsg = (SCMAlterDbMsg *)pMsg; strcpy(pAlterDbMsg->db, pMeterMetaInfo->name); - pMsg += sizeof(SAlterDbMsg); + pMsg += sizeof(SCMAlterDbMsg); msgLen = pMsg - pStart; pCmd->payloadLen = msgLen; @@ -2665,7 +2664,7 @@ int tscBuildHeartBeatMsg(SSqlObj *pSql, SSqlInfo *pInfo) { int tscProcessMeterMetaRsp(SSqlObj *pSql) { SMeterMeta *pMeta; - SSchema * pSchema; + SCMSchema * pSchema; uint8_t ieType; char *rsp = pSql->res.pRsp; @@ -2707,7 +2706,7 @@ int tscProcessMeterMetaRsp(SSqlObj *pSql) { pMeta->rowSize = 0; rsp += sizeof(SMeterMeta); - pSchema = (SSchema *)rsp; + pSchema = (SCMSchema *)rsp; int32_t numOfTotalCols = pMeta->numOfColumns + pMeta->numOfTags; for (int i = 0; i < numOfTotalCols; ++i) { @@ -2721,10 +2720,10 @@ int tscProcessMeterMetaRsp(SSqlObj *pSql) { pSchema++; } - rsp += numOfTotalCols * sizeof(SSchema); + rsp += numOfTotalCols * sizeof(SCMSchema); int32_t tagLen = 0; - SSchema *pTagsSchema = tsGetTagSchema(pMeta); + SCMSchema *pTagsSchema = tsGetTagSchema(pMeta); if (pMeta->tableType == TSDB_TABLE_TYPE_CHILD_TABLE) { for (int32_t i = 0; i < pMeta->numOfTags; ++i) { @@ -2752,11 +2751,11 @@ int tscProcessMeterMetaRsp(SSqlObj *pSql) { /** * multi meter meta rsp pkg format: - * | STaosRsp | ieType | SMultiMeterInfoMsg | SMeterMeta0 | SSchema0 | SMeterMeta1 | SSchema1 | SMeterMeta2 | SSchema2 + * | STaosRsp | ieType | SMultiMeterInfoMsg | SMeterMeta0 | SCMSchema0 | SMeterMeta1 | SCMSchema1 | SMeterMeta2 | SCMSchema2 * |...... 1B 1B 4B **/ int tscProcessMultiMeterMetaRsp(SSqlObj *pSql) { - SSchema *pSchema; + SCMSchema *pSchema; uint8_t ieType; int32_t totalNum; int32_t i; @@ -2822,7 +2821,7 @@ int tscProcessMultiMeterMetaRsp(SSqlObj *pSql) { pMeta->rowSize = 0; rsp += sizeof(SMultiMeterMeta); - pSchema = (SSchema *)rsp; + pSchema = (SCMSchema *)rsp; int32_t numOfTotalCols = pMeta->numOfColumns + pMeta->numOfTags; for (int j = 0; j < numOfTotalCols; ++j) { @@ -2836,10 +2835,10 @@ int tscProcessMultiMeterMetaRsp(SSqlObj *pSql) { pSchema++; } - rsp += numOfTotalCols * sizeof(SSchema); + rsp += numOfTotalCols * sizeof(SCMSchema); int32_t tagLen = 0; - SSchema *pTagsSchema = tsGetTagSchema(pMeta); + SCMSchema *pTagsSchema = tsGetTagSchema(pMeta); if (pMeta->tableType == TSDB_TABLE_TYPE_CHILD_TABLE) { for (int32_t j = 0; j < pMeta->numOfTags; ++j) { @@ -2989,7 +2988,7 @@ _error_clean: int tscProcessShowRsp(SSqlObj *pSql) { SMeterMeta * pMeta; SShowRspMsg *pShow; - SSchema * pSchema; + SCMSchema * pSchema; char key[20]; SSqlRes *pRes = &pSql->res; @@ -3007,7 +3006,7 @@ int tscProcessShowRsp(SSqlObj *pSql) { pMeta->numOfColumns = ntohs(pMeta->numOfColumns); - pSchema = (SSchema *)((char *)pMeta + sizeof(SMeterMeta)); + pSchema = (SCMSchema *)((char *)pMeta + sizeof(SMeterMeta)); pMeta->sid = ntohs(pMeta->sid); for (int i = 0; i < pMeta->numOfColumns; ++i) { pSchema->bytes = htons(pSchema->bytes); @@ -3019,11 +3018,11 @@ int tscProcessShowRsp(SSqlObj *pSql) { taosRemoveDataFromCache(tscCacheHandle, (void *)&(pMeterMetaInfo->pMeterMeta), false); - int32_t size = pMeta->numOfColumns * sizeof(SSchema) + sizeof(SMeterMeta); + int32_t size = pMeta->numOfColumns * sizeof(SCMSchema) + sizeof(SMeterMeta); pMeterMetaInfo->pMeterMeta = (SMeterMeta *)taosAddDataIntoCache(tscCacheHandle, key, (char *)pMeta, size, tsMeterMetaKeepTimer); pCmd->numOfCols = pQueryInfo->fieldsInfo.numOfOutputCols; - SSchema *pMeterSchema = tsGetSchema(pMeterMetaInfo->pMeterMeta); + SCMSchema *pMeterSchema = tsGetSchema(pMeterMetaInfo->pMeterMeta); tscColumnBaseInfoReserve(&pQueryInfo->colList, pMeta->numOfColumns); SColumnIndex index = {0}; diff --git a/src/client/src/tscUtil.c b/src/client/src/tscUtil.c index 4f747053ee..08422c0f95 100644 --- a/src/client/src/tscUtil.c +++ b/src/client/src/tscUtil.c @@ -856,7 +856,7 @@ static void setValueImpl(TAOS_FIELD* pField, int8_t type, const char* name, int1 pField->bytes = bytes; } -void tscFieldInfoSetValFromSchema(SFieldInfo* pFieldInfo, int32_t index, SSchema* pSchema) { +void tscFieldInfoSetValFromSchema(SFieldInfo* pFieldInfo, int32_t index, SCMSchema* pSchema) { ensureSpace(pFieldInfo, pFieldInfo->numOfOutputCols + 1); evic(pFieldInfo, index); @@ -1079,7 +1079,7 @@ SSqlExpr* tscSqlExprInsert(SQueryInfo* pQueryInfo, int32_t index, int16_t functi if (pColIndex->columnIndex == TSDB_TBNAME_COLUMN_INDEX) { pExpr->colInfo.colId = TSDB_TBNAME_COLUMN_INDEX; } else { - SSchema* pSchema = tsGetColumnSchema(pMeterMetaInfo->pMeterMeta, pColIndex->columnIndex); + SCMSchema* pSchema = tsGetColumnSchema(pMeterMetaInfo->pMeterMeta, pColIndex->columnIndex); pExpr->colInfo.colId = pSchema->colId; } @@ -1509,7 +1509,7 @@ bool tscValidateColumnId(SMeterMetaInfo* pMeterMetaInfo, int32_t colId) { return true; } - SSchema* pSchema = tsGetSchema(pMeterMetaInfo->pMeterMeta); + SCMSchema* pSchema = tsGetSchema(pMeterMetaInfo->pMeterMeta); int32_t numOfTotal = pMeterMetaInfo->pMeterMeta->numOfTags + pMeterMetaInfo->pMeterMeta->numOfColumns; for (int32_t i = 0; i < numOfTotal; ++i) { @@ -1555,14 +1555,14 @@ void tscTagCondRelease(STagCond* pCond) { void tscGetSrcColumnInfo(SSrcColumnInfo* pColInfo, SQueryInfo* pQueryInfo) { SMeterMetaInfo* pMeterMetaInfo = tscGetMeterMetaInfoFromQueryInfo(pQueryInfo, 0); - SSchema* pSchema = tsGetSchema(pMeterMetaInfo->pMeterMeta); + SCMSchema* pSchema = tsGetSchema(pMeterMetaInfo->pMeterMeta); for (int32_t i = 0; i < pQueryInfo->exprsInfo.numOfExprs; ++i) { SSqlExpr* pExpr = tscSqlExprGet(pQueryInfo, i); pColInfo[i].functionId = pExpr->functionId; if (TSDB_COL_IS_TAG(pExpr->colInfo.flag)) { - SSchema* pTagSchema = tsGetTagSchema(pMeterMetaInfo->pMeterMeta); + SCMSchema* pTagSchema = tsGetTagSchema(pMeterMetaInfo->pMeterMeta); int16_t actualTagIndex = pMeterMetaInfo->tagColumnIndex[pExpr->colInfo.colIdx]; pColInfo[i].type = (actualTagIndex != -1) ? pTagSchema[actualTagIndex].type : TSDB_DATA_TYPE_BINARY; diff --git a/src/dnode/src/dnodeMgmt.c b/src/dnode/src/dnodeMgmt.c index 60786b27f4..e044ee3aad 100644 --- a/src/dnode/src/dnodeMgmt.c +++ b/src/dnode/src/dnodeMgmt.c @@ -176,7 +176,7 @@ int32_t dnodeProcessFreeVnodeRequest(int8_t *pCont, int32_t contLen, int8_t msgT } int32_t dnodeProcessDnodeCfgRequest(int8_t *pCont, int32_t contLen, int8_t msgType, void *pConn) { - SCfgMsg *pCfg = (SCfgMsg *)pCont; + SCMCfgDnodeMsg *pCfg = (SCMCfgDnodeMsg *)pCont; int32_t code = tsCfgDynamicOptions(pCfg->config); dnodeSendSimpleRspToMnode(pConn, msgType + 1, code); return code; diff --git a/src/inc/mnode.h b/src/inc/mnode.h index b4691de04e..0718fb1840 100644 --- a/src/inc/mnode.h +++ b/src/inc/mnode.h @@ -130,7 +130,7 @@ typedef struct _tab_obj { char * pReserve1; char * pReserve2; char * schema; - // SSchema schema[]; + // SCMSchema schema[]; } STabObj; typedef struct { @@ -156,7 +156,7 @@ typedef struct SSuperTableObj { int8_t reserved[7]; int8_t updateEnd[1]; int16_t nextColId; - SSchema *schema; + SCMSchema *schema; } SSuperTableObj; typedef struct { @@ -184,7 +184,7 @@ typedef struct { int8_t reserved[3]; int8_t updateEnd[1]; int16_t nextColId; - SSchema* schema; + SCMSchema* schema; } SNormalTableObj; typedef struct { @@ -201,7 +201,7 @@ typedef struct { int8_t updateEnd[1]; int16_t nextColId; char* sql; //null-terminated string - SSchema* schema; + SCMSchema* schema; } SStreamTableObj; typedef struct _vg_obj { diff --git a/src/inc/taosmsg.h b/src/inc/taosmsg.h index 2138272fc7..42ad5ed1d8 100644 --- a/src/inc/taosmsg.h +++ b/src/inc/taosmsg.h @@ -245,12 +245,12 @@ typedef struct { SShellSubmitRspBlock *failedBlocks; } SShellSubmitRspMsg; -typedef struct SSchema { +typedef struct SCMSchema { uint8_t type; char name[TSDB_COL_NAME_LEN]; short colId; short bytes; -} SSchema; +} SCMSchema; typedef struct { int8_t type; @@ -275,40 +275,34 @@ typedef struct { int8_t data[]; } SDCreateTableMsg; -typedef struct { - char db[TSDB_TABLE_ID_LEN]; - uint8_t ignoreNotExists; -} SDropDbMsg, SUseDbMsg; - typedef struct { char db[TSDB_DB_NAME_LEN]; -} SShowTableMsg; +} SCMShowTableMsg; typedef struct { - char meterId[TSDB_TABLE_ID_LEN]; - char igExists; - - short numOfTags; - - short numOfColumns; - short sqlLen; // the length of SQL, it starts after schema , sql is a - // null-terminated string - char reserved[16]; - - SSchema schema[]; -} SCreateTableMsg; + char tableId[TSDB_TABLE_ID_LEN]; + char db[TSDB_DB_NAME_LEN]; + int8_t igExists; + int16_t numOfTags; + int16_t numOfColumns; + int16_t sqlLen; // the length of SQL, it starts after schema , sql is a null-terminated string + int16_t reserved[16]; + SCMSchema schema[]; +} SCMCreateTableMsg; typedef struct { - char meterId[TSDB_TABLE_ID_LEN]; - char igNotExists; + char meterId[TSDB_TABLE_ID_LEN]; + char db[TSDB_DB_NAME_LEN]; + int8_t igNotExists; } SDropTableMsg; typedef struct { - char meterId[TSDB_TABLE_ID_LEN]; - short type; /* operation type */ + char tableId[TSDB_TABLE_ID_LEN]; + char db[TSDB_DB_NAME_LEN]; + int16_t type; /* operation type */ char tagVal[TSDB_MAX_BYTES_PER_ROW]; - short numOfCols; /* number of schema */ - SSchema schema[]; + int8_t numOfCols; /* number of schema */ + SCMSchema schema[]; } SAlterTableMsg; typedef struct { @@ -561,14 +555,11 @@ typedef struct { char accessState; } SVnodeAccess; -// NOTE: sizeof(SVnodeCfg) < TSDB_FILE_HEADER_LEN/4 +/* + * NOTE: sizeof(SVnodeCfg) < TSDB_FILE_HEADER_LEN / 4 + */ typedef struct { char acct[TSDB_USER_LEN]; - /* - * the message is too large, so it may will overwrite the cfg information in meterobj.v* - * recover to origin codes - */ - //char db[TSDB_TABLE_ID_LEN+2]; // 8bytes align char db[TSDB_DB_NAME_LEN]; uint32_t vgId; int32_t maxSessions; @@ -578,24 +569,25 @@ typedef struct { float fraction; } cacheNumOfBlocks; int32_t daysPerFile; - int32_t daysToKeep1; int32_t daysToKeep2; int32_t daysToKeep; - int32_t commitTime; int32_t rowsInFileBlock; int16_t blocksPerMeter; - char compression; - char commitLog; - char replications; - - char repStrategy; - char loadLatest; // load into mem or not + int8_t compression; + int8_t commitLog; + int8_t replications; + int8_t repStrategy; + int8_t loadLatest; // load into mem or not uint8_t precision; // time resolution + int8_t reserved[16]; +} SVnodeCfg, SCMCreateDbMsg, SDbCfg, SCMAlterDbMsg; - char reserved[16]; -} SVnodeCfg, SCreateDbMsg, SDbCfg, SAlterDbMsg; +typedef struct { + char db[TSDB_TABLE_ID_LEN]; + uint8_t ignoreNotExists; +} SCMDropDbMsg, SCMUseDbMsg; // IMPORTANT: sizeof(SVnodeStatisticInfo) should not exceed // TSDB_FILE_HEADER_LEN/4 - TSDB_FILE_HEADER_VERSION_SIZE @@ -759,7 +751,7 @@ typedef struct { typedef struct { char ip[20]; -} SCreateMnodeMsg, SDropMnodeMsg, SCreateDnodeMsg, SDropDnodeMsg; +} SCMCreateMnodeMsg, SCMDropMnodeMsg, SCMCreateDnodeMsg, SCMDropDnodeMsg; typedef struct { uint64_t qhandle; @@ -776,9 +768,9 @@ typedef struct { } SVpeerCfgMsg; typedef struct { - char ip[20]; - char config[60]; -} SCfgMsg; + char ip[32]; + char config[64]; +} SCMCfgDnodeMsg; typedef struct { char sql[TSDB_SHOW_SQL_LEN]; @@ -821,9 +813,8 @@ typedef struct { } SCMHeartBeatRsp; typedef struct { - uint64_t handle; - char queryId[TSDB_KILL_MSG_LEN]; -} SKillQuery, SKillStream, SKillConnection; + char queryId[TSDB_KILL_MSG_LEN]; +} SCMKillQueryMsg, SCMKillStreamMsg, SKillConnectionMsg; typedef struct { int32_t vnode; diff --git a/src/mnode/inc/mgmtAcct.h b/src/mnode/inc/mgmtAcct.h index f0788bf50d..1cb6d13159 100644 --- a/src/mnode/inc/mgmtAcct.h +++ b/src/mnode/inc/mgmtAcct.h @@ -32,7 +32,7 @@ extern void (*mgmtCleanUpAccts)(); extern SAcctObj* (*mgmtGetAcct)(char *acctName); extern int32_t (*mgmtCheckUserLimit)(SAcctObj *pAcct); extern int32_t (*mgmtCheckDbLimit)(SAcctObj *pAcct); -extern int32_t (*mgmtCheckTableLimit)(SAcctObj *pAcct, SCreateTableMsg *pCreate); +extern int32_t (*mgmtCheckTableLimit)(SAcctObj *pAcct, SCMCreateTableMsg *pCreate); extern int32_t (*mgmtGetAcctMeta)(SMeterMeta *pMeta, SShowObj *pShow, void *pConn); extern int32_t (*mgmtRetrieveAccts)(SShowObj *pShow, char *data, int32_t rows, void *pConn); diff --git a/src/mnode/inc/mgmtChildTable.h b/src/mnode/inc/mgmtChildTable.h index 0fa6355898..68d18a88a6 100644 --- a/src/mnode/inc/mgmtChildTable.h +++ b/src/mnode/inc/mgmtChildTable.h @@ -28,7 +28,7 @@ extern "C" { int32_t mgmtInitChildTables(); void mgmtCleanUpChildTables(); -int32_t mgmtCreateChildTable(SDbObj *pDb, SCreateTableMsg *pCreate, SVgObj *pVgroup, int32_t sid); +int32_t mgmtCreateChildTable(SDbObj *pDb, SCMCreateTableMsg *pCreate, SVgObj *pVgroup, int32_t sid); int32_t mgmtDropChildTable(SDbObj *pDb, SChildTableObj *pTable); int32_t mgmtAlterChildTable(SDbObj *pDb, SAlterTableMsg *pAlter); int32_t mgmtModifyChildTableTagValueByName(SChildTableObj *pTable, char *tagName, char *nContent); diff --git a/src/mnode/inc/mgmtDb.h b/src/mnode/inc/mgmtDb.h index 56738d9ac2..c52c376e0b 100644 --- a/src/mnode/inc/mgmtDb.h +++ b/src/mnode/inc/mgmtDb.h @@ -23,7 +23,7 @@ extern "C" { #include "mnode.h" void mgmtMonitorDbDrop(void *unused, void *unusedt); -int32_t mgmtAlterDb(SAcctObj *pAcct, SAlterDbMsg *pAlter); +int32_t mgmtAlterDb(SAcctObj *pAcct, SCMAlterDbMsg *pAlter); int32_t mgmtAddVgroupIntoDb(SDbObj *pDb, SVgObj *pVgroup); int32_t mgmtAddVgroupIntoDbTail(SDbObj *pDb, SVgObj *pVgroup); int32_t mgmtRemoveVgroupFromDb(SDbObj *pDb, SVgObj *pVgroup); @@ -37,7 +37,7 @@ int32_t mgmtInitDbs(); int32_t mgmtUpdateDb(SDbObj *pDb); SDbObj *mgmtGetDb(char *db); SDbObj *mgmtGetDbByTableId(char *db); -int32_t mgmtCreateDb(SAcctObj *pAcct, SCreateDbMsg *pCreate); +int32_t mgmtCreateDb(SAcctObj *pAcct, SCMCreateDbMsg *pCreate); int32_t mgmtDropDbByName(SAcctObj *pAcct, char *name, short ignoreNotExists); int32_t mgmtDropDb(SDbObj *pDb); bool mgmtCheckIsMonitorDB(char *db, char *monitordb); diff --git a/src/mnode/inc/mgmtNormalTable.h b/src/mnode/inc/mgmtNormalTable.h index b45b6bbd4e..82d52d388f 100644 --- a/src/mnode/inc/mgmtNormalTable.h +++ b/src/mnode/inc/mgmtNormalTable.h @@ -26,9 +26,9 @@ extern "C" { int32_t mgmtInitNormalTables(); void mgmtCleanUpNormalTables(); -int32_t mgmtCreateNormalTable(SDbObj *pDb, SCreateTableMsg *pCreate, SVgObj *pVgroup, int32_t sid); +int32_t mgmtCreateNormalTable(SDbObj *pDb, SCMCreateTableMsg *pCreate, SVgObj *pVgroup, int32_t sid); int32_t mgmtDropNormalTable(SDbObj *pDb, SNormalTableObj *pTable); -int32_t mgmtAddNormalTableColumn(SNormalTableObj *pTable, SSchema schema[], int32_t ncols); +int32_t mgmtAddNormalTableColumn(SNormalTableObj *pTable, SCMSchema schema[], int32_t ncols); int32_t mgmtDropNormalTableColumnByName(SNormalTableObj *pTable, char *colName); SNormalTableObj* mgmtGetNormalTable(char *tableId); int8_t * mgmtBuildCreateNormalTableMsg(SNormalTableObj *pTable); diff --git a/src/mnode/inc/mgmtStreamTable.h b/src/mnode/inc/mgmtStreamTable.h index e980f76742..01b910f17b 100644 --- a/src/mnode/inc/mgmtStreamTable.h +++ b/src/mnode/inc/mgmtStreamTable.h @@ -26,7 +26,7 @@ extern "C" { int32_t mgmtInitStreamTables(); void mgmtCleanUpStreamTables(); -int32_t mgmtCreateStreamTable(SDbObj *pDb, SCreateTableMsg *pCreate, SVgObj *pVgroup, int32_t sid); +int32_t mgmtCreateStreamTable(SDbObj *pDb, SCMCreateTableMsg *pCreate, SVgObj *pVgroup, int32_t sid); int32_t mgmtDropStreamTable(SDbObj *pDb, SStreamTableObj *pTable); int32_t mgmtAlterStreamTable(SDbObj *pDb, SAlterTableMsg *pAlter); SStreamTableObj* mgmtGetStreamTable(char *tableId); diff --git a/src/mnode/inc/mgmtSuperTable.h b/src/mnode/inc/mgmtSuperTable.h index 6b87ee38ac..d5c2ed6155 100644 --- a/src/mnode/inc/mgmtSuperTable.h +++ b/src/mnode/inc/mgmtSuperTable.h @@ -28,14 +28,14 @@ extern "C" { int32_t mgmtInitSuperTables(); void mgmtCleanUpSuperTables(); -int32_t mgmtCreateSuperTable(SDbObj *pDb, SCreateTableMsg *pCreate); +int32_t mgmtCreateSuperTable(SDbObj *pDb, SCMCreateTableMsg *pCreate); int32_t mgmtDropSuperTable(SDbObj *pDb, SSuperTableObj *pTable); SSuperTableObj* mgmtGetSuperTable(char *tableId); int32_t mgmtFindSuperTableTagIndex(SSuperTableObj *pTable, const char *tagName); -int32_t mgmtAddSuperTableTag(SSuperTableObj *pTable, SSchema schema[], int32_t ntags); +int32_t mgmtAddSuperTableTag(SSuperTableObj *pTable, SCMSchema schema[], int32_t ntags); int32_t mgmtDropSuperTableTag(SSuperTableObj *pTable, char *tagName); int32_t mgmtModifySuperTableTagNameByName(SSuperTableObj *pTable, char *oldTagName, char *newTagName); -int32_t mgmtAddSuperTableColumn(SSuperTableObj *pTable, SSchema schema[], int32_t ncols); +int32_t mgmtAddSuperTableColumn(SSuperTableObj *pTable, SCMSchema schema[], int32_t ncols); int32_t mgmtDropSuperTableColumnByName(SSuperTableObj *pTable, char *colName); int32_t mgmtGetTagsLength(SSuperTableObj* pSuperTable, int32_t col); diff --git a/src/mnode/inc/mgmtTable.h b/src/mnode/inc/mgmtTable.h index 9a34173185..a04403bedf 100644 --- a/src/mnode/inc/mgmtTable.h +++ b/src/mnode/inc/mgmtTable.h @@ -30,7 +30,7 @@ STableInfo* mgmtGetTable(char *tableId); STableInfo* mgmtGetTableByPos(uint32_t dnodeIp, int32_t vnode, int32_t sid); int32_t mgmtRetrieveMetricMeta(void *pConn, char **pStart, SSuperTableMetaMsg *pInfo); -int32_t mgmtCreateTable(SDbObj *pDb, SCreateTableMsg *pCreate); +int32_t mgmtCreateTable(SDbObj *pDb, SCMCreateTableMsg *pCreate); int32_t mgmtDropTable(SDbObj *pDb, char *meterId, int32_t ignore); int32_t mgmtAlterTable(SDbObj *pDb, SAlterTableMsg *pAlter); int32_t mgmtGetTableMeta(SMeterMeta *pMeta, SShowObj *pShow, void *pConn); diff --git a/src/mnode/src/mgmtAcct.c b/src/mnode/src/mgmtAcct.c index 0fb2c752b3..ff911f1bee 100644 --- a/src/mnode/src/mgmtAcct.c +++ b/src/mnode/src/mgmtAcct.c @@ -133,11 +133,11 @@ static int32_t mgmtCheckDbLimitImp(SAcctObj *pAcct) { int32_t (*mgmtCheckDbLimit)(SAcctObj *pAcct) = mgmtCheckDbLimitImp; -static int32_t mgmtCheckTableLimitImp(SAcctObj *pAcct, SCreateTableMsg *pCreate) { +static int32_t mgmtCheckTableLimitImp(SAcctObj *pAcct, SCMCreateTableMsg *pCreate) { return 0; } -int32_t (*mgmtCheckTableLimit)(SAcctObj *pAcct, SCreateTableMsg *pCreate) = mgmtCheckTableLimitImp; +int32_t (*mgmtCheckTableLimit)(SAcctObj *pAcct, SCMCreateTableMsg *pCreate) = mgmtCheckTableLimitImp; static void mgmtCleanUpAcctsImp() { } diff --git a/src/mnode/src/mgmtChildTable.c b/src/mnode/src/mgmtChildTable.c index c99e4746ab..c1e9fa5128 100644 --- a/src/mnode/src/mgmtChildTable.c +++ b/src/mnode/src/mgmtChildTable.c @@ -233,7 +233,7 @@ void mgmtCleanUpChildTables() { } int8_t *mgmtBuildCreateChildTableMsg(SChildTableObj *pTable, SVgObj *pVgroup) { -// SCreateTableMsg *pCreateTable = (SCreateTableMsg *) pMsg; +// SCMCreateTableMsg *pCreateTable = (SCMCreateTableMsg *) pMsg; // memcpy(pCreateTable->tableId, pTable->tableId, TSDB_TABLE_ID_LEN); // memcpy(pCreateTable->superTableId, pTable->superTable->tableId, TSDB_TABLE_ID_LEN); // pCreateTable->vnode = htonl(vnode); @@ -244,7 +244,7 @@ int8_t *mgmtBuildCreateChildTableMsg(SChildTableObj *pTable, SVgObj *pVgroup) { // pCreateTable->numOfColumns = htons(pTable->superTable->numOfColumns); // pCreateTable->numOfTags = htons(pTable->superTable->numOfTags); // -// SSchema *pSchema = pTable->superTable->schema; +// SCMSchema *pSchema = pTable->superTable->schema; // int32_t totalCols = pCreateTable->numOfColumns + pCreateTable->numOfTags; // // for (int32_t col = 0; col < totalCols; ++col) { @@ -263,17 +263,17 @@ int8_t *mgmtBuildCreateChildTableMsg(SChildTableObj *pTable, SVgObj *pVgroup) { return NULL; } -int32_t mgmtCreateChildTable(SDbObj *pDb, SCreateTableMsg *pCreate, SVgObj *pVgroup, int32_t sid) { +int32_t mgmtCreateChildTable(SDbObj *pDb, SCMCreateTableMsg *pCreate, SVgObj *pVgroup, int32_t sid) { int32_t numOfTables = sdbGetNumOfRows(tsChildTableSdb); if (numOfTables >= tsMaxTables) { - mError("table:%s, numOfTables:%d exceed maxTables:%d", pCreate->meterId, numOfTables, tsMaxTables); + mError("table:%s, numOfTables:%d exceed maxTables:%d", pCreate->tableId, numOfTables, tsMaxTables); return TSDB_CODE_TOO_MANY_TABLES; } char *pTagData = (char *) pCreate->schema; // it is a tag key SSuperTableObj *pSuperTable = mgmtGetSuperTable(pTagData); if (pSuperTable == NULL) { - mError("table:%s, corresponding super table does not exist", pCreate->meterId); + mError("table:%s, corresponding super table does not exist", pCreate->tableId); return TSDB_CODE_INVALID_TABLE; } @@ -281,7 +281,7 @@ int32_t mgmtCreateChildTable(SDbObj *pDb, SCreateTableMsg *pCreate, SVgObj *pVgr if (pTable == NULL) { return TSDB_CODE_SERV_OUT_OF_MEMORY; } - strcpy(pTable->tableId, pCreate->meterId); + strcpy(pTable->tableId, pCreate->tableId); strcpy(pTable->superTableId, pSuperTable->tableId); pTable->createdTime = taosGetTimestampMs(); pTable->superTable = pSuperTable; @@ -291,16 +291,16 @@ int32_t mgmtCreateChildTable(SDbObj *pDb, SCreateTableMsg *pCreate, SVgObj *pVgr ((uint64_t) sdbGetVersion() & ((1ul << 16) - 1ul)); int32_t size = mgmtGetTagsLength(pSuperTable, INT_MAX) + (uint32_t) TSDB_TABLE_ID_LEN; - SSchema * schema = (SSchema *) calloc(1, size); + SCMSchema * schema = (SCMSchema *) calloc(1, size); if (schema == NULL) { free(pTable); - mError("table:%s, corresponding super table schema is null", pCreate->meterId); + mError("table:%s, corresponding super table schema is null", pCreate->tableId); return TSDB_CODE_INVALID_TABLE; } memcpy(schema, pTagData + TSDB_TABLE_ID_LEN + 1, size); if (sdbInsertRow(tsChildTableSdb, pTable, 0) < 0) { - mError("table:%s, update sdb error", pCreate->meterId); + mError("table:%s, update sdb error", pCreate->tableId); return TSDB_CODE_SDB_ERROR; } @@ -355,7 +355,7 @@ int32_t mgmtModifyChildTableTagValueByName(SChildTableObj *pTable, char *tagName // return TSDB_CODE_SUCCESS; // int32_t rowSize = 0; -// SSchema *schema = (SSchema *)(pSuperTable->schema + (pSuperTable->numOfColumns + col) * sizeof(SSchema)); +// SCMSchema *schema = (SCMSchema *)(pSuperTable->schema + (pSuperTable->numOfColumns + col) * sizeof(SCMSchema)); // // if (col == 0) { // pTable->isDirty = 1; diff --git a/src/mnode/src/mgmtConn.c b/src/mnode/src/mgmtConn.c index 86448b220b..3f5bf973d7 100644 --- a/src/mnode/src/mgmtConn.c +++ b/src/mnode/src/mgmtConn.c @@ -71,7 +71,7 @@ int mgmtGetConnsMeta(SMeterMeta *pMeta, SShowObj *pShow, void *pConn) { int cols = 0; pShow->bytes[cols] = TSDB_METER_NAME_LEN; - SSchema *pSchema = tsGetSchema(pMeta); + SCMSchema *pSchema = tsGetSchema(pMeta); pSchema[cols].type = TSDB_DATA_TYPE_BINARY; strcpy(pSchema[cols].name, "user"); diff --git a/src/mnode/src/mgmtDb.c b/src/mnode/src/mgmtDb.c index c90a70bbdc..5456e07ea2 100644 --- a/src/mnode/src/mgmtDb.c +++ b/src/mnode/src/mgmtDb.c @@ -116,7 +116,7 @@ SDbObj *mgmtGetDbByTableId(char *meterId) { return (SDbObj *)sdbGetRow(tsDbSdb, db); } -int32_t mgmtCheckDBParams(SCreateDbMsg *pCreate) { +int32_t mgmtCheckDBParams(SCMCreateDbMsg *pCreate) { if (pCreate->commitLog < 0 || pCreate->commitLog > 1) { mError("invalid db option commitLog: %d, only 0 or 1 allowed", pCreate->commitLog); return TSDB_CODE_INVALID_OPTION; @@ -189,7 +189,7 @@ int32_t mgmtCheckDBParams(SCreateDbMsg *pCreate) { return TSDB_CODE_SUCCESS; } -int32_t mgmtCheckDbParams(SCreateDbMsg *pCreate) { +int32_t mgmtCheckDbParams(SCMCreateDbMsg *pCreate) { // assign default parameters if (pCreate->maxSessions < 0) pCreate->maxSessions = tsSessionsPerVnode; // if (pCreate->cacheBlockSize < 0) pCreate->cacheBlockSize = tsCacheBlockSize; // @@ -234,7 +234,7 @@ int32_t mgmtCheckDbParams(SCreateDbMsg *pCreate) { return TSDB_CODE_SUCCESS; } -int32_t mgmtCreateDb(SAcctObj *pAcct, SCreateDbMsg *pCreate) { +int32_t mgmtCreateDb(SAcctObj *pAcct, SCMCreateDbMsg *pCreate) { int32_t code = mgmtCheckDbLimit(pAcct); if (code != 0) { return code; @@ -408,7 +408,7 @@ void mgmtMonitorDbDrop(void *unused, void *unusedt) { } } -int32_t mgmtAlterDb(SAcctObj *pAcct, SAlterDbMsg *pAlter) { +int32_t mgmtAlterDb(SAcctObj *pAcct, SCMAlterDbMsg *pAlter) { int32_t code = TSDB_CODE_SUCCESS; SDbObj *pDb = (SDbObj *) sdbGetRow(tsDbSdb, pAlter->db); @@ -530,7 +530,7 @@ void mgmtCleanUpDbs() { int32_t mgmtGetDbMeta(SMeterMeta *pMeta, SShowObj *pShow, void *pConn) { int32_t cols = 0; - SSchema *pSchema = tsGetSchema(pMeta); + SCMSchema *pSchema = tsGetSchema(pMeta); SUserObj *pUser = mgmtGetUserFromConn(pConn); if (pUser == NULL) return 0; diff --git a/src/mnode/src/mgmtDnode.c b/src/mnode/src/mgmtDnode.c index f180b12af3..dd5d8e698c 100644 --- a/src/mnode/src/mgmtDnode.c +++ b/src/mnode/src/mgmtDnode.c @@ -105,7 +105,7 @@ int32_t mgmtGetDnodeMeta(SMeterMeta *pMeta, SShowObj *pShow, void *pConn) { if (strcmp(pUser->user, "root") != 0) return TSDB_CODE_NO_RIGHTS; - SSchema *pSchema = tsGetSchema(pMeta); + SCMSchema *pSchema = tsGetSchema(pMeta); pShow->bytes[cols] = 16; pSchema[cols].type = TSDB_DATA_TYPE_BINARY; @@ -220,7 +220,7 @@ int32_t mgmtGetModuleMeta(SMeterMeta *pMeta, SShowObj *pShow, void *pConn) { if (strcmp(pUser->user, "root") != 0) return TSDB_CODE_NO_RIGHTS; - SSchema *pSchema = tsGetSchema(pMeta); + SCMSchema *pSchema = tsGetSchema(pMeta); pShow->bytes[cols] = 16; pSchema[cols].type = TSDB_DATA_TYPE_BINARY; @@ -313,7 +313,7 @@ int32_t mgmtGetConfigMeta(SMeterMeta *pMeta, SShowObj *pShow, void *pConn) { if (strcmp(pUser->user, "root") != 0) return TSDB_CODE_NO_RIGHTS; - SSchema *pSchema = tsGetSchema(pMeta); + SCMSchema *pSchema = tsGetSchema(pMeta); pShow->bytes[cols] = TSDB_CFG_OPTION_LEN; pSchema[cols].type = TSDB_DATA_TYPE_BINARY; @@ -399,7 +399,7 @@ int32_t mgmtGetVnodeMeta(SMeterMeta *pMeta, SShowObj *pShow, void *pConn) { if (pUser == NULL) return 0; if (strcmp(pUser->user, "root") != 0) return TSDB_CODE_NO_RIGHTS; - SSchema *pSchema = tsGetSchema(pMeta); + SCMSchema *pSchema = tsGetSchema(pMeta); pShow->bytes[cols] = 4; pSchema[cols].type = TSDB_DATA_TYPE_INT; diff --git a/src/mnode/src/mgmtDnodeInt.c b/src/mnode/src/mgmtDnodeInt.c index 51cd120c36..c30c98b83e 100644 --- a/src/mnode/src/mgmtDnodeInt.c +++ b/src/mnode/src/mgmtDnodeInt.c @@ -499,7 +499,7 @@ int mgmtSendCfgDnodeMsg(char *cont) { #endif SDnodeObj *pDnode; - SCfgMsg * pCfg = (SCfgMsg *)cont; + SCMCfgDnodeMsg * pCfg = (SCMCfgDnodeMsg *)cont; uint32_t ip; ip = inet_addr(pCfg->ip); @@ -520,8 +520,8 @@ int mgmtSendCfgDnodeMsg(char *cont) { if (pStart == NULL) return TSDB_CODE_NODE_OFFLINE; pMsg = pStart; - memcpy(pMsg, cont, sizeof(SCfgMsg)); - pMsg += sizeof(SCfgMsg); + memcpy(pMsg, cont, sizeof(SCMCfgDnodeMsg)); + pMsg += sizeof(SCMCfgDnodeMsg); msgLen = pMsg - pStart; mgmtSendMsgToDnode(pDnode, pStart, msgLen); diff --git a/src/mnode/src/mgmtNormalTable.c b/src/mnode/src/mgmtNormalTable.c index ea482838a6..a38c67e80c 100644 --- a/src/mnode/src/mgmtNormalTable.c +++ b/src/mnode/src/mgmtNormalTable.c @@ -161,7 +161,7 @@ void *mgmtNormalTableActionEncode(void *row, char *str, int32_t size, int32_t *s assert(row != NULL && str != NULL); int32_t tsize = pTable->updateEnd - (int8_t *) pTable; - int32_t schemaSize = pTable->numOfColumns * sizeof(SSchema); + int32_t schemaSize = pTable->numOfColumns * sizeof(SCMSchema); if (size < tsize + schemaSize + 1) { *ssize = -1; return NULL; @@ -190,8 +190,8 @@ void *mgmtNormalTableActionDecode(void *row, char *str, int32_t size, int32_t *s } memcpy(pTable, str, tsize); - int32_t schemaSize = pTable->numOfColumns * sizeof(SSchema); - pTable->schema = (SSchema *)malloc(schemaSize); + int32_t schemaSize = pTable->numOfColumns * sizeof(SCMSchema); + pTable->schema = (SCMSchema *)malloc(schemaSize); if (pTable->schema == NULL) { mgmtDestroyNormalTable(pTable); return NULL; @@ -215,7 +215,7 @@ int32_t mgmtInitNormalTables() { mgmtNormalTableActionInit(); - tsNormalTableSdb = sdbOpenTable(tsMaxTables, sizeof(SNormalTableObj) + sizeof(SSchema) * TSDB_MAX_COLUMNS, + tsNormalTableSdb = sdbOpenTable(tsMaxTables, sizeof(SNormalTableObj) + sizeof(SCMSchema) * TSDB_MAX_COLUMNS, "ntables", SDB_KEYTYPE_STRING, tsMgmtDirectory, mgmtNormalTableAction); if (tsNormalTableSdb == NULL) { mError("failed to init normal table data"); @@ -259,7 +259,7 @@ int8_t *mgmtBuildCreateNormalTableMsg(SNormalTableObj *pTable) { // pCreateTable->sversion = htobe32(pTable->sversion); // pCreateTable->numOfColumns = htobe16(pTable->numOfColumns); // -// SSchema *pSchema = pTable->schema; +// SCMSchema *pSchema = pTable->schema; // int32_t totalCols = pCreateTable->numOfColumns; // for (int32_t col = 0; col < totalCols; ++col) { @@ -276,10 +276,10 @@ int8_t *mgmtBuildCreateNormalTableMsg(SNormalTableObj *pTable) { return NULL; } -int32_t mgmtCreateNormalTable(SDbObj *pDb, SCreateTableMsg *pCreate, SVgObj *pVgroup, int32_t sid) { +int32_t mgmtCreateNormalTable(SDbObj *pDb, SCMCreateTableMsg *pCreate, SVgObj *pVgroup, int32_t sid) { int32_t numOfTables = sdbGetNumOfRows(tsChildTableSdb); if (numOfTables >= TSDB_MAX_TABLES) { - mError("normal table:%s, numOfTables:%d exceed maxTables:%d", pCreate->meterId, numOfTables, TSDB_MAX_TABLES); + mError("normal table:%s, numOfTables:%d exceed maxTables:%d", pCreate->tableId, numOfTables, TSDB_MAX_TABLES); return TSDB_CODE_TOO_MANY_TABLES; } @@ -288,7 +288,7 @@ int32_t mgmtCreateNormalTable(SDbObj *pDb, SCreateTableMsg *pCreate, SVgObj *pVg return TSDB_CODE_SERV_OUT_OF_MEMORY; } - strcpy(pTable->tableId, pCreate->meterId); + strcpy(pTable->tableId, pCreate->tableId); pTable->createdTime = taosGetTimestampMs(); pTable->vgId = pVgroup->vgId; pTable->sid = sid; @@ -297,23 +297,23 @@ int32_t mgmtCreateNormalTable(SDbObj *pDb, SCreateTableMsg *pCreate, SVgObj *pVg pTable->numOfColumns = pCreate->numOfColumns; int32_t numOfCols = pCreate->numOfColumns + pCreate->numOfTags; - int32_t schemaSize = numOfCols * sizeof(SSchema); - pTable->schema = (SSchema *) calloc(1, schemaSize); + int32_t schemaSize = numOfCols * sizeof(SCMSchema); + pTable->schema = (SCMSchema *) calloc(1, schemaSize); if (pTable->schema == NULL) { free(pTable); - mError("table:%s, no schema input", pCreate->meterId); + mError("table:%s, no schema input", pCreate->tableId); return TSDB_CODE_INVALID_TABLE; } - memcpy(pTable->schema, pCreate->schema, numOfCols * sizeof(SSchema)); + memcpy(pTable->schema, pCreate->schema, numOfCols * sizeof(SCMSchema)); pTable->nextColId = 0; for (int32_t col = 0; col < pCreate->numOfColumns; col++) { - SSchema *tschema = (SSchema *) pTable->schema; + SCMSchema *tschema = (SCMSchema *) pTable->schema; tschema[col].colId = pTable->nextColId++; } if (sdbInsertRow(tsNormalTableSdb, pTable, 0) < 0) { - mError("table:%s, update sdb error", pCreate->meterId); + mError("table:%s, update sdb error", pCreate->tableId); return TSDB_CODE_SDB_ERROR; } @@ -362,7 +362,7 @@ SNormalTableObj* mgmtGetNormalTable(char *tableId) { } static int32_t mgmtFindNormalTableColumnIndex(SNormalTableObj *pTable, char *colName) { - SSchema *schema = (SSchema *) pTable->schema; + SCMSchema *schema = (SCMSchema *) pTable->schema; for (int32_t i = 0; i < pTable->numOfColumns; i++) { if (strcasecmp(schema[i].name, colName) == 0) { return i; @@ -372,7 +372,7 @@ static int32_t mgmtFindNormalTableColumnIndex(SNormalTableObj *pTable, char *col return -1; } -int32_t mgmtAddNormalTableColumn(SNormalTableObj *pTable, SSchema schema[], int32_t ncols) { +int32_t mgmtAddNormalTableColumn(SNormalTableObj *pTable, SCMSchema schema[], int32_t ncols) { if (ncols <= 0) { return TSDB_CODE_APP_ERROR; } @@ -395,12 +395,12 @@ int32_t mgmtAddNormalTableColumn(SNormalTableObj *pTable, SSchema schema[], int3 return TSDB_CODE_APP_ERROR; } - int32_t schemaSize = pTable->numOfColumns * sizeof(SSchema); - pTable->schema = realloc(pTable->schema, schemaSize + sizeof(SSchema) * ncols); + int32_t schemaSize = pTable->numOfColumns * sizeof(SCMSchema); + pTable->schema = realloc(pTable->schema, schemaSize + sizeof(SCMSchema) * ncols); - memcpy(pTable->schema + schemaSize, schema, sizeof(SSchema) * ncols); + memcpy(pTable->schema + schemaSize, schema, sizeof(SCMSchema) * ncols); - SSchema *tschema = (SSchema *) (pTable->schema + sizeof(SSchema) * pTable->numOfColumns); + SCMSchema *tschema = (SCMSchema *) (pTable->schema + sizeof(SCMSchema) * pTable->numOfColumns); for (int32_t i = 0; i < ncols; i++) { tschema[i].colId = pTable->nextColId++; } @@ -431,8 +431,8 @@ int32_t mgmtDropNormalTableColumnByName(SNormalTableObj *pTable, char *colName) return TSDB_CODE_APP_ERROR; } - memmove(pTable->schema + sizeof(SSchema) * col, pTable->schema + sizeof(SSchema) * (col + 1), - sizeof(SSchema) * (pTable->numOfColumns - col - 1)); + memmove(pTable->schema + sizeof(SCMSchema) * col, pTable->schema + sizeof(SCMSchema) * (col + 1), + sizeof(SCMSchema) * (pTable->numOfColumns - col - 1)); pTable->numOfColumns--; pTable->sversion++; diff --git a/src/mnode/src/mgmtProfile.c b/src/mnode/src/mgmtProfile.c index 64d0c9467c..f03a32cd8e 100644 --- a/src/mnode/src/mgmtProfile.c +++ b/src/mnode/src/mgmtProfile.c @@ -120,7 +120,7 @@ int32_t mgmtGetQueries(SShowObj *pShow, void *pConn) { int32_t mgmtGetQueryMeta(SMeterMeta *pMeta, SShowObj *pShow, void *pConn) { int32_t cols = 0; - SSchema *pSchema = tsGetSchema(pMeta); + SCMSchema *pSchema = tsGetSchema(pMeta); pShow->bytes[cols] = TSDB_USER_LEN; pSchema[cols].type = TSDB_DATA_TYPE_BINARY; @@ -318,7 +318,7 @@ int32_t mgmtGetStreams(SShowObj *pShow, void *pConn) { int32_t mgmtGetStreamMeta(SMeterMeta *pMeta, SShowObj *pShow, void *pConn) { int32_t cols = 0; - SSchema *pSchema = tsGetSchema(pMeta); + SCMSchema *pSchema = tsGetSchema(pMeta); pShow->bytes[cols] = TSDB_USER_LEN; pSchema[cols].type = TSDB_DATA_TYPE_BINARY; diff --git a/src/mnode/src/mgmtShell.c b/src/mnode/src/mgmtShell.c index 5b7dd6d1ca..4a784dd58a 100644 --- a/src/mnode/src/mgmtShell.c +++ b/src/mnode/src/mgmtShell.c @@ -35,7 +35,7 @@ #include "mgmtUser.h" #include "mgmtVgroup.h" -#define MAX_LEN_OF_METER_META (sizeof(SMultiMeterMeta) + sizeof(SSchema) * TSDB_MAX_COLUMNS + sizeof(SSchema) * TSDB_MAX_TAGS + TSDB_MAX_TAGS_LEN) +#define MAX_LEN_OF_METER_META (sizeof(SMultiMeterMeta) + sizeof(SCMSchema) * TSDB_MAX_COLUMNS + sizeof(SCMSchema) * TSDB_MAX_TAGS + TSDB_MAX_TAGS_LEN) typedef int32_t (*GetMateFp)(SMeterMeta *pMeta, SShowObj *pShow, void *pConn); typedef int32_t (*RetrieveMetaFp)(SShowObj *pShow, char *data, int32_t rows, void *pConn); @@ -43,24 +43,21 @@ static GetMateFp* mgmtGetMetaFp; static RetrieveMetaFp* mgmtRetrieveFp; static void mgmtInitShowMsgFp(); -void * tsShellConn = NULL; +void *tsShellConnServer = NULL; +static void mgmtInitProcessShellMsg(); static void mgmtProcessMsgFromShell(char type, void *pCont, int contLen, void *ahandle, int32_t code); static int32_t (*mgmtProcessShellMsg[TSDB_MSG_TYPE_MAX])(void *pCont, int32_t contLen, void *ahandle); +static int32_t mgmtProcessUnSupportMsg(void *pCont, int32_t contLen, void *ahandle); static int32_t mgmtRetriveUserAuthInfo(char *user, char *spi, char *encrypt, char *secret, char *ckey); -void mgmtInitProcessShellMsg(); -int32_t mgmtKillQuery(char *queryId, void *pConn); - void mgmtProcessTranRequest(SSchedMsg *sched) { int8_t msgType = *(int8_t *) (sched->msg); - int32_t contLen = *(int32_t *) (sched->msg + sizeof(int8_t)); + int32_t contLen = *(int32_t *) (sched->msg + sizeof(int8_t)); int8_t *pCont = sched->msg + sizeof(int32_t) + sizeof(int8_t); void *pConn = sched->thandle; (*mgmtProcessShellMsg[msgType])(pCont, contLen, pConn); - //rpcSendResponse(pConn, 12, NULL, 0); - if (sched->msg) { free(sched->msg); } @@ -68,9 +65,9 @@ void mgmtProcessTranRequest(SSchedMsg *sched) { void mgmtAddToTranRequest(int8_t type, void *pCont, int contLen, void *ahandle) { SSchedMsg schedMsg; - schedMsg.msg = malloc(contLen + sizeof(int32_t) + sizeof(int8_t)); - schedMsg.fp = mgmtProcessTranRequest; - schedMsg.tfp = NULL; + schedMsg.msg = malloc(contLen + sizeof(int32_t) + sizeof(int8_t)); + schedMsg.fp = mgmtProcessTranRequest; + schedMsg.tfp = NULL; schedMsg.thandle = ahandle; *(int8_t *) (schedMsg.msg) = type; *(int32_t *) (schedMsg.msg + sizeof(int8_t)) = contLen; @@ -81,29 +78,27 @@ void mgmtAddToTranRequest(int8_t type, void *pCont, int contLen, void *ahandle) int32_t mgmtInitShell() { SRpcInit rpcInit; - mgmtInitProcessShellMsg(); mgmtInitShowMsgFp(); int32_t numOfThreads = tsNumOfCores * tsNumOfThreadsPerCore / 4.0; - if (numOfThreads < 1) numOfThreads = 1; - - //TODO - numOfThreads = 1; + if (numOfThreads < 1) { + numOfThreads = 1; + } memset(&rpcInit, 0, sizeof(rpcInit)); - rpcInit.localIp = tsAnyIp ? "0.0.0.0" : tsPrivateIp;; - rpcInit.localPort = tsMgmtShellPort; - rpcInit.label = "MND-shell"; + rpcInit.localIp = tsAnyIp ? "0.0.0.0" : tsPrivateIp;; + rpcInit.localPort = tsMgmtShellPort; + rpcInit.label = "MND-shell"; rpcInit.numOfThreads = numOfThreads; - rpcInit.cfp = mgmtProcessMsgFromShell; - rpcInit.sessions = tsMaxShellConns; - rpcInit.connType = TAOS_CONN_SERVER; - rpcInit.idleTime = tsShellActivityTimer * 2000; - rpcInit.afp = mgmtRetriveUserAuthInfo; + rpcInit.cfp = mgmtProcessMsgFromShell; + rpcInit.sessions = tsMaxShellConns; + rpcInit.connType = TAOS_CONN_SERVER; + rpcInit.idleTime = tsShellActivityTimer * 2000; + rpcInit.afp = mgmtRetriveUserAuthInfo; - tsShellConn = rpcOpen(&rpcInit); - if (tsShellConn == NULL) { + tsShellConnServer = rpcOpen(&rpcInit); + if (tsShellConnServer == NULL) { mError("failed to init tcp connection to shell"); return -1; } @@ -112,17 +107,17 @@ int32_t mgmtInitShell() { } void mgmtCleanUpShell() { - if (tsShellConn) { - rpcClose(tsShellConn); - tsShellConn = NULL; + if (tsShellConnServer) { + rpcClose(tsShellConnServer); + tsShellConnServer = NULL; } } -static void mgmtSetSchemaFromMeters(SSchema *pSchema, STabObj *pMeterObj, uint32_t numOfCols) { - SSchema *pMeterSchema = (SSchema *)(pMeterObj->schema); +static void mgmtSetSchemaFromMeters(SCMSchema *pSchema, STabObj *pMeterObj, uint32_t numOfCols) { + SCMSchema *pMeterSchema = (SCMSchema *)(pMeterObj->schema); for (int32_t i = 0; i < numOfCols; ++i) { - pSchema->type = pMeterSchema[i].type; strcpy(pSchema->name, pMeterSchema[i].name); + pSchema->type = pMeterSchema[i].type; pSchema->bytes = htons(pMeterSchema[i].bytes); pSchema->colId = htons(pMeterSchema[i].colId); pSchema++; @@ -130,7 +125,7 @@ static void mgmtSetSchemaFromMeters(SSchema *pSchema, STabObj *pMeterObj, uint32 } static uint32_t mgmtSetMeterTagValue(char *pTags, STabObj *pMetric, STabObj *pMeterObj) { - SSchema *pTagSchema = (SSchema *)(pMetric->schema + pMetric->numOfColumns * sizeof(SSchema)); + SCMSchema *pTagSchema = (SCMSchema *)(pMetric->schema + pMetric->numOfColumns * sizeof(SCMSchema)); char *tagVal = pMeterObj->pTagData + TSDB_TABLE_ID_LEN; // tag start position @@ -148,14 +143,14 @@ int32_t mgmtProcessMeterMetaMsg(void *pCont, int32_t contLen, void *ahandle) { // STabObj * pMeterObj = NULL; // SVgObj * pVgroup = NULL; // SMeterMeta * pMeta = NULL; -// SSchema * pSchema = NULL; +// SCMSchema * pSchema = NULL; // STaosRsp * pRsp = NULL; // char * pStart = NULL; // // pInfo->createFlag = htons(pInfo->createFlag); // -// int32_t size = sizeof(STaosHeader) + sizeof(STaosRsp) + sizeof(SMeterMeta) + sizeof(SSchema) * TSDB_MAX_COLUMNS + -// sizeof(SSchema) * TSDB_MAX_TAGS + TSDB_MAX_TAGS_LEN + TSDB_EXTRA_PAYLOAD_SIZE; +// int32_t size = sizeof(STaosHeader) + sizeof(STaosRsp) + sizeof(SMeterMeta) + sizeof(SCMSchema) * TSDB_MAX_COLUMNS + +// sizeof(SCMSchema) * TSDB_MAX_TAGS + TSDB_MAX_TAGS_LEN + TSDB_EXTRA_PAYLOAD_SIZE; // // SDbObj *pDb = NULL; // if (pConn->pDb != NULL) pDb = mgmtGetDb(pConn->pDb->name); @@ -183,7 +178,7 @@ int32_t mgmtProcessMeterMetaMsg(void *pCont, int32_t contLen, void *ahandle) { // return 0; // } // -// SCreateTableMsg *pCreateMsg = calloc(1, sizeof(SCreateTableMsg) + sizeof(STagData)); +// SCMCreateTableMsg *pCreateMsg = calloc(1, sizeof(SCMCreateTableMsg) + sizeof(STagData)); // if (pCreateMsg == NULL) { // taosSendSimpleRsp(pConn->thandle, TSDB_MSG_TYPE_TABLE_META_RSP, TSDB_CODE_SERV_OUT_OF_MEMORY); // return 0; @@ -193,7 +188,7 @@ int32_t mgmtProcessMeterMetaMsg(void *pCont, int32_t contLen, void *ahandle) { // strcpy(pCreateMsg->meterId, pInfo->meterId); // // SDbObj* pMeterDb = mgmtGetDbByTableId(pCreateMsg->meterId); -// mTrace("meter:%s, pConnDb:%p, pConnDbName:%s, pMeterDb:%p, pMeterDbName:%s", +// mTrace("table:%s, pConnDb:%p, pConnDbName:%s, pMeterDb:%p, pMeterDbName:%s", // pCreateMsg->meterId, pDb, pDb->name, pMeterDb, pMeterDb->name); // assert(pDb == pMeterDb); // @@ -201,7 +196,7 @@ int32_t mgmtProcessMeterMetaMsg(void *pCont, int32_t contLen, void *ahandle) { // // char stableName[TSDB_TABLE_ID_LEN] = {0}; // strncpy(stableName, pInfo->tags, TSDB_TABLE_ID_LEN); -// mTrace("meter:%s is automatically created by %s from %s, code:%d", pCreateMsg->meterId, pConn->pUser->user, +// mTrace("table:%s is automatically created by %s from %s, code:%d", pCreateMsg->meterId, pConn->pUser->user, // stableName, code); // // tfree(pCreateMsg); @@ -252,7 +247,7 @@ int32_t mgmtProcessMeterMetaMsg(void *pCont, int32_t contLen, void *ahandle) { // pMeta->tableType = pMeterObj->tableType; // // pMsg += sizeof(SMeterMeta); -// pSchema = (SSchema *)pMsg; // schema locates at the end of SMeterMeta struct +// pSchema = (SCMSchema *)pMsg; // schema locates at the end of SMeterMeta struct // // if (mgmtTableCreateFromSuperTable(pMeterObj)) { // assert(pMeterObj->numOfTags == 0); @@ -262,7 +257,7 @@ int32_t mgmtProcessMeterMetaMsg(void *pCont, int32_t contLen, void *ahandle) { // // pMeta->numOfTags = pMetric->numOfTags; // update the numOfTags info // mgmtSetSchemaFromMeters(pSchema, pMetric, numOfTotalCols); -// pMsg += numOfTotalCols * sizeof(SSchema); +// pMsg += numOfTotalCols * sizeof(SCMSchema); // // // for meters created from metric, we need the metric tag schema to parse the tag data // int32_t tagsLen = mgmtSetMeterTagValue(pMsg, pMetric, pMeterObj); @@ -274,7 +269,7 @@ int32_t mgmtProcessMeterMetaMsg(void *pCont, int32_t contLen, void *ahandle) { // */ // uint32_t numOfTotalCols = (uint32_t)pMeterObj->numOfTags + pMeterObj->numOfColumns; // mgmtSetSchemaFromMeters(pSchema, pMeterObj, numOfTotalCols); -// pMsg += numOfTotalCols * sizeof(SSchema); +// pMsg += numOfTotalCols * sizeof(SCMSchema); // } // // if (mgmtIsNormalTable(pMeterObj)) { @@ -306,10 +301,10 @@ int32_t mgmtProcessMeterMetaMsg(void *pCont, int32_t contLen, void *ahandle) { /** * multi meter meta rsp pkg format: - * | STaosRsp | ieType | SMultiMeterInfoMsg | SMeterMeta0 | SSchema0 | SMeterMeta1 | SSchema1 | SMeterMeta2 | SSchema2 + * | STaosRsp | ieType | SMultiMeterInfoMsg | SMeterMeta0 | SCMSchema0 | SMeterMeta1 | SCMSchema1 | SMeterMeta2 | SCMSchema2 * 1B 1B 4B * - * | STaosHeader | STaosRsp | ieType | SMultiMeterInfoMsg | SMeterMeta0 | SSchema0 | SMeterMeta1 | SSchema1 | ......................| + * | STaosHeader | STaosRsp | ieType | SMultiMeterInfoMsg | SMeterMeta0 | SCMSchema0 | SMeterMeta1 | SCMSchema1 | ......................| * ^ ^ ^ * |<--------------------------------------size-----------------------------------------------|---------------------->| * | | | @@ -320,7 +315,7 @@ int32_t mgmtProcessMultiMeterMetaMsg(void *pCont, int32_t contLen, void *ahandle // STabObj * pMeterObj = NULL; // SVgObj * pVgroup = NULL; // SMultiMeterMeta * pMeta = NULL; -// SSchema * pSchema = NULL; +// SCMSchema * pSchema = NULL; // STaosRsp * pRsp = NULL; // char * pStart = NULL; // @@ -393,7 +388,7 @@ int32_t mgmtProcessMultiMeterMetaMsg(void *pCont, int32_t contLen, void *ahandle // pMeta->meta.tableType = pMeterObj->tableType; // // pCurMeter += sizeof(SMultiMeterMeta); -// pSchema = (SSchema *)pCurMeter; // schema locates at the end of SMeterMeta struct +// pSchema = (SCMSchema *)pCurMeter; // schema locates at the end of SMeterMeta struct // // if (mgmtTableCreateFromSuperTable(pMeterObj)) { // assert(pMeterObj->numOfTags == 0); @@ -403,7 +398,7 @@ int32_t mgmtProcessMultiMeterMetaMsg(void *pCont, int32_t contLen, void *ahandle // // pMeta->meta.numOfTags = pMetric->numOfTags; // update the numOfTags info // mgmtSetSchemaFromMeters(pSchema, pMetric, numOfTotalCols); -// pCurMeter += numOfTotalCols * sizeof(SSchema); +// pCurMeter += numOfTotalCols * sizeof(SCMSchema); // // // for meters created from metric, we need the metric tag schema to parse the tag data // int32_t tagsLen = mgmtSetMeterTagValue(pCurMeter, pMetric, pMeterObj); @@ -415,7 +410,7 @@ int32_t mgmtProcessMultiMeterMetaMsg(void *pCont, int32_t contLen, void *ahandle // */ // uint32_t numOfTotalCols = (uint32_t)pMeterObj->numOfTags + pMeterObj->numOfColumns; // mgmtSetSchemaFromMeters(pSchema, pMeterObj, numOfTotalCols); -// pCurMeter += numOfTotalCols * sizeof(SSchema); +// pCurMeter += numOfTotalCols * sizeof(SCMSchema); // } // // if (mgmtIsNormalTable(pMeterObj)) { @@ -522,114 +517,145 @@ int32_t mgmtProcessMetricMetaMsg(void *pCont, int32_t contLen, void *ahandle) { } int32_t mgmtProcessCreateDbMsg(void *pCont, int32_t contLen, void *ahandle) { -// SCreateDbMsg *pCreate = (SCreateDbMsg *)pMsg; -// int32_t code = 0; -// -// if (mgmtCheckRedirectMsg(pConn, TSDB_MSG_TYPE_CREATE_DB_RSP) != 0) { -// return 0; -// } -// -// pCreate->maxSessions = htonl(pCreate->maxSessions); -// pCreate->cacheBlockSize = htonl(pCreate->cacheBlockSize); -// // pCreate->cacheNumOfBlocks = htonl(pCreate->cacheNumOfBlocks); -// pCreate->daysPerFile = htonl(pCreate->daysPerFile); -// pCreate->daysToKeep = htonl(pCreate->daysToKeep); -// pCreate->daysToKeep1 = htonl(pCreate->daysToKeep1); -// pCreate->daysToKeep2 = htonl(pCreate->daysToKeep2); -// pCreate->commitTime = htonl(pCreate->commitTime); -// pCreate->blocksPerMeter = htons(pCreate->blocksPerMeter); -// pCreate->rowsInFileBlock = htonl(pCreate->rowsInFileBlock); -// -// if (mgmtCheckExpired()) { -// code = TSDB_CODE_GRANT_EXPIRED; -// } else if (!pConn->writeAuth) { -// code = TSDB_CODE_NO_RIGHTS; -// } else { -// code = mgmtCreateDb(pConn->pAcct, pCreate); -// if (code == TSDB_CODE_SUCCESS) { -// mLPrint("DB:%s is created by %s", pCreate->db, pConn->pUser->user); -// } -// } -// -// taosSendSimpleRsp(pConn->thandle, TSDB_MSG_TYPE_CREATE_DB_RSP, code); + if (mgmtCheckRedirectMsg(ahandle) != 0) { + return TSDB_CODE_REDIRECT; + } - return 0; -} + SUserObj *pUser = mgmtGetUserFromConn(ahandle); + if (pUser == NULL) { + rpcSendResponse(ahandle, TSDB_CODE_INVALID_USER, NULL, 0); + return TSDB_CODE_INVALID_USER; + } -int32_t mgmtProcessCreateMnodeMsg(void *pCont, int32_t contLen, void *ahandle) { -// return rpcSendResponse(pConn->thandle, TSDB_MSG_TYPE_CREATE_MNODE_RSP, TSDB_CODE_OPS_NOT_SUPPORT); - return 0; + SCMCreateDbMsg *pCreate = (SCMCreateDbMsg *) pCont; + + pCreate->maxSessions = htonl(pCreate->maxSessions); + pCreate->cacheBlockSize = htonl(pCreate->cacheBlockSize); + pCreate->daysPerFile = htonl(pCreate->daysPerFile); + pCreate->daysToKeep = htonl(pCreate->daysToKeep); + pCreate->daysToKeep1 = htonl(pCreate->daysToKeep1); + pCreate->daysToKeep2 = htonl(pCreate->daysToKeep2); + pCreate->commitTime = htonl(pCreate->commitTime); + pCreate->blocksPerMeter = htons(pCreate->blocksPerMeter); + pCreate->rowsInFileBlock = htonl(pCreate->rowsInFileBlock); + // pCreate->cacheNumOfBlocks = htonl(pCreate->cacheNumOfBlocks); + + int32_t code; + if (mgmtCheckExpired()) { + code = TSDB_CODE_GRANT_EXPIRED; + } else if (!pUser->writeAuth) { + code = TSDB_CODE_NO_RIGHTS; + } else { + code = mgmtCreateDb(pUser->pAcct, pCreate); + if (code == TSDB_CODE_SUCCESS) { + mLPrint("DB:%s is created by %s", pCreate->db, pUser->user); + } + } + + rpcSendResponse(ahandle, code, NULL, 0); + return code; } int32_t mgmtProcessAlterDbMsg(void *pCont, int32_t contLen, void *ahandle) { -// SAlterDbMsg *pAlter = (SAlterDbMsg *)pMsg; -// int32_t code = 0; -// -// if (mgmtCheckRedirectMsg(pConn, TSDB_MSG_TYPE_ALTER_DB_RSP) != 0) { -// return 0; -// } -// -// pAlter->daysPerFile = htonl(pAlter->daysPerFile); -// pAlter->daysToKeep = htonl(pAlter->daysToKeep); -// pAlter->maxSessions = htonl(pAlter->maxSessions) + 1; -// -// if (!pConn->writeAuth) { -// code = TSDB_CODE_NO_RIGHTS; -// } else { -// code = mgmtAlterDb(pConn->pAcct, pAlter); -// if (code == TSDB_CODE_SUCCESS) { -// mLPrint("DB:%s is altered by %s", pAlter->db, pConn->pUser->user); -// } -// } -// -// taosSendSimpleRsp(pConn->thandle, TSDB_MSG_TYPE_ALTER_DB_RSP, code); + if (mgmtCheckRedirectMsg(ahandle) != 0) { + return TSDB_CODE_REDIRECT; + } - return 0; + SUserObj *pUser = mgmtGetUserFromConn(ahandle); + if (pUser == NULL) { + rpcSendResponse(ahandle, TSDB_CODE_INVALID_USER, NULL, 0); + return TSDB_CODE_INVALID_USER; + } + + SCMAlterDbMsg *pAlter = (SCMAlterDbMsg *) pCont; + pAlter->daysPerFile = htonl(pAlter->daysPerFile); + pAlter->daysToKeep = htonl(pAlter->daysToKeep); + pAlter->maxSessions = htonl(pAlter->maxSessions) + 1; + + int32_t code; + if (!pUser->writeAuth) { + code = TSDB_CODE_NO_RIGHTS; + } else { + code = mgmtAlterDb(pUser->pAcct, pAlter); + if (code == TSDB_CODE_SUCCESS) { + mLPrint("DB:%s is altered by %s", pAlter->db, pUser->user); + } + } + + rpcSendResponse(ahandle, code, NULL, 0); + return code; } int32_t mgmtProcessKillQueryMsg(void *pCont, int32_t contLen, void *ahandle) { -// int32_t code = 0; -// SKillQuery *pKill = (SKillQuery *)pMsg; -// -// if (!pConn->writeAuth) { -// code = TSDB_CODE_NO_RIGHTS; -// } else { -// code = mgmtKillQuery(pKill->queryId, pConn); -// } -// -// taosSendSimpleRsp(pConn->thandle, TSDB_MSG_TYPE_KILL_QUERY_RSP, code); + if (mgmtCheckRedirectMsg(ahandle) != 0) { + return TSDB_CODE_REDIRECT; + } - return 0; + SUserObj *pUser = mgmtGetUserFromConn(ahandle); + if (pUser == NULL) { + rpcSendResponse(ahandle, TSDB_CODE_INVALID_USER, NULL, 0); + return TSDB_CODE_INVALID_USER; + } + + SCMKillQueryMsg *pKill = (SCMKillQueryMsg *) pCont; + int32_t code; + + if (!pUser->writeAuth) { + code = TSDB_CODE_NO_RIGHTS; + } else { + code = mgmtKillQuery(pKill->queryId, ahandle); + } + + rpcSendResponse(ahandle, code, NULL, 0); + return code; } int32_t mgmtProcessKillStreamMsg(void *pCont, int32_t contLen, void *ahandle) { -// int32_t code = 0; -// SKillStream *pKill = (SKillStream *)pMsg; -// -// if (!pConn->writeAuth) { -// code = TSDB_CODE_NO_RIGHTS; -// } else { -// code = mgmtKillStream(pKill->queryId, pConn); -// } -// -// taosSendSimpleRsp(pConn->thandle, TSDB_MSG_TYPE_KILL_STREAM_RSP, code); + if (mgmtCheckRedirectMsg(ahandle) != 0) { + return TSDB_CODE_REDIRECT; + } - return 0; + SUserObj *pUser = mgmtGetUserFromConn(ahandle); + if (pUser == NULL) { + rpcSendResponse(ahandle, TSDB_CODE_INVALID_USER, NULL, 0); + return TSDB_CODE_INVALID_USER; + } + + SCMKillStreamMsg *pKill = (SCMKillStreamMsg *) pCont; + int32_t code; + + if (!pUser->writeAuth) { + code = TSDB_CODE_NO_RIGHTS; + } else { + code = mgmtKillStream(pKill->queryId, ahandle); + } + + rpcSendResponse(ahandle, code, NULL, 0); + return code; } int32_t mgmtProcessKillConnectionMsg(void *pCont, int32_t contLen, void *ahandle) { -// int32_t code = 0; -// SKillConnection *pKill = (SKillConnection *)pMsg; -// -// if (!pConn->superAuth) { -// code = TSDB_CODE_NO_RIGHTS; -// } else { -// code = mgmtKillConnection(pKill->queryId, pConn); -// } -// -// taosSendSimpleRsp(pConn->thandle, TSDB_MSG_TYPE_KILL_CONNECTION_RSP, code); + if (mgmtCheckRedirectMsg(ahandle) != 0) { + return TSDB_CODE_REDIRECT; + } - return 0; + SUserObj *pUser = mgmtGetUserFromConn(ahandle); + if (pUser == NULL) { + rpcSendResponse(ahandle, TSDB_CODE_INVALID_USER, NULL, 0); + return TSDB_CODE_INVALID_USER; + } + + SKillConnectionMsg *pKill = (SKillConnectionMsg *) pCont; + int32_t code; + + if (!pUser->writeAuth) { + code = TSDB_CODE_NO_RIGHTS; + } else { + code = mgmtKillConnection(pKill->queryId, ahandle); + } + + rpcSendResponse(ahandle, code, NULL, 0); + return code; } int32_t mgmtProcessCreateUserMsg(void *pCont, int32_t contLen, void *ahandle) { @@ -820,36 +846,29 @@ int32_t mgmtProcessDropUserMsg(void *pCont, int32_t contLen, void *ahandle) { } int32_t mgmtProcessDropDbMsg(void *pCont, int32_t contLen, void *ahandle) { -// SDropDbMsg *pDrop = (SDropDbMsg *)pMsg; -// int32_t code; -// -// if (mgmtCheckRedirectMsg(pConn, TSDB_MSG_TYPE_DROP_DB_RSP) != 0) { -// return 0; -// } -// -// if (!pConn->writeAuth) { -// code = TSDB_CODE_NO_RIGHTS; -// } else { -// code = mgmtDropDbByName(pConn->pAcct, pDrop->db, pDrop->ignoreNotExists); -// if (code == 0) { -// mLPrint("DB:%s is dropped by %s", pDrop->db, pConn->pUser->user); -// } -// } -// taosSendSimpleRsp(pConn->thandle, TSDB_MSG_TYPE_DROP_DB_RSP, code); + if (mgmtCheckRedirectMsg(ahandle) != 0) { + return TSDB_CODE_REDIRECT; + } - return 0; -} + SUserObj *pUser = mgmtGetUserFromConn(ahandle); + if (pUser == NULL) { + rpcSendResponse(ahandle, TSDB_CODE_INVALID_USER, NULL, 0); + return TSDB_CODE_INVALID_USER; + } -int32_t mgmtProcessUseDbMsg(void *pCont, int32_t contLen, void *ahandle) { -// SUseDbMsg *pUse = (SUseDbMsg *)pMsg; -// int32_t code; -// -// code = mgmtUseDb(pConn, pUse->db); -// if (code == 0) mTrace("DB is change to:%s by %s", pUse->db, pConn->pUser->user); -// -// taosSendSimpleRsp(pConn->thandle, TSDB_MSG_TYPE_USE_DB_RSP, code); + int32_t code; + if (pUser->superAuth) { + SCMDropDbMsg *pDrop = pCont; + code = mgmtDropDbByName(pUser->pAcct, pDrop->db, pDrop->ignoreNotExists); + if (code == TSDB_CODE_SUCCESS) { + mLPrint("DB:%s is dropped by %s", pDrop->db, pUser->user); + } + } else { + code = TSDB_CODE_NO_RIGHTS; + } - return 0; + rpcSendResponse(ahandle, code, NULL, 0); + return code; } static void mgmtInitShowMsgFp() { @@ -904,7 +923,7 @@ int32_t mgmtProcessShowMsg(void *pCont, int32_t contLen, void *ahandle) { // } // } // -// int32_t size = sizeof(STaosHeader) + sizeof(STaosRsp) + sizeof(SShowRspMsg) + sizeof(SSchema) * TSDB_MAX_COLUMNS + +// int32_t size = sizeof(STaosHeader) + sizeof(STaosRsp) + sizeof(SShowRspMsg) + sizeof(SCMSchema) * TSDB_MAX_COLUMNS + // TSDB_EXTRA_PAYLOAD_SIZE; // pStart = taosBuildRspMsgWithSize(pConn->thandle, TSDB_MSG_TYPE_SHOW_RSP, size); // if (pStart == NULL) { @@ -934,7 +953,7 @@ int32_t mgmtProcessShowMsg(void *pCont, int32_t contLen, void *ahandle) { // // code = (*mgmtGetMetaFp[(uint8_t)pShowMsg->type])(&pShowRsp->meterMeta, pShow, pConn); // if (code == 0) { -// pMsg += sizeof(SShowRspMsg) + sizeof(SSchema) * pShow->numOfColumns; +// pMsg += sizeof(SShowRspMsg) + sizeof(SCMSchema) * pShow->numOfColumns; // } else { // mError("pShow:%p, type:%d %s, failed to get Meta, code:%d", pShow, pShowMsg->type, taosMsg[(uint8_t)pShowMsg->type], code); // free(pShow); @@ -1038,146 +1057,159 @@ int32_t mgmtProcessRetrieveMsg(void *pCont, int32_t contLen, void *ahandle) { } int32_t mgmtProcessCreateTableMsg(void *pCont, int32_t contLen, void *ahandle) { -// SCreateTableMsg *pCreate = (SCreateTableMsg *)pMsg; -// int32_t code; -// SSchema * pSchema; -// -// if (mgmtCheckRedirectMsg(pConn, TSDB_MSG_TYPE_CREATE_TABLE_RSP) != 0) { -// return 0; -// } -// -// if (!pConn->writeAuth) { -// code = TSDB_CODE_NO_RIGHTS; -// } else { -// pCreate->numOfColumns = htons(pCreate->numOfColumns); -// pCreate->numOfTags = htons(pCreate->numOfTags); -// -// pCreate->sqlLen = htons(pCreate->sqlLen); -// pSchema = pCreate->schema; -// for (int32_t i = 0; i < pCreate->numOfColumns + pCreate->numOfTags; ++i) { -// pSchema->bytes = htons(pSchema->bytes); -// pSchema->colId = i; -// pSchema++; -// } -// -// SDbObj *pDb = NULL; -// if (pConn->pDb != NULL) pDb = mgmtGetDb(pConn->pDb->name); -// -// if (pDb) { -// code = mgmtCreateTable(pDb, pCreate); -// } else { -// code = TSDB_CODE_DB_NOT_SELECTED; -// } -// } -// -// if (code == 1) { -// //mTrace("table:%s, wait vgroup create finish", pCreate->meterId, code); -// } else if (code != TSDB_CODE_SUCCESS) { -// if (code == TSDB_CODE_TABLE_ALREADY_EXIST) { // table already created when the second attempt to create table -// -// STabObj* pTable = mgmtGetTable(pCreate->meterId); -// assert(pTable != NULL); -// -// mWarn("table:%s, table already created, failed to create table, ts:%" PRId64 ", code:%d", pCreate->meterId, -// pTable->createdTime, code); -// } else { // other errors -// mError("table:%s, failed to create table, code:%d", pCreate->meterId, code); -// } -// } else { -// mTrace("table:%s, table is created by %s", pCreate->meterId, pConn->pUser->user); -// } -// -// taosSendSimpleRsp(pConn->thandle, TSDB_MSG_TYPE_CREATE_TABLE_RSP, code); + if (mgmtCheckRedirectMsg(ahandle) != 0) { + return TSDB_CODE_REDIRECT; + } - return 0; + SUserObj *pUser = mgmtGetUserFromConn(ahandle); + if (pUser == NULL) { + rpcSendResponse(ahandle, TSDB_CODE_INVALID_USER, NULL, 0); + return TSDB_CODE_INVALID_USER; + } + + SCMCreateTableMsg *pCreate = (SCMCreateTableMsg *) pCont; + SCMSchema *pSchema; + int32_t code; + + if (!pUser->writeAuth) { + code = TSDB_CODE_NO_RIGHTS; + } else { + pCreate->numOfColumns = htons(pCreate->numOfColumns); + pCreate->numOfTags = htons(pCreate->numOfTags); + pCreate->sqlLen = htons(pCreate->sqlLen); + pSchema = pCreate->schema; + for (int32_t i = 0; i < pCreate->numOfColumns + pCreate->numOfTags; ++i) { + pSchema->bytes = htons(pSchema->bytes); + pSchema->colId = i; + pSchema++; + } + + SDbObj *pDb = mgmtGetDb(pCreate->db); + if (pDb) { + code = mgmtCreateTable(pDb, pCreate); + if (code == TSDB_CODE_TABLE_ALREADY_EXIST) { + if (pCreate->igExists) { + code = TSDB_CODE_SUCCESS; + } + } + } else { + code = TSDB_CODE_DB_NOT_SELECTED; + } + } + + if (code != TSDB_CODE_SUCCESS) { + rpcSendResponse(ahandle, TSDB_CODE_SUCCESS, NULL, 0); + } + + return code; } int32_t mgmtProcessDropTableMsg(void *pCont, int32_t contLen, void *ahandle) { -// SDropTableMsg *pDrop = (SDropTableMsg *)pMsg; -// int32_t code; -// -// if (mgmtCheckRedirectMsg(pConn, TSDB_MSG_TYPE_DROP_TABLE_RSP) != 0) { -// return 0; -// } -// -// if (!pConn->writeAuth) { -// code = TSDB_CODE_NO_RIGHTS; -// } else { -// SDbObj *pDb = NULL; -// if (pConn->pDb != NULL) pDb = mgmtGetDb(pConn->pDb->name); -// -// code = mgmtDropTable(pDb, pDrop->meterId, pDrop->igNotExists); -// if (code == 0) { -// mTrace("meter:%s is dropped by user:%s", pDrop->meterId, pConn->pUser->user); -// // mLPrint("meter:%s is dropped by user:%s", pDrop->meterId, pConn->pUser->user); -// } -// -// taosSendSimpleRsp(pConn->thandle, TSDB_MSG_TYPE_DROP_TABLE_RSP, code); -// } + if (mgmtCheckRedirectMsg(ahandle) != 0) { + return TSDB_CODE_REDIRECT; + } - return 0; + SUserObj *pUser = mgmtGetUserFromConn(ahandle); + if (pUser == NULL) { + rpcSendResponse(ahandle, TSDB_CODE_INVALID_USER, NULL, 0); + return TSDB_CODE_INVALID_USER; + } + + SDropTableMsg *pDrop = (SDropTableMsg *) pCont; + int32_t code; + + if (!pUser->writeAuth) { + code = TSDB_CODE_NO_RIGHTS; + } else { + SDbObj *pDb = mgmtGetDb(pDrop->db); + if (pDb) { + code = mgmtDropTable(pDb, pDrop->meterId, pDrop->igNotExists); + if (code == TSDB_CODE_SUCCESS) { + mTrace("table:%s is dropped by user:%s", pDrop->meterId, pUser->user); + } + } else { + code = TSDB_CODE_DB_NOT_SELECTED; + } + } + + if (code != TSDB_CODE_SUCCESS) { + rpcSendResponse(ahandle, code, NULL, 0); + } + return code; } int32_t mgmtProcessAlterTableMsg(void *pCont, int32_t contLen, void *ahandle) { -// SAlterTableMsg *pAlter = (SAlterTableMsg *)pMsg; -// int32_t code; -// -// if (mgmtCheckRedirectMsg(pConn, TSDB_MSG_TYPE_ALTER_TABLE_RSP) != 0) { -// return 0; -// } -// -// if (!pConn->writeAuth) { -// code = TSDB_CODE_NO_RIGHTS; -// } else { -// pAlter->type = htons(pAlter->type); -// pAlter->numOfCols = htons(pAlter->numOfCols); -// -// if (pAlter->numOfCols > 2) { -// mError("meter:%s error numOfCols:%d in alter table", pAlter->meterId, pAlter->numOfCols); -// code = TSDB_CODE_APP_ERROR; -// } else { -// SDbObj *pDb = NULL; -// if (pConn->pDb != NULL) pDb = mgmtGetDb(pConn->pDb->name); -// -// if (pDb) { -// for (int32_t i = 0; i < pAlter->numOfCols; ++i) { -// pAlter->schema[i].bytes = htons(pAlter->schema[i].bytes); -// } -// -// code = mgmtAlterTable(pDb, pAlter); -// if (code == 0) { -// mLPrint("meter:%s is altered by %s", pAlter->meterId, pConn->pUser->user); -// } -// } else { -// code = TSDB_CODE_DB_NOT_SELECTED; -// } -// } -// } -// -// taosSendSimpleRsp(pConn->thandle, TSDB_MSG_TYPE_ALTER_TABLE_RSP, code); + if (mgmtCheckRedirectMsg(ahandle) != 0) { + return TSDB_CODE_REDIRECT; + } - return 0; + SUserObj *pUser = mgmtGetUserFromConn(ahandle); + if (pUser == NULL) { + rpcSendResponse(ahandle, TSDB_CODE_INVALID_USER, NULL, 0); + return TSDB_CODE_INVALID_USER; + } + + SAlterTableMsg *pAlter = (SAlterTableMsg *) pCont; + int32_t code; + + if (!pUser->writeAuth) { + code = TSDB_CODE_NO_RIGHTS; + } else { + pAlter->type = htons(pAlter->type); + pAlter->numOfCols = htons(pAlter->numOfCols); + + if (pAlter->numOfCols > 2) { + mError("table:%s error numOfCols:%d in alter table", pAlter->tableId, pAlter->numOfCols); + code = TSDB_CODE_APP_ERROR; + } else { + SDbObj *pDb = mgmtGetDb(pAlter->db); + if (pDb) { + for (int32_t i = 0; i < pAlter->numOfCols; ++i) { + pAlter->schema[i].bytes = htons(pAlter->schema[i].bytes); + } + + code = mgmtAlterTable(pDb, pAlter); + if (code == 0) { + mLPrint("table:%s is altered by %s", pAlter->tableId, pUser->user); + } + } else { + code = TSDB_CODE_DB_NOT_SELECTED; + } + } + } + + if (code != TSDB_CODE_SUCCESS) { + rpcSendResponse(ahandle, code, NULL, 0); + } + return code; } int32_t mgmtProcessCfgDnodeMsg(void *pCont, int32_t contLen, void *ahandle) { -// int32_t code = 0; -// SCfgMsg *pCfg = (SCfgMsg *)pMsg; -// -// if (mgmtCheckRedirectMsg(pConn, TSDB_MSG_TYPE_CFG_MNODE_RSP) != 0) { -// return 0; -// } -// -// if (strcmp(pConn->pAcct->user, "root") != 0) { -// code = TSDB_CODE_NO_RIGHTS; -// } else { -// code = mgmtSendCfgDnodeMsg(pMsg); -// } -// -// taosSendSimpleRsp(pConn->thandle, TSDB_MSG_TYPE_DNODE_CFG_RSP, code); -// -// if (code == 0) mTrace("dnode:%s is configured by %s", pCfg->ip, pConn->pUser->user); -// - return 0; + if (mgmtCheckRedirectMsg(ahandle) != 0) { + return TSDB_CODE_REDIRECT; + } + + SUserObj *pUser = mgmtGetUserFromConn(ahandle); + if (pUser == NULL) { + rpcSendResponse(ahandle, TSDB_CODE_INVALID_USER, NULL, 0); + return TSDB_CODE_INVALID_USER; + } + + SCMCfgDnodeMsg *pCfg = (SCMCfgDnodeMsg *)pCont; + int32_t code; + + if (strcmp(pUser->pAcct->user, "root") != 0) { + code = TSDB_CODE_NO_RIGHTS; + } else { + code = mgmtSendCfgDnodeMsg(pCont); + } + + if (code == TSDB_CODE_SUCCESS) { + mTrace("dnode:%s is configured by %s", pCfg->ip, pUser->user); + } + + rpcSendResponse(ahandle, code, NULL, 0); + return code; } int32_t mgmtProcessHeartBeatMsg(void *pCont, int32_t contLen, void *ahandle) { @@ -1324,7 +1356,7 @@ static bool mgmtCheckMeterMetaMsgType(void *pMsg) { // If table does not exists and autoCreate flag is set, we add the handler into task queue bool addIntoTranQueue = (pTable == NULL && autoCreate == 1); if (addIntoTranQueue) { - mTrace("meter:%s auto created task added", pInfo->meterId); + mTrace("table:%s auto created task added", pInfo->meterId); } return addIntoTranQueue; @@ -1362,53 +1394,52 @@ static void mgmtProcessMsgFromShell(char type, void *pCont, int contLen, void *a } void mgmtInitProcessShellMsg() { - mgmtProcessShellMsg[TSDB_MSG_TYPE_TABLE_META] = mgmtProcessMeterMetaMsg; - mgmtProcessShellMsg[TSDB_MSG_TYPE_STABLE_META] = mgmtProcessMetricMetaMsg; + mgmtProcessShellMsg[TSDB_MSG_TYPE_CONNECT] = mgmtProcessConnectMsg; + mgmtProcessShellMsg[TSDB_MSG_TYPE_HEARTBEAT] = mgmtProcessHeartBeatMsg; + mgmtProcessShellMsg[TSDB_MSG_TYPE_CREATE_DB] = mgmtProcessCreateDbMsg; + mgmtProcessShellMsg[TSDB_MSG_TYPE_ALTER_DB] = mgmtProcessAlterDbMsg; + mgmtProcessShellMsg[TSDB_MSG_TYPE_DROP_DB] = mgmtProcessDropDbMsg; + mgmtProcessShellMsg[TSDB_MSG_TYPE_USE_DB] = mgmtProcessUnSupportMsg; + mgmtProcessShellMsg[TSDB_MSG_TYPE_CREATE_USER] = mgmtProcessCreateUserMsg; + mgmtProcessShellMsg[TSDB_MSG_TYPE_ALTER_USER] = mgmtProcessAlterUserMsg; + mgmtProcessShellMsg[TSDB_MSG_TYPE_DROP_USER] = mgmtProcessDropUserMsg; + mgmtProcessShellMsg[TSDB_MSG_TYPE_CREATE_ACCT] = mgmtProcessCreateAcctMsg; + mgmtProcessShellMsg[TSDB_MSG_TYPE_DROP_ACCT] = mgmtProcessDropAcctMsg; + mgmtProcessShellMsg[TSDB_MSG_TYPE_ALTER_ACCT] = mgmtProcessAlterAcctMsg; + mgmtProcessShellMsg[TSDB_MSG_TYPE_CREATE_TABLE] = mgmtProcessCreateTableMsg; + mgmtProcessShellMsg[TSDB_MSG_TYPE_DROP_TABLE] = mgmtProcessDropTableMsg; + mgmtProcessShellMsg[TSDB_MSG_TYPE_ALTER_TABLE] = mgmtProcessAlterTableMsg; + mgmtProcessShellMsg[TSDB_MSG_TYPE_CREATE_DNODE] = mgmtProcessCreateDnodeMsg; + mgmtProcessShellMsg[TSDB_MSG_TYPE_DROP_DNODE] = mgmtProcessDropDnodeMsg; + mgmtProcessShellMsg[TSDB_MSG_TYPE_DNODE_CFG] = mgmtProcessCfgDnodeMsg; + mgmtProcessShellMsg[TSDB_MSG_TYPE_CREATE_MNODE] = mgmtProcessUnSupportMsg; + mgmtProcessShellMsg[TSDB_MSG_TYPE_DROP_MNODE] = mgmtProcessDropMnodeMsg; + mgmtProcessShellMsg[TSDB_MSG_TYPE_CFG_MNODE] = mgmtProcessCfgMnodeMsg; + mgmtProcessShellMsg[TSDB_MSG_TYPE_KILL_QUERY] = mgmtProcessKillQueryMsg; + mgmtProcessShellMsg[TSDB_MSG_TYPE_KILL_STREAM] = mgmtProcessKillStreamMsg; + mgmtProcessShellMsg[TSDB_MSG_TYPE_KILL_CONNECTION] = mgmtProcessKillConnectionMsg; + mgmtProcessShellMsg[TSDB_MSG_TYPE_SHOW] = mgmtProcessShowMsg; + mgmtProcessShellMsg[TSDB_MSG_TYPE_DNODE_RETRIEVE] = mgmtProcessRetrieveMsg; + mgmtProcessShellMsg[TSDB_MSG_TYPE_TABLE_META] = mgmtProcessMeterMetaMsg; + mgmtProcessShellMsg[TSDB_MSG_TYPE_STABLE_META] = mgmtProcessMetricMetaMsg; mgmtProcessShellMsg[TSDB_MSG_TYPE_MULTI_TABLE_META] = mgmtProcessMultiMeterMetaMsg; - mgmtProcessShellMsg[TSDB_MSG_TYPE_CREATE_DB] = mgmtProcessCreateDbMsg; - mgmtProcessShellMsg[TSDB_MSG_TYPE_ALTER_DB] = mgmtProcessAlterDbMsg; - mgmtProcessShellMsg[TSDB_MSG_TYPE_CREATE_USER] = mgmtProcessCreateUserMsg; - mgmtProcessShellMsg[TSDB_MSG_TYPE_ALTER_USER] = mgmtProcessAlterUserMsg; - mgmtProcessShellMsg[TSDB_MSG_TYPE_CREATE_ACCT] = mgmtProcessCreateAcctMsg; - mgmtProcessShellMsg[TSDB_MSG_TYPE_DROP_DB] = mgmtProcessDropDbMsg; - mgmtProcessShellMsg[TSDB_MSG_TYPE_DROP_USER] = mgmtProcessDropUserMsg; - mgmtProcessShellMsg[TSDB_MSG_TYPE_DROP_ACCT] = mgmtProcessDropAcctMsg; - mgmtProcessShellMsg[TSDB_MSG_TYPE_ALTER_ACCT] = mgmtProcessAlterAcctMsg; - - mgmtProcessShellMsg[TSDB_MSG_TYPE_CREATE_TABLE] = mgmtProcessCreateTableMsg; - mgmtProcessShellMsg[TSDB_MSG_TYPE_DROP_TABLE] = mgmtProcessDropTableMsg; - mgmtProcessShellMsg[TSDB_MSG_TYPE_ALTER_TABLE] = mgmtProcessAlterTableMsg; - - mgmtProcessShellMsg[TSDB_MSG_TYPE_USE_DB] = mgmtProcessUseDbMsg; - mgmtProcessShellMsg[TSDB_MSG_TYPE_DNODE_RETRIEVE] = mgmtProcessRetrieveMsg; - mgmtProcessShellMsg[TSDB_MSG_TYPE_SHOW] = mgmtProcessShowMsg; - mgmtProcessShellMsg[TSDB_MSG_TYPE_CONNECT] = mgmtProcessConnectMsg; - mgmtProcessShellMsg[TSDB_MSG_TYPE_HEARTBEAT] = mgmtProcessHeartBeatMsg; - mgmtProcessShellMsg[TSDB_MSG_TYPE_CREATE_DNODE] = mgmtProcessCreateDnodeMsg; - mgmtProcessShellMsg[TSDB_MSG_TYPE_DROP_DNODE] = mgmtProcessDropDnodeMsg; - mgmtProcessShellMsg[TSDB_MSG_TYPE_CREATE_MNODE] = mgmtProcessCreateMnodeMsg; - mgmtProcessShellMsg[TSDB_MSG_TYPE_DROP_MNODE] = mgmtProcessDropMnodeMsg; - mgmtProcessShellMsg[TSDB_MSG_TYPE_CFG_MNODE] = mgmtProcessCfgMnodeMsg; - mgmtProcessShellMsg[TSDB_MSG_TYPE_DNODE_CFG] = mgmtProcessCfgDnodeMsg; - mgmtProcessShellMsg[TSDB_MSG_TYPE_KILL_QUERY] = mgmtProcessKillQueryMsg; - mgmtProcessShellMsg[TSDB_MSG_TYPE_KILL_STREAM] = mgmtProcessKillStreamMsg; - mgmtProcessShellMsg[TSDB_MSG_TYPE_KILL_CONNECTION] = mgmtProcessKillConnectionMsg; } -int32_t mgmtCheckRedirectMsgImp(void *pConn) { +static int32_t mgmtCheckRedirectMsgImp(void *pConn) { return 0; } + int32_t (*mgmtCheckRedirectMsg)(void *pConn) = mgmtCheckRedirectMsgImp; static int32_t mgmtProcessUnSupportMsg(void *pCont, int32_t contLen, void *ahandle) { rpcSendResponse(ahandle, TSDB_CODE_OPS_NOT_SUPPORT, NULL, 0); - return 0; + return TSDB_CODE_OPS_NOT_SUPPORT; } -int32_t (*mgmtProcessAlterAcctMsg)(void *pCont, int32_t contLen, void *ahandle) = mgmtProcessUnSupportMsg; +int32_t (*mgmtProcessAlterAcctMsg)(void *pCont, int32_t contLen, void *ahandle) = mgmtProcessUnSupportMsg; int32_t (*mgmtProcessCreateDnodeMsg)(void *pCont, int32_t contLen, void *ahandle) = mgmtProcessUnSupportMsg; -int32_t (*mgmtProcessCfgMnodeMsg)(void *pCont, int32_t contLen, void *ahandle) = mgmtProcessUnSupportMsg; -int32_t (*mgmtProcessDropMnodeMsg)(void *pCont, int32_t contLen, void *ahandle) = mgmtProcessUnSupportMsg; -int32_t (*mgmtProcessDropDnodeMsg)(void *pCont, int32_t contLen, void *ahandle) = mgmtProcessUnSupportMsg; -int32_t (*mgmtProcessDropAcctMsg)(void *pCont, int32_t contLen, void *ahandle) = mgmtProcessUnSupportMsg; -int32_t (*mgmtProcessCreateAcctMsg)(void *pCont, int32_t contLen, void *ahandle) = mgmtProcessUnSupportMsg; \ No newline at end of file +int32_t (*mgmtProcessCfgMnodeMsg)(void *pCont, int32_t contLen, void *ahandle) = mgmtProcessUnSupportMsg; +int32_t (*mgmtProcessDropMnodeMsg)(void *pCont, int32_t contLen, void *ahandle) = mgmtProcessUnSupportMsg; +int32_t (*mgmtProcessDropDnodeMsg)(void *pCont, int32_t contLen, void *ahandle) = mgmtProcessUnSupportMsg; +int32_t (*mgmtProcessDropAcctMsg)(void *pCont, int32_t contLen, void *ahandle) = mgmtProcessUnSupportMsg; +int32_t (*mgmtProcessCreateAcctMsg)(void *pCont, int32_t contLen, void *ahandle) = mgmtProcessUnSupportMsg; \ No newline at end of file diff --git a/src/mnode/src/mgmtStreamTable.c b/src/mnode/src/mgmtStreamTable.c index 031954bb15..98e029b313 100644 --- a/src/mnode/src/mgmtStreamTable.c +++ b/src/mnode/src/mgmtStreamTable.c @@ -67,8 +67,8 @@ void *mgmtStreamTableActionReset(void *row, char *str, int32_t size, int32_t *ss int32_t tsize = pTable->updateEnd - (int8_t *) pTable; memcpy(pTable, str, tsize); - int32_t schemaSize = pTable->numOfColumns * sizeof(SSchema); - pTable->schema = (SSchema *) realloc(pTable->schema, schemaSize); + int32_t schemaSize = pTable->numOfColumns * sizeof(SCMSchema); + pTable->schema = (SCMSchema *) realloc(pTable->schema, schemaSize); memcpy(pTable->schema, str + tsize, schemaSize); pTable->sql = (char *) realloc(pTable->sql, pTable->sqlLen); @@ -169,7 +169,7 @@ void *mgmtStreamTableActionEncode(void *row, char *str, int32_t size, int32_t *s assert(row != NULL && str != NULL); int32_t tsize = pTable->updateEnd - (int8_t *) pTable; - int32_t schemaSize = pTable->numOfColumns * sizeof(SSchema); + int32_t schemaSize = pTable->numOfColumns * sizeof(SCMSchema); if (size < tsize + schemaSize + pTable->sqlLen + 1) { *ssize = -1; return NULL; @@ -199,8 +199,8 @@ void *mgmtStreamTableActionDecode(void *row, char *str, int32_t size, int32_t *s } memcpy(pTable, str, tsize); - int32_t schemaSize = pTable->numOfColumns * sizeof(SSchema); - pTable->schema = (SSchema *)malloc(schemaSize); + int32_t schemaSize = pTable->numOfColumns * sizeof(SCMSchema); + pTable->schema = (SCMSchema *)malloc(schemaSize); if (pTable->schema == NULL) { mgmtDestroyStreamTable(pTable); return NULL; @@ -230,7 +230,7 @@ int32_t mgmtInitStreamTables() { mgmtStreamTableActionInit(); - tsStreamTableSdb = sdbOpenTable(tsMaxTables, sizeof(SStreamTableObj) + sizeof(SSchema) * TSDB_MAX_COLUMNS + TSDB_MAX_SQL_LEN, + tsStreamTableSdb = sdbOpenTable(tsMaxTables, sizeof(SStreamTableObj) + sizeof(SCMSchema) * TSDB_MAX_COLUMNS + TSDB_MAX_SQL_LEN, "streams", SDB_KEYTYPE_STRING, tsMgmtDirectory, mgmtStreamTableAction); if (tsStreamTableSdb == NULL) { mError("failed to init stream table data"); @@ -273,7 +273,7 @@ int8_t *mgmtBuildCreateStreamTableMsg(SStreamTableObj *pTable, SVgObj *pVgroup) // pCreateTable->numOfColumns = htons(pTable->numOfColumns); // //pCreateTable->sqlLen = htons(pTable->sqlLen); // -// SSchema *pSchema = pTable->schema; +// SCMSchema *pSchema = pTable->schema; // int32_t totalCols = pCreateTable->numOfColumns; // for (int32_t col = 0; col < totalCols; ++col) { @@ -293,10 +293,10 @@ int8_t *mgmtBuildCreateStreamTableMsg(SStreamTableObj *pTable, SVgObj *pVgroup) return NULL; } -int32_t mgmtCreateStreamTable(SDbObj *pDb, SCreateTableMsg *pCreate, SVgObj *pVgroup, int32_t sid) { +int32_t mgmtCreateStreamTable(SDbObj *pDb, SCMCreateTableMsg *pCreate, SVgObj *pVgroup, int32_t sid) { int32_t numOfTables = sdbGetNumOfRows(tsStreamTableSdb); if (numOfTables >= TSDB_MAX_TABLES) { - mError("stream table:%s, numOfTables:%d exceed maxTables:%d", pCreate->meterId, numOfTables, TSDB_MAX_TABLES); + mError("stream table:%s, numOfTables:%d exceed maxTables:%d", pCreate->tableId, numOfTables, TSDB_MAX_TABLES); return TSDB_CODE_TOO_MANY_TABLES; } @@ -305,7 +305,7 @@ int32_t mgmtCreateStreamTable(SDbObj *pDb, SCreateTableMsg *pCreate, SVgObj *pVg return TSDB_CODE_SERV_OUT_OF_MEMORY; } - strcpy(pTable->tableId, pCreate->meterId); + strcpy(pTable->tableId, pCreate->tableId); pTable->createdTime = taosGetTimestampMs(); pTable->vgId = pVgroup->vgId; pTable->sid = sid; @@ -314,28 +314,28 @@ int32_t mgmtCreateStreamTable(SDbObj *pDb, SCreateTableMsg *pCreate, SVgObj *pVg pTable->numOfColumns = pCreate->numOfColumns; int32_t numOfCols = pCreate->numOfColumns + pCreate->numOfTags; - int32_t schemaSize = pTable->numOfColumns * sizeof(SSchema); - pTable->schema = (SSchema *) calloc(1, schemaSize); + int32_t schemaSize = pTable->numOfColumns * sizeof(SCMSchema); + pTable->schema = (SCMSchema *) calloc(1, schemaSize); if (pTable->schema == NULL) { free(pTable); - mError("table:%s, no schema input", pCreate->meterId); + mError("table:%s, no schema input", pCreate->tableId); return TSDB_CODE_INVALID_TABLE; } - memcpy(pTable->schema, pCreate->schema, numOfCols * sizeof(SSchema)); + memcpy(pTable->schema, pCreate->schema, numOfCols * sizeof(SCMSchema)); pTable->nextColId = 0; for (int32_t col = 0; col < pCreate->numOfColumns; col++) { - SSchema *tschema = (SSchema *) pTable->schema; + SCMSchema *tschema = (SCMSchema *) pTable->schema; tschema[col].colId = pTable->nextColId++; } - pTable->sql = (char*)(pTable->schema + numOfCols * sizeof(SSchema)); - memcpy(pTable->sql, (char *) (pCreate->schema) + numOfCols * sizeof(SSchema), pCreate->sqlLen); + pTable->sql = (char*)(pTable->schema + numOfCols * sizeof(SCMSchema)); + memcpy(pTable->sql, (char *) (pCreate->schema) + numOfCols * sizeof(SCMSchema), pCreate->sqlLen); pTable->sql[pCreate->sqlLen - 1] = 0; - mTrace("table:%s, stream sql len:%d sql:%s", pCreate->meterId, pCreate->sqlLen, pTable->sql); + mTrace("table:%s, stream sql len:%d sql:%s", pCreate->tableId, pCreate->sqlLen, pTable->sql); if (sdbInsertRow(tsStreamTableSdb, pTable, 0) < 0) { - mError("table:%s, update sdb error", pCreate->meterId); + mError("table:%s, update sdb error", pCreate->tableId); return TSDB_CODE_SDB_ERROR; } diff --git a/src/mnode/src/mgmtSuperTable.c b/src/mnode/src/mgmtSuperTable.c index 3b6c53bce2..2858fe0866 100644 --- a/src/mnode/src/mgmtSuperTable.c +++ b/src/mnode/src/mgmtSuperTable.c @@ -66,7 +66,7 @@ void *mgmtSuperTableActionReset(void *row, char *str, int32_t size, int32_t *ssi int32_t tsize = pTable->updateEnd - (int8_t *) pTable; memcpy(pTable, str, tsize); - int32_t schemaSize = sizeof(SSchema) * (pTable->numOfColumns + pTable->numOfTags); + int32_t schemaSize = sizeof(SCMSchema) * (pTable->numOfColumns + pTable->numOfTags); pTable->schema = realloc(pTable->schema, schemaSize); memcpy(pTable->schema, str + tsize, schemaSize); @@ -96,7 +96,7 @@ void *mgmtSuperTableActionEncode(void *row, char *str, int32_t size, int32_t *ss assert(row != NULL && str != NULL); int32_t tsize = pTable->updateEnd - (int8_t *) pTable; - int32_t schemaSize = sizeof(SSchema) * (pTable->numOfColumns + pTable->numOfTags); + int32_t schemaSize = sizeof(SCMSchema) * (pTable->numOfColumns + pTable->numOfTags); if (size < tsize + schemaSize + 1) { *ssize = -1; @@ -126,7 +126,7 @@ void *mgmtSuperTableActionDecode(void *row, char *str, int32_t size, int32_t *ss } memcpy(pTable, str, tsize); - int32_t schemaSize = sizeof(SSchema) * (pTable->numOfColumns + pTable->numOfTags); + int32_t schemaSize = sizeof(SCMSchema) * (pTable->numOfColumns + pTable->numOfTags); pTable->schema = malloc(schemaSize); if (pTable->schema == NULL) { mgmtDestroySuperTable(pTable); @@ -151,7 +151,7 @@ int32_t mgmtInitSuperTables() { mgmtSuperTableActionInit(); - tsSuperTableSdb = sdbOpenTable(tsMaxTables, sizeof(STabObj) + sizeof(SSchema) * TSDB_MAX_COLUMNS, + tsSuperTableSdb = sdbOpenTable(tsMaxTables, sizeof(STabObj) + sizeof(SCMSchema) * TSDB_MAX_COLUMNS, "stables", SDB_KEYTYPE_STRING, tsMgmtDirectory, mgmtSuperTableAction); if (tsSuperTableSdb == NULL) { mError("failed to init super table data"); @@ -184,10 +184,10 @@ int32_t mgmtInitSuperTables() { void mgmtCleanUpSuperTables() { } -int32_t mgmtCreateSuperTable(SDbObj *pDb, SCreateTableMsg *pCreate) { +int32_t mgmtCreateSuperTable(SDbObj *pDb, SCMCreateTableMsg *pCreate) { int32_t numOfTables = sdbGetNumOfRows(tsSuperTableSdb); if (numOfTables >= TSDB_MAX_TABLES) { - mError("super table:%s, numOfTables:%d exceed maxTables:%d", pCreate->meterId, numOfTables, TSDB_MAX_TABLES); + mError("super table:%s, numOfTables:%d exceed maxTables:%d", pCreate->tableId, numOfTables, TSDB_MAX_TABLES); return TSDB_CODE_TOO_MANY_TABLES; } @@ -196,7 +196,7 @@ int32_t mgmtCreateSuperTable(SDbObj *pDb, SCreateTableMsg *pCreate) { return TSDB_CODE_SERV_OUT_OF_MEMORY; } - strcpy(pStable->tableId, pCreate->meterId); + strcpy(pStable->tableId, pCreate->tableId); pStable->createdTime = taosGetTimestampMs(); pStable->vgId = 0; pStable->sid = 0; @@ -207,23 +207,23 @@ int32_t mgmtCreateSuperTable(SDbObj *pDb, SCreateTableMsg *pCreate) { pStable->numOfTables = 0; int32_t numOfCols = pCreate->numOfColumns + pCreate->numOfTags; - int32_t schemaSize = numOfCols * sizeof(SSchema); - pStable->schema = (SSchema *)calloc(1, schemaSize); + int32_t schemaSize = numOfCols * sizeof(SCMSchema); + pStable->schema = (SCMSchema *)calloc(1, schemaSize); if (pStable->schema == NULL) { free(pStable); - mError("table:%s, no schema input", pCreate->meterId); + mError("table:%s, no schema input", pCreate->tableId); return TSDB_CODE_INVALID_TABLE; } - memcpy(pStable->schema, pCreate->schema, numOfCols * sizeof(SSchema)); + memcpy(pStable->schema, pCreate->schema, numOfCols * sizeof(SCMSchema)); pStable->nextColId = 0; for (int32_t col = 0; col < pCreate->numOfColumns; col++) { - SSchema *tschema = (SSchema *)pStable->schema; + SCMSchema *tschema = (SCMSchema *)pStable->schema; tschema[col].colId = pStable->nextColId++; } if (sdbInsertRow(tsSuperTableSdb, pStable, 0) < 0) { - mError("table:%s, update sdb error", pCreate->meterId); + mError("table:%s, update sdb error", pCreate->tableId); return TSDB_CODE_SDB_ERROR; } @@ -241,7 +241,7 @@ SSuperTableObj* mgmtGetSuperTable(char *tableId) { int32_t mgmtFindSuperTableTagIndex(SSuperTableObj *pStable, const char *tagName) { for (int32_t i = 0; i < pStable->numOfTags; i++) { - SSchema *schema = (SSchema *)(pStable->schema + (pStable->numOfColumns + i) * sizeof(SSchema)); + SCMSchema *schema = (SCMSchema *)(pStable->schema + (pStable->numOfColumns + i) * sizeof(SCMSchema)); if (strcasecmp(tagName, schema->name) == 0) { return i; } @@ -250,7 +250,7 @@ int32_t mgmtFindSuperTableTagIndex(SSuperTableObj *pStable, const char *tagName) return -1; } -int32_t mgmtAddSuperTableTag(SSuperTableObj *pStable, SSchema schema[], int32_t ntags) { +int32_t mgmtAddSuperTableTag(SSuperTableObj *pStable, SCMSchema schema[], int32_t ntags) { if (pStable->numOfTags + ntags > TSDB_MAX_TAGS) { return TSDB_CODE_APP_ERROR; } @@ -276,14 +276,14 @@ int32_t mgmtAddSuperTableTag(SSuperTableObj *pStable, SSchema schema[], int32_t return TSDB_CODE_APP_ERROR; } - int32_t schemaSize = sizeof(SSchema) * (pStable->numOfTags + pStable->numOfColumns); - pStable->schema = realloc(pStable->schema, schemaSize + sizeof(SSchema) * ntags); + int32_t schemaSize = sizeof(SCMSchema) * (pStable->numOfTags + pStable->numOfColumns); + pStable->schema = realloc(pStable->schema, schemaSize + sizeof(SCMSchema) * ntags); - memmove(pStable->schema + sizeof(SSchema) * (pStable->numOfColumns + ntags), - pStable->schema + sizeof(SSchema) * pStable->numOfColumns, sizeof(SSchema) * pStable->numOfTags); - memcpy(pStable->schema + sizeof(SSchema) * pStable->numOfColumns, schema, sizeof(SSchema) * ntags); + memmove(pStable->schema + sizeof(SCMSchema) * (pStable->numOfColumns + ntags), + pStable->schema + sizeof(SCMSchema) * pStable->numOfColumns, sizeof(SCMSchema) * pStable->numOfTags); + memcpy(pStable->schema + sizeof(SCMSchema) * pStable->numOfColumns, schema, sizeof(SCMSchema) * ntags); - SSchema *tschema = (SSchema *) (pStable->schema + sizeof(SSchema) * pStable->numOfColumns); + SCMSchema *tschema = (SCMSchema *) (pStable->schema + sizeof(SCMSchema) * pStable->numOfColumns); for (int32_t i = 0; i < ntags; i++) { tschema[i].colId = pStable->nextColId++; } @@ -316,13 +316,13 @@ int32_t mgmtDropSuperTableTag(SSuperTableObj *pStable, char *tagName) { return TSDB_CODE_APP_ERROR; } - memmove(pStable->schema + sizeof(SSchema) * col, pStable->schema + sizeof(SSchema) * (col + 1), - sizeof(SSchema) * (pStable->numOfColumns + pStable->numOfTags - col - 1)); + memmove(pStable->schema + sizeof(SCMSchema) * col, pStable->schema + sizeof(SCMSchema) * (col + 1), + sizeof(SCMSchema) * (pStable->numOfColumns + pStable->numOfTags - col - 1)); pStable->numOfTags--; pStable->sversion++; - int32_t schemaSize = sizeof(SSchema) * (pStable->numOfTags + pStable->numOfColumns); + int32_t schemaSize = sizeof(SCMSchema) * (pStable->numOfTags + pStable->numOfColumns); pStable->schema = realloc(pStable->schema, schemaSize); sdbUpdateRow(tsSuperTableSdb, pStable, 0, 1); @@ -346,7 +346,7 @@ int32_t mgmtModifySuperTableTagNameByName(SSuperTableObj *pStable, char *oldTagN } // update - SSchema *schema = (SSchema *) (pStable->schema + (pStable->numOfColumns + col) * sizeof(SSchema)); + SCMSchema *schema = (SCMSchema *) (pStable->schema + (pStable->numOfColumns + col) * sizeof(SCMSchema)); strncpy(schema->name, newTagName, TSDB_COL_NAME_LEN); // Encode string @@ -370,7 +370,7 @@ int32_t mgmtModifySuperTableTagNameByName(SSuperTableObj *pStable, char *oldTagN } static int32_t mgmtFindSuperTableColumnIndex(SSuperTableObj *pStable, char *colName) { - SSchema *schema = (SSchema *) pStable->schema; + SCMSchema *schema = (SCMSchema *) pStable->schema; for (int32_t i = 0; i < pStable->numOfColumns; i++) { if (strcasecmp(schema[i].name, colName) == 0) { return i; @@ -380,7 +380,7 @@ static int32_t mgmtFindSuperTableColumnIndex(SSuperTableObj *pStable, char *colN return -1; } -int32_t mgmtAddSuperTableColumn(SSuperTableObj *pStable, SSchema schema[], int32_t ncols) { +int32_t mgmtAddSuperTableColumn(SSuperTableObj *pStable, SCMSchema schema[], int32_t ncols) { if (ncols <= 0) { return TSDB_CODE_APP_ERROR; } @@ -403,14 +403,14 @@ int32_t mgmtAddSuperTableColumn(SSuperTableObj *pStable, SSchema schema[], int32 return TSDB_CODE_APP_ERROR; } - int32_t schemaSize = sizeof(SSchema) * (pStable->numOfTags + pStable->numOfColumns); - pStable->schema = realloc(pStable->schema, schemaSize + sizeof(SSchema) * ncols); + int32_t schemaSize = sizeof(SCMSchema) * (pStable->numOfTags + pStable->numOfColumns); + pStable->schema = realloc(pStable->schema, schemaSize + sizeof(SCMSchema) * ncols); - memmove(pStable->schema + sizeof(SSchema) * (pStable->numOfColumns + ncols), - pStable->schema + sizeof(SSchema) * pStable->numOfColumns, sizeof(SSchema) * pStable->numOfTags); - memcpy(pStable->schema + sizeof(SSchema) * pStable->numOfColumns, schema, sizeof(SSchema) * ncols); + memmove(pStable->schema + sizeof(SCMSchema) * (pStable->numOfColumns + ncols), + pStable->schema + sizeof(SCMSchema) * pStable->numOfColumns, sizeof(SCMSchema) * pStable->numOfTags); + memcpy(pStable->schema + sizeof(SCMSchema) * pStable->numOfColumns, schema, sizeof(SCMSchema) * ncols); - SSchema *tschema = (SSchema *) (pStable->schema + sizeof(SSchema) * pStable->numOfColumns); + SCMSchema *tschema = (SCMSchema *) (pStable->schema + sizeof(SCMSchema) * pStable->numOfColumns); for (int32_t i = 0; i < ncols; i++) { tschema[i].colId = pStable->nextColId++; } @@ -442,13 +442,13 @@ int32_t mgmtDropSuperTableColumnByName(SSuperTableObj *pStable, char *colName) { return TSDB_CODE_APP_ERROR; } - memmove(pStable->schema + sizeof(SSchema) * col, pStable->schema + sizeof(SSchema) * (col + 1), - sizeof(SSchema) * (pStable->numOfColumns + pStable->numOfTags - col - 1)); + memmove(pStable->schema + sizeof(SCMSchema) * col, pStable->schema + sizeof(SCMSchema) * (col + 1), + sizeof(SCMSchema) * (pStable->numOfColumns + pStable->numOfTags - col - 1)); pStable->numOfColumns--; pStable->sversion++; - int32_t schemaSize = sizeof(SSchema) * (pStable->numOfTags + pStable->numOfColumns); + int32_t schemaSize = sizeof(SCMSchema) * (pStable->numOfTags + pStable->numOfColumns); pStable->schema = realloc(pStable->schema, schemaSize); pAcct->acctInfo.numOfTimeSeries -= (pStable->numOfTables); @@ -465,7 +465,7 @@ int32_t mgmtGetSuperTableMeta(SMeterMeta *pMeta, SShowObj *pShow, void *pConn) { // // if (pDb == NULL) return TSDB_CODE_DB_NOT_SELECTED; // -// SSchema *pSchema = tsGetSchema(pMeta); +// SCMSchema *pSchema = tsGetSchema(pMeta); // // pShow->bytes[cols] = TSDB_METER_NAME_LEN; // pSchema[cols].type = TSDB_DATA_TYPE_BINARY; @@ -597,7 +597,7 @@ int32_t mgmtGetTagsLength(SSuperTableObj* pSuperTable, int32_t col) { // length int32_t tagColumnIndexOffset = pSuperTable->numOfColumns; for (int32_t i = 0; i < pSuperTable->numOfTags && i < col; ++i) { - len += ((SSchema*)pSuperTable->schema)[tagColumnIndexOffset + i].bytes; + len += ((SCMSchema*)pSuperTable->schema)[tagColumnIndexOffset + i].bytes; } return len; diff --git a/src/mnode/src/mgmtTable.c b/src/mnode/src/mgmtTable.c index c52b3c04df..3d519b2fba 100644 --- a/src/mnode/src/mgmtTable.c +++ b/src/mnode/src/mgmtTable.c @@ -99,8 +99,8 @@ STableInfo* mgmtGetTableByPos(uint32_t dnodeIp, int32_t vnode, int32_t sid) { return NULL; } -int32_t mgmtCreateTable(SDbObj *pDb, SCreateTableMsg *pCreate) { - STableInfo *pTable = mgmtGetTable(pCreate->meterId); +int32_t mgmtCreateTable(SDbObj *pDb, SCMCreateTableMsg *pCreate) { + STableInfo *pTable = mgmtGetTable(pCreate->tableId); if (pTable != NULL) { if (pCreate->igExists) { return TSDB_CODE_SUCCESS; @@ -113,19 +113,19 @@ int32_t mgmtCreateTable(SDbObj *pDb, SCreateTableMsg *pCreate) { assert(pAcct != NULL); int32_t code = mgmtCheckTableLimit(pAcct, pCreate); if (code != 0) { - mError("table:%s, exceed the limit", pCreate->meterId); + mError("table:%s, exceed the limit", pCreate->tableId); return code; } if (mgmtCheckExpired()) { - mError("failed to create meter:%s, reason:grant expired", pCreate->meterId); + mError("failed to create meter:%s, reason:grant expired", pCreate->tableId); return TSDB_CODE_GRANT_EXPIRED; } if (pCreate->numOfTags == 0) { int32_t grantCode = mgmtCheckTimeSeries(pCreate->numOfColumns); if (grantCode != 0) { - mError("table:%s, grant expired", pCreate->meterId); + mError("table:%s, grant expired", pCreate->tableId); return grantCode; } @@ -180,7 +180,7 @@ int32_t mgmtDropTable(SDbObj *pDb, char *tableId, int32_t ignore) { } int32_t mgmtAlterTable(SDbObj *pDb, SAlterTableMsg *pAlter) { - STableInfo *pTable = mgmtGetTable(pAlter->meterId); + STableInfo *pTable = mgmtGetTable(pAlter->tableId); if (pTable == NULL) { return TSDB_CODE_INVALID_TABLE; } @@ -241,7 +241,7 @@ int32_t mgmtGetTableMeta(SMeterMeta *pMeta, SShowObj *pShow, void *pConn) { // return TSDB_CODE_DB_NOT_SELECTED; // } // -// SSchema *pSchema = tsGetSchema(pMeta); +// SCMSchema *pSchema = tsGetSchema(pMeta); // // pShow->bytes[cols] = TSDB_METER_NAME_LEN; // pSchema[cols].type = TSDB_DATA_TYPE_BINARY; diff --git a/src/mnode/src/mgmtUser.c b/src/mnode/src/mgmtUser.c index d57c2797ee..b5e9a9f780 100644 --- a/src/mnode/src/mgmtUser.c +++ b/src/mnode/src/mgmtUser.c @@ -160,7 +160,7 @@ void mgmtCleanUpUsers() { int32_t mgmtGetUserMeta(SMeterMeta *pMeta, SShowObj *pShow, void *pConn) { // int32_t cols = 0; -// SSchema *pSchema = tsGetSchema(pMeta); +// SCMSchema *pSchema = tsGetSchema(pMeta); // // pShow->bytes[cols] = TSDB_USER_LEN; // pSchema[cols].type = TSDB_DATA_TYPE_BINARY; diff --git a/src/mnode/src/mgmtVgroup.c b/src/mnode/src/mgmtVgroup.c index eae6987ec8..5a52bc1d63 100644 --- a/src/mnode/src/mgmtVgroup.c +++ b/src/mnode/src/mgmtVgroup.c @@ -256,7 +256,7 @@ int32_t mgmtGetVgroupMeta(SMeterMeta *pMeta, SShowObj *pShow, void *pConn) { // // if (pDb == NULL) return TSDB_CODE_DB_NOT_SELECTED; // -// SSchema *pSchema = tsGetSchema(pMeta); +// SCMSchema *pSchema = tsGetSchema(pMeta); // // pShow->bytes[cols] = 4; // pSchema[cols].type = TSDB_DATA_TYPE_INT; diff --git a/src/util/inc/tast.h b/src/util/inc/tast.h index d7950b54f6..ef93b561a6 100644 --- a/src/util/inc/tast.h +++ b/src/util/inc/tast.h @@ -28,7 +28,7 @@ extern "C" { #include "ttypes.h" struct tSQLBinaryExpr; -struct SSchema; +struct SCMSchema; struct tSkipList; struct tSkipListNode; @@ -49,7 +49,7 @@ typedef struct tQueryInfo { int32_t offset; // offset value in tags int32_t colIdx; // index of column in schema uint8_t optr; // expression operator - SSchema sch; // schema of tags + SCMSchema sch; // schema of tags tVariant q; // query condition value on the specific schema, filter expression __compar_fn_t compare; // filter function } tQueryInfo; @@ -65,7 +65,7 @@ typedef struct tSQLSyntaxNode { int16_t colId; // for schema, the id of column union { struct tSQLBinaryExpr *pExpr; - struct SSchema * pSchema; + struct SCMSchema * pSchema; tVariant * pVal; }; } tSQLSyntaxNode; @@ -88,7 +88,7 @@ typedef struct tQueryResultset { int64_t num; } tQueryResultset; -void tSQLBinaryExprFromString(tSQLBinaryExpr **pExpr, SSchema *pSchema, int32_t numOfCols, char *src, int32_t len); +void tSQLBinaryExprFromString(tSQLBinaryExpr **pExpr, SCMSchema *pSchema, int32_t numOfCols, char *src, int32_t len); void tSQLBinaryExprToString(tSQLBinaryExpr *pExpr, char *dst, int32_t *len); diff --git a/src/util/inc/textbuffer.h b/src/util/inc/textbuffer.h index 9690ce2ba8..5ec0fca691 100644 --- a/src/util/inc/textbuffer.h +++ b/src/util/inc/textbuffer.h @@ -72,16 +72,16 @@ typedef struct tFilePagesItem { tFilePage item; } tFilePagesItem; -typedef struct SSchemaEx { - struct SSchema field; +typedef struct SCMSchemaEx { + struct SCMSchema field; int16_t offset; -} SSchemaEx; +} SCMSchemaEx; typedef struct SColumnModel { int32_t capacity; int32_t numOfCols; int16_t rowSize; - SSchemaEx *pFields; + SCMSchemaEx *pFields; } SColumnModel; typedef struct SColumnOrderInfo { @@ -116,7 +116,7 @@ typedef struct tExtMemBuffer { } tExtMemBuffer; typedef struct tTagSchema { - struct SSchema *pSchema; + struct SCMSchema *pSchema; int32_t numOfCols; int32_t colOffset[]; } tTagSchema; @@ -198,7 +198,7 @@ bool tExtMemBufferIsAllDataInMem(tExtMemBuffer *pMemBuffer); * @param blockCapacity * @return */ -SColumnModel *createColumnModel(SSchema *fields, int32_t numOfCols, int32_t blockCapacity); +SColumnModel *createColumnModel(SCMSchema *fields, int32_t numOfCols, int32_t blockCapacity); /** * @@ -219,7 +219,7 @@ void destroyColumnModel(SColumnModel *pModel); void tColModelCompact(SColumnModel *pModel, tFilePage *inputBuffer, int32_t maxElemsCapacity); void tColModelErase(SColumnModel *pModel, tFilePage *inputBuffer, int32_t maxCapacity, int32_t s, int32_t e); -SSchema *getColumnModelSchema(SColumnModel *pColumnModel, int32_t index); +SCMSchema *getColumnModelSchema(SColumnModel *pColumnModel, int32_t index); int16_t getColumnModelOffset(SColumnModel *pColumnModel, int32_t index); diff --git a/src/util/inc/tschemautil.h b/src/util/inc/tschemautil.h index 0031b4fa25..9990141704 100644 --- a/src/util/inc/tschemautil.h +++ b/src/util/inc/tschemautil.h @@ -26,7 +26,7 @@ extern "C" { #define VALIDNUMOFCOLS(x) ((x) >= TSDB_MIN_COLUMNS && (x) <= TSDB_MAX_COLUMNS) -struct SSchema; +struct SCMSchema; /** * check if the schema is valid or not, including following aspects: @@ -40,14 +40,14 @@ struct SSchema; * @param numOfCols * @return */ -bool isValidSchema(struct SSchema *pSchema, int32_t numOfCols); +bool isValidSchema(struct SCMSchema *pSchema, int32_t numOfCols); -struct SSchema *tsGetSchema(SMeterMeta *pMeta); +struct SCMSchema *tsGetSchema(SMeterMeta *pMeta); -struct SSchema *tsGetTagSchema(SMeterMeta *pMeta); +struct SCMSchema *tsGetTagSchema(SMeterMeta *pMeta); -struct SSchema *tsGetColumnSchema(SMeterMeta *pMeta, int32_t startCol); -struct SSchema tsGetTbnameColumnSchema(); +struct SCMSchema *tsGetColumnSchema(SMeterMeta *pMeta, int32_t startCol); +struct SCMSchema tsGetTbnameColumnSchema(); char *tsGetTagsValue(SMeterMeta *pMeta); diff --git a/src/util/src/textbuffer.c b/src/util/src/textbuffer.c index 860de6782b..8b578ac46c 100644 --- a/src/util/src/textbuffer.c +++ b/src/util/src/textbuffer.c @@ -468,7 +468,7 @@ int32_t compare_a(tOrderDescriptor *pDescriptor, int32_t numOfRows1, int32_t s1, return ret; } } else { - SSchema *pSchema = &pDescriptor->pColumnModel->pFields[colIdx]; + SCMSchema *pSchema = &pDescriptor->pColumnModel->pFields[colIdx]; int32_t ret = columnValueAscendingComparator(f1, f2, pSchema->type, pSchema->bytes); if (ret == 0) { continue; @@ -500,7 +500,7 @@ int32_t compare_d(tOrderDescriptor *pDescriptor, int32_t numOfRows1, int32_t s1, return ret; } } else { - SSchema *pSchema = &pDescriptor->pColumnModel->pFields[colIdx]; + SCMSchema *pSchema = &pDescriptor->pColumnModel->pFields[colIdx]; int32_t ret = columnValueAscendingComparator(f1, f2, pSchema->type, pSchema->bytes); if (ret == 0) { continue; @@ -527,7 +527,7 @@ static void swap(SColumnModel *pColumnModel, int32_t count, int32_t s1, char *da void *first = COLMODEL_GET_VAL(data1, pColumnModel, count, s1, i); void *second = COLMODEL_GET_VAL(data1, pColumnModel, count, s2, i); - SSchema* pSchema = &pColumnModel->pFields[i].field; + SCMSchema* pSchema = &pColumnModel->pFields[i].field; tsDataSwap(first, second, pSchema->type, pSchema->bytes); } } @@ -762,16 +762,16 @@ void tColDataQSort(tOrderDescriptor *pDescriptor, int32_t numOfRows, int32_t sta /* * deep copy of sschema */ -SColumnModel *createColumnModel(SSchema *fields, int32_t numOfCols, int32_t blockCapacity) { - SColumnModel *pColumnModel = (SColumnModel *)calloc(1, sizeof(SColumnModel) + numOfCols * sizeof(SSchemaEx)); +SColumnModel *createColumnModel(SCMSchema *fields, int32_t numOfCols, int32_t blockCapacity) { + SColumnModel *pColumnModel = (SColumnModel *)calloc(1, sizeof(SColumnModel) + numOfCols * sizeof(SCMSchemaEx)); if (pColumnModel == NULL) { return NULL; } - pColumnModel->pFields = (SSchemaEx *)(&pColumnModel[1]); + pColumnModel->pFields = (SCMSchemaEx *)(&pColumnModel[1]); for(int32_t i = 0; i < numOfCols; ++i) { - SSchemaEx* pSchemaEx = &pColumnModel->pFields[i]; + SCMSchemaEx* pSchemaEx = &pColumnModel->pFields[i]; pSchemaEx->field = fields[i]; pSchemaEx->offset = pColumnModel->rowSize; @@ -789,15 +789,15 @@ SColumnModel *cloneColumnModel(SColumnModel *pSrc) { return NULL; } - SColumnModel *pColumnModel = (SColumnModel *)calloc(1, sizeof(SColumnModel) + pSrc->numOfCols * sizeof(SSchemaEx)); + SColumnModel *pColumnModel = (SColumnModel *)calloc(1, sizeof(SColumnModel) + pSrc->numOfCols * sizeof(SCMSchemaEx)); if (pColumnModel == NULL) { return NULL; } *pColumnModel = *pSrc; - pColumnModel->pFields = (SSchemaEx*) (&pColumnModel[1]); - memcpy(pColumnModel->pFields, pSrc->pFields, pSrc->numOfCols * sizeof(SSchemaEx)); + pColumnModel->pFields = (SCMSchemaEx*) (&pColumnModel[1]); + memcpy(pColumnModel->pFields, pSrc->pFields, pSrc->numOfCols * sizeof(SCMSchemaEx)); return pColumnModel; } @@ -1005,14 +1005,14 @@ void tColModelCompact(SColumnModel *pModel, tFilePage *inputBuffer, int32_t maxE /* start from the second column */ for (int32_t i = 1; i < pModel->numOfCols; ++i) { - SSchemaEx* pSchemaEx = &pModel->pFields[i]; + SCMSchemaEx* pSchemaEx = &pModel->pFields[i]; memmove(inputBuffer->data + pSchemaEx->offset * inputBuffer->numOfElems, inputBuffer->data + pSchemaEx->offset * maxElemsCapacity, pSchemaEx->field.bytes * inputBuffer->numOfElems); } } -SSchema* getColumnModelSchema(SColumnModel *pColumnModel, int32_t index) { +SCMSchema* getColumnModelSchema(SColumnModel *pColumnModel, int32_t index) { assert(pColumnModel != NULL && index >= 0 && index < pColumnModel->numOfCols); return &pColumnModel->pFields[index].field; } @@ -1034,7 +1034,7 @@ void tColModelErase(SColumnModel *pModel, tFilePage *inputBuffer, int32_t blockC /* start from the second column */ for (int32_t i = 0; i < pModel->numOfCols; ++i) { int16_t offset = getColumnModelOffset(pModel, i); - SSchema* pSchema = getColumnModelSchema(pModel, i); + SCMSchema* pSchema = getColumnModelSchema(pModel, i); char *startPos = inputBuffer->data + offset * blockCapacity + s * pSchema->bytes; char *endPos = startPos + pSchema->bytes * removed; diff --git a/src/util/src/tinterpolation.c b/src/util/src/tinterpolation.c index 82cc52cd42..6f5b650886 100644 --- a/src/util/src/tinterpolation.c +++ b/src/util/src/tinterpolation.c @@ -208,7 +208,7 @@ static char* getPos(char* data, int32_t bytes, int32_t order, int32_t capacity, static void setTagsValueInInterpolation(tFilePage** data, char** pTags, SColumnModel* pModel, int32_t order, int32_t start, int32_t capacity, int32_t num) { for (int32_t j = 0, i = start; i < pModel->numOfCols; ++i, ++j) { - SSchema* pSchema = getColumnModelSchema(pModel, i); + SCMSchema* pSchema = getColumnModelSchema(pModel, i); char* val1 = getPos(data[i]->data, pSchema->bytes, order, capacity, num); assignVal(val1, pTags[j], pSchema->bytes, pSchema->type); @@ -236,7 +236,7 @@ static void doInterpoResultImpl(SInterpolationInfo* pInterpoInfo, int16_t interp char* pInterpolationData = INTERPOL_IS_ASC_INTERPOL(pInterpoInfo) ? *prevValues : *nextValues; if (pInterpolationData != NULL) { for (int32_t i = 1; i < numOfValCols; ++i) { - SSchema* pSchema = getColumnModelSchema(pModel, i); + SCMSchema* pSchema = getColumnModelSchema(pModel, i); int16_t offset = getColumnModelOffset(pModel, i); char* val1 = getPos(data[i]->data, pSchema->bytes, pInterpoInfo->order, capacity, *num); @@ -249,7 +249,7 @@ static void doInterpoResultImpl(SInterpolationInfo* pInterpoInfo, int16_t interp } } else { /* no prev value yet, set the value for null */ for (int32_t i = 1; i < numOfValCols; ++i) { - SSchema* pSchema = getColumnModelSchema(pModel, i); + SCMSchema* pSchema = getColumnModelSchema(pModel, i); char* val1 = getPos(data[i]->data, pSchema->bytes, pInterpoInfo->order, capacity, *num); setNull(val1, pSchema->type, pSchema->bytes); @@ -261,7 +261,7 @@ static void doInterpoResultImpl(SInterpolationInfo* pInterpoInfo, int16_t interp // TODO : linear interpolation supports NULL value if (*prevValues != NULL && !outOfBound) { for (int32_t i = 1; i < numOfValCols; ++i) { - SSchema* pSchema = getColumnModelSchema(pModel, i); + SCMSchema* pSchema = getColumnModelSchema(pModel, i); int16_t offset = getColumnModelOffset(pModel, i); int16_t type = pSchema->type; @@ -282,7 +282,7 @@ static void doInterpoResultImpl(SInterpolationInfo* pInterpoInfo, int16_t interp } else { for (int32_t i = 1; i < numOfValCols; ++i) { - SSchema* pSchema = getColumnModelSchema(pModel, i); + SCMSchema* pSchema = getColumnModelSchema(pModel, i); char* val1 = getPos(data[i]->data, pSchema->bytes, pInterpoInfo->order, capacity, *num); setNull(val1, pSchema->type, pSchema->bytes); @@ -292,7 +292,7 @@ static void doInterpoResultImpl(SInterpolationInfo* pInterpoInfo, int16_t interp } } else { /* default value interpolation */ for (int32_t i = 1; i < numOfValCols; ++i) { - SSchema* pSchema = getColumnModelSchema(pModel, i); + SCMSchema* pSchema = getColumnModelSchema(pModel, i); char* val1 = getPos(data[i]->data, pSchema->bytes, pInterpoInfo->order, capacity, *num); assignVal(val1, (char*)&defaultVal[i], pSchema->bytes, pSchema->type); @@ -345,7 +345,7 @@ int32_t taosDoInterpoResult(SInterpolationInfo* pInterpoInfo, int16_t interpoTyp *nextValues = calloc(1, pModel->rowSize); for (int i = 1; i < pModel->numOfCols; i++) { int16_t offset = getColumnModelOffset(pModel, i); - SSchema* pSchema = getColumnModelSchema(pModel, i); + SCMSchema* pSchema = getColumnModelSchema(pModel, i); setNull(*nextValues + offset, pSchema->type, pSchema->bytes); } @@ -353,7 +353,7 @@ int32_t taosDoInterpoResult(SInterpolationInfo* pInterpoInfo, int16_t interpoTyp int32_t offset = pInterpoInfo->rowIdx; for (int32_t tlen = 0, i = 0; i < pModel->numOfCols - numOfTags; ++i) { - SSchema* pSchema = getColumnModelSchema(pModel, i); + SCMSchema* pSchema = getColumnModelSchema(pModel, i); memcpy(*nextValues + tlen, srcData[i] + offset * pSchema->bytes, pSchema->bytes); tlen += pSchema->bytes; @@ -379,7 +379,7 @@ int32_t taosDoInterpoResult(SInterpolationInfo* pInterpoInfo, int16_t interpoTyp *prevValues = calloc(1, pModel->rowSize); for (int i = 1; i < pModel->numOfCols; i++) { int16_t offset = getColumnModelOffset(pModel, i); - SSchema* pSchema = getColumnModelSchema(pModel, i); + SCMSchema* pSchema = getColumnModelSchema(pModel, i); setNull(*prevValues + offset, pSchema->type, pSchema->bytes); } @@ -389,7 +389,7 @@ int32_t taosDoInterpoResult(SInterpolationInfo* pInterpoInfo, int16_t interpoTyp int32_t i = 0; for (int32_t tlen = 0; i < pModel->numOfCols - numOfTags; ++i) { int16_t offset = getColumnModelOffset(pModel, i); - SSchema* pSchema = getColumnModelSchema(pModel, i); + SCMSchema* pSchema = getColumnModelSchema(pModel, i); char* val1 = getPos(data[i]->data, pSchema->bytes, pInterpoInfo->order, bufSize, num); diff --git a/src/util/src/tpercentile.c b/src/util/src/tpercentile.c index a5c074839c..4bf653d519 100644 --- a/src/util/src/tpercentile.c +++ b/src/util/src/tpercentile.c @@ -297,7 +297,7 @@ tMemBucket *tMemBucketCreate(int32_t totalSlots, int32_t nBufferSize, int16_t nE return NULL; } - SSchema* pSchema = getColumnModelSchema(pDesc->pColumnModel, 0); + SCMSchema* pSchema = getColumnModelSchema(pDesc->pColumnModel, 0); if (pSchema->type != dataType) { pError("MemBucket:%p,data type is not consistent,%d in schema, %d in param", pBucket, pSchema->type, dataType); tfree(pBucket);