mnode/table: separate table id prefix from mnodeRetrieveShowTables
prep for cross db create table checking in mnodeDoCreateChildTable
This commit is contained in:
parent
f61f005eeb
commit
979d73fbb2
|
@ -25,6 +25,8 @@ void extractTableName(const char *tableId, char *name);
|
||||||
|
|
||||||
char* extractDBName(const char *tableId, char *name);
|
char* extractDBName(const char *tableId, char *name);
|
||||||
|
|
||||||
|
int32_t tableIdPrefix(const char* pDb, char* prefix, int32_t len);
|
||||||
|
|
||||||
void extractTableNameFromToken(SStrToken *pToken, SStrToken* pTable);
|
void extractTableNameFromToken(SStrToken *pToken, SStrToken* pTable);
|
||||||
|
|
||||||
SSchema tGetTableNameColumnSchema();
|
SSchema tGetTableNameColumnSchema();
|
||||||
|
|
|
@ -39,6 +39,13 @@ char* extractDBName(const char* tableId, char* name) {
|
||||||
return strncpy(name, &tableId[offset1 + 1], len);
|
return strncpy(name, &tableId[offset1 + 1], len);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
int32_t tableIdPrefix(const char* name, char* prefix, int32_t len) {
|
||||||
|
tstrncpy(prefix, name, len);
|
||||||
|
strcat(prefix, TS_PATH_DELIMITER);
|
||||||
|
|
||||||
|
return strlen(prefix);
|
||||||
|
}
|
||||||
|
|
||||||
SSchema tGetTableNameColumnSchema() {
|
SSchema tGetTableNameColumnSchema() {
|
||||||
SSchema s = {0};
|
SSchema s = {0};
|
||||||
s.bytes = TSDB_TABLE_NAME_LEN - 1 + VARSTR_HEADER_SIZE;
|
s.bytes = TSDB_TABLE_NAME_LEN - 1 + VARSTR_HEADER_SIZE;
|
||||||
|
@ -198,4 +205,4 @@ SSchema tscGetTbnameColumnSchema() {
|
||||||
|
|
||||||
strcpy(s.name, TSQL_TBNAME_L);
|
strcpy(s.name, TSQL_TBNAME_L);
|
||||||
return s;
|
return s;
|
||||||
}
|
}
|
||||||
|
|
|
@ -2629,9 +2629,7 @@ static int32_t mnodeRetrieveShowTables(SShowObj *pShow, char *data, int32_t rows
|
||||||
SPatternCompareInfo info = PATTERN_COMPARE_INFO_INITIALIZER;
|
SPatternCompareInfo info = PATTERN_COMPARE_INFO_INITIALIZER;
|
||||||
|
|
||||||
char prefix[64] = {0};
|
char prefix[64] = {0};
|
||||||
tstrncpy(prefix, pDb->name, 64);
|
int32_t prefixLen = tableIdPrefix(pDb->name, prefix, 64);
|
||||||
strcat(prefix, TS_PATH_DELIMITER);
|
|
||||||
int32_t prefixLen = strlen(prefix);
|
|
||||||
|
|
||||||
char* pattern = NULL;
|
char* pattern = NULL;
|
||||||
if (pShow->payloadLen > 0) {
|
if (pShow->payloadLen > 0) {
|
||||||
|
|
Loading…
Reference in New Issue