feature/qnode
This commit is contained in:
parent
d7f756b587
commit
36437b65ce
|
@ -812,6 +812,7 @@ typedef struct {
|
||||||
typedef struct {
|
typedef struct {
|
||||||
char tbFname[TSDB_TABLE_FNAME_LEN]; // table full name
|
char tbFname[TSDB_TABLE_FNAME_LEN]; // table full name
|
||||||
char stbFname[TSDB_TABLE_FNAME_LEN];
|
char stbFname[TSDB_TABLE_FNAME_LEN];
|
||||||
|
char dbFname[TSDB_DB_FNAME_LEN];
|
||||||
int32_t numOfTags;
|
int32_t numOfTags;
|
||||||
int32_t numOfColumns;
|
int32_t numOfColumns;
|
||||||
int8_t precision;
|
int8_t precision;
|
||||||
|
|
|
@ -60,9 +60,11 @@ static int vnodeGetTableMeta(SVnode *pVnode, SRpcMsg *pMsg, SRpcMsg **pRsp) {
|
||||||
int32_t nCols;
|
int32_t nCols;
|
||||||
int32_t nTagCols;
|
int32_t nTagCols;
|
||||||
SSchemaWrapper *pSW;
|
SSchemaWrapper *pSW;
|
||||||
STableMetaMsg * pTbMetaMsg;
|
STableMetaMsg * pTbMetaMsg = NULL;
|
||||||
SSchema * pTagSchema;
|
SSchema * pTagSchema;
|
||||||
SRpcMsg rpcMsg;
|
SRpcMsg rpcMsg;
|
||||||
|
int msgLen = 0;
|
||||||
|
int32_t code = TSDB_CODE_VND_APP_ERROR;
|
||||||
|
|
||||||
pTbCfg = metaGetTbInfoByName(pVnode->pMeta, pReq->tableFname, &uid);
|
pTbCfg = metaGetTbInfoByName(pVnode->pMeta, pReq->tableFname, &uid);
|
||||||
if (pTbCfg == NULL) {
|
if (pTbCfg == NULL) {
|
||||||
|
@ -92,12 +94,13 @@ static int vnodeGetTableMeta(SVnode *pVnode, SRpcMsg *pMsg, SRpcMsg **pRsp) {
|
||||||
pTagSchema = NULL;
|
pTagSchema = NULL;
|
||||||
}
|
}
|
||||||
|
|
||||||
int msgLen = sizeof(STableMetaMsg) + sizeof(SSchema) * (nCols + nTagCols);
|
msgLen = sizeof(STableMetaMsg) + sizeof(SSchema) * (nCols + nTagCols);
|
||||||
pTbMetaMsg = (STableMetaMsg *)rpcMallocCont(msgLen);
|
pTbMetaMsg = (STableMetaMsg *)rpcMallocCont(msgLen);
|
||||||
if (pTbMetaMsg == NULL) {
|
if (pTbMetaMsg == NULL) {
|
||||||
goto _exit;
|
goto _exit;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
memcpy(pTbMetaMsg->dbFname, pReq->dbFname, sizeof(pTbMetaMsg->dbFname));
|
||||||
strcpy(pTbMetaMsg->tbFname, pTbCfg->name);
|
strcpy(pTbMetaMsg->tbFname, pTbCfg->name);
|
||||||
if (pTbCfg->type == META_CHILD_TABLE) {
|
if (pTbCfg->type == META_CHILD_TABLE) {
|
||||||
strcpy(pTbMetaMsg->stbFname, pStbCfg->name);
|
strcpy(pTbMetaMsg->stbFname, pStbCfg->name);
|
||||||
|
@ -120,13 +123,15 @@ static int vnodeGetTableMeta(SVnode *pVnode, SRpcMsg *pMsg, SRpcMsg **pRsp) {
|
||||||
pSch->bytes = htonl(pSch->bytes);
|
pSch->bytes = htonl(pSch->bytes);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
code = 0;
|
||||||
|
|
||||||
_exit:
|
_exit:
|
||||||
|
|
||||||
rpcMsg.handle = pMsg->handle;
|
rpcMsg.handle = pMsg->handle;
|
||||||
rpcMsg.ahandle = pMsg->ahandle;
|
rpcMsg.ahandle = pMsg->ahandle;
|
||||||
rpcMsg.pCont = pTbMetaMsg;
|
rpcMsg.pCont = pTbMetaMsg;
|
||||||
rpcMsg.contLen = msgLen;
|
rpcMsg.contLen = msgLen;
|
||||||
rpcMsg.code = 0;
|
rpcMsg.code = code;
|
||||||
|
|
||||||
rpcSendResponse(&rpcMsg);
|
rpcSendResponse(&rpcMsg);
|
||||||
|
|
||||||
|
|
|
@ -248,9 +248,14 @@ int32_t queryProcessTableMetaRsp(void* output, char *msg, int32_t msgSize) {
|
||||||
|
|
||||||
if (pMetaMsg->tableType == TSDB_CHILD_TABLE) {
|
if (pMetaMsg->tableType == TSDB_CHILD_TABLE) {
|
||||||
pOut->metaNum = 2;
|
pOut->metaNum = 2;
|
||||||
|
|
||||||
memcpy(pOut->ctbFname, pMetaMsg->tbFname, sizeof(pOut->ctbFname));
|
if (pMetaMsg->dbFname[0]) {
|
||||||
memcpy(pOut->tbFname, pMetaMsg->stbFname, sizeof(pOut->tbFname));
|
snprintf(pOut->ctbFname, "%s.%s", pMetaMsg->dbFname, pMetaMsg->tbFname);
|
||||||
|
snprintf(pOut->tbFname, "%s.%s", pMetaMsg->dbFname, pMetaMsg->stbFname);
|
||||||
|
} else {
|
||||||
|
memcpy(pOut->ctbFname, pMetaMsg->tbFname, sizeof(pOut->ctbFname));
|
||||||
|
memcpy(pOut->tbFname, pMetaMsg->stbFname, sizeof(pOut->tbFname));
|
||||||
|
}
|
||||||
|
|
||||||
pOut->ctbMeta.vgId = pMetaMsg->vgId;
|
pOut->ctbMeta.vgId = pMetaMsg->vgId;
|
||||||
pOut->ctbMeta.tableType = pMetaMsg->tableType;
|
pOut->ctbMeta.tableType = pMetaMsg->tableType;
|
||||||
|
@ -261,7 +266,11 @@ int32_t queryProcessTableMetaRsp(void* output, char *msg, int32_t msgSize) {
|
||||||
} else {
|
} else {
|
||||||
pOut->metaNum = 1;
|
pOut->metaNum = 1;
|
||||||
|
|
||||||
memcpy(pOut->tbFname, pMetaMsg->tbFname, sizeof(pOut->tbFname));
|
if (pMetaMsg->dbFname[0]) {
|
||||||
|
snprintf(pOut->tbFname, "%s.%s", pMetaMsg->dbFname, pMetaMsg->tbFname);
|
||||||
|
} else {
|
||||||
|
memcpy(pOut->tbFname, pMetaMsg->tbFname, sizeof(pOut->tbFname));
|
||||||
|
}
|
||||||
|
|
||||||
code = queryCreateTableMetaFromMsg(pMetaMsg, false, &pOut->tbMeta);
|
code = queryCreateTableMetaFromMsg(pMetaMsg, false, &pOut->tbMeta);
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in New Issue