提交 bcf477d3 编写于 作者: X Xiaoyu Wang

feat: sql command 'show consumers' and 'show subscriptions'

上级 0b9eb79b
...@@ -897,7 +897,7 @@ STableCfg* tableCfgDup(STableCfg* pCfg) { ...@@ -897,7 +897,7 @@ STableCfg* tableCfgDup(STableCfg* pCfg) {
if (pNew->pFuncs) { if (pNew->pFuncs) {
pNew->pFuncs = taosArrayDup(pNew->pFuncs); pNew->pFuncs = taosArrayDup(pNew->pFuncs);
} }
int32_t schemaSize = (pCfg->numOfColumns + pCfg->numOfTags) * sizeof(SSchema); int32_t schemaSize = (pCfg->numOfColumns + pCfg->numOfTags) * sizeof(SSchema);
SSchema* pSchema = taosMemoryMalloc(schemaSize); SSchema* pSchema = taosMemoryMalloc(schemaSize);
...@@ -912,7 +912,7 @@ int32_t getTableCfgFromCache(SParseMetaCache* pMetaCache, const SName* pName, ST ...@@ -912,7 +912,7 @@ int32_t getTableCfgFromCache(SParseMetaCache* pMetaCache, const SName* pName, ST
char fullName[TSDB_TABLE_FNAME_LEN]; char fullName[TSDB_TABLE_FNAME_LEN];
tNameExtractFullName(pName, fullName); tNameExtractFullName(pName, fullName);
STableCfg* pCfg = NULL; STableCfg* pCfg = NULL;
int32_t code = getMetaDataFromHash(fullName, strlen(fullName), pMetaCache->pTableCfg, (void**)&pCfg); int32_t code = getMetaDataFromHash(fullName, strlen(fullName), pMetaCache->pTableCfg, (void**)&pCfg);
if (TSDB_CODE_SUCCESS == code) { if (TSDB_CODE_SUCCESS == code) {
*pOutput = tableCfgDup(pCfg); *pOutput = tableCfgDup(pCfg);
if (NULL == *pOutput) { if (NULL == *pOutput) {
...@@ -929,10 +929,10 @@ int32_t reserveDnodeRequiredInCache(SParseMetaCache* pMetaCache) { ...@@ -929,10 +929,10 @@ int32_t reserveDnodeRequiredInCache(SParseMetaCache* pMetaCache) {
int32_t getDnodeListFromCache(SParseMetaCache* pMetaCache, SArray** pDnodes) { int32_t getDnodeListFromCache(SParseMetaCache* pMetaCache, SArray** pDnodes) {
SMetaRes* pRes = taosArrayGet(pMetaCache->pDnodes, 0); SMetaRes* pRes = taosArrayGet(pMetaCache->pDnodes, 0);
if (pRes->code) { if (TSDB_CODE_SUCCESS != pRes->code) {
return pRes->code; return pRes->code;
} }
*pDnodes = taosArrayDup((SArray*)pRes->pRes); *pDnodes = taosArrayDup((SArray*)pRes->pRes);
if (NULL == *pDnodes) { if (NULL == *pDnodes) {
return TSDB_CODE_OUT_OF_MEMORY; return TSDB_CODE_OUT_OF_MEMORY;
......
...@@ -166,13 +166,10 @@ class MockCatalogServiceImpl { ...@@ -166,13 +166,10 @@ class MockCatalogServiceImpl {
} }
int32_t catalogGetDnodeList(SArray** pDnodes) const { int32_t catalogGetDnodeList(SArray** pDnodes) const {
SMetaRes res = {0}; *pDnodes = taosArrayInit(dnode_.size(), sizeof(SEpSet));
res.pRes = taosArrayInit(dnode_.size(), sizeof(SEpSet));
for (const auto& dnode : dnode_) { for (const auto& dnode : dnode_) {
taosArrayPush((SArray*)res.pRes, &dnode.second); taosArrayPush(*pDnodes, &dnode.second);
} }
*pDnodes = taosArrayInit(1, sizeof(SMetaRes));
taosArrayPush(*pDnodes, &res);
return TSDB_CODE_SUCCESS; return TSDB_CODE_SUCCESS;
} }
...@@ -200,7 +197,7 @@ class MockCatalogServiceImpl { ...@@ -200,7 +197,7 @@ class MockCatalogServiceImpl {
code = getAllTableIndex(pCatalogReq->pTableIndex, &pMetaData->pTableIndex); code = getAllTableIndex(pCatalogReq->pTableIndex, &pMetaData->pTableIndex);
} }
if (TSDB_CODE_SUCCESS == code && pCatalogReq->dNodeRequired) { if (TSDB_CODE_SUCCESS == code && pCatalogReq->dNodeRequired) {
code = catalogGetDnodeList(&pMetaData->pDnodeList); code = getAllDnodeList(&pMetaData->pDnodeList);
} }
if (TSDB_CODE_SUCCESS == code) { if (TSDB_CODE_SUCCESS == code) {
code = getAllTableCfg(pCatalogReq->pTableCfg, &pMetaData->pTableCfg); code = getAllTableCfg(pCatalogReq->pTableCfg, &pMetaData->pTableCfg);
...@@ -565,6 +562,13 @@ class MockCatalogServiceImpl { ...@@ -565,6 +562,13 @@ class MockCatalogServiceImpl {
return TSDB_CODE_SUCCESS; return TSDB_CODE_SUCCESS;
} }
int32_t getAllDnodeList(SArray** pDnodes) const {
SMetaRes res = {0};
*pDnodes = taosArrayInit(1, sizeof(SMetaRes));
taosArrayPush(*pDnodes, &res);
return catalogGetDnodeList((SArray**)&res.pRes);
}
uint64_t id_; uint64_t id_;
std::unique_ptr<TableBuilder> builder_; std::unique_ptr<TableBuilder> builder_;
DbMetaCache meta_; DbMetaCache meta_;
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册