fix desc crash
This commit is contained in:
parent
064e7ef017
commit
5c67a67363
|
@ -4494,13 +4494,13 @@ static int32_t tDecodeSTableMetaRsp(SDecoder *pDecoder, STableMetaRsp *pRsp) {
|
||||||
|
|
||||||
if (!tDecodeIsEnd(pDecoder)) {
|
if (!tDecodeIsEnd(pDecoder)) {
|
||||||
if (useCompress(pRsp->tableType) && pRsp->numOfColumns > 0) {
|
if (useCompress(pRsp->tableType) && pRsp->numOfColumns > 0) {
|
||||||
pRsp->pSchemaExt = taosMemoryMalloc(sizeof(SSchemaExt) * pRsp->numOfColumns);
|
pRsp->pSchemaExt = taosMemoryMalloc(sizeof(SSchemaExt) * pRsp->numOfColumns);
|
||||||
if (pRsp->pSchemaExt == NULL) return -1;
|
if (pRsp->pSchemaExt == NULL) return -1;
|
||||||
|
|
||||||
for (int32_t i = 0; i < pRsp->numOfColumns; ++i) {
|
for (int32_t i = 0; i < pRsp->numOfColumns; ++i) {
|
||||||
SSchemaExt *pSchemaExt = &pRsp->pSchemaExt[i];
|
SSchemaExt *pSchemaExt = &pRsp->pSchemaExt[i];
|
||||||
if (tDecodeSSchemaExt(pDecoder, pSchemaExt) < 0) return -1;
|
if (tDecodeSSchemaExt(pDecoder, pSchemaExt) < 0) return -1;
|
||||||
}
|
}
|
||||||
} else {
|
} else {
|
||||||
pRsp->pSchemaExt = NULL;
|
pRsp->pSchemaExt = NULL;
|
||||||
}
|
}
|
||||||
|
@ -7852,6 +7852,7 @@ void tFreeSVCreateTbRsp(void *param) {
|
||||||
SVCreateTbRsp *pRsp = (SVCreateTbRsp *)param;
|
SVCreateTbRsp *pRsp = (SVCreateTbRsp *)param;
|
||||||
if (pRsp->pMeta) {
|
if (pRsp->pMeta) {
|
||||||
taosMemoryFree(pRsp->pMeta->pSchemas);
|
taosMemoryFree(pRsp->pMeta->pSchemas);
|
||||||
|
taosMemoryFree(pRsp->pMeta->pSchemaExt);
|
||||||
taosMemoryFree(pRsp->pMeta);
|
taosMemoryFree(pRsp->pMeta);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -55,11 +55,14 @@ static void metaGetEntryInfo(const SMetaEntry *pEntry, SMetaInfo *pInfo) {
|
||||||
|
|
||||||
static int metaUpdateMetaRsp(tb_uid_t uid, char *tbName, SSchemaWrapper *pSchema, STableMetaRsp *pMetaRsp) {
|
static int metaUpdateMetaRsp(tb_uid_t uid, char *tbName, SSchemaWrapper *pSchema, STableMetaRsp *pMetaRsp) {
|
||||||
pMetaRsp->pSchemas = taosMemoryMalloc(pSchema->nCols * sizeof(SSchema));
|
pMetaRsp->pSchemas = taosMemoryMalloc(pSchema->nCols * sizeof(SSchema));
|
||||||
|
|
||||||
if (NULL == pMetaRsp->pSchemas) {
|
if (NULL == pMetaRsp->pSchemas) {
|
||||||
terrno = TSDB_CODE_OUT_OF_MEMORY;
|
terrno = TSDB_CODE_OUT_OF_MEMORY;
|
||||||
return -1;
|
return -1;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
pMetaRsp->pSchemaExt = taosMemoryMalloc(pSchema->nCols * sizeof(SSchemaExt));
|
||||||
|
|
||||||
tstrncpy(pMetaRsp->tbName, tbName, TSDB_TABLE_NAME_LEN);
|
tstrncpy(pMetaRsp->tbName, tbName, TSDB_TABLE_NAME_LEN);
|
||||||
pMetaRsp->numOfColumns = pSchema->nCols;
|
pMetaRsp->numOfColumns = pSchema->nCols;
|
||||||
pMetaRsp->tableType = TSDB_NORMAL_TABLE;
|
pMetaRsp->tableType = TSDB_NORMAL_TABLE;
|
||||||
|
@ -943,6 +946,11 @@ int metaCreateTable(SMeta *pMeta, int64_t ver, SVCreateTbReq *pReq, STableMetaRs
|
||||||
strcpy((*pMetaRsp)->tbName, pReq->name);
|
strcpy((*pMetaRsp)->tbName, pReq->name);
|
||||||
} else {
|
} else {
|
||||||
metaUpdateMetaRsp(pReq->uid, pReq->name, &pReq->ntb.schemaRow, *pMetaRsp);
|
metaUpdateMetaRsp(pReq->uid, pReq->name, &pReq->ntb.schemaRow, *pMetaRsp);
|
||||||
|
for (int32_t i = 0; i < pReq->colCmpr.nCols; i++) {
|
||||||
|
SColCmpr *p = &pReq->colCmpr.pColCmpr[i];
|
||||||
|
(*pMetaRsp)->pSchemaExt[i].colId = p->id;
|
||||||
|
(*pMetaRsp)->pSchemaExt[i].compress = p->alg;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in New Issue