fix stmt bind binary/nchar issue
This commit is contained in:
parent
320f874982
commit
996a041cb2
|
@ -71,6 +71,16 @@ void ctgdUserCallback(SMetaData* pResult, void* param, int32_t code) {
|
||||||
qDebug("empty db vgroup");
|
qDebug("empty db vgroup");
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if (pResult->pDbInfo && taosArrayGetSize(pResult->pDbInfo) > 0) {
|
||||||
|
num = taosArrayGetSize(pResult->pDbInfo);
|
||||||
|
for (int32_t i = 0; i < num; ++i) {
|
||||||
|
SDbInfo *pDb = taosArrayGet(pResult->pDbInfo, i);
|
||||||
|
qDebug("db %d dbInfo: vgVer:%d, tbNum:%d, dbId:%" PRIx64, i, pDb->vgVer, pDb->tbNum, pDb->dbId);
|
||||||
|
}
|
||||||
|
} else {
|
||||||
|
qDebug("empty db info");
|
||||||
|
}
|
||||||
|
|
||||||
if (pResult->pTableHash && taosArrayGetSize(pResult->pTableHash) > 0) {
|
if (pResult->pTableHash && taosArrayGetSize(pResult->pTableHash) > 0) {
|
||||||
num = taosArrayGetSize(pResult->pTableHash);
|
num = taosArrayGetSize(pResult->pTableHash);
|
||||||
for (int32_t i = 0; i < num; ++i) {
|
for (int32_t i = 0; i < num; ++i) {
|
||||||
|
@ -127,6 +137,7 @@ int32_t ctgdLaunchAsyncCall(SCatalog* pCtg, void *pTrans, const SEpSet* pMgmtEps
|
||||||
SCatalogReq req = {0};
|
SCatalogReq req = {0};
|
||||||
req.pTableMeta = taosArrayInit(2, sizeof(SName));
|
req.pTableMeta = taosArrayInit(2, sizeof(SName));
|
||||||
req.pDbVgroup = taosArrayInit(2, TSDB_DB_FNAME_LEN);
|
req.pDbVgroup = taosArrayInit(2, TSDB_DB_FNAME_LEN);
|
||||||
|
req.pDbInfo = taosArrayInit(2, TSDB_DB_FNAME_LEN);
|
||||||
req.pTableHash = taosArrayInit(2, sizeof(SName));
|
req.pTableHash = taosArrayInit(2, sizeof(SName));
|
||||||
req.pUdf = taosArrayInit(2, TSDB_FUNC_NAME_LEN);
|
req.pUdf = taosArrayInit(2, TSDB_FUNC_NAME_LEN);
|
||||||
req.pDbCfg = taosArrayInit(2, TSDB_DB_FNAME_LEN);
|
req.pDbCfg = taosArrayInit(2, TSDB_DB_FNAME_LEN);
|
||||||
|
@ -149,9 +160,11 @@ int32_t ctgdLaunchAsyncCall(SCatalog* pCtg, void *pTrans, const SEpSet* pMgmtEps
|
||||||
strcpy(dbFName, "1.db1");
|
strcpy(dbFName, "1.db1");
|
||||||
taosArrayPush(req.pDbVgroup, dbFName);
|
taosArrayPush(req.pDbVgroup, dbFName);
|
||||||
taosArrayPush(req.pDbCfg, dbFName);
|
taosArrayPush(req.pDbCfg, dbFName);
|
||||||
|
taosArrayPush(req.pDbInfo, dbFName);
|
||||||
strcpy(dbFName, "1.db2");
|
strcpy(dbFName, "1.db2");
|
||||||
taosArrayPush(req.pDbVgroup, dbFName);
|
taosArrayPush(req.pDbVgroup, dbFName);
|
||||||
taosArrayPush(req.pDbCfg, dbFName);
|
taosArrayPush(req.pDbCfg, dbFName);
|
||||||
|
taosArrayPush(req.pDbInfo, dbFName);
|
||||||
|
|
||||||
strcpy(funcName, "udf1");
|
strcpy(funcName, "udf1");
|
||||||
taosArrayPush(req.pUdf, funcName);
|
taosArrayPush(req.pUdf, funcName);
|
||||||
|
|
|
@ -98,6 +98,7 @@ static int32_t setValueByBindParam(SValueNode* pVal, TAOS_MULTI_BIND* pParam) {
|
||||||
}
|
}
|
||||||
varDataSetLen(pVal->datum.p, pVal->node.resType.bytes);
|
varDataSetLen(pVal->datum.p, pVal->node.resType.bytes);
|
||||||
strncpy(varDataVal(pVal->datum.p), (const char*)pParam->buffer, pVal->node.resType.bytes);
|
strncpy(varDataVal(pVal->datum.p), (const char*)pParam->buffer, pVal->node.resType.bytes);
|
||||||
|
pVal->node.resType.bytes += VARSTR_HEADER_SIZE;
|
||||||
break;
|
break;
|
||||||
case TSDB_DATA_TYPE_NCHAR: {
|
case TSDB_DATA_TYPE_NCHAR: {
|
||||||
pVal->node.resType.bytes *= TSDB_NCHAR_SIZE;
|
pVal->node.resType.bytes *= TSDB_NCHAR_SIZE;
|
||||||
|
@ -112,7 +113,7 @@ static int32_t setValueByBindParam(SValueNode* pVal, TAOS_MULTI_BIND* pParam) {
|
||||||
return errno;
|
return errno;
|
||||||
}
|
}
|
||||||
varDataSetLen(pVal->datum.p, output);
|
varDataSetLen(pVal->datum.p, output);
|
||||||
pVal->node.resType.bytes = output;
|
pVal->node.resType.bytes = output + VARSTR_HEADER_SIZE;
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
case TSDB_DATA_TYPE_TIMESTAMP:
|
case TSDB_DATA_TYPE_TIMESTAMP:
|
||||||
|
|
Loading…
Reference in New Issue