Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
taosdata
TDengine
提交
c28aac66
T
TDengine
项目概览
taosdata
/
TDengine
1 年多 前同步成功
通知
1185
Star
22017
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看板
提交
c28aac66
编写于
6月 06, 2022
作者:
H
Hongze Cheng
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
more
上级
3283fe93
变更
4
隐藏空白更改
内联
并排
Showing
4 changed file
with
14 addition
and
11 deletion
+14
-11
include/common/tcommon.h
include/common/tcommon.h
+10
-9
source/dnode/vnode/src/tsdb/tsdbMemTable.c
source/dnode/vnode/src/tsdb/tsdbMemTable.c
+1
-2
source/dnode/vnode/src/tsdb/tsdbRead.c
source/dnode/vnode/src/tsdb/tsdbRead.c
+2
-0
source/libs/executor/src/executorimpl.c
source/libs/executor/src/executorimpl.c
+1
-0
未找到文件。
include/common/tcommon.h
浏览文件 @
c28aac66
...
...
@@ -105,14 +105,15 @@ typedef struct SColumnInfoData {
}
SColumnInfoData
;
typedef
struct
SQueryTableDataCond
{
//STimeWindow twindow;
// STimeWindow twindow;
uint64_t
suid
;
int32_t
order
;
// desc|asc order to iterate the data block
int32_t
numOfCols
;
SColumnInfo
*
colList
;
SColumnInfo
*
colList
;
bool
loadExternalRows
;
// load external rows or not
int32_t
type
;
// data block load type:
int32_t
numOfTWindows
;
STimeWindow
*
twindows
;
STimeWindow
*
twindows
;
}
SQueryTableDataCond
;
void
*
blockDataDestroy
(
SSDataBlock
*
pBlock
);
...
...
@@ -202,17 +203,17 @@ typedef struct SExprInfo {
}
SExprInfo
;
typedef
struct
{
const
char
*
key
;
int32_t
keyLen
;
uint8_t
type
;
union
{
const
char
*
key
;
int32_t
keyLen
;
uint8_t
type
;
union
{
const
char
*
value
;
int64_t
i
;
uint64_t
u
;
double
d
;
float
f
;
};
int32_t
length
;
int32_t
length
;
}
SSmlKv
;
#define QUERY_ASC_FORWARD_STEP 1
...
...
@@ -220,7 +221,7 @@ typedef struct {
#define GET_FORWARD_DIRECTION_FACTOR(ord) (((ord) == TSDB_ORDER_ASC) ? QUERY_ASC_FORWARD_STEP : QUERY_DESC_FORWARD_STEP)
#define SORT_QSORT_T 0x1
#define SORT_QSORT_T
0x1
#define SORT_SPILLED_MERGE_SORT_T 0x2
typedef
struct
SSortExecInfo
{
int32_t
sortMethod
;
...
...
source/dnode/vnode/src/tsdb/tsdbMemTable.c
浏览文件 @
c28aac66
...
...
@@ -690,11 +690,11 @@ static int32_t tsdbInsertTableDataImpl(SMemTable *pMemTable, STbData *pTbData, i
// forward put rest data
row
.
pTSRow
=
tGetSubmitBlkNext
(
&
blkIter
);
if
(
row
.
pTSRow
)
{
key
.
ts
=
row
.
pTSRow
->
ts
;
for
(
int8_t
iLevel
=
0
;
iLevel
<
pTbData
->
sl
.
maxLevel
;
iLevel
++
)
{
pos
[
iLevel
]
=
SL_NODE_BACKWARD
(
pos
[
iLevel
],
iLevel
);
}
do
{
key
.
ts
=
row
.
pTSRow
->
ts
;
nRow
++
;
tbDataMovePosTo
(
pTbData
,
pos
,
&
key
,
SL_MOVE_FROM_POS
);
code
=
tbDataDoPut
(
pMemTable
,
pTbData
,
pos
,
&
row
,
1
);
...
...
@@ -703,7 +703,6 @@ static int32_t tsdbInsertTableDataImpl(SMemTable *pMemTable, STbData *pTbData, i
}
row
.
pTSRow
=
tGetSubmitBlkNext
(
&
blkIter
);
key
.
ts
=
row
.
pTSRow
->
ts
;
}
while
(
row
.
pTSRow
);
}
...
...
source/dnode/vnode/src/tsdb/tsdbRead.c
浏览文件 @
c28aac66
...
...
@@ -108,6 +108,7 @@ typedef struct SBlockLoadSuppInfo {
typedef
struct
STsdbReadHandle
{
STsdb
*
pTsdb
;
uint64_t
suid
;
SQueryFilePos
cur
;
// current position
int16_t
order
;
STimeWindow
window
;
// the primary query time window that applies to all queries
...
...
@@ -238,6 +239,7 @@ static SArray* createCheckInfoFromTableGroup(STsdbReadHandle* pTsdbReadHandle, S
STableKeyInfo
*
pKeyInfo
=
(
STableKeyInfo
*
)
taosArrayGet
(
pTableList
->
pTableList
,
j
);
STableCheckInfo
info
=
{.
lastKey
=
pKeyInfo
->
lastKey
,
.
tableId
=
pKeyInfo
->
uid
};
info
.
suid
=
pTsdbReadHandle
->
suid
;
if
(
ASCENDING_TRAVERSE
(
pTsdbReadHandle
->
order
))
{
if
(
info
.
lastKey
==
INT64_MIN
||
info
.
lastKey
<
pTsdbReadHandle
->
window
.
skey
)
{
info
.
lastKey
=
pTsdbReadHandle
->
window
.
skey
;
...
...
source/libs/executor/src/executorimpl.c
浏览文件 @
c28aac66
...
...
@@ -4625,6 +4625,7 @@ int32_t initQueryTableDataCond(SQueryTableDataCond* pCond, const STableScanPhysi
pCond
->
numOfTWindows
=
1
;
pCond
->
twindows
=
taosMemoryCalloc
(
pCond
->
numOfTWindows
,
sizeof
(
STimeWindow
));
pCond
->
twindows
[
0
]
=
pTableScanNode
->
scanRange
;
pCond
->
suid
=
pTableScanNode
->
scan
.
suid
;
#if 1
// todo work around a problem, remove it later
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录