diff --git a/src/client/src/tscParseOpenTSDB.c b/src/client/src/tscParseOpenTSDB.c index 69a2db4345fb2b0e47802e840b6974e7b447a80a..6b34de63ffce3f4702ae0e9ed863ea02fb7a275b 100644 --- a/src/client/src/tscParseOpenTSDB.c +++ b/src/client/src/tscParseOpenTSDB.c @@ -58,7 +58,13 @@ static int32_t parseTelnetMetric(TAOS_SML_DATA_POINT *pSml, const char **index, break; } - pSml->stableName[len] = *cur; + //convert dot to underscore for now, will be removed once dot is allowed in tbname. + if (*cur == '.') { + pSml->stableName[len] = '_'; + } else { + pSml->stableName[len] = *cur; + } + cur++; len++; } @@ -455,6 +461,13 @@ int32_t parseMetricFromJSON(cJSON *root, TAOS_SML_DATA_POINT* pSml, SSmlLinesInf return TSDB_CODE_TSC_INVALID_JSON; } + //convert dot to underscore for now, will be removed once dot is allowed in tbname. + for (int i = 0; i < strlen(metric->valuestring); ++i) { + if (metric->valuestring[i] == '.') { + metric->valuestring[i] = '_'; + } + } + tstrncpy(pSml->stableName, metric->valuestring, stableLen + 1); return TSDB_CODE_SUCCESS;