Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
taosdata
TDengine
提交
f1bd8299
T
TDengine
项目概览
taosdata
/
TDengine
1 年多 前同步成功
通知
1187
Star
22018
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看板
提交
f1bd8299
编写于
6月 02, 2023
作者:
H
Haojun Liao
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
refactor: do some internal refactor.
上级
27b7d1ec
变更
8
隐藏空白更改
内联
并排
Showing
8 changed file
with
23 addition
and
17 deletion
+23
-17
source/dnode/vnode/inc/vnode.h
source/dnode/vnode/inc/vnode.h
+1
-1
source/dnode/vnode/src/tq/tq.c
source/dnode/vnode/src/tq/tq.c
+2
-1
source/dnode/vnode/src/tq/tqMeta.c
source/dnode/vnode/src/tq/tqMeta.c
+2
-1
source/dnode/vnode/src/tq/tqRead.c
source/dnode/vnode/src/tq/tqRead.c
+11
-8
source/libs/executor/src/executor.c
source/libs/executor/src/executor.c
+1
-1
source/libs/executor/src/scanoperator.c
source/libs/executor/src/scanoperator.c
+3
-2
source/libs/stream/src/streamDispatch.c
source/libs/stream/src/streamDispatch.c
+1
-1
source/libs/stream/src/streamExec.c
source/libs/stream/src/streamExec.c
+2
-2
未找到文件。
source/dnode/vnode/inc/vnode.h
浏览文件 @
f1bd8299
...
...
@@ -200,7 +200,7 @@ STqReader *tqReaderOpen(SVnode *pVnode);
void
tqReaderClose
(
STqReader
*
);
void
tqReaderSetColIdList
(
STqReader
*
pReader
,
SArray
*
pColIdList
);
int32_t
tqReaderSetTbUidList
(
STqReader
*
pReader
,
const
SArray
*
tbUidList
);
int32_t
tqReaderSetTbUidList
(
STqReader
*
pReader
,
const
SArray
*
tbUidList
,
const
char
*
id
);
int32_t
tqReaderAddTbUidList
(
STqReader
*
pReader
,
const
SArray
*
pTableUidList
);
int32_t
tqReaderRemoveTbUidList
(
STqReader
*
pReader
,
const
SArray
*
tbUidList
);
...
...
source/dnode/vnode/src/tq/tq.c
浏览文件 @
f1bd8299
...
...
@@ -708,8 +708,9 @@ int32_t tqProcessSubscribeReq(STQ* pTq, int64_t sversion, char* msg, int32_t msg
int64_t
tbUid
=
*
(
int64_t
*
)
taosArrayGet
(
tbUidList
,
i
);
tqDebug
(
"vgId:%d, idx %d, uid:%"
PRId64
,
vgId
,
i
,
tbUid
);
}
pHandle
->
execHandle
.
pTqReader
=
tqReaderOpen
(
pVnode
);
tqReaderSetTbUidList
(
pHandle
->
execHandle
.
pTqReader
,
tbUidList
);
tqReaderSetTbUidList
(
pHandle
->
execHandle
.
pTqReader
,
tbUidList
,
NULL
);
taosArrayDestroy
(
tbUidList
);
buildSnapContext
(
handle
.
vnode
,
handle
.
version
,
req
.
suid
,
pHandle
->
execHandle
.
subType
,
pHandle
->
fetchMeta
,
...
...
source/dnode/vnode/src/tq/tqMeta.c
浏览文件 @
f1bd8299
...
...
@@ -344,8 +344,9 @@ int32_t tqMetaRestoreHandle(STQ* pTq) {
int64_t
tbUid
=
*
(
int64_t
*
)
taosArrayGet
(
tbUidList
,
i
);
tqDebug
(
"vgId:%d, idx %d, uid:%"
PRId64
,
vgId
,
i
,
tbUid
);
}
handle
.
execHandle
.
pTqReader
=
tqReaderOpen
(
pTq
->
pVnode
);
tqReaderSetTbUidList
(
handle
.
execHandle
.
pTqReader
,
tbUidList
);
tqReaderSetTbUidList
(
handle
.
execHandle
.
pTqReader
,
tbUidList
,
NULL
);
taosArrayDestroy
(
tbUidList
);
buildSnapContext
(
reader
.
vnode
,
reader
.
version
,
handle
.
execHandle
.
execTb
.
suid
,
handle
.
execHandle
.
subType
,
...
...
source/dnode/vnode/src/tq/tqRead.c
浏览文件 @
f1bd8299
...
...
@@ -394,8 +394,8 @@ bool tqNextBlockInWal(STqReader* pReader, const char* id) {
SSubmitTbData
*
pSubmitTbData
=
taosArrayGet
(
pReader
->
submit
.
aSubmitTbData
,
pReader
->
nextBlk
);
if
(
pReader
->
tbIdHash
==
NULL
)
{
SSDataBlock
*
pRes
=
NULL
;
int32_t
code
=
tqRetrieveDataBlock
(
pReader
,
&
pRes
,
NULL
);
SSDataBlock
*
pRes
=
NULL
;
int32_t
code
=
tqRetrieveDataBlock
(
pReader
,
&
pRes
,
NULL
);
if
(
code
==
TSDB_CODE_SUCCESS
&&
pRes
->
info
.
rows
>
0
)
{
return
true
;
}
...
...
@@ -457,7 +457,7 @@ bool tqNextBlockImpl(STqReader* pReader, const char* idstr) {
int32_t
numOfBlocks
=
taosArrayGetSize
(
pReader
->
submit
.
aSubmitTbData
);
while
(
pReader
->
nextBlk
<
numOfBlocks
)
{
tqDebug
(
"t
q reader
next data block, len:%d ver:%"
PRId64
" index:%d/%d, %s"
,
pReader
->
msg
.
msgLen
,
pReader
->
msg
.
ver
,
tqDebug
(
"t
ry
next data block, len:%d ver:%"
PRId64
" index:%d/%d, %s"
,
pReader
->
msg
.
msgLen
,
pReader
->
msg
.
ver
,
pReader
->
nextBlk
,
numOfBlocks
,
idstr
);
SSubmitTbData
*
pSubmitTbData
=
taosArrayGet
(
pReader
->
submit
.
aSubmitTbData
,
pReader
->
nextBlk
);
...
...
@@ -467,10 +467,11 @@ bool tqNextBlockImpl(STqReader* pReader, const char* idstr) {
void
*
ret
=
taosHashGet
(
pReader
->
tbIdHash
,
&
pSubmitTbData
->
uid
,
sizeof
(
int64_t
));
if
(
ret
!=
NULL
)
{
tqDebug
(
"
tq reader block found, ver:%"
PRId64
", uid:%"
PRId64
,
pReader
->
msg
.
ver
,
pSubmitTbData
->
uid
);
tqDebug
(
"
block found, ver:%"
PRId64
", uid:%"
PRId64
", %s"
,
pReader
->
msg
.
ver
,
pSubmitTbData
->
uid
,
idstr
);
return
true
;
}
else
{
tqDebug
(
"tq reader discard submit block, uid:%"
PRId64
", continue"
,
pSubmitTbData
->
uid
);
tqDebug
(
"discard submit block, uid:%"
PRId64
", total queried tables:%d continue %s"
,
pSubmitTbData
->
uid
,
taosHashGetSize
(
pReader
->
tbIdHash
),
idstr
);
}
pReader
->
nextBlk
++
;
...
...
@@ -604,7 +605,6 @@ static int32_t doSetVal(SColumnInfoData* pColumnInfoData, int32_t rowIndex, SCol
int32_t
tqRetrieveDataBlock
(
STqReader
*
pReader
,
SSDataBlock
**
pRes
,
const
char
*
id
)
{
tqDebug
(
"tq reader retrieve data block %p, index:%d"
,
pReader
->
msg
.
msgStr
,
pReader
->
nextBlk
);
SSubmitTbData
*
pSubmitTbData
=
taosArrayGet
(
pReader
->
submit
.
aSubmitTbData
,
pReader
->
nextBlk
++
);
SSDataBlock
*
pBlock
=
pReader
->
pResBlock
;
...
...
@@ -612,6 +612,7 @@ int32_t tqRetrieveDataBlock(STqReader* pReader, SSDataBlock** pRes, const char*
blockDataCleanup
(
pBlock
);
int32_t
vgId
=
pReader
->
pWalReader
->
pWal
->
cfg
.
vgId
;
int32_t
sversion
=
pSubmitTbData
->
sver
;
int64_t
suid
=
pSubmitTbData
->
suid
;
int64_t
uid
=
pSubmitTbData
->
uid
;
...
...
@@ -628,7 +629,7 @@ int32_t tqRetrieveDataBlock(STqReader* pReader, SSDataBlock** pRes, const char*
if
(
pReader
->
pSchemaWrapper
==
NULL
)
{
tqWarn
(
"vgId:%d, cannot found schema wrapper for table: suid:%"
PRId64
", uid:%"
PRId64
"version %d, possibly dropped table"
,
pReader
->
pWalReader
->
pWal
->
cfg
.
vgId
,
suid
,
uid
,
pReader
->
cachedSchemaVer
);
vgId
,
suid
,
uid
,
pReader
->
cachedSchemaVer
);
pReader
->
cachedSchemaSuid
=
0
;
terrno
=
TSDB_CODE_TQ_TABLE_SCHEMA_NOT_FOUND
;
return
-
1
;
...
...
@@ -642,6 +643,7 @@ int32_t tqRetrieveDataBlock(STqReader* pReader, SSDataBlock** pRes, const char*
if
(
blockDataGetNumOfCols
(
pBlock
)
==
0
)
{
int32_t
code
=
buildResSDataBlock
(
pReader
->
pResBlock
,
pReader
->
pSchemaWrapper
,
pReader
->
pColIdList
);
if
(
code
!=
TSDB_CODE_SUCCESS
)
{
tqError
(
"vgId:%d failed to build data block, code:%s"
,
vgId
,
tstrerror
(
code
));
return
code
;
}
}
...
...
@@ -998,7 +1000,7 @@ FAIL:
void
tqReaderSetColIdList
(
STqReader
*
pReader
,
SArray
*
pColIdList
)
{
pReader
->
pColIdList
=
pColIdList
;
}
int
tqReaderSetTbUidList
(
STqReader
*
pReader
,
const
SArray
*
tbUidList
)
{
int
tqReaderSetTbUidList
(
STqReader
*
pReader
,
const
SArray
*
tbUidList
,
const
char
*
id
)
{
if
(
pReader
->
tbIdHash
)
{
taosHashClear
(
pReader
->
tbIdHash
);
}
else
{
...
...
@@ -1015,6 +1017,7 @@ int tqReaderSetTbUidList(STqReader* pReader, const SArray* tbUidList) {
taosHashPut
(
pReader
->
tbIdHash
,
pKey
,
sizeof
(
int64_t
),
NULL
,
0
);
}
tqDebug
(
"s-task:%s %d tables are set to be queried target table"
,
id
,
(
int32_t
)
taosArrayGetSize
(
tbUidList
));
return
0
;
}
...
...
source/libs/executor/src/executor.c
浏览文件 @
f1bd8299
...
...
@@ -401,7 +401,7 @@ int32_t qUpdateTableListForStreamScanner(qTaskInfo_t tinfo, const SArray* tableI
int32_t
code
=
0
;
if
(
isAdd
)
{
qDebug
(
"add %d tables id into query list, %s"
,
(
int32_t
)
taosArrayGetSize
(
tableIdList
),
id
);
qDebug
(
"
try to
add %d tables id into query list, %s"
,
(
int32_t
)
taosArrayGetSize
(
tableIdList
),
id
);
}
// traverse to the stream scanner node to add this table id
...
...
source/libs/executor/src/scanoperator.c
浏览文件 @
f1bd8299
...
...
@@ -2308,7 +2308,8 @@ SOperatorInfo* createStreamScanOperatorInfo(SReadHandle* pHandle, STableScanPhys
SArray
*
pColIds
=
NULL
;
SStreamScanInfo
*
pInfo
=
taosMemoryCalloc
(
1
,
sizeof
(
SStreamScanInfo
));
SOperatorInfo
*
pOperator
=
taosMemoryCalloc
(
1
,
sizeof
(
SOperatorInfo
));
SStorageAPI
*
pAPI
=
&
pTaskInfo
->
storageAPI
;
SStorageAPI
*
pAPI
=
&
pTaskInfo
->
storageAPI
;
const
char
*
idstr
=
pTaskInfo
->
id
.
str
;
if
(
pInfo
==
NULL
||
pOperator
==
NULL
)
{
terrno
=
TSDB_CODE_OUT_OF_MEMORY
;
...
...
@@ -2419,7 +2420,7 @@ SOperatorInfo* createStreamScanOperatorInfo(SReadHandle* pHandle, STableScanPhys
// set the extract column id to streamHandle
pAPI
->
tqReaderFn
.
tqReaderSetColIdList
(
pInfo
->
tqReader
,
pColIds
);
SArray
*
tableIdList
=
extractTableIdList
(((
STableScanInfo
*
)(
pInfo
->
pTableScanOp
->
info
))
->
base
.
pTableListInfo
);
code
=
pAPI
->
tqReaderFn
.
tqReaderSetQueryTableList
(
pInfo
->
tqReader
,
tableIdList
);
code
=
pAPI
->
tqReaderFn
.
tqReaderSetQueryTableList
(
pInfo
->
tqReader
,
tableIdList
,
idstr
);
if
(
code
!=
0
)
{
taosArrayDestroy
(
tableIdList
);
goto
_error
;
...
...
source/libs/stream/src/streamDispatch.c
浏览文件 @
f1bd8299
...
...
@@ -318,7 +318,7 @@ int32_t doSendDispatchMsg(SStreamTask* pTask, const SStreamDispatchReq* pReq, in
msg
.
pCont
=
buf
;
msg
.
msgType
=
pTask
->
dispatchMsgType
;
qDebug
(
"
dispatch from s-task:%s
to taskId:0x%x vgId:%d data msg"
,
pTask
->
id
.
idStr
,
pReq
->
taskId
,
vgId
);
qDebug
(
"
s-task:%s dispatch msg
to taskId:0x%x vgId:%d data msg"
,
pTask
->
id
.
idStr
,
pReq
->
taskId
,
vgId
);
tmsgSendReq
(
pEpSet
,
&
msg
);
code
=
0
;
...
...
source/libs/stream/src/streamExec.c
浏览文件 @
f1bd8299
...
...
@@ -133,7 +133,7 @@ static int32_t streamTaskExecImpl(SStreamTask* pTask, SStreamQueueItem* pItem, i
taosArrayPush
(
pRes
,
&
block
);
qDebug
(
"s-task:%s (child %d) executed and get
block, total blocks:%d
, size:%.2fMiB"
,
pTask
->
id
.
idStr
,
qDebug
(
"s-task:%s (child %d) executed and get
%d result blocks
, size:%.2fMiB"
,
pTask
->
id
.
idStr
,
pTask
->
selfChildId
,
numOfBlocks
,
size
/
1048576
.
0
);
// current output should be dispatched to down stream nodes
...
...
@@ -371,7 +371,7 @@ int32_t streamExecForAll(SStreamTask* pTask) {
streamQueueProcessSuccess
(
pTask
->
inputQueue
);
if
(
batchSize
>
MAX_STREAM_EXEC_BATCH_NUM
)
{
qDebug
(
"s-task:%s
maximum batch limit:%d reached, processing this batch of
blocks"
,
id
,
qDebug
(
"s-task:%s
batch size limit:%d reached, start to process
blocks"
,
id
,
MAX_STREAM_EXEC_BATCH_NUM
);
break
;
}
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录