change table meta
This commit is contained in:
parent
de76b5bd30
commit
d255b599f5
|
@ -635,6 +635,7 @@ typedef struct SCMSTableVgroupMsg {
|
||||||
|
|
||||||
typedef struct {
|
typedef struct {
|
||||||
int32_t vgId;
|
int32_t vgId;
|
||||||
|
int8_t numOfIps;
|
||||||
SIpAddr ipAddr[TSDB_REPLICA_MAX_NUM];
|
SIpAddr ipAddr[TSDB_REPLICA_MAX_NUM];
|
||||||
} SCMVgroupInfo;
|
} SCMVgroupInfo;
|
||||||
|
|
||||||
|
@ -688,7 +689,6 @@ typedef struct {
|
||||||
|
|
||||||
typedef struct STableMetaMsg {
|
typedef struct STableMetaMsg {
|
||||||
int32_t contLen;
|
int32_t contLen;
|
||||||
|
|
||||||
char tableId[TSDB_TABLE_ID_LEN]; // table id
|
char tableId[TSDB_TABLE_ID_LEN]; // table id
|
||||||
char stableId[TSDB_TABLE_ID_LEN]; // stable name if it is created according to super table
|
char stableId[TSDB_TABLE_ID_LEN]; // stable name if it is created according to super table
|
||||||
uint8_t numOfTags;
|
uint8_t numOfTags;
|
||||||
|
@ -696,11 +696,9 @@ typedef struct STableMetaMsg {
|
||||||
uint8_t tableType;
|
uint8_t tableType;
|
||||||
int16_t numOfColumns;
|
int16_t numOfColumns;
|
||||||
int16_t sversion;
|
int16_t sversion;
|
||||||
int8_t numOfVpeers;
|
|
||||||
SVnodeDesc vpeerDesc[TSDB_VNODES_SUPPORT];
|
|
||||||
int32_t sid;
|
int32_t sid;
|
||||||
int32_t vgId;
|
|
||||||
uint64_t uid;
|
uint64_t uid;
|
||||||
|
SCMVgroupInfo vgroup;
|
||||||
SSchema schema[];
|
SSchema schema[];
|
||||||
} STableMetaMsg;
|
} STableMetaMsg;
|
||||||
|
|
||||||
|
|
|
@ -1168,7 +1168,7 @@ static void mgmtProcessSuperTableVgroupMsg(SQueuedMsg *pMsg) {
|
||||||
SCMSTableVgroupMsg *pInfo = pMsg->pCont;
|
SCMSTableVgroupMsg *pInfo = pMsg->pCont;
|
||||||
SSuperTableObj *pTable = mgmtGetSuperTable(pInfo->tableId);
|
SSuperTableObj *pTable = mgmtGetSuperTable(pInfo->tableId);
|
||||||
|
|
||||||
pMsg->pTable = pTable;
|
pMsg->pTable = (STableObj *)pTable;
|
||||||
if (pMsg->pTable == NULL) {
|
if (pMsg->pTable == NULL) {
|
||||||
mgmtSendSimpleResp(pMsg->thandle, TSDB_CODE_INVALID_TABLE);
|
mgmtSendSimpleResp(pMsg->thandle, TSDB_CODE_INVALID_TABLE);
|
||||||
return;
|
return;
|
||||||
|
@ -1196,6 +1196,7 @@ static void mgmtProcessSuperTableVgroupMsg(SQueuedMsg *pMsg) {
|
||||||
|
|
||||||
pRsp->vgroups[vg].ipAddr[vn].ip = htonl(pDnode->privateIp);
|
pRsp->vgroups[vg].ipAddr[vn].ip = htonl(pDnode->privateIp);
|
||||||
pRsp->vgroups[vg].ipAddr[vn].port = htons(tsDnodeShellPort);
|
pRsp->vgroups[vg].ipAddr[vn].port = htons(tsDnodeShellPort);
|
||||||
|
pRsp->vgroups[vg].numOfIps++;
|
||||||
|
|
||||||
clusterReleaseDnode(pDnode);
|
clusterReleaseDnode(pDnode);
|
||||||
}
|
}
|
||||||
|
@ -1575,7 +1576,6 @@ static int32_t mgmtDoGetChildTableMeta(SQueuedMsg *pMsg, STableMetaMsg *pMeta) {
|
||||||
|
|
||||||
pMeta->uid = htobe64(pTable->uid);
|
pMeta->uid = htobe64(pTable->uid);
|
||||||
pMeta->sid = htonl(pTable->sid);
|
pMeta->sid = htonl(pTable->sid);
|
||||||
pMeta->vgId = htonl(pTable->vgId);
|
|
||||||
pMeta->precision = pDb->cfg.precision;
|
pMeta->precision = pDb->cfg.precision;
|
||||||
pMeta->tableType = pTable->info.type;
|
pMeta->tableType = pTable->info.type;
|
||||||
strncpy(pMeta->tableId, pTable->info.tableId, tListLen(pTable->info.tableId));
|
strncpy(pMeta->tableId, pTable->info.tableId, tListLen(pTable->info.tableId));
|
||||||
|
@ -1599,16 +1599,20 @@ static int32_t mgmtDoGetChildTableMeta(SQueuedMsg *pMsg, STableMetaMsg *pMeta) {
|
||||||
return TSDB_CODE_INVALID_VGROUP_ID;
|
return TSDB_CODE_INVALID_VGROUP_ID;
|
||||||
}
|
}
|
||||||
|
|
||||||
for (int32_t i = 0; i < TSDB_VNODES_SUPPORT; ++i) {
|
for (int32_t i = 0; i < pVgroup->numOfVnodes; ++i) {
|
||||||
|
SDnodeObj *pDnode = clusterGetDnode(pVgroup->vnodeGid[i].dnodeId);
|
||||||
|
if (pDnode == NULL) break;
|
||||||
if (usePublicIp) {
|
if (usePublicIp) {
|
||||||
pMeta->vpeerDesc[i].ip = htonl(pVgroup->vnodeGid[i].publicIp);
|
pMeta->vgroup.ipAddr[i].ip = htonl(pDnode->publicIp);
|
||||||
|
pMeta->vgroup.ipAddr[i].port = htonl(tsDnodeShellPort);
|
||||||
} else {
|
} else {
|
||||||
pMeta->vpeerDesc[i].ip = htonl(pVgroup->vnodeGid[i].privateIp);
|
pMeta->vgroup.ipAddr[i].ip = htonl(pDnode->privateIp);
|
||||||
|
pMeta->vgroup.ipAddr[i].port = htonl(tsDnodeShellPort);
|
||||||
}
|
}
|
||||||
// pMeta->vpeerDesc[i].vgId = htonl(pVgroup->vgId);
|
pMeta->vgroup.numOfIps++;
|
||||||
pMeta->vpeerDesc[i].dnodeId = htonl(pVgroup->vnodeGid[i].dnodeId);
|
clusterReleaseDnode(pDnode);
|
||||||
}
|
}
|
||||||
pMeta->numOfVpeers = pVgroup->numOfVnodes;
|
pMeta->vgroup.vgId = htonl(pVgroup->vgId);
|
||||||
|
|
||||||
mTrace("table:%s, uid:%" PRIu64 " table meta is retrieved", pTable->info.tableId, pTable->uid);
|
mTrace("table:%s, uid:%" PRIu64 " table meta is retrieved", pTable->info.tableId, pTable->uid);
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue