Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
taosdata
TDengine
提交
aa7cbf85
T
TDengine
项目概览
taosdata
/
TDengine
大约 1 年 前同步成功
通知
1184
Star
22015
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,发现更多精彩内容 >>
未验证
提交
aa7cbf85
编写于
9月 06, 2021
作者:
D
dapan1121
提交者:
GitHub
9月 06, 2021
浏览文件
操作
浏览文件
下载
差异文件
Merge pull request #7777 from taosdata/hotfix/td-6511
[TD-6511]<fix>:reissue subquery with same buffersize of the original …
上级
2aba1e64
2b9ac078
变更
2
隐藏空白更改
内联
并排
Showing
2 changed file
with
6 addition
and
2 deletion
+6
-2
src/client/inc/tscGlobalmerge.h
src/client/inc/tscGlobalmerge.h
+1
-0
src/client/src/tscSubquery.c
src/client/src/tscSubquery.c
+5
-2
未找到文件。
src/client/inc/tscGlobalmerge.h
浏览文件 @
aa7cbf85
...
...
@@ -58,6 +58,7 @@ typedef struct SRetrieveSupport {
int32_t
subqueryIndex
;
// index of current vnode in vnode list
struct
SSqlObj
*
pParentSql
;
tFilePage
*
localBuffer
;
// temp buffer, there is a buffer for each vnode to
uint32_t
localBufferSize
;
uint32_t
numOfRetry
;
// record the number of retry times
}
SRetrieveSupport
;
...
...
src/client/src/tscSubquery.c
浏览文件 @
aa7cbf85
...
...
@@ -2593,6 +2593,7 @@ int32_t tscHandleMasterSTableQuery(SSqlObj *pSql) {
trs
->
pOrderDescriptor
=
pDesc
;
trs
->
localBuffer
=
(
tFilePage
*
)
calloc
(
1
,
nBufferSize
+
sizeof
(
tFilePage
));
trs
->
localBufferSize
=
nBufferSize
+
sizeof
(
tFilePage
);
if
(
trs
->
localBuffer
==
NULL
)
{
tscError
(
"0x%"
PRIx64
" failed to malloc buffer for local buffer, orderOfSub:%d, reason:%s"
,
pSql
->
self
,
i
,
strerror
(
errno
));
tfree
(
trs
);
...
...
@@ -2713,8 +2714,10 @@ static int32_t tscReissueSubquery(SRetrieveSupport *oriTrs, SSqlObj *pSql, int32
memcpy
(
trsupport
,
oriTrs
,
sizeof
(
*
trsupport
));
const
uint32_t
nBufferSize
=
(
1u
<<
16u
);
// 64KB
trsupport
->
localBuffer
=
(
tFilePage
*
)
calloc
(
1
,
nBufferSize
+
sizeof
(
tFilePage
));
// the buffer size should be the same as tscHandleMasterSTableQuery, which was used to initialize the SColumnModel
// the capacity member of SColumnModel will be used to save the trsupport->localBuffer in tscRetrieveFromDnodeCallBack
trsupport
->
localBuffer
=
(
tFilePage
*
)
calloc
(
1
,
oriTrs
->
localBufferSize
);
if
(
trsupport
->
localBuffer
==
NULL
)
{
tscError
(
"0x%"
PRIx64
" failed to malloc buffer for local buffer, reason:%s"
,
pSql
->
self
,
strerror
(
errno
));
tfree
(
trsupport
);
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录