fix some review problem

This commit is contained in:
Pengrongkun 2024-11-16 09:27:52 +08:00
parent 8d5508a7a6
commit a774d3b428
3 changed files with 10 additions and 32 deletions

View File

@ -155,7 +155,7 @@ int32_t tDecodeTag(SDecoder *pDecoder, STag **ppTag);
int32_t tTagToValArray(const STag *pTag, SArray **ppArray);
void debugPrintSTag(STag *pTag, const char *tag, int32_t ln); // TODO: remove
int32_t parseJsontoTagData(const char *json, SArray *pTagVals, STag **ppTag, void *pMsgBuf);
int32_t parseGeotoTagData(const char *g, SArray *pTagVals, SSchema *pTagSchema, unsigned char *output);
int32_t parseGeotoTagData(const char *g, SArray *pTagVals, SSchema *pTagSchema);
// SColData ================================
typedef struct {

View File

@ -189,19 +189,7 @@ int32_t qBindStmtTagsValue(void* pBlock, void* boundTags, int64_t suid, const ch
goto end;
}
} else if (pTagSchema->type == TSDB_DATA_TYPE_GEOMETRY) {
char* tmp = taosMemoryCalloc(1, colLen);
if (!tmp) {
code = terrno;
goto end;
}
memcpy(tmp, bind[c].buffer, colLen);
unsigned char* out = NULL;
code = parseGeotoTagData(tmp, pTagArray, pTagSchema, out);
taosMemoryFree(tmp);
if (code != TSDB_CODE_SUCCESS) {
geosFreeBuffer(out);
goto end;
}
code = parseGeotoTagData(bind[c].buffer, pTagArray, pTagSchema);
} else {
STagVal val = {.cid = pTagSchema->colId, .type = pTagSchema->type};
// strcpy(val.colName, pTagSchema->name);
@ -590,19 +578,7 @@ int32_t qBindStmtTagsValue2(void* pBlock, void* boundTags, int64_t suid, const c
goto end;
}
} else if (pTagSchema->type == TSDB_DATA_TYPE_GEOMETRY) {
char* tmp = taosMemoryCalloc(1, colLen);
if (!tmp) {
code = terrno;
goto end;
}
memcpy(tmp, bind[c].buffer, colLen);
unsigned char* out = NULL;
code = parseGeotoTagData(tmp, pTagArray, pTagSchema, out);
taosMemoryFree(tmp);
if (code != TSDB_CODE_SUCCESS) {
geosFreeBuffer(out);
goto end;
}
code = parseGeotoTagData(bind[c].buffer, pTagArray, pTagSchema);
} else {
STagVal val = {.cid = pTagSchema->colId, .type = pTagSchema->type};
// strcpy(val.colName, pTagSchema->name);

View File

@ -519,13 +519,14 @@ end:
return retCode;
}
int32_t parseGeotoTagData(const char* g, SArray* pTagVals, SSchema* pTagSchema, unsigned char* output) {
int32_t parseGeotoTagData(const char* g, SArray* pTagVals, SSchema* pTagSchema) {
int32_t code = 0;
size_t size = 0;
unsigned char* output = NULL;
STagVal val = {.cid = pTagSchema->colId, .type = pTagSchema->type};
code = initCtxGeomFromText();
if (code != TSDB_CODE_SUCCESS) {
goto end;
return code;
}
code = doGeomFromText(g, &output, &size);
if (code != TSDB_CODE_SUCCESS) {
@ -541,6 +542,7 @@ int32_t parseGeotoTagData(const char* g, SArray* pTagVals, SSchema* pTagSchema,
if (NULL == taosArrayPush(pTagVals, &val)) {
code = terrno;
geosFreeBuffer(output);
goto end;
}