[TD-4987]<fix>: issues memory sanitizier detected. (#6675)
This commit is contained in:
parent
562d82ed68
commit
2771246403
|
@ -460,8 +460,8 @@ void tscProcessMsgFromServer(SRpcMsg *rpcMsg, SRpcEpSet *pEpSet) {
|
||||||
|
|
||||||
|
|
||||||
if (shouldFree) { // in case of table-meta/vgrouplist query, automatically free it
|
if (shouldFree) { // in case of table-meta/vgrouplist query, automatically free it
|
||||||
taosRemoveRef(tscObjRef, handle);
|
|
||||||
tscDebug("0x%"PRIx64" sqlObj is automatically freed", pSql->self);
|
tscDebug("0x%"PRIx64" sqlObj is automatically freed", pSql->self);
|
||||||
|
taosRemoveRef(tscObjRef, handle);
|
||||||
}
|
}
|
||||||
|
|
||||||
taosReleaseRef(tscObjRef, handle);
|
taosReleaseRef(tscObjRef, handle);
|
||||||
|
|
|
@ -636,6 +636,9 @@ static FILE * g_fpOfInsertResult = NULL;
|
||||||
#define errorPrint(fmt, ...) \
|
#define errorPrint(fmt, ...) \
|
||||||
do { fprintf(stderr, "ERROR: "fmt, __VA_ARGS__); } while(0)
|
do { fprintf(stderr, "ERROR: "fmt, __VA_ARGS__); } while(0)
|
||||||
|
|
||||||
|
// for strncpy buffer overflow
|
||||||
|
#define min(a, b) (((a) < (b)) ? (a) : (b))
|
||||||
|
|
||||||
|
|
||||||
///////////////////////////////////////////////////
|
///////////////////////////////////////////////////
|
||||||
|
|
||||||
|
@ -2570,7 +2573,7 @@ static int getSuperTableFromServer(TAOS * taos, char* dbName,
|
||||||
fields[TSDB_DESCRIBE_METRIC_FIELD_INDEX].bytes);
|
fields[TSDB_DESCRIBE_METRIC_FIELD_INDEX].bytes);
|
||||||
tstrncpy(superTbls->tags[tagIndex].dataType,
|
tstrncpy(superTbls->tags[tagIndex].dataType,
|
||||||
(char *)row[TSDB_DESCRIBE_METRIC_TYPE_INDEX],
|
(char *)row[TSDB_DESCRIBE_METRIC_TYPE_INDEX],
|
||||||
fields[TSDB_DESCRIBE_METRIC_TYPE_INDEX].bytes);
|
min(15, fields[TSDB_DESCRIBE_METRIC_TYPE_INDEX].bytes));
|
||||||
superTbls->tags[tagIndex].dataLen =
|
superTbls->tags[tagIndex].dataLen =
|
||||||
*((int *)row[TSDB_DESCRIBE_METRIC_LENGTH_INDEX]);
|
*((int *)row[TSDB_DESCRIBE_METRIC_LENGTH_INDEX]);
|
||||||
tstrncpy(superTbls->tags[tagIndex].note,
|
tstrncpy(superTbls->tags[tagIndex].note,
|
||||||
|
@ -2583,7 +2586,7 @@ static int getSuperTableFromServer(TAOS * taos, char* dbName,
|
||||||
fields[TSDB_DESCRIBE_METRIC_FIELD_INDEX].bytes);
|
fields[TSDB_DESCRIBE_METRIC_FIELD_INDEX].bytes);
|
||||||
tstrncpy(superTbls->columns[columnIndex].dataType,
|
tstrncpy(superTbls->columns[columnIndex].dataType,
|
||||||
(char *)row[TSDB_DESCRIBE_METRIC_TYPE_INDEX],
|
(char *)row[TSDB_DESCRIBE_METRIC_TYPE_INDEX],
|
||||||
fields[TSDB_DESCRIBE_METRIC_TYPE_INDEX].bytes);
|
min(15, fields[TSDB_DESCRIBE_METRIC_TYPE_INDEX].bytes));
|
||||||
superTbls->columns[columnIndex].dataLen =
|
superTbls->columns[columnIndex].dataLen =
|
||||||
*((int *)row[TSDB_DESCRIBE_METRIC_LENGTH_INDEX]);
|
*((int *)row[TSDB_DESCRIBE_METRIC_LENGTH_INDEX]);
|
||||||
tstrncpy(superTbls->columns[columnIndex].note,
|
tstrncpy(superTbls->columns[columnIndex].note,
|
||||||
|
|
|
@ -1060,7 +1060,9 @@ static int32_t mnodeProcessCreateSuperTableMsg(SMnodeMsg *pMsg) {
|
||||||
pStable->info.tableId = strdup(pCreate->tableName);
|
pStable->info.tableId = strdup(pCreate->tableName);
|
||||||
pStable->info.type = TSDB_SUPER_TABLE;
|
pStable->info.type = TSDB_SUPER_TABLE;
|
||||||
pStable->createdTime = taosGetTimestampMs();
|
pStable->createdTime = taosGetTimestampMs();
|
||||||
pStable->uid = (us << 24) + ((sdbGetVersion() & ((1ul << 16) - 1ul)) << 8) + (taosRand() & ((1ul << 8) - 1ul));
|
int64_t x = (us&0x000000FFFFFFFFFF);
|
||||||
|
x = x<<24;
|
||||||
|
pStable->uid = x + ((sdbGetVersion() & ((1ul << 16) - 1ul)) << 8) + (taosRand() & ((1ul << 8) - 1ul));
|
||||||
pStable->sversion = 0;
|
pStable->sversion = 0;
|
||||||
pStable->tversion = 0;
|
pStable->tversion = 0;
|
||||||
pStable->numOfColumns = numOfColumns;
|
pStable->numOfColumns = numOfColumns;
|
||||||
|
|
Loading…
Reference in New Issue