Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
taosdata
TDengine
提交
c4d25ccb
T
TDengine
项目概览
taosdata
/
TDengine
12 个月 前同步成功
通知
1180
Star
22014
Fork
4786
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
1
列表
看板
标记
里程碑
合并请求
0
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
T
TDengine
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
1
Issue
1
列表
看板
标记
里程碑
合并请求
0
合并请求
0
Pages
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
提交
Issue看板
体验新版 GitCode,发现更多精彩内容 >>
提交
c4d25ccb
编写于
8月 16, 2022
作者:
wmmhello
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
fix:remove log for time cost
上级
19c5051b
变更
2
隐藏空白更改
内联
并排
Showing
2 changed file
with
84 addition
and
84 deletion
+84
-84
source/dnode/vnode/src/meta/metaQuery.c
source/dnode/vnode/src/meta/metaQuery.c
+73
-73
source/libs/executor/src/executil.c
source/libs/executor/src/executil.c
+11
-11
未找到文件。
source/dnode/vnode/src/meta/metaQuery.c
浏览文件 @
c4d25ccb
...
...
@@ -53,79 +53,79 @@ _err:
return
-
1
;
}
int
metaGetTableEntryByUidTest
(
void
*
meta
,
SArray
*
uidList
)
{
SArray
*
readerList
=
taosArrayInit
(
taosArrayGetSize
(
uidList
),
sizeof
(
SMetaReader
));
SArray
*
uidVersion
=
taosArrayInit
(
taosArrayGetSize
(
uidList
),
sizeof
(
STbDbKey
));
SMeta
*
pMeta
=
meta
;
int64_t
version
;
SHashObj
*
uHash
=
taosHashInit
(
32
,
taosGetDefaultHashFunction
(
TSDB_DATA_TYPE_BIGINT
),
false
,
HASH_NO_LOCK
);
int64_t
stt1
=
taosGetTimestampUs
();
for
(
int
i
=
0
;
i
<
taosArrayGetSize
(
uidList
);
i
++
)
{
void
*
ppVal
=
NULL
;
int
vlen
=
0
;
uint64_t
*
uid
=
taosArrayGet
(
uidList
,
i
);
// query uid.idx
if
(
tdbTbGet
(
pMeta
->
pUidIdx
,
uid
,
sizeof
(
*
uid
),
&
ppVal
,
&
vlen
)
<
0
)
{
continue
;
}
version
=
*
(
int64_t
*
)
ppVal
;
STbDbKey
tbDbKey
=
{.
version
=
version
,
.
uid
=
*
uid
};
taosArrayPush
(
uidVersion
,
&
tbDbKey
);
taosHashPut
(
uHash
,
uid
,
sizeof
(
int64_t
),
ppVal
,
sizeof
(
int64_t
));
}
int64_t
stt2
=
taosGetTimestampUs
();
qDebug
(
"metaGetTableEntryByUidTest1 rows:%d, cost:%ld us"
,
taosArrayGetSize
(
uidList
),
stt2
-
stt1
);
TBC
*
pCur
=
NULL
;
tdbTbcOpen
(
pMeta
->
pTbDb
,
&
pCur
,
NULL
);
tdbTbcMoveToFirst
(
pCur
);
void
*
pKey
=
NULL
;
int
kLen
=
0
;
while
(
1
){
SMetaReader
pReader
=
{
0
};
int32_t
ret
=
tdbTbcNext
(
pCur
,
&
pKey
,
&
kLen
,
&
pReader
.
pBuf
,
&
pReader
.
szBuf
);
if
(
ret
<
0
)
break
;
STbDbKey
*
tmp
=
(
STbDbKey
*
)
pKey
;
int64_t
*
ver
=
(
int64_t
*
)
taosHashGet
(
uHash
,
&
tmp
->
uid
,
sizeof
(
int64_t
));
if
(
ver
==
NULL
||
*
ver
!=
tmp
->
version
)
continue
;
taosArrayPush
(
readerList
,
&
pReader
);
}
tdbTbcClose
(
pCur
);
taosArrayClear
(
readerList
);
int64_t
stt3
=
taosGetTimestampUs
();
qDebug
(
"metaGetTableEntryByUidTest2 rows:%d, cost:%ld us"
,
taosArrayGetSize
(
uidList
),
stt3
-
stt2
);
for
(
int
i
=
0
;
i
<
taosArrayGetSize
(
uidVersion
);
i
++
)
{
SMetaReader
pReader
=
{
0
};
STbDbKey
*
tbDbKey
=
taosArrayGet
(
uidVersion
,
i
);
// query table.db
if
(
tdbTbGet
(
pMeta
->
pTbDb
,
tbDbKey
,
sizeof
(
STbDbKey
),
&
pReader
.
pBuf
,
&
pReader
.
szBuf
)
<
0
)
{
continue
;
}
taosArrayPush
(
readerList
,
&
pReader
);
}
int64_t
stt4
=
taosGetTimestampUs
();
qDebug
(
"metaGetTableEntryByUidTest3 rows:%d, cost:%ld us"
,
taosArrayGetSize
(
uidList
),
stt4
-
stt3
);
for
(
int
i
=
0
;
i
<
taosArrayGetSize
(
readerList
);
i
++
){
SMetaReader
*
pReader
=
taosArrayGet
(
readerList
,
i
);
metaReaderInit
(
pReader
,
meta
,
0
);
// decode the entry
tDecoderInit
(
&
pReader
->
coder
,
pReader
->
pBuf
,
pReader
->
szBuf
);
if
(
metaDecodeEntry
(
&
pReader
->
coder
,
&
pReader
->
me
)
<
0
)
{
}
metaReaderClear
(
pReader
);
}
int64_t
stt5
=
taosGetTimestampUs
();
qDebug
(
"metaGetTableEntryByUidTest4 rows:%d, cost:%ld us"
,
taosArrayGetSize
(
readerList
),
stt5
-
stt4
);
return
0
;
}
//
int metaGetTableEntryByUidTest(void* meta, SArray *uidList) {
//
//
SArray* readerList = taosArrayInit(taosArrayGetSize(uidList), sizeof(SMetaReader));
//
SArray* uidVersion = taosArrayInit(taosArrayGetSize(uidList), sizeof(STbDbKey));
//
SMeta *pMeta = meta;
//
int64_t version;
//
SHashObj *uHash = taosHashInit(32, taosGetDefaultHashFunction(TSDB_DATA_TYPE_BIGINT), false, HASH_NO_LOCK);
//
//
int64_t stt1 = taosGetTimestampUs();
//
for(int i = 0; i < taosArrayGetSize(uidList); i++) {
//
void* ppVal = NULL;
//
int vlen = 0;
//
uint64_t * uid = taosArrayGet(uidList, i);
//
// query uid.idx
//
if (tdbTbGet(pMeta->pUidIdx, uid, sizeof(*uid), &ppVal, &vlen) < 0) {
//
continue;
//
}
//
version = *(int64_t *)ppVal;
//
//
STbDbKey tbDbKey = {.version = version, .uid = *uid};
//
taosArrayPush(uidVersion, &tbDbKey);
//
taosHashPut(uHash, uid, sizeof(int64_t), ppVal, sizeof(int64_t));
//
}
//
int64_t stt2 = taosGetTimestampUs();
//
qDebug("metaGetTableEntryByUidTest1 rows:%d, cost:%ld us", taosArrayGetSize(uidList), stt2-stt1);
//
//
TBC *pCur = NULL;
//
tdbTbcOpen(pMeta->pTbDb, &pCur, NULL);
//
tdbTbcMoveToFirst(pCur);
//
void *pKey = NULL;
//
int kLen = 0;
//
//
while(1){
//
SMetaReader pReader = {0};
//
int32_t ret = tdbTbcNext(pCur, &pKey, &kLen, &pReader.pBuf, &pReader.szBuf);
//
if (ret < 0) break;
//
STbDbKey *tmp = (STbDbKey*)pKey;
//
int64_t *ver = (int64_t*)taosHashGet(uHash, &tmp->uid, sizeof(int64_t));
//
if(ver == NULL || *ver != tmp->version) continue;
//
taosArrayPush(readerList, &pReader);
//
}
//
tdbTbcClose(pCur);
//
//
taosArrayClear(readerList);
//
int64_t stt3 = taosGetTimestampUs();
//
qDebug("metaGetTableEntryByUidTest2 rows:%d, cost:%ld us", taosArrayGetSize(uidList), stt3-stt2);
//
for(int i = 0; i < taosArrayGetSize(uidVersion); i++) {
//
SMetaReader pReader = {0};
//
//
STbDbKey *tbDbKey = taosArrayGet(uidVersion, i);
//
// query table.db
//
if (tdbTbGet(pMeta->pTbDb, tbDbKey, sizeof(STbDbKey), &pReader.pBuf, &pReader.szBuf) < 0) {
//
continue;
//
}
//
taosArrayPush(readerList, &pReader);
//
}
//
int64_t stt4 = taosGetTimestampUs();
//
qDebug("metaGetTableEntryByUidTest3 rows:%d, cost:%ld us", taosArrayGetSize(uidList), stt4-stt3);
//
//
for(int i = 0; i < taosArrayGetSize(readerList); i++){
//
SMetaReader* pReader = taosArrayGet(readerList, i);
//
metaReaderInit(pReader, meta, 0);
//
// decode the entry
//
tDecoderInit(&pReader->coder, pReader->pBuf, pReader->szBuf);
//
//
if (metaDecodeEntry(&pReader->coder, &pReader->me) < 0) {
//
}
//
metaReaderClear(pReader);
//
}
//
int64_t stt5 = taosGetTimestampUs();
//
qDebug("metaGetTableEntryByUidTest4 rows:%d, cost:%ld us", taosArrayGetSize(readerList), stt5-stt4);
//
return 0;
//
}
int
metaGetTableEntryByUid
(
SMetaReader
*
pReader
,
tb_uid_t
uid
)
{
SMeta
*
pMeta
=
pReader
->
pMeta
;
...
...
source/libs/executor/src/executil.c
浏览文件 @
c4d25ccb
...
...
@@ -396,7 +396,7 @@ static SColumnInfoData* getColInfoResult(void* metaHandle, uint64_t suid, SArray
blockDataAppendColInfo
(
pResBlock
,
&
colInfo
);
}
int64_t
stt
=
taosGetTimestampUs
();
//
int64_t stt = taosGetTimestampUs();
tags
=
taosArrayInit
(
8
,
POINTER_BYTES
);
code
=
metaGetTableTags
(
metaHandle
,
suid
,
uidList
,
tags
);
if
(
code
!=
TSDB_CODE_SUCCESS
)
{
...
...
@@ -408,8 +408,8 @@ static SColumnInfoData* getColInfoResult(void* metaHandle, uint64_t suid, SArray
if
(
rows
==
0
){
goto
end
;
}
int64_t
stt1
=
taosGetTimestampUs
();
qDebug
(
"generate tag meta rows:%d, cost:%ld us"
,
rows
,
stt1
-
stt
);
//
int64_t stt1 = taosGetTimestampUs();
//
qDebug("generate tag meta rows:%d, cost:%ld us", rows, stt1-stt);
code
=
blockDataEnsureCapacity
(
pResBlock
,
rows
);
if
(
code
!=
TSDB_CODE_SUCCESS
)
{
...
...
@@ -417,7 +417,7 @@ static SColumnInfoData* getColInfoResult(void* metaHandle, uint64_t suid, SArray
goto
end
;
}
int64_t
st
=
taosGetTimestampUs
();
//
int64_t st = taosGetTimestampUs();
for
(
int32_t
i
=
0
;
i
<
rows
;
i
++
)
{
void
*
tag
=
taosArrayGetP
(
tags
,
i
);
int64_t
*
uid
=
taosArrayGet
(
uidList
,
i
);
...
...
@@ -451,8 +451,8 @@ static SColumnInfoData* getColInfoResult(void* metaHandle, uint64_t suid, SArray
}
pResBlock
->
info
.
rows
=
rows
;
int64_t
st1
=
taosGetTimestampUs
();
qDebug
(
"generate tag block rows:%d, cost:%ld us"
,
rows
,
st1
-
st
);
//
int64_t st1 = taosGetTimestampUs();
//
qDebug("generate tag block rows:%d, cost:%ld us", rows, st1-st);
pBlockList
=
taosArrayInit
(
2
,
POINTER_BYTES
);
taosArrayPush
(
pBlockList
,
&
pResBlock
);
...
...
@@ -467,8 +467,8 @@ static SColumnInfoData* getColInfoResult(void* metaHandle, uint64_t suid, SArray
if
(
code
!=
TSDB_CODE_SUCCESS
){
terrno
=
code
;
}
int64_t
st2
=
taosGetTimestampUs
();
qDebug
(
"calculate tag block rows:%d, cost:%ld us"
,
rows
,
st2
-
st1
);
//
int64_t st2 = taosGetTimestampUs();
//
qDebug("calculate tag block rows:%d, cost:%ld us", rows, st2-st1);
end:
taosArrayDestroyP
(
tags
,
taosMemoryFree
);
...
...
@@ -497,15 +497,15 @@ int32_t getTableList(void* metaHandle, void* pVnode, SScanPhysiNode* pScanNode,
SIndexMetaArg
metaArg
=
{
.
metaEx
=
metaHandle
,
.
idx
=
tsdbGetIdx
(
metaHandle
),
.
ivtIdx
=
tsdbGetIvtIdx
(
metaHandle
),
.
suid
=
tableUid
};
int64_t
stt
=
taosGetTimestampUs
();
//
int64_t stt = taosGetTimestampUs();
SIdxFltStatus
status
=
SFLT_NOT_INDEX
;
code
=
doFilterTag
(
pTagIndexCond
,
&
metaArg
,
res
,
&
status
);
if
(
code
!=
0
||
status
==
SFLT_NOT_INDEX
)
{
qError
(
"failed to get tableIds from index, reason:%s, suid:%"
PRIu64
,
tstrerror
(
code
),
tableUid
);
}
int64_t
stt1
=
taosGetTimestampUs
();
qDebug
(
"generate table list, cost:%ld us"
,
stt1
-
stt
);
//
int64_t stt1 = taosGetTimestampUs();
//
qDebug("generate table list, cost:%ld us", stt1-stt);
}
else
if
(
!
pTagCond
){
vnodeGetCtbIdList
(
pVnode
,
pScanNode
->
suid
,
res
);
}
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录