Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
taosdata
TDengine
提交
8d187efc
T
TDengine
项目概览
taosdata
/
TDengine
接近 2 年 前同步成功
通知
1192
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看板
提交
8d187efc
编写于
2月 20, 2023
作者:
H
Haojun Liao
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
refactor:do some internal refactor.
上级
16bc8cb5
变更
55
展开全部
隐藏空白更改
内联
并排
Showing
55 changed file
with
745 addition
and
753 deletion
+745
-753
include/common/tdatablock.h
include/common/tdatablock.h
+11
-46
source/client/src/clientMsgHandler.c
source/client/src/clientMsgHandler.c
+2
-2
source/common/src/tdatablock.c
source/common/src/tdatablock.c
+40
-13
source/common/test/commonTests.cpp
source/common/test/commonTests.cpp
+8
-8
source/dnode/mgmt/mgmt_dnode/src/dmHandle.c
source/dnode/mgmt/mgmt_dnode/src/dmHandle.c
+3
-3
source/dnode/mnode/impl/src/mndCluster.c
source/dnode/mnode/impl/src/mndCluster.c
+7
-7
source/dnode/mnode/impl/src/mndConsumer.c
source/dnode/mnode/impl/src/mndConsumer.c
+10
-10
source/dnode/mnode/impl/src/mndDb.c
source/dnode/mnode/impl/src/mndDb.c
+35
-35
source/dnode/mnode/impl/src/mndDnode.c
source/dnode/mnode/impl/src/mndDnode.c
+9
-9
source/dnode/mnode/impl/src/mndFunc.c
source/dnode/mnode/impl/src/mndFunc.c
+8
-8
source/dnode/mnode/impl/src/mndGrant.c
source/dnode/mnode/impl/src/mndGrant.c
+14
-14
source/dnode/mnode/impl/src/mndMnode.c
source/dnode/mnode/impl/src/mndMnode.c
+5
-5
source/dnode/mnode/impl/src/mndProfile.c
source/dnode/mnode/impl/src/mndProfile.c
+35
-35
source/dnode/mnode/impl/src/mndQnode.c
source/dnode/mnode/impl/src/mndQnode.c
+3
-3
source/dnode/mnode/impl/src/mndSma.c
source/dnode/mnode/impl/src/mndSma.c
+5
-5
source/dnode/mnode/impl/src/mndSnode.c
source/dnode/mnode/impl/src/mndSnode.c
+3
-3
source/dnode/mnode/impl/src/mndStb.c
source/dnode/mnode/impl/src/mndStb.c
+11
-11
source/dnode/mnode/impl/src/mndStream.c
source/dnode/mnode/impl/src/mndStream.c
+16
-16
source/dnode/mnode/impl/src/mndSubscribe.c
source/dnode/mnode/impl/src/mndSubscribe.c
+12
-12
source/dnode/mnode/impl/src/mndTopic.c
source/dnode/mnode/impl/src/mndTopic.c
+4
-4
source/dnode/mnode/impl/src/mndTrans.c
source/dnode/mnode/impl/src/mndTrans.c
+9
-9
source/dnode/mnode/impl/src/mndUser.c
source/dnode/mnode/impl/src/mndUser.c
+17
-17
source/dnode/mnode/impl/src/mndVgroup.c
source/dnode/mnode/impl/src/mndVgroup.c
+13
-13
source/dnode/vnode/src/tq/tq.c
source/dnode/vnode/src/tq/tq.c
+3
-3
source/dnode/vnode/src/tq/tqRead.c
source/dnode/vnode/src/tq/tqRead.c
+2
-2
source/dnode/vnode/src/tsdb/tsdbCacheRead.c
source/dnode/vnode/src/tsdb/tsdbCacheRead.c
+5
-5
source/dnode/vnode/src/tsdb/tsdbRead.c
source/dnode/vnode/src/tsdb/tsdbRead.c
+6
-6
source/libs/command/src/command.c
source/libs/command/src/command.c
+12
-12
source/libs/command/src/explain.c
source/libs/command/src/explain.c
+1
-1
source/libs/executor/src/cachescanoperator.c
source/libs/executor/src/cachescanoperator.c
+1
-1
source/libs/executor/src/executil.c
source/libs/executor/src/executil.c
+6
-6
source/libs/executor/src/executorimpl.c
source/libs/executor/src/executorimpl.c
+12
-12
source/libs/executor/src/filloperator.c
source/libs/executor/src/filloperator.c
+11
-11
source/libs/executor/src/groupoperator.c
source/libs/executor/src/groupoperator.c
+1
-1
source/libs/executor/src/joinoperator.c
source/libs/executor/src/joinoperator.c
+1
-1
source/libs/executor/src/projectoperator.c
source/libs/executor/src/projectoperator.c
+8
-8
source/libs/executor/src/scanoperator.c
source/libs/executor/src/scanoperator.c
+33
-33
source/libs/executor/src/sortoperator.c
source/libs/executor/src/sortoperator.c
+1
-1
source/libs/executor/src/sysscanoperator.c
source/libs/executor/src/sysscanoperator.c
+47
-47
source/libs/executor/src/tfill.c
source/libs/executor/src/tfill.c
+12
-12
source/libs/executor/src/timesliceoperator.c
source/libs/executor/src/timesliceoperator.c
+9
-9
source/libs/executor/src/timewindowoperator.c
source/libs/executor/src/timewindowoperator.c
+9
-9
source/libs/executor/src/tsort.c
source/libs/executor/src/tsort.c
+2
-2
source/libs/executor/test/executorTests.cpp
source/libs/executor/test/executorTests.cpp
+5
-5
source/libs/executor/test/sortTests.cpp
source/libs/executor/test/sortTests.cpp
+4
-4
source/libs/function/src/builtinsimpl.c
source/libs/function/src/builtinsimpl.c
+69
-69
source/libs/function/src/detail/tavgfunction.c
source/libs/function/src/detail/tavgfunction.c
+1
-1
source/libs/function/src/tfunctionInt.c
source/libs/function/src/tfunctionInt.c
+2
-2
source/libs/function/src/tudf.c
source/libs/function/src/tudf.c
+3
-3
source/libs/function/test/runUdf.c
source/libs/function/test/runUdf.c
+2
-2
source/libs/scalar/src/scalar.c
source/libs/scalar/src/scalar.c
+11
-11
source/libs/scalar/src/sclfunc.c
source/libs/scalar/src/sclfunc.c
+76
-76
source/libs/scalar/src/sclvector.c
source/libs/scalar/src/sclvector.c
+74
-74
source/libs/scalar/test/filter/filterTests.cpp
source/libs/scalar/test/filter/filterTests.cpp
+5
-5
source/libs/scalar/test/scalar/scalarTests.cpp
source/libs/scalar/test/scalar/scalarTests.cpp
+31
-31
未找到文件。
include/common/tdatablock.h
浏览文件 @
8d187efc
...
@@ -83,33 +83,6 @@ static FORCE_INLINE bool colDataIsNull_s(const SColumnInfoData* pColumnInfoData,
...
@@ -83,33 +83,6 @@ static FORCE_INLINE bool colDataIsNull_s(const SColumnInfoData* pColumnInfoData,
}
}
}
}
static
FORCE_INLINE
bool
colDataIsNNull_s
(
const
SColumnInfoData
*
pColumnInfoData
,
int32_t
startIndex
,
uint32_t
nRows
)
{
if
(
!
pColumnInfoData
->
hasNull
)
{
return
false
;
}
if
(
IS_VAR_DATA_TYPE
(
pColumnInfoData
->
info
.
type
))
{
for
(
int32_t
i
=
startIndex
;
i
<
nRows
;
++
i
)
{
if
(
!
colDataIsNull_var
(
pColumnInfoData
,
i
))
{
return
false
;
}
}
}
else
{
if
(
pColumnInfoData
->
nullbitmap
==
NULL
)
{
return
false
;
}
for
(
int32_t
i
=
startIndex
;
i
<
nRows
;
++
i
)
{
if
(
!
colDataIsNull_f
(
pColumnInfoData
->
nullbitmap
,
i
))
{
return
false
;
}
}
}
return
true
;
}
static
FORCE_INLINE
bool
colDataIsNull
(
const
SColumnInfoData
*
pColumnInfoData
,
uint32_t
totalRows
,
uint32_t
row
,
static
FORCE_INLINE
bool
colDataIsNull
(
const
SColumnInfoData
*
pColumnInfoData
,
uint32_t
totalRows
,
uint32_t
row
,
SColumnDataAgg
*
pColAgg
)
{
SColumnDataAgg
*
pColAgg
)
{
if
(
!
pColumnInfoData
->
hasNull
)
{
if
(
!
pColumnInfoData
->
hasNull
)
{
...
@@ -137,7 +110,7 @@ static FORCE_INLINE bool colDataIsNull(const SColumnInfoData* pColumnInfoData, u
...
@@ -137,7 +110,7 @@ static FORCE_INLINE bool colDataIsNull(const SColumnInfoData* pColumnInfoData, u
}
}
}
}
static
FORCE_INLINE
void
colData
Append
NULL
(
SColumnInfoData
*
pColumnInfoData
,
uint32_t
currentRow
)
{
static
FORCE_INLINE
void
colData
Set
NULL
(
SColumnInfoData
*
pColumnInfoData
,
uint32_t
currentRow
)
{
// There is a placehold for each NULL value of binary or nchar type.
// There is a placehold for each NULL value of binary or nchar type.
if
(
IS_VAR_DATA_TYPE
(
pColumnInfoData
->
info
.
type
))
{
if
(
IS_VAR_DATA_TYPE
(
pColumnInfoData
->
info
.
type
))
{
colDataSetNull_var
(
pColumnInfoData
,
currentRow
);
// it is a null value of VAR type.
colDataSetNull_var
(
pColumnInfoData
,
currentRow
);
// it is a null value of VAR type.
...
@@ -148,7 +121,7 @@ static FORCE_INLINE void colDataAppendNULL(SColumnInfoData* pColumnInfoData, uin
...
@@ -148,7 +121,7 @@ static FORCE_INLINE void colDataAppendNULL(SColumnInfoData* pColumnInfoData, uin
pColumnInfoData
->
hasNull
=
true
;
pColumnInfoData
->
hasNull
=
true
;
}
}
static
FORCE_INLINE
void
colData
Append
NNULL
(
SColumnInfoData
*
pColumnInfoData
,
uint32_t
start
,
size_t
nRows
)
{
static
FORCE_INLINE
void
colData
Set
NNULL
(
SColumnInfoData
*
pColumnInfoData
,
uint32_t
start
,
size_t
nRows
)
{
if
(
IS_VAR_DATA_TYPE
(
pColumnInfoData
->
info
.
type
))
{
if
(
IS_VAR_DATA_TYPE
(
pColumnInfoData
->
info
.
type
))
{
for
(
int32_t
i
=
start
;
i
<
start
+
nRows
;
++
i
)
{
for
(
int32_t
i
=
start
;
i
<
start
+
nRows
;
++
i
)
{
colDataSetNull_var
(
pColumnInfoData
,
i
);
// it is a null value of VAR type.
colDataSetNull_var
(
pColumnInfoData
,
i
);
// it is a null value of VAR type.
...
@@ -163,40 +136,40 @@ static FORCE_INLINE void colDataAppendNNULL(SColumnInfoData* pColumnInfoData, ui
...
@@ -163,40 +136,40 @@ static FORCE_INLINE void colDataAppendNNULL(SColumnInfoData* pColumnInfoData, ui
pColumnInfoData
->
hasNull
=
true
;
pColumnInfoData
->
hasNull
=
true
;
}
}
static
FORCE_INLINE
void
colData
Append
Int8
(
SColumnInfoData
*
pColumnInfoData
,
uint32_t
currentRow
,
int8_t
*
v
)
{
static
FORCE_INLINE
void
colData
Set
Int8
(
SColumnInfoData
*
pColumnInfoData
,
uint32_t
currentRow
,
int8_t
*
v
)
{
ASSERT
(
pColumnInfoData
->
info
.
type
==
TSDB_DATA_TYPE_TINYINT
||
ASSERT
(
pColumnInfoData
->
info
.
type
==
TSDB_DATA_TYPE_TINYINT
||
pColumnInfoData
->
info
.
type
==
TSDB_DATA_TYPE_UTINYINT
||
pColumnInfoData
->
info
.
type
==
TSDB_DATA_TYPE_BOOL
);
pColumnInfoData
->
info
.
type
==
TSDB_DATA_TYPE_UTINYINT
||
pColumnInfoData
->
info
.
type
==
TSDB_DATA_TYPE_BOOL
);
char
*
p
=
pColumnInfoData
->
pData
+
pColumnInfoData
->
info
.
bytes
*
currentRow
;
char
*
p
=
pColumnInfoData
->
pData
+
pColumnInfoData
->
info
.
bytes
*
currentRow
;
*
(
int8_t
*
)
p
=
*
(
int8_t
*
)
v
;
*
(
int8_t
*
)
p
=
*
(
int8_t
*
)
v
;
}
}
static
FORCE_INLINE
void
colData
Append
Int16
(
SColumnInfoData
*
pColumnInfoData
,
uint32_t
currentRow
,
int16_t
*
v
)
{
static
FORCE_INLINE
void
colData
Set
Int16
(
SColumnInfoData
*
pColumnInfoData
,
uint32_t
currentRow
,
int16_t
*
v
)
{
ASSERT
(
pColumnInfoData
->
info
.
type
==
TSDB_DATA_TYPE_SMALLINT
||
ASSERT
(
pColumnInfoData
->
info
.
type
==
TSDB_DATA_TYPE_SMALLINT
||
pColumnInfoData
->
info
.
type
==
TSDB_DATA_TYPE_USMALLINT
);
pColumnInfoData
->
info
.
type
==
TSDB_DATA_TYPE_USMALLINT
);
char
*
p
=
pColumnInfoData
->
pData
+
pColumnInfoData
->
info
.
bytes
*
currentRow
;
char
*
p
=
pColumnInfoData
->
pData
+
pColumnInfoData
->
info
.
bytes
*
currentRow
;
*
(
int16_t
*
)
p
=
*
(
int16_t
*
)
v
;
*
(
int16_t
*
)
p
=
*
(
int16_t
*
)
v
;
}
}
static
FORCE_INLINE
void
colData
Append
Int32
(
SColumnInfoData
*
pColumnInfoData
,
uint32_t
currentRow
,
int32_t
*
v
)
{
static
FORCE_INLINE
void
colData
Set
Int32
(
SColumnInfoData
*
pColumnInfoData
,
uint32_t
currentRow
,
int32_t
*
v
)
{
ASSERT
(
pColumnInfoData
->
info
.
type
==
TSDB_DATA_TYPE_INT
||
pColumnInfoData
->
info
.
type
==
TSDB_DATA_TYPE_UINT
);
ASSERT
(
pColumnInfoData
->
info
.
type
==
TSDB_DATA_TYPE_INT
||
pColumnInfoData
->
info
.
type
==
TSDB_DATA_TYPE_UINT
);
char
*
p
=
pColumnInfoData
->
pData
+
pColumnInfoData
->
info
.
bytes
*
currentRow
;
char
*
p
=
pColumnInfoData
->
pData
+
pColumnInfoData
->
info
.
bytes
*
currentRow
;
*
(
int32_t
*
)
p
=
*
(
int32_t
*
)
v
;
*
(
int32_t
*
)
p
=
*
(
int32_t
*
)
v
;
}
}
static
FORCE_INLINE
void
colData
Append
Int64
(
SColumnInfoData
*
pColumnInfoData
,
uint32_t
currentRow
,
int64_t
*
v
)
{
static
FORCE_INLINE
void
colData
Set
Int64
(
SColumnInfoData
*
pColumnInfoData
,
uint32_t
currentRow
,
int64_t
*
v
)
{
int32_t
type
=
pColumnInfoData
->
info
.
type
;
int32_t
type
=
pColumnInfoData
->
info
.
type
;
ASSERT
(
type
==
TSDB_DATA_TYPE_BIGINT
||
type
==
TSDB_DATA_TYPE_UBIGINT
||
type
==
TSDB_DATA_TYPE_TIMESTAMP
);
ASSERT
(
type
==
TSDB_DATA_TYPE_BIGINT
||
type
==
TSDB_DATA_TYPE_UBIGINT
||
type
==
TSDB_DATA_TYPE_TIMESTAMP
);
char
*
p
=
pColumnInfoData
->
pData
+
pColumnInfoData
->
info
.
bytes
*
currentRow
;
char
*
p
=
pColumnInfoData
->
pData
+
pColumnInfoData
->
info
.
bytes
*
currentRow
;
*
(
int64_t
*
)
p
=
*
(
int64_t
*
)
v
;
*
(
int64_t
*
)
p
=
*
(
int64_t
*
)
v
;
}
}
static
FORCE_INLINE
void
colData
Append
Float
(
SColumnInfoData
*
pColumnInfoData
,
uint32_t
currentRow
,
float
*
v
)
{
static
FORCE_INLINE
void
colData
Set
Float
(
SColumnInfoData
*
pColumnInfoData
,
uint32_t
currentRow
,
float
*
v
)
{
ASSERT
(
pColumnInfoData
->
info
.
type
==
TSDB_DATA_TYPE_FLOAT
);
ASSERT
(
pColumnInfoData
->
info
.
type
==
TSDB_DATA_TYPE_FLOAT
);
char
*
p
=
pColumnInfoData
->
pData
+
pColumnInfoData
->
info
.
bytes
*
currentRow
;
char
*
p
=
pColumnInfoData
->
pData
+
pColumnInfoData
->
info
.
bytes
*
currentRow
;
*
(
float
*
)
p
=
*
(
float
*
)
v
;
*
(
float
*
)
p
=
*
(
float
*
)
v
;
}
}
static
FORCE_INLINE
void
colData
Append
Double
(
SColumnInfoData
*
pColumnInfoData
,
uint32_t
currentRow
,
double
*
v
)
{
static
FORCE_INLINE
void
colData
Set
Double
(
SColumnInfoData
*
pColumnInfoData
,
uint32_t
currentRow
,
double
*
v
)
{
ASSERT
(
pColumnInfoData
->
info
.
type
==
TSDB_DATA_TYPE_DOUBLE
);
ASSERT
(
pColumnInfoData
->
info
.
type
==
TSDB_DATA_TYPE_DOUBLE
);
char
*
p
=
pColumnInfoData
->
pData
+
pColumnInfoData
->
info
.
bytes
*
currentRow
;
char
*
p
=
pColumnInfoData
->
pData
+
pColumnInfoData
->
info
.
bytes
*
currentRow
;
*
(
double
*
)
p
=
*
(
double
*
)
v
;
*
(
double
*
)
p
=
*
(
double
*
)
v
;
...
@@ -204,9 +177,8 @@ static FORCE_INLINE void colDataAppendDouble(SColumnInfoData* pColumnInfoData, u
...
@@ -204,9 +177,8 @@ static FORCE_INLINE void colDataAppendDouble(SColumnInfoData* pColumnInfoData, u
int32_t
getJsonValueLen
(
const
char
*
data
);
int32_t
getJsonValueLen
(
const
char
*
data
);
int32_t
colDataAppend
(
SColumnInfoData
*
pColumnInfoData
,
uint32_t
currentRow
,
const
char
*
pData
,
bool
isNull
);
int32_t
colDataSetVal
(
SColumnInfoData
*
pColumnInfoData
,
uint32_t
rowIndex
,
const
char
*
pData
,
bool
isNull
);
int32_t
colDataAppendNItems
(
SColumnInfoData
*
pColumnInfoData
,
uint32_t
currentRow
,
const
char
*
pData
,
int32_t
colDataSetNItems
(
SColumnInfoData
*
pColumnInfoData
,
uint32_t
currentRow
,
const
char
*
pData
,
uint32_t
numOfRows
);
uint32_t
numOfRows
);
int32_t
colDataMergeCol
(
SColumnInfoData
*
pColumnInfoData
,
int32_t
numOfRow1
,
int32_t
*
capacity
,
int32_t
colDataMergeCol
(
SColumnInfoData
*
pColumnInfoData
,
int32_t
numOfRow1
,
int32_t
*
capacity
,
const
SColumnInfoData
*
pSource
,
int32_t
numOfRow2
);
const
SColumnInfoData
*
pSource
,
int32_t
numOfRow2
);
int32_t
colDataAssign
(
SColumnInfoData
*
pColumnInfoData
,
const
SColumnInfoData
*
pSource
,
int32_t
numOfRows
,
int32_t
colDataAssign
(
SColumnInfoData
*
pColumnInfoData
,
const
SColumnInfoData
*
pSource
,
int32_t
numOfRows
,
...
@@ -245,7 +217,7 @@ void blockDataEmpty(SSDataBlock* pDataBlock);
...
@@ -245,7 +217,7 @@ void blockDataEmpty(SSDataBlock* pDataBlock);
size_t
blockDataGetCapacityInRow
(
const
SSDataBlock
*
pBlock
,
size_t
pageSize
);
size_t
blockDataGetCapacityInRow
(
const
SSDataBlock
*
pBlock
,
size_t
pageSize
);
int32_t
blockDataTrimFirst
N
Rows
(
SSDataBlock
*
pBlock
,
size_t
n
);
int32_t
blockDataTrimFirstRows
(
SSDataBlock
*
pBlock
,
size_t
n
);
int32_t
blockDataKeepFirstNRows
(
SSDataBlock
*
pBlock
,
size_t
n
);
int32_t
blockDataKeepFirstNRows
(
SSDataBlock
*
pBlock
,
size_t
n
);
int32_t
assignOneDataBlock
(
SSDataBlock
*
dst
,
const
SSDataBlock
*
src
);
int32_t
assignOneDataBlock
(
SSDataBlock
*
dst
,
const
SSDataBlock
*
src
);
...
@@ -280,13 +252,6 @@ static FORCE_INLINE int32_t blockGetEncodeSize(const SSDataBlock* pBlock) {
...
@@ -280,13 +252,6 @@ static FORCE_INLINE int32_t blockGetEncodeSize(const SSDataBlock* pBlock) {
return
blockDataGetSerialMetaSize
(
taosArrayGetSize
(
pBlock
->
pDataBlock
))
+
blockDataGetSize
(
pBlock
);
return
blockDataGetSerialMetaSize
(
taosArrayGetSize
(
pBlock
->
pDataBlock
))
+
blockDataGetSize
(
pBlock
);
}
}
static
FORCE_INLINE
int32_t
blockCompressColData
(
SColumnInfoData
*
pColRes
,
int32_t
numOfRows
,
char
*
data
,
int8_t
compressed
)
{
int32_t
colSize
=
colDataGetLength
(
pColRes
,
numOfRows
);
return
(
*
(
tDataTypes
[
pColRes
->
info
.
type
].
compFunc
))(
pColRes
->
pData
,
colSize
,
numOfRows
,
data
,
colSize
+
COMP_OVERFLOW_BYTES
,
compressed
,
NULL
,
0
);
}
#ifdef __cplusplus
#ifdef __cplusplus
}
}
#endif
#endif
...
...
source/client/src/clientMsgHandler.c
浏览文件 @
8d187efc
...
@@ -417,12 +417,12 @@ static int32_t buildShowVariablesBlock(SArray* pVars, SSDataBlock** block) {
...
@@ -417,12 +417,12 @@ static int32_t buildShowVariablesBlock(SArray* pVars, SSDataBlock** block) {
char
name
[
TSDB_CONFIG_OPTION_LEN
+
VARSTR_HEADER_SIZE
]
=
{
0
};
char
name
[
TSDB_CONFIG_OPTION_LEN
+
VARSTR_HEADER_SIZE
]
=
{
0
};
STR_WITH_MAXSIZE_TO_VARSTR
(
name
,
pInfo
->
name
,
TSDB_CONFIG_OPTION_LEN
+
VARSTR_HEADER_SIZE
);
STR_WITH_MAXSIZE_TO_VARSTR
(
name
,
pInfo
->
name
,
TSDB_CONFIG_OPTION_LEN
+
VARSTR_HEADER_SIZE
);
SColumnInfoData
*
pColInfo
=
taosArrayGet
(
pBlock
->
pDataBlock
,
c
++
);
SColumnInfoData
*
pColInfo
=
taosArrayGet
(
pBlock
->
pDataBlock
,
c
++
);
colData
Append
(
pColInfo
,
i
,
name
,
false
);
colData
SetVal
(
pColInfo
,
i
,
name
,
false
);
char
value
[
TSDB_CONFIG_VALUE_LEN
+
VARSTR_HEADER_SIZE
]
=
{
0
};
char
value
[
TSDB_CONFIG_VALUE_LEN
+
VARSTR_HEADER_SIZE
]
=
{
0
};
STR_WITH_MAXSIZE_TO_VARSTR
(
value
,
pInfo
->
value
,
TSDB_CONFIG_VALUE_LEN
+
VARSTR_HEADER_SIZE
);
STR_WITH_MAXSIZE_TO_VARSTR
(
value
,
pInfo
->
value
,
TSDB_CONFIG_VALUE_LEN
+
VARSTR_HEADER_SIZE
);
pColInfo
=
taosArrayGet
(
pBlock
->
pDataBlock
,
c
++
);
pColInfo
=
taosArrayGet
(
pBlock
->
pDataBlock
,
c
++
);
colData
Append
(
pColInfo
,
i
,
value
,
false
);
colData
SetVal
(
pColInfo
,
i
,
value
,
false
);
}
}
pBlock
->
info
.
rows
=
numOfCfg
;
pBlock
->
info
.
rows
=
numOfCfg
;
...
...
source/common/src/tdatablock.c
浏览文件 @
8d187efc
...
@@ -63,13 +63,13 @@ int32_t getJsonValueLen(const char* data) {
...
@@ -63,13 +63,13 @@ int32_t getJsonValueLen(const char* data) {
return
dataLen
;
return
dataLen
;
}
}
int32_t
colData
Append
(
SColumnInfoData
*
pColumnInfoData
,
uint32_t
currentRow
,
const
char
*
pData
,
bool
isNull
)
{
int32_t
colData
SetVal
(
SColumnInfoData
*
pColumnInfoData
,
uint32_t
rowIndex
,
const
char
*
pData
,
bool
isNull
)
{
if
(
isNull
)
{
if
(
isNull
)
{
// There is a placehold for each NULL value of binary or nchar type.
// There is a placehold for each NULL value of binary or nchar type.
if
(
IS_VAR_DATA_TYPE
(
pColumnInfoData
->
info
.
type
))
{
if
(
IS_VAR_DATA_TYPE
(
pColumnInfoData
->
info
.
type
))
{
pColumnInfoData
->
varmeta
.
offset
[
currentRow
]
=
-
1
;
// it is a null value of VAR type.
pColumnInfoData
->
varmeta
.
offset
[
rowIndex
]
=
-
1
;
// it is a null value of VAR type.
}
else
{
}
else
{
colDataSetNull_f_s
(
pColumnInfoData
,
currentRow
);
colDataSetNull_f_s
(
pColumnInfoData
,
rowIndex
);
}
}
pColumnInfoData
->
hasNull
=
true
;
pColumnInfoData
->
hasNull
=
true
;
...
@@ -106,12 +106,12 @@ int32_t colDataAppend(SColumnInfoData* pColumnInfoData, uint32_t currentRow, con
...
@@ -106,12 +106,12 @@ int32_t colDataAppend(SColumnInfoData* pColumnInfoData, uint32_t currentRow, con
}
}
uint32_t
len
=
pColumnInfoData
->
varmeta
.
length
;
uint32_t
len
=
pColumnInfoData
->
varmeta
.
length
;
pColumnInfoData
->
varmeta
.
offset
[
currentRow
]
=
len
;
pColumnInfoData
->
varmeta
.
offset
[
rowIndex
]
=
len
;
memmove
(
pColumnInfoData
->
pData
+
len
,
pData
,
dataLen
);
memmove
(
pColumnInfoData
->
pData
+
len
,
pData
,
dataLen
);
pColumnInfoData
->
varmeta
.
length
+=
dataLen
;
pColumnInfoData
->
varmeta
.
length
+=
dataLen
;
}
else
{
}
else
{
memcpy
(
pColumnInfoData
->
pData
+
pColumnInfoData
->
info
.
bytes
*
currentRow
,
pData
,
pColumnInfoData
->
info
.
bytes
);
memcpy
(
pColumnInfoData
->
pData
+
pColumnInfoData
->
info
.
bytes
*
rowIndex
,
pData
,
pColumnInfoData
->
info
.
bytes
);
}
}
return
0
;
return
0
;
...
@@ -172,7 +172,7 @@ static void doCopyNItems(struct SColumnInfoData* pColumnInfoData, int32_t curren
...
@@ -172,7 +172,7 @@ static void doCopyNItems(struct SColumnInfoData* pColumnInfoData, int32_t curren
}
}
}
}
int32_t
colData
Append
NItems
(
SColumnInfoData
*
pColumnInfoData
,
uint32_t
currentRow
,
const
char
*
pData
,
int32_t
colData
Set
NItems
(
SColumnInfoData
*
pColumnInfoData
,
uint32_t
currentRow
,
const
char
*
pData
,
uint32_t
numOfRows
)
{
uint32_t
numOfRows
)
{
int32_t
len
=
pColumnInfoData
->
info
.
bytes
;
int32_t
len
=
pColumnInfoData
->
info
.
bytes
;
if
(
IS_VAR_DATA_TYPE
(
pColumnInfoData
->
info
.
type
))
{
if
(
IS_VAR_DATA_TYPE
(
pColumnInfoData
->
info
.
type
))
{
...
@@ -513,10 +513,10 @@ SSDataBlock* blockDataExtractBlock(SSDataBlock* pBlock, int32_t startIndex, int3
...
@@ -513,10 +513,10 @@ SSDataBlock* blockDataExtractBlock(SSDataBlock* pBlock, int32_t startIndex, int3
}
}
if
(
isNull
)
{
if
(
isNull
)
{
colData
Append
NULL
(
pDstCol
,
j
-
startIndex
);
colData
Set
NULL
(
pDstCol
,
j
-
startIndex
);
}
else
{
}
else
{
char
*
p
=
colDataGetData
(
pColData
,
j
);
char
*
p
=
colDataGetData
(
pColData
,
j
);
colData
Append
(
pDstCol
,
j
-
startIndex
,
p
,
false
);
colData
SetVal
(
pDstCol
,
j
-
startIndex
,
p
,
false
);
}
}
}
}
}
}
...
@@ -619,6 +619,33 @@ int32_t blockDataFromBuf(SSDataBlock* pBlock, const char* buf) {
...
@@ -619,6 +619,33 @@ int32_t blockDataFromBuf(SSDataBlock* pBlock, const char* buf) {
return
TSDB_CODE_SUCCESS
;
return
TSDB_CODE_SUCCESS
;
}
}
static
bool
colDataIsNNull
(
const
SColumnInfoData
*
pColumnInfoData
,
int32_t
startIndex
,
uint32_t
nRows
)
{
if
(
!
pColumnInfoData
->
hasNull
)
{
return
false
;
}
if
(
IS_VAR_DATA_TYPE
(
pColumnInfoData
->
info
.
type
))
{
for
(
int32_t
i
=
startIndex
;
i
<
nRows
;
++
i
)
{
if
(
!
colDataIsNull_var
(
pColumnInfoData
,
i
))
{
return
false
;
}
}
}
else
{
if
(
pColumnInfoData
->
nullbitmap
==
NULL
)
{
return
false
;
}
for
(
int32_t
i
=
startIndex
;
i
<
nRows
;
++
i
)
{
if
(
!
colDataIsNull_f
(
pColumnInfoData
->
nullbitmap
,
i
))
{
return
false
;
}
}
}
return
true
;
}
// todo remove this
// todo remove this
int32_t
blockDataFromBuf1
(
SSDataBlock
*
pBlock
,
const
char
*
buf
,
size_t
capacity
)
{
int32_t
blockDataFromBuf1
(
SSDataBlock
*
pBlock
,
const
char
*
buf
,
size_t
capacity
)
{
pBlock
->
info
.
rows
=
*
(
int32_t
*
)
buf
;
pBlock
->
info
.
rows
=
*
(
int32_t
*
)
buf
;
...
@@ -661,7 +688,7 @@ int32_t blockDataFromBuf1(SSDataBlock* pBlock, const char* buf, size_t capacity)
...
@@ -661,7 +688,7 @@ int32_t blockDataFromBuf1(SSDataBlock* pBlock, const char* buf, size_t capacity)
}
}
}
}
if
(
!
colDataIsNNull
_s
(
pCol
,
0
,
pBlock
->
info
.
rows
))
{
if
(
!
colDataIsNNull
(
pCol
,
0
,
pBlock
->
info
.
rows
))
{
memcpy
(
pCol
->
pData
,
pStart
,
colLength
);
memcpy
(
pCol
->
pData
,
pStart
,
colLength
);
}
}
...
@@ -783,13 +810,13 @@ static int32_t doAssignOneTuple(SColumnInfoData* pDstCols, int32_t numOfRows, co
...
@@ -783,13 +810,13 @@ static int32_t doAssignOneTuple(SColumnInfoData* pDstCols, int32_t numOfRows, co
SColumnInfoData
*
pSrc
=
taosArrayGet
(
pSrcBlock
->
pDataBlock
,
i
);
SColumnInfoData
*
pSrc
=
taosArrayGet
(
pSrcBlock
->
pDataBlock
,
i
);
if
(
pSrc
->
hasNull
&&
colDataIsNull
(
pSrc
,
pSrcBlock
->
info
.
rows
,
tupleIndex
,
pSrcBlock
->
pBlockAgg
[
i
]))
{
if
(
pSrc
->
hasNull
&&
colDataIsNull
(
pSrc
,
pSrcBlock
->
info
.
rows
,
tupleIndex
,
pSrcBlock
->
pBlockAgg
[
i
]))
{
code
=
colData
Append
(
pDst
,
numOfRows
,
NULL
,
true
);
code
=
colData
SetVal
(
pDst
,
numOfRows
,
NULL
,
true
);
if
(
code
!=
TSDB_CODE_SUCCESS
)
{
if
(
code
!=
TSDB_CODE_SUCCESS
)
{
return
code
;
return
code
;
}
}
}
else
{
}
else
{
char
*
p
=
colDataGetData
(
pSrc
,
tupleIndex
);
char
*
p
=
colDataGetData
(
pSrc
,
tupleIndex
);
code
=
colData
Append
(
pDst
,
numOfRows
,
p
,
false
);
code
=
colData
SetVal
(
pDst
,
numOfRows
,
p
,
false
);
if
(
code
!=
TSDB_CODE_SUCCESS
)
{
if
(
code
!=
TSDB_CODE_SUCCESS
)
{
return
code
;
return
code
;
}
}
...
@@ -1413,7 +1440,7 @@ SSDataBlock* blockCopyOneRow(const SSDataBlock* pDataBlock, int32_t rowIdx) {
...
@@ -1413,7 +1440,7 @@ SSDataBlock* blockCopyOneRow(const SSDataBlock* pDataBlock, int32_t rowIdx) {
SColumnInfoData
*
pSrc
=
taosArrayGet
(
pDataBlock
->
pDataBlock
,
i
);
SColumnInfoData
*
pSrc
=
taosArrayGet
(
pDataBlock
->
pDataBlock
,
i
);
void
*
pData
=
colDataGetData
(
pSrc
,
rowIdx
);
void
*
pData
=
colDataGetData
(
pSrc
,
rowIdx
);
bool
isNull
=
colDataIsNull
(
pSrc
,
pDataBlock
->
info
.
rows
,
rowIdx
,
NULL
);
bool
isNull
=
colDataIsNull
(
pSrc
,
pDataBlock
->
info
.
rows
,
rowIdx
,
NULL
);
colData
Append
(
pDst
,
0
,
pData
,
isNull
);
colData
SetVal
(
pDst
,
0
,
pData
,
isNull
);
}
}
pBlock
->
info
.
rows
=
1
;
pBlock
->
info
.
rows
=
1
;
...
@@ -1644,7 +1671,7 @@ static void colDataTrimFirstNRows(SColumnInfoData* pColInfoData, size_t n, size_
...
@@ -1644,7 +1671,7 @@ static void colDataTrimFirstNRows(SColumnInfoData* pColInfoData, size_t n, size_
}
}
}
}
int32_t
blockDataTrimFirst
N
Rows
(
SSDataBlock
*
pBlock
,
size_t
n
)
{
int32_t
blockDataTrimFirstRows
(
SSDataBlock
*
pBlock
,
size_t
n
)
{
if
(
n
==
0
)
{
if
(
n
==
0
)
{
return
TSDB_CODE_SUCCESS
;
return
TSDB_CODE_SUCCESS
;
}
}
...
...
source/common/test/commonTests.cpp
浏览文件 @
8d187efc
...
@@ -109,14 +109,14 @@ TEST(testCase, Datablock_test) {
...
@@ -109,14 +109,14 @@ TEST(testCase, Datablock_test) {
if
(
i
&
0x01
)
{
if
(
i
&
0x01
)
{
int32_t
len
=
sprintf
(
buf
,
str
,
i
);
int32_t
len
=
sprintf
(
buf
,
str
,
i
);
STR_TO_VARSTR
(
varbuf
,
buf
)
STR_TO_VARSTR
(
varbuf
,
buf
)
colData
Append
(
p0
,
i
,
(
const
char
*
)
&
i
,
false
);
colData
SetVal
(
p0
,
i
,
(
const
char
*
)
&
i
,
false
);
colData
Append
(
p1
,
i
,
(
const
char
*
)
varbuf
,
false
);
colData
SetVal
(
p1
,
i
,
(
const
char
*
)
varbuf
,
false
);
memset
(
varbuf
,
0
,
sizeof
(
varbuf
));
memset
(
varbuf
,
0
,
sizeof
(
varbuf
));
memset
(
buf
,
0
,
sizeof
(
buf
));
memset
(
buf
,
0
,
sizeof
(
buf
));
}
else
{
}
else
{
colData
Append
(
p0
,
i
,
(
const
char
*
)
&
i
,
true
);
colData
SetVal
(
p0
,
i
,
(
const
char
*
)
&
i
,
true
);
colData
Append
(
p1
,
i
,
(
const
char
*
)
varbuf
,
true
);
colData
SetVal
(
p1
,
i
,
(
const
char
*
)
varbuf
,
true
);
}
}
b
->
info
.
rows
++
;
b
->
info
.
rows
++
;
...
@@ -185,8 +185,8 @@ TEST(testCase, non_var_dataBlock_split_test) {
...
@@ -185,8 +185,8 @@ TEST(testCase, non_var_dataBlock_split_test) {
SColumnInfoData* p1 = (SColumnInfoData*)taosArrayGet(b->pDataBlock, 1);
SColumnInfoData* p1 = (SColumnInfoData*)taosArrayGet(b->pDataBlock, 1);
int8_t v = i;
int8_t v = i;
colData
Append
(p0, i, (const char*)&i, false);
colData
SetVal
(p0, i, (const char*)&i, false);
colData
Append
(p1, i, (const char*)&v, false);
colData
SetVal
(p1, i, (const char*)&v, false);
b->info.rows++;
b->info.rows++;
}
}
...
@@ -231,12 +231,12 @@ TEST(testCase, var_dataBlock_split_test) {
...
@@ -231,12 +231,12 @@ TEST(testCase, var_dataBlock_split_test) {
SColumnInfoData
*
p1
=
(
SColumnInfoData
*
)
taosArrayGet
(
b
->
pDataBlock
,
1
);
SColumnInfoData
*
p1
=
(
SColumnInfoData
*
)
taosArrayGet
(
b
->
pDataBlock
,
1
);
int8_t
v
=
i
;
int8_t
v
=
i
;
colData
Append
(
p0
,
i
,
(
const
char
*
)
&
i
,
false
);
colData
SetVal
(
p0
,
i
,
(
const
char
*
)
&
i
,
false
);
sprintf
(
buf
,
"the number of row:%d"
,
i
);
sprintf
(
buf
,
"the number of row:%d"
,
i
);
int32_t
len
=
sprintf
(
buf1
,
buf
,
i
);
int32_t
len
=
sprintf
(
buf1
,
buf
,
i
);
STR_TO_VARSTR
(
buf1
,
buf
)
STR_TO_VARSTR
(
buf1
,
buf
)
colData
Append
(
p1
,
i
,
buf1
,
false
);
colData
SetVal
(
p1
,
i
,
buf1
,
false
);
b
->
info
.
rows
++
;
b
->
info
.
rows
++
;
memset
(
buf
,
0
,
sizeof
(
buf
));
memset
(
buf
,
0
,
sizeof
(
buf
));
...
...
source/dnode/mgmt/mgmt_dnode/src/dmHandle.c
浏览文件 @
8d187efc
...
@@ -242,19 +242,19 @@ int32_t dmAppendVariablesToBlock(SSDataBlock *pBlock, int32_t dnodeId) {
...
@@ -242,19 +242,19 @@ int32_t dmAppendVariablesToBlock(SSDataBlock *pBlock, int32_t dnodeId) {
GRANT_CFG_SKIP
;
GRANT_CFG_SKIP
;
SColumnInfoData
*
pColInfo
=
taosArrayGet
(
pBlock
->
pDataBlock
,
c
++
);
SColumnInfoData
*
pColInfo
=
taosArrayGet
(
pBlock
->
pDataBlock
,
c
++
);
colData
Append
(
pColInfo
,
i
,
(
const
char
*
)
&
dnodeId
,
false
);
colData
SetVal
(
pColInfo
,
i
,
(
const
char
*
)
&
dnodeId
,
false
);
char
name
[
TSDB_CONFIG_OPTION_LEN
+
VARSTR_HEADER_SIZE
]
=
{
0
};
char
name
[
TSDB_CONFIG_OPTION_LEN
+
VARSTR_HEADER_SIZE
]
=
{
0
};
STR_WITH_MAXSIZE_TO_VARSTR
(
name
,
pItem
->
name
,
TSDB_CONFIG_OPTION_LEN
+
VARSTR_HEADER_SIZE
);
STR_WITH_MAXSIZE_TO_VARSTR
(
name
,
pItem
->
name
,
TSDB_CONFIG_OPTION_LEN
+
VARSTR_HEADER_SIZE
);
pColInfo
=
taosArrayGet
(
pBlock
->
pDataBlock
,
c
++
);
pColInfo
=
taosArrayGet
(
pBlock
->
pDataBlock
,
c
++
);
colData
Append
(
pColInfo
,
i
,
name
,
false
);
colData
SetVal
(
pColInfo
,
i
,
name
,
false
);
char
value
[
TSDB_CONFIG_VALUE_LEN
+
VARSTR_HEADER_SIZE
]
=
{
0
};
char
value
[
TSDB_CONFIG_VALUE_LEN
+
VARSTR_HEADER_SIZE
]
=
{
0
};
int32_t
valueLen
=
0
;
int32_t
valueLen
=
0
;
cfgDumpItemValue
(
pItem
,
&
value
[
VARSTR_HEADER_SIZE
],
TSDB_CONFIG_VALUE_LEN
,
&
valueLen
);
cfgDumpItemValue
(
pItem
,
&
value
[
VARSTR_HEADER_SIZE
],
TSDB_CONFIG_VALUE_LEN
,
&
valueLen
);
varDataSetLen
(
value
,
valueLen
);
varDataSetLen
(
value
,
valueLen
);
pColInfo
=
taosArrayGet
(
pBlock
->
pDataBlock
,
c
++
);
pColInfo
=
taosArrayGet
(
pBlock
->
pDataBlock
,
c
++
);
colData
Append
(
pColInfo
,
i
,
value
,
false
);
colData
SetVal
(
pColInfo
,
i
,
value
,
false
);
numOfRows
++
;
numOfRows
++
;
}
}
...
...
source/dnode/mnode/impl/src/mndCluster.c
浏览文件 @
8d187efc
...
@@ -278,31 +278,31 @@ static int32_t mndRetrieveClusters(SRpcMsg *pMsg, SShowObj *pShow, SSDataBlock *
...
@@ -278,31 +278,31 @@ static int32_t mndRetrieveClusters(SRpcMsg *pMsg, SShowObj *pShow, SSDataBlock *
cols
=
0
;
cols
=
0
;
SColumnInfoData
*
pColInfo
=
taosArrayGet
(
pBlock
->
pDataBlock
,
cols
++
);
SColumnInfoData
*
pColInfo
=
taosArrayGet
(
pBlock
->
pDataBlock
,
cols
++
);
colData
Append
(
pColInfo
,
numOfRows
,
(
const
char
*
)
&
pCluster
->
id
,
false
);
colData
SetVal
(
pColInfo
,
numOfRows
,
(
const
char
*
)
&
pCluster
->
id
,
false
);
char
buf
[
tListLen
(
pCluster
->
name
)
+
VARSTR_HEADER_SIZE
]
=
{
0
};
char
buf
[
tListLen
(
pCluster
->
name
)
+
VARSTR_HEADER_SIZE
]
=
{
0
};
STR_WITH_MAXSIZE_TO_VARSTR
(
buf
,
pCluster
->
name
,
pShow
->
pMeta
->
pSchemas
[
cols
].
bytes
);
STR_WITH_MAXSIZE_TO_VARSTR
(
buf
,
pCluster
->
name
,
pShow
->
pMeta
->
pSchemas
[
cols
].
bytes
);
pColInfo
=
taosArrayGet
(
pBlock
->
pDataBlock
,
cols
++
);
pColInfo
=
taosArrayGet
(
pBlock
->
pDataBlock
,
cols
++
);
colData
Append
(
pColInfo
,
numOfRows
,
buf
,
false
);
colData
SetVal
(
pColInfo
,
numOfRows
,
buf
,
false
);
int32_t
upTime
=
mndGetClusterUpTimeImp
(
pCluster
);
int32_t
upTime
=
mndGetClusterUpTimeImp
(
pCluster
);
pColInfo
=
taosArrayGet
(
pBlock
->
pDataBlock
,
cols
++
);
pColInfo
=
taosArrayGet
(
pBlock
->
pDataBlock
,
cols
++
);
colData
Append
(
pColInfo
,
numOfRows
,
(
const
char
*
)
&
upTime
,
false
);
colData
SetVal
(
pColInfo
,
numOfRows
,
(
const
char
*
)
&
upTime
,
false
);
pColInfo
=
taosArrayGet
(
pBlock
->
pDataBlock
,
cols
++
);
pColInfo
=
taosArrayGet
(
pBlock
->
pDataBlock
,
cols
++
);
colData
Append
(
pColInfo
,
numOfRows
,
(
const
char
*
)
&
pCluster
->
createdTime
,
false
);
colData
SetVal
(
pColInfo
,
numOfRows
,
(
const
char
*
)
&
pCluster
->
createdTime
,
false
);
char
ver
[
12
]
=
{
0
};
char
ver
[
12
]
=
{
0
};
STR_WITH_MAXSIZE_TO_VARSTR
(
ver
,
tsVersionName
,
pShow
->
pMeta
->
pSchemas
[
cols
].
bytes
);
STR_WITH_MAXSIZE_TO_VARSTR
(
ver
,
tsVersionName
,
pShow
->
pMeta
->
pSchemas
[
cols
].
bytes
);
pColInfo
=
taosArrayGet
(
pBlock
->
pDataBlock
,
cols
++
);
pColInfo
=
taosArrayGet
(
pBlock
->
pDataBlock
,
cols
++
);
colData
Append
(
pColInfo
,
numOfRows
,
(
const
char
*
)
ver
,
false
);
colData
SetVal
(
pColInfo
,
numOfRows
,
(
const
char
*
)
ver
,
false
);
pColInfo
=
taosArrayGet
(
pBlock
->
pDataBlock
,
cols
++
);
pColInfo
=
taosArrayGet
(
pBlock
->
pDataBlock
,
cols
++
);
if
(
tsExpireTime
<=
0
)
{
if
(
tsExpireTime
<=
0
)
{
colData
Append
NULL
(
pColInfo
,
numOfRows
);
colData
Set
NULL
(
pColInfo
,
numOfRows
);
}
else
{
}
else
{
colData
Append
(
pColInfo
,
numOfRows
,
(
const
char
*
)
&
tsExpireTime
,
false
);
colData
SetVal
(
pColInfo
,
numOfRows
,
(
const
char
*
)
&
tsExpireTime
,
false
);
}
}
sdbRelease
(
pSdb
,
pCluster
);
sdbRelease
(
pSdb
,
pCluster
);
...
...
source/dnode/mnode/impl/src/mndConsumer.c
浏览文件 @
8d187efc
...
@@ -999,28 +999,28 @@ static int32_t mndRetrieveConsumer(SRpcMsg *pReq, SShowObj *pShow, SSDataBlock *
...
@@ -999,28 +999,28 @@ static int32_t mndRetrieveConsumer(SRpcMsg *pReq, SShowObj *pShow, SSDataBlock *
// consumer id
// consumer id
pColInfo
=
taosArrayGet
(
pBlock
->
pDataBlock
,
cols
++
);
pColInfo
=
taosArrayGet
(
pBlock
->
pDataBlock
,
cols
++
);
colData
Append
(
pColInfo
,
numOfRows
,
(
const
char
*
)
&
pConsumer
->
consumerId
,
false
);
colData
SetVal
(
pColInfo
,
numOfRows
,
(
const
char
*
)
&
pConsumer
->
consumerId
,
false
);
// consumer group
// consumer group
char
cgroup
[
TSDB_CGROUP_LEN
+
VARSTR_HEADER_SIZE
]
=
{
0
};
char
cgroup
[
TSDB_CGROUP_LEN
+
VARSTR_HEADER_SIZE
]
=
{
0
};
tstrncpy
(
varDataVal
(
cgroup
),
pConsumer
->
cgroup
,
TSDB_CGROUP_LEN
);
tstrncpy
(
varDataVal
(
cgroup
),
pConsumer
->
cgroup
,
TSDB_CGROUP_LEN
);
varDataSetLen
(
cgroup
,
strlen
(
varDataVal
(
cgroup
)));
varDataSetLen
(
cgroup
,
strlen
(
varDataVal
(
cgroup
)));
pColInfo
=
taosArrayGet
(
pBlock
->
pDataBlock
,
cols
++
);
pColInfo
=
taosArrayGet
(
pBlock
->
pDataBlock
,
cols
++
);
colData
Append
(
pColInfo
,
numOfRows
,
(
const
char
*
)
cgroup
,
false
);
colData
SetVal
(
pColInfo
,
numOfRows
,
(
const
char
*
)
cgroup
,
false
);
// client id
// client id
char
clientId
[
256
+
VARSTR_HEADER_SIZE
]
=
{
0
};
char
clientId
[
256
+
VARSTR_HEADER_SIZE
]
=
{
0
};
tstrncpy
(
varDataVal
(
clientId
),
pConsumer
->
clientId
,
256
);
tstrncpy
(
varDataVal
(
clientId
),
pConsumer
->
clientId
,
256
);
varDataSetLen
(
clientId
,
strlen
(
varDataVal
(
clientId
)));
varDataSetLen
(
clientId
,
strlen
(
varDataVal
(
clientId
)));
pColInfo
=
taosArrayGet
(
pBlock
->
pDataBlock
,
cols
++
);
pColInfo
=
taosArrayGet
(
pBlock
->
pDataBlock
,
cols
++
);
colData
Append
(
pColInfo
,
numOfRows
,
(
const
char
*
)
clientId
,
false
);
colData
SetVal
(
pColInfo
,
numOfRows
,
(
const
char
*
)
clientId
,
false
);
// status
// status
char
status
[
20
+
VARSTR_HEADER_SIZE
]
=
{
0
};
char
status
[
20
+
VARSTR_HEADER_SIZE
]
=
{
0
};
tstrncpy
(
varDataVal
(
status
),
mndConsumerStatusName
(
pConsumer
->
status
),
20
);
tstrncpy
(
varDataVal
(
status
),
mndConsumerStatusName
(
pConsumer
->
status
),
20
);
varDataSetLen
(
status
,
strlen
(
varDataVal
(
status
)));
varDataSetLen
(
status
,
strlen
(
varDataVal
(
status
)));
pColInfo
=
taosArrayGet
(
pBlock
->
pDataBlock
,
cols
++
);
pColInfo
=
taosArrayGet
(
pBlock
->
pDataBlock
,
cols
++
);
colData
Append
(
pColInfo
,
numOfRows
,
(
const
char
*
)
status
,
false
);
colData
SetVal
(
pColInfo
,
numOfRows
,
(
const
char
*
)
status
,
false
);
// one subscribed topic
// one subscribed topic
pColInfo
=
taosArrayGet
(
pBlock
->
pDataBlock
,
cols
++
);
pColInfo
=
taosArrayGet
(
pBlock
->
pDataBlock
,
cols
++
);
...
@@ -1029,26 +1029,26 @@ static int32_t mndRetrieveConsumer(SRpcMsg *pReq, SShowObj *pShow, SSDataBlock *
...
@@ -1029,26 +1029,26 @@ static int32_t mndRetrieveConsumer(SRpcMsg *pReq, SShowObj *pShow, SSDataBlock *
const
char
*
topicName
=
mndTopicGetShowName
(
taosArrayGetP
(
pConsumer
->
assignedTopics
,
i
));
const
char
*
topicName
=
mndTopicGetShowName
(
taosArrayGetP
(
pConsumer
->
assignedTopics
,
i
));
tstrncpy
(
varDataVal
(
topic
),
topicName
,
TSDB_TOPIC_FNAME_LEN
);
tstrncpy
(
varDataVal
(
topic
),
topicName
,
TSDB_TOPIC_FNAME_LEN
);
varDataSetLen
(
topic
,
strlen
(
varDataVal
(
topic
)));
varDataSetLen
(
topic
,
strlen
(
varDataVal
(
topic
)));
colData
Append
(
pColInfo
,
numOfRows
,
(
const
char
*
)
topic
,
false
);
colData
SetVal
(
pColInfo
,
numOfRows
,
(
const
char
*
)
topic
,
false
);
}
else
{
}
else
{
colData
Append
(
pColInfo
,
numOfRows
,
NULL
,
true
);
colData
SetVal
(
pColInfo
,
numOfRows
,
NULL
,
true
);
}
}
// end point
// end point
/*pColInfo = taosArrayGet(pBlock->pDataBlock, cols++);*/
/*pColInfo = taosArrayGet(pBlock->pDataBlock, cols++);*/
/*colData
Append
(pColInfo, numOfRows, (const char *)&pConsumer->ep, true);*/
/*colData
SetVal
(pColInfo, numOfRows, (const char *)&pConsumer->ep, true);*/
// up time
// up time
pColInfo
=
taosArrayGet
(
pBlock
->
pDataBlock
,
cols
++
);
pColInfo
=
taosArrayGet
(
pBlock
->
pDataBlock
,
cols
++
);
colData
Append
(
pColInfo
,
numOfRows
,
(
const
char
*
)
&
pConsumer
->
upTime
,
false
);
colData
SetVal
(
pColInfo
,
numOfRows
,
(
const
char
*
)
&
pConsumer
->
upTime
,
false
);
// subscribe time
// subscribe time
pColInfo
=
taosArrayGet
(
pBlock
->
pDataBlock
,
cols
++
);
pColInfo
=
taosArrayGet
(
pBlock
->
pDataBlock
,
cols
++
);
colData
Append
(
pColInfo
,
numOfRows
,
(
const
char
*
)
&
pConsumer
->
subscribeTime
,
false
);
colData
SetVal
(
pColInfo
,
numOfRows
,
(
const
char
*
)
&
pConsumer
->
subscribeTime
,
false
);
// rebalance time
// rebalance time
pColInfo
=
taosArrayGet
(
pBlock
->
pDataBlock
,
cols
++
);
pColInfo
=
taosArrayGet
(
pBlock
->
pDataBlock
,
cols
++
);
colData
Append
(
pColInfo
,
numOfRows
,
(
const
char
*
)
&
pConsumer
->
rebalanceTime
,
pConsumer
->
rebalanceTime
==
0
);
colData
SetVal
(
pColInfo
,
numOfRows
,
(
const
char
*
)
&
pConsumer
->
rebalanceTime
,
pConsumer
->
rebalanceTime
==
0
);
numOfRows
++
;
numOfRows
++
;
}
}
...
...
source/dnode/mnode/impl/src/mndDb.c
浏览文件 @
8d187efc
...
@@ -1641,46 +1641,46 @@ static void mndDumpDbInfoData(SMnode *pMnode, SSDataBlock *pBlock, SDbObj *pDb,
...
@@ -1641,46 +1641,46 @@ static void mndDumpDbInfoData(SMnode *pMnode, SSDataBlock *pBlock, SDbObj *pDb,
for
(
int32_t
i
=
0
;
i
<
pShow
->
numOfColumns
;
++
i
)
{
for
(
int32_t
i
=
0
;
i
<
pShow
->
numOfColumns
;
++
i
)
{
SColumnInfoData
*
pColInfo
=
taosArrayGet
(
pBlock
->
pDataBlock
,
i
);
SColumnInfoData
*
pColInfo
=
taosArrayGet
(
pBlock
->
pDataBlock
,
i
);
if
(
i
==
0
)
{
if
(
i
==
0
)
{
colData
Append
(
pColInfo
,
rows
,
buf
,
false
);
colData
SetVal
(
pColInfo
,
rows
,
buf
,
false
);
}
else
if
(
i
==
1
)
{
}
else
if
(
i
==
1
)
{
colData
Append
(
pColInfo
,
rows
,
(
const
char
*
)
&
pDb
->
createdTime
,
false
);
colData
SetVal
(
pColInfo
,
rows
,
(
const
char
*
)
&
pDb
->
createdTime
,
false
);
}
else
if
(
i
==
3
)
{
}
else
if
(
i
==
3
)
{
colData
Append
(
pColInfo
,
rows
,
(
const
char
*
)
&
numOfTables
,
false
);
colData
SetVal
(
pColInfo
,
rows
,
(
const
char
*
)
&
numOfTables
,
false
);
}
else
if
(
i
==
14
)
{
}
else
if
(
i
==
14
)
{
colData
Append
(
pColInfo
,
rows
,
precVstr
,
false
);
colData
SetVal
(
pColInfo
,
rows
,
precVstr
,
false
);
}
else
if
(
i
==
15
)
{
}
else
if
(
i
==
15
)
{
colData
Append
(
pColInfo
,
rows
,
statusVstr
,
false
);
colData
SetVal
(
pColInfo
,
rows
,
statusVstr
,
false
);
}
else
{
}
else
{
colDataAppendNULL
(
pColInfo
,
rows
);
colDataAppendNULL
(
pColInfo
,
rows
);
}
}
}
}
}
else
{
}
else
{
SColumnInfoData
*
pColInfo
=
taosArrayGet
(
pBlock
->
pDataBlock
,
cols
++
);
SColumnInfoData
*
pColInfo
=
taosArrayGet
(
pBlock
->
pDataBlock
,
cols
++
);
colData
Append
(
pColInfo
,
rows
,
buf
,
false
);
colData
SetVal
(
pColInfo
,
rows
,
buf
,
false
);
pColInfo
=
taosArrayGet
(
pBlock
->
pDataBlock
,
cols
++
);
pColInfo
=
taosArrayGet
(
pBlock
->
pDataBlock
,
cols
++
);
colData
Append
(
pColInfo
,
rows
,
(
const
char
*
)
&
pDb
->
createdTime
,
false
);
colData
SetVal
(
pColInfo
,
rows
,
(
const
char
*
)
&
pDb
->
createdTime
,
false
);
pColInfo
=
taosArrayGet
(
pBlock
->
pDataBlock
,
cols
++
);
pColInfo
=
taosArrayGet
(
pBlock
->
pDataBlock
,
cols
++
);
colData
Append
(
pColInfo
,
rows
,
(
const
char
*
)
&
pDb
->
cfg
.
numOfVgroups
,
false
);
colData
SetVal
(
pColInfo
,
rows
,
(
const
char
*
)
&
pDb
->
cfg
.
numOfVgroups
,
false
);
pColInfo
=
taosArrayGet
(
pBlock
->
pDataBlock
,
cols
++
);
pColInfo
=
taosArrayGet
(
pBlock
->
pDataBlock
,
cols
++
);
colData
Append
(
pColInfo
,
rows
,
(
const
char
*
)
&
numOfTables
,
false
);
colData
SetVal
(
pColInfo
,
rows
,
(
const
char
*
)
&
numOfTables
,
false
);
pColInfo
=
taosArrayGet
(
pBlock
->
pDataBlock
,
cols
++
);
pColInfo
=
taosArrayGet
(
pBlock
->
pDataBlock
,
cols
++
);
colData
Append
(
pColInfo
,
rows
,
(
const
char
*
)
&
pDb
->
cfg
.
replications
,
false
);
colData
SetVal
(
pColInfo
,
rows
,
(
const
char
*
)
&
pDb
->
cfg
.
replications
,
false
);
const
char
*
strictStr
=
pDb
->
cfg
.
strict
?
"on"
:
"off"
;
const
char
*
strictStr
=
pDb
->
cfg
.
strict
?
"on"
:
"off"
;
char
strictVstr
[
24
]
=
{
0
};
char
strictVstr
[
24
]
=
{
0
};
STR_WITH_MAXSIZE_TO_VARSTR
(
strictVstr
,
strictStr
,
24
);
STR_WITH_MAXSIZE_TO_VARSTR
(
strictVstr
,
strictStr
,
24
);
pColInfo
=
taosArrayGet
(
pBlock
->
pDataBlock
,
cols
++
);
pColInfo
=
taosArrayGet
(
pBlock
->
pDataBlock
,
cols
++
);
colData
Append
(
pColInfo
,
rows
,
(
const
char
*
)
strictVstr
,
false
);
colData
SetVal
(
pColInfo
,
rows
,
(
const
char
*
)
strictVstr
,
false
);
char
durationVstr
[
128
]
=
{
0
};
char
durationVstr
[
128
]
=
{
0
};
int32_t
len
=
sprintf
(
&
durationVstr
[
VARSTR_HEADER_SIZE
],
"%dm"
,
pDb
->
cfg
.
daysPerFile
);
int32_t
len
=
sprintf
(
&
durationVstr
[
VARSTR_HEADER_SIZE
],
"%dm"
,
pDb
->
cfg
.
daysPerFile
);
varDataSetLen
(
durationVstr
,
len
);
varDataSetLen
(
durationVstr
,
len
);
pColInfo
=
taosArrayGet
(
pBlock
->
pDataBlock
,
cols
++
);
pColInfo
=
taosArrayGet
(
pBlock
->
pDataBlock
,
cols
++
);
colData
Append
(
pColInfo
,
rows
,
(
const
char
*
)
durationVstr
,
false
);
colData
SetVal
(
pColInfo
,
rows
,
(
const
char
*
)
durationVstr
,
false
);
char
keepVstr
[
128
]
=
{
0
};
char
keepVstr
[
128
]
=
{
0
};
if
(
pDb
->
cfg
.
daysToKeep0
>
pDb
->
cfg
.
daysToKeep1
||
pDb
->
cfg
.
daysToKeep0
>
pDb
->
cfg
.
daysToKeep2
)
{
if
(
pDb
->
cfg
.
daysToKeep0
>
pDb
->
cfg
.
daysToKeep1
||
pDb
->
cfg
.
daysToKeep0
>
pDb
->
cfg
.
daysToKeep2
)
{
...
@@ -1692,86 +1692,86 @@ static void mndDumpDbInfoData(SMnode *pMnode, SSDataBlock *pBlock, SDbObj *pDb,
...
@@ -1692,86 +1692,86 @@ static void mndDumpDbInfoData(SMnode *pMnode, SSDataBlock *pBlock, SDbObj *pDb,
}
}
varDataSetLen
(
keepVstr
,
len
);
varDataSetLen
(
keepVstr
,
len
);
pColInfo
=
taosArrayGet
(
pBlock
->
pDataBlock
,
cols
++
);
pColInfo
=
taosArrayGet
(
pBlock
->
pDataBlock
,
cols
++
);
colData
Append
(
pColInfo
,
rows
,
(
const
char
*
)
keepVstr
,
false
);
colData
SetVal
(
pColInfo
,
rows
,
(
const
char
*
)
keepVstr
,
false
);
pColInfo
=
taosArrayGet
(
pBlock
->
pDataBlock
,
cols
++
);
pColInfo
=
taosArrayGet
(
pBlock
->
pDataBlock
,
cols
++
);
colData
Append
(
pColInfo
,
rows
,
(
const
char
*
)
&
pDb
->
cfg
.
buffer
,
false
);
colData
SetVal
(
pColInfo
,
rows
,
(
const
char
*
)
&
pDb
->
cfg
.
buffer
,
false
);
pColInfo
=
taosArrayGet
(
pBlock
->
pDataBlock
,
cols
++
);
pColInfo
=
taosArrayGet
(
pBlock
->
pDataBlock
,
cols
++
);
colData
Append
(
pColInfo
,
rows
,
(
const
char
*
)
&
pDb
->
cfg
.
pageSize
,
false
);
colData
SetVal
(
pColInfo
,
rows
,
(
const
char
*
)
&
pDb
->
cfg
.
pageSize
,
false
);
pColInfo
=
taosArrayGet
(
pBlock
->
pDataBlock
,
cols
++
);
pColInfo
=
taosArrayGet
(
pBlock
->
pDataBlock
,
cols
++
);
colData
Append
(
pColInfo
,
rows
,
(
const
char
*
)
&
pDb
->
cfg
.
pages
,
false
);
colData
SetVal
(
pColInfo
,
rows
,
(
const
char
*
)
&
pDb
->
cfg
.
pages
,
false
);
pColInfo
=
taosArrayGet
(
pBlock
->
pDataBlock
,
cols
++
);
pColInfo
=
taosArrayGet
(
pBlock
->
pDataBlock
,
cols
++
);
colData
Append
(
pColInfo
,
rows
,
(
const
char
*
)
&
pDb
->
cfg
.
minRows
,
false
);
colData
SetVal
(
pColInfo
,
rows
,
(
const
char
*
)
&
pDb
->
cfg
.
minRows
,
false
);
pColInfo
=
taosArrayGet
(
pBlock
->
pDataBlock
,
cols
++
);
pColInfo
=
taosArrayGet
(
pBlock
->
pDataBlock
,
cols
++
);
colData
Append
(
pColInfo
,
rows
,
(
const
char
*
)
&
pDb
->
cfg
.
maxRows
,
false
);
colData
SetVal
(
pColInfo
,
rows
,
(
const
char
*
)
&
pDb
->
cfg
.
maxRows
,
false
);
pColInfo
=
taosArrayGet
(
pBlock
->
pDataBlock
,
cols
++
);
pColInfo
=
taosArrayGet
(
pBlock
->
pDataBlock
,
cols
++
);
colData
Append
(
pColInfo
,
rows
,
(
const
char
*
)
&
pDb
->
cfg
.
compression
,
false
);
colData
SetVal
(
pColInfo
,
rows
,
(
const
char
*
)
&
pDb
->
cfg
.
compression
,
false
);
pColInfo
=
taosArrayGet
(
pBlock
->
pDataBlock
,
cols
++
);
pColInfo
=
taosArrayGet
(
pBlock
->
pDataBlock
,
cols
++
);
colData
Append
(
pColInfo
,
rows
,
(
const
char
*
)
precVstr
,
false
);
colData
SetVal
(
pColInfo
,
rows
,
(
const
char
*
)
precVstr
,
false
);
pColInfo
=
taosArrayGet
(
pBlock
->
pDataBlock
,
cols
++
);
pColInfo
=
taosArrayGet
(
pBlock
->
pDataBlock
,
cols
++
);
colData
Append
(
pColInfo
,
rows
,
(
const
char
*
)
statusVstr
,
false
);
colData
SetVal
(
pColInfo
,
rows
,
(
const
char
*
)
statusVstr
,
false
);
char
*
rentensionVstr
=
buildRetension
(
pDb
->
cfg
.
pRetensions
);
char
*
rentensionVstr
=
buildRetension
(
pDb
->
cfg
.
pRetensions
);
pColInfo
=
taosArrayGet
(
pBlock
->
pDataBlock
,
cols
++
);
pColInfo
=
taosArrayGet
(
pBlock
->
pDataBlock
,
cols
++
);
if
(
rentensionVstr
==
NULL
)
{
if
(
rentensionVstr
==
NULL
)
{
colDataAppendNULL
(
pColInfo
,
rows
);
colDataAppendNULL
(
pColInfo
,
rows
);
}
else
{
}
else
{
colData
Append
(
pColInfo
,
rows
,
(
const
char
*
)
rentensionVstr
,
false
);
colData
SetVal
(
pColInfo
,
rows
,
(
const
char
*
)
rentensionVstr
,
false
);
taosMemoryFree
(
rentensionVstr
);
taosMemoryFree
(
rentensionVstr
);
}
}
pColInfo
=
taosArrayGet
(
pBlock
->
pDataBlock
,
cols
++
);
pColInfo
=
taosArrayGet
(
pBlock
->
pDataBlock
,
cols
++
);
colData
Append
(
pColInfo
,
rows
,
(
const
char
*
)
&
pDb
->
cfg
.
numOfStables
,
false
);
colData
SetVal
(
pColInfo
,
rows
,
(
const
char
*
)
&
pDb
->
cfg
.
numOfStables
,
false
);
const
char
*
cacheModelStr
=
getCacheModelStr
(
pDb
->
cfg
.
cacheLast
);
const
char
*
cacheModelStr
=
getCacheModelStr
(
pDb
->
cfg
.
cacheLast
);
char
cacheModelVstr
[
24
]
=
{
0
};
char
cacheModelVstr
[
24
]
=
{
0
};
STR_WITH_MAXSIZE_TO_VARSTR
(
cacheModelVstr
,
cacheModelStr
,
24
);
STR_WITH_MAXSIZE_TO_VARSTR
(
cacheModelVstr
,
cacheModelStr
,
24
);
pColInfo
=
taosArrayGet
(
pBlock
->
pDataBlock
,
cols
++
);
pColInfo
=
taosArrayGet
(
pBlock
->
pDataBlock
,
cols
++
);
colData
Append
(
pColInfo
,
rows
,
(
const
char
*
)
cacheModelVstr
,
false
);
colData
SetVal
(
pColInfo
,
rows
,
(
const
char
*
)
cacheModelVstr
,
false
);
pColInfo
=
taosArrayGet
(
pBlock
->
pDataBlock
,
cols
++
);
pColInfo
=
taosArrayGet
(
pBlock
->
pDataBlock
,
cols
++
);
colData
Append
(
pColInfo
,
rows
,
(
const
char
*
)
&
pDb
->
cfg
.
cacheLastSize
,
false
);
colData
SetVal
(
pColInfo
,
rows
,
(
const
char
*
)
&
pDb
->
cfg
.
cacheLastSize
,
false
);
pColInfo
=
taosArrayGet
(
pBlock
->
pDataBlock
,
cols
++
);
pColInfo
=
taosArrayGet
(
pBlock
->
pDataBlock
,
cols
++
);
colData
Append
(
pColInfo
,
rows
,
(
const
char
*
)
&
pDb
->
cfg
.
walLevel
,
false
);
colData
SetVal
(
pColInfo
,
rows
,
(
const
char
*
)
&
pDb
->
cfg
.
walLevel
,
false
);
pColInfo
=
taosArrayGet
(
pBlock
->
pDataBlock
,
cols
++
);
pColInfo
=
taosArrayGet
(
pBlock
->
pDataBlock
,
cols
++
);
colData
Append
(
pColInfo
,
rows
,
(
const
char
*
)
&
pDb
->
cfg
.
walFsyncPeriod
,
false
);
colData
SetVal
(
pColInfo
,
rows
,
(
const
char
*
)
&
pDb
->
cfg
.
walFsyncPeriod
,
false
);
pColInfo
=
taosArrayGet
(
pBlock
->
pDataBlock
,
cols
++
);
pColInfo
=
taosArrayGet
(
pBlock
->
pDataBlock
,
cols
++
);
colData
Append
(
pColInfo
,
rows
,
(
const
char
*
)
&
pDb
->
cfg
.
walRetentionPeriod
,
false
);
colData
SetVal
(
pColInfo
,
rows
,
(
const
char
*
)
&
pDb
->
cfg
.
walRetentionPeriod
,
false
);
pColInfo
=
taosArrayGet
(
pBlock
->
pDataBlock
,
cols
++
);
pColInfo
=
taosArrayGet
(
pBlock
->
pDataBlock
,
cols
++
);
colData
Append
(
pColInfo
,
rows
,
(
const
char
*
)
&
pDb
->
cfg
.
walRetentionSize
,
false
);
colData
SetVal
(
pColInfo
,
rows
,
(
const
char
*
)
&
pDb
->
cfg
.
walRetentionSize
,
false
);
pColInfo
=
taosArrayGet
(
pBlock
->
pDataBlock
,
cols
++
);
pColInfo
=
taosArrayGet
(
pBlock
->
pDataBlock
,
cols
++
);
colData
Append
(
pColInfo
,
rows
,
(
const
char
*
)
&
pDb
->
cfg
.
walRollPeriod
,
false
);
colData
SetVal
(
pColInfo
,
rows
,
(
const
char
*
)
&
pDb
->
cfg
.
walRollPeriod
,
false
);
pColInfo
=
taosArrayGet
(
pBlock
->
pDataBlock
,
cols
++
);
pColInfo
=
taosArrayGet
(
pBlock
->
pDataBlock
,
cols
++
);
colData
Append
(
pColInfo
,
rows
,
(
const
char
*
)
&
pDb
->
cfg
.
walSegmentSize
,
false
);
colData
SetVal
(
pColInfo
,
rows
,
(
const
char
*
)
&
pDb
->
cfg
.
walSegmentSize
,
false
);
pColInfo
=
taosArrayGet
(
pBlock
->
pDataBlock
,
cols
++
);
pColInfo
=
taosArrayGet
(
pBlock
->
pDataBlock
,
cols
++
);
colData
Append
(
pColInfo
,
rows
,
(
const
char
*
)
&
pDb
->
cfg
.
sstTrigger
,
false
);
colData
SetVal
(
pColInfo
,
rows
,
(
const
char
*
)
&
pDb
->
cfg
.
sstTrigger
,
false
);
pColInfo
=
taosArrayGet
(
pBlock
->
pDataBlock
,
cols
++
);
pColInfo
=
taosArrayGet
(
pBlock
->
pDataBlock
,
cols
++
);
int16_t
hashPrefix
=
pDb
->
cfg
.
hashPrefix
;
int16_t
hashPrefix
=
pDb
->
cfg
.
hashPrefix
;
if
(
hashPrefix
>
0
)
{
if
(
hashPrefix
>
0
)
{
hashPrefix
=
pDb
->
cfg
.
hashPrefix
-
strlen
(
pDb
->
name
)
-
1
;
hashPrefix
=
pDb
->
cfg
.
hashPrefix
-
strlen
(
pDb
->
name
)
-
1
;
}
}
colData
Append
(
pColInfo
,
rows
,
(
const
char
*
)
&
hashPrefix
,
false
);
colData
SetVal
(
pColInfo
,
rows
,
(
const
char
*
)
&
hashPrefix
,
false
);
pColInfo
=
taosArrayGet
(
pBlock
->
pDataBlock
,
cols
++
);
pColInfo
=
taosArrayGet
(
pBlock
->
pDataBlock
,
cols
++
);
colData
Append
(
pColInfo
,
rows
,
(
const
char
*
)
&
pDb
->
cfg
.
hashSuffix
,
false
);
colData
SetVal
(
pColInfo
,
rows
,
(
const
char
*
)
&
pDb
->
cfg
.
hashSuffix
,
false
);
pColInfo
=
taosArrayGet
(
pBlock
->
pDataBlock
,
cols
++
);
pColInfo
=
taosArrayGet
(
pBlock
->
pDataBlock
,
cols
++
);
colData
Append
(
pColInfo
,
rows
,
(
const
char
*
)
&
pDb
->
cfg
.
tsdbPageSize
,
false
);
colData
SetVal
(
pColInfo
,
rows
,
(
const
char
*
)
&
pDb
->
cfg
.
tsdbPageSize
,
false
);
}
}
taosMemoryFree
(
buf
);
taosMemoryFree
(
buf
);
...
...
source/dnode/mnode/impl/src/mndDnode.c
浏览文件 @
8d187efc
...
@@ -1005,11 +1005,11 @@ static int32_t mndRetrieveConfigs(SRpcMsg *pReq, SShowObj *pShow, SSDataBlock *p
...
@@ -1005,11 +1005,11 @@ static int32_t mndRetrieveConfigs(SRpcMsg *pReq, SShowObj *pShow, SSDataBlock *p
STR_WITH_MAXSIZE_TO_VARSTR
(
buf
,
cfgOpts
[
i
],
TSDB_CONFIG_OPTION_LEN
);
STR_WITH_MAXSIZE_TO_VARSTR
(
buf
,
cfgOpts
[
i
],
TSDB_CONFIG_OPTION_LEN
);
SColumnInfoData
*
pColInfo
=
taosArrayGet
(
pBlock
->
pDataBlock
,
cols
++
);
SColumnInfoData
*
pColInfo
=
taosArrayGet
(
pBlock
->
pDataBlock
,
cols
++
);
colData
Append
(
pColInfo
,
numOfRows
,
(
const
char
*
)
buf
,
false
);
colData
SetVal
(
pColInfo
,
numOfRows
,
(
const
char
*
)
buf
,
false
);
STR_WITH_MAXSIZE_TO_VARSTR
(
bufVal
,
cfgVals
[
i
],
TSDB_CONFIG_VALUE_LEN
);
STR_WITH_MAXSIZE_TO_VARSTR
(
bufVal
,
cfgVals
[
i
],
TSDB_CONFIG_VALUE_LEN
);
pColInfo
=
taosArrayGet
(
pBlock
->
pDataBlock
,
cols
++
);
pColInfo
=
taosArrayGet
(
pBlock
->
pDataBlock
,
cols
++
);
colData
Append
(
pColInfo
,
numOfRows
,
(
const
char
*
)
bufVal
,
false
);
colData
SetVal
(
pColInfo
,
numOfRows
,
(
const
char
*
)
bufVal
,
false
);
numOfRows
++
;
numOfRows
++
;
}
}
...
@@ -1037,20 +1037,20 @@ static int32_t mndRetrieveDnodes(SRpcMsg *pReq, SShowObj *pShow, SSDataBlock *pB
...
@@ -1037,20 +1037,20 @@ static int32_t mndRetrieveDnodes(SRpcMsg *pReq, SShowObj *pShow, SSDataBlock *pB
cols
=
0
;
cols
=
0
;
SColumnInfoData
*
pColInfo
=
taosArrayGet
(
pBlock
->
pDataBlock
,
cols
++
);
SColumnInfoData
*
pColInfo
=
taosArrayGet
(
pBlock
->
pDataBlock
,
cols
++
);
colData
Append
(
pColInfo
,
numOfRows
,
(
const
char
*
)
&
pDnode
->
id
,
false
);
colData
SetVal
(
pColInfo
,
numOfRows
,
(
const
char
*
)
&
pDnode
->
id
,
false
);
char
buf
[
tListLen
(
pDnode
->
ep
)
+
VARSTR_HEADER_SIZE
]
=
{
0
};
char
buf
[
tListLen
(
pDnode
->
ep
)
+
VARSTR_HEADER_SIZE
]
=
{
0
};
STR_WITH_MAXSIZE_TO_VARSTR
(
buf
,
pDnode
->
ep
,
pShow
->
pMeta
->
pSchemas
[
cols
].
bytes
);
STR_WITH_MAXSIZE_TO_VARSTR
(
buf
,
pDnode
->
ep
,
pShow
->
pMeta
->
pSchemas
[
cols
].
bytes
);
pColInfo
=
taosArrayGet
(
pBlock
->
pDataBlock
,
cols
++
);
pColInfo
=
taosArrayGet
(
pBlock
->
pDataBlock
,
cols
++
);
colData
Append
(
pColInfo
,
numOfRows
,
buf
,
false
);
colData
SetVal
(
pColInfo
,
numOfRows
,
buf
,
false
);
pColInfo
=
taosArrayGet
(
pBlock
->
pDataBlock
,
cols
++
);
pColInfo
=
taosArrayGet
(
pBlock
->
pDataBlock
,
cols
++
);
int16_t
id
=
mndGetVnodesNum
(
pMnode
,
pDnode
->
id
);
int16_t
id
=
mndGetVnodesNum
(
pMnode
,
pDnode
->
id
);
colData
Append
(
pColInfo
,
numOfRows
,
(
const
char
*
)
&
id
,
false
);
colData
SetVal
(
pColInfo
,
numOfRows
,
(
const
char
*
)
&
id
,
false
);
pColInfo
=
taosArrayGet
(
pBlock
->
pDataBlock
,
cols
++
);
pColInfo
=
taosArrayGet
(
pBlock
->
pDataBlock
,
cols
++
);
colData
Append
(
pColInfo
,
numOfRows
,
(
const
char
*
)
&
pDnode
->
numOfSupportVnodes
,
false
);
colData
SetVal
(
pColInfo
,
numOfRows
,
(
const
char
*
)
&
pDnode
->
numOfSupportVnodes
,
false
);
const
char
*
status
=
"ready"
;
const
char
*
status
=
"ready"
;
if
(
objStatus
==
SDB_STATUS_CREATING
)
status
=
"creating"
;
if
(
objStatus
==
SDB_STATUS_CREATING
)
status
=
"creating"
;
...
@@ -1067,16 +1067,16 @@ static int32_t mndRetrieveDnodes(SRpcMsg *pReq, SShowObj *pShow, SSDataBlock *pB
...
@@ -1067,16 +1067,16 @@ static int32_t mndRetrieveDnodes(SRpcMsg *pReq, SShowObj *pShow, SSDataBlock *pB
char
b1
[
16
]
=
{
0
};
char
b1
[
16
]
=
{
0
};
STR_TO_VARSTR
(
b1
,
status
);
STR_TO_VARSTR
(
b1
,
status
);
pColInfo
=
taosArrayGet
(
pBlock
->
pDataBlock
,
cols
++
);
pColInfo
=
taosArrayGet
(
pBlock
->
pDataBlock
,
cols
++
);
colData
Append
(
pColInfo
,
numOfRows
,
b1
,
false
);
colData
SetVal
(
pColInfo
,
numOfRows
,
b1
,
false
);
pColInfo
=
taosArrayGet
(
pBlock
->
pDataBlock
,
cols
++
);
pColInfo
=
taosArrayGet
(
pBlock
->
pDataBlock
,
cols
++
);
colData
Append
(
pColInfo
,
numOfRows
,
(
const
char
*
)
&
pDnode
->
createdTime
,
false
);
colData
SetVal
(
pColInfo
,
numOfRows
,
(
const
char
*
)
&
pDnode
->
createdTime
,
false
);
char
*
b
=
taosMemoryCalloc
(
VARSTR_HEADER_SIZE
+
strlen
(
offlineReason
[
pDnode
->
offlineReason
])
+
1
,
1
);
char
*
b
=
taosMemoryCalloc
(
VARSTR_HEADER_SIZE
+
strlen
(
offlineReason
[
pDnode
->
offlineReason
])
+
1
,
1
);
STR_TO_VARSTR
(
b
,
online
?
""
:
offlineReason
[
pDnode
->
offlineReason
]);
STR_TO_VARSTR
(
b
,
online
?
""
:
offlineReason
[
pDnode
->
offlineReason
]);
pColInfo
=
taosArrayGet
(
pBlock
->
pDataBlock
,
cols
++
);
pColInfo
=
taosArrayGet
(
pBlock
->
pDataBlock
,
cols
++
);
colData
Append
(
pColInfo
,
numOfRows
,
b
,
false
);
colData
SetVal
(
pColInfo
,
numOfRows
,
b
,
false
);
taosMemoryFreeClear
(
b
);
taosMemoryFreeClear
(
b
);
numOfRows
++
;
numOfRows
++
;
...
...
source/dnode/mnode/impl/src/mndFunc.c
浏览文件 @
8d187efc
...
@@ -511,39 +511,39 @@ static int32_t mndRetrieveFuncs(SRpcMsg *pReq, SShowObj *pShow, SSDataBlock *pBl
...
@@ -511,39 +511,39 @@ static int32_t mndRetrieveFuncs(SRpcMsg *pReq, SShowObj *pShow, SSDataBlock *pBl
STR_WITH_MAXSIZE_TO_VARSTR
(
b1
,
pFunc
->
name
,
pShow
->
pMeta
->
pSchemas
[
cols
].
bytes
);
STR_WITH_MAXSIZE_TO_VARSTR
(
b1
,
pFunc
->
name
,
pShow
->
pMeta
->
pSchemas
[
cols
].
bytes
);
SColumnInfoData
*
pColInfo
=
taosArrayGet
(
pBlock
->
pDataBlock
,
cols
++
);
SColumnInfoData
*
pColInfo
=
taosArrayGet
(
pBlock
->
pDataBlock
,
cols
++
);
colData
Append
(
pColInfo
,
numOfRows
,
(
const
char
*
)
b1
,
false
);
colData
SetVal
(
pColInfo
,
numOfRows
,
(
const
char
*
)
b1
,
false
);
if
(
pFunc
->
pComment
)
{
if
(
pFunc
->
pComment
)
{
char
*
b2
=
taosMemoryCalloc
(
1
,
pShow
->
pMeta
->
pSchemas
[
cols
].
bytes
);
char
*
b2
=
taosMemoryCalloc
(
1
,
pShow
->
pMeta
->
pSchemas
[
cols
].
bytes
);
STR_WITH_MAXSIZE_TO_VARSTR
(
b2
,
pFunc
->
pComment
,
pShow
->
pMeta
->
pSchemas
[
cols
].
bytes
);
STR_WITH_MAXSIZE_TO_VARSTR
(
b2
,
pFunc
->
pComment
,
pShow
->
pMeta
->
pSchemas
[
cols
].
bytes
);
pColInfo
=
taosArrayGet
(
pBlock
->
pDataBlock
,
cols
++
);
pColInfo
=
taosArrayGet
(
pBlock
->
pDataBlock
,
cols
++
);
colData
Append
(
pColInfo
,
numOfRows
,
(
const
char
*
)
b2
,
false
);
colData
SetVal
(
pColInfo
,
numOfRows
,
(
const
char
*
)
b2
,
false
);
}
else
{
}
else
{
pColInfo
=
taosArrayGet
(
pBlock
->
pDataBlock
,
cols
++
);
pColInfo
=
taosArrayGet
(
pBlock
->
pDataBlock
,
cols
++
);
colData
Append
(
pColInfo
,
numOfRows
,
NULL
,
true
);
colData
SetVal
(
pColInfo
,
numOfRows
,
NULL
,
true
);
}
}
int32_t
isAgg
=
(
pFunc
->
funcType
==
TSDB_FUNC_TYPE_AGGREGATE
)
?
1
:
0
;
int32_t
isAgg
=
(
pFunc
->
funcType
==
TSDB_FUNC_TYPE_AGGREGATE
)
?
1
:
0
;
pColInfo
=
taosArrayGet
(
pBlock
->
pDataBlock
,
cols
++
);
pColInfo
=
taosArrayGet
(
pBlock
->
pDataBlock
,
cols
++
);
colData
Append
(
pColInfo
,
numOfRows
,
(
const
char
*
)
&
isAgg
,
false
);
colData
SetVal
(
pColInfo
,
numOfRows
,
(
const
char
*
)
&
isAgg
,
false
);
char
b3
[
TSDB_TYPE_STR_MAX_LEN
+
1
]
=
{
0
};
char
b3
[
TSDB_TYPE_STR_MAX_LEN
+
1
]
=
{
0
};
STR_WITH_MAXSIZE_TO_VARSTR
(
b3
,
mnodeGenTypeStr
(
buf
,
TSDB_TYPE_STR_MAX_LEN
,
pFunc
->
outputType
,
pFunc
->
outputLen
),
STR_WITH_MAXSIZE_TO_VARSTR
(
b3
,
mnodeGenTypeStr
(
buf
,
TSDB_TYPE_STR_MAX_LEN
,
pFunc
->
outputType
,
pFunc
->
outputLen
),
pShow
->
pMeta
->
pSchemas
[
cols
].
bytes
);
pShow
->
pMeta
->
pSchemas
[
cols
].
bytes
);
pColInfo
=
taosArrayGet
(
pBlock
->
pDataBlock
,
cols
++
);
pColInfo
=
taosArrayGet
(
pBlock
->
pDataBlock
,
cols
++
);
colData
Append
(
pColInfo
,
numOfRows
,
(
const
char
*
)
b3
,
false
);
colData
SetVal
(
pColInfo
,
numOfRows
,
(
const
char
*
)
b3
,
false
);
pColInfo
=
taosArrayGet
(
pBlock
->
pDataBlock
,
cols
++
);
pColInfo
=
taosArrayGet
(
pBlock
->
pDataBlock
,
cols
++
);
colData
Append
(
pColInfo
,
numOfRows
,
(
const
char
*
)
&
pFunc
->
createdTime
,
false
);
colData
SetVal
(
pColInfo
,
numOfRows
,
(
const
char
*
)
&
pFunc
->
createdTime
,
false
);
pColInfo
=
taosArrayGet
(
pBlock
->
pDataBlock
,
cols
++
);
pColInfo
=
taosArrayGet
(
pBlock
->
pDataBlock
,
cols
++
);
colData
Append
(
pColInfo
,
numOfRows
,
(
const
char
*
)
&
pFunc
->
codeSize
,
false
);
colData
SetVal
(
pColInfo
,
numOfRows
,
(
const
char
*
)
&
pFunc
->
codeSize
,
false
);
pColInfo
=
taosArrayGet
(
pBlock
->
pDataBlock
,
cols
++
);
pColInfo
=
taosArrayGet
(
pBlock
->
pDataBlock
,
cols
++
);
colData
Append
(
pColInfo
,
numOfRows
,
(
const
char
*
)
&
pFunc
->
bufSize
,
false
);
colData
SetVal
(
pColInfo
,
numOfRows
,
(
const
char
*
)
&
pFunc
->
bufSize
,
false
);
numOfRows
++
;
numOfRows
++
;
sdbRelease
(
pSdb
,
pFunc
);
sdbRelease
(
pSdb
,
pFunc
);
...
...
source/dnode/mnode/impl/src/mndGrant.c
浏览文件 @
8d187efc
...
@@ -29,85 +29,85 @@ static int32_t mndRetrieveGrant(SRpcMsg *pReq, SShowObj *pShow, SSDataBlock *pBl
...
@@ -29,85 +29,85 @@ static int32_t mndRetrieveGrant(SRpcMsg *pReq, SShowObj *pShow, SSDataBlock *pBl
SColumnInfoData
*
pColInfo
=
taosArrayGet
(
pBlock
->
pDataBlock
,
cols
);
SColumnInfoData
*
pColInfo
=
taosArrayGet
(
pBlock
->
pDataBlock
,
cols
);
const
char
*
src
=
"community"
;
const
char
*
src
=
"community"
;
STR_WITH_MAXSIZE_TO_VARSTR
(
tmp
,
src
,
32
);
STR_WITH_MAXSIZE_TO_VARSTR
(
tmp
,
src
,
32
);
colData
Append
(
pColInfo
,
numOfRows
,
tmp
,
false
);
colData
SetVal
(
pColInfo
,
numOfRows
,
tmp
,
false
);
cols
++
;
cols
++
;
pColInfo
=
taosArrayGet
(
pBlock
->
pDataBlock
,
cols
);
pColInfo
=
taosArrayGet
(
pBlock
->
pDataBlock
,
cols
);
src
=
"unlimited"
;
src
=
"unlimited"
;
STR_WITH_MAXSIZE_TO_VARSTR
(
tmp
,
src
,
32
);
STR_WITH_MAXSIZE_TO_VARSTR
(
tmp
,
src
,
32
);
colData
Append
(
pColInfo
,
numOfRows
,
tmp
,
false
);
colData
SetVal
(
pColInfo
,
numOfRows
,
tmp
,
false
);
cols
++
;
cols
++
;
pColInfo
=
taosArrayGet
(
pBlock
->
pDataBlock
,
cols
);
pColInfo
=
taosArrayGet
(
pBlock
->
pDataBlock
,
cols
);
src
=
"false"
;
src
=
"false"
;
STR_WITH_MAXSIZE_TO_VARSTR
(
tmp
,
src
,
32
);
STR_WITH_MAXSIZE_TO_VARSTR
(
tmp
,
src
,
32
);
colData
Append
(
pColInfo
,
numOfRows
,
tmp
,
false
);
colData
SetVal
(
pColInfo
,
numOfRows
,
tmp
,
false
);
cols
++
;
cols
++
;
pColInfo
=
taosArrayGet
(
pBlock
->
pDataBlock
,
cols
);
pColInfo
=
taosArrayGet
(
pBlock
->
pDataBlock
,
cols
);
src
=
"unlimited"
;
src
=
"unlimited"
;
STR_WITH_MAXSIZE_TO_VARSTR
(
tmp
,
src
,
32
);
STR_WITH_MAXSIZE_TO_VARSTR
(
tmp
,
src
,
32
);
colData
Append
(
pColInfo
,
numOfRows
,
tmp
,
false
);
colData
SetVal
(
pColInfo
,
numOfRows
,
tmp
,
false
);
cols
++
;
cols
++
;
pColInfo
=
taosArrayGet
(
pBlock
->
pDataBlock
,
cols
);
pColInfo
=
taosArrayGet
(
pBlock
->
pDataBlock
,
cols
);
src
=
"unlimited"
;
src
=
"unlimited"
;
STR_WITH_MAXSIZE_TO_VARSTR
(
tmp
,
src
,
32
);
STR_WITH_MAXSIZE_TO_VARSTR
(
tmp
,
src
,
32
);
colData
Append
(
pColInfo
,
numOfRows
,
tmp
,
false
);
colData
SetVal
(
pColInfo
,
numOfRows
,
tmp
,
false
);
cols
++
;
cols
++
;
pColInfo
=
taosArrayGet
(
pBlock
->
pDataBlock
,
cols
);
pColInfo
=
taosArrayGet
(
pBlock
->
pDataBlock
,
cols
);
src
=
"unlimited"
;
src
=
"unlimited"
;
STR_WITH_MAXSIZE_TO_VARSTR
(
tmp
,
src
,
32
);
STR_WITH_MAXSIZE_TO_VARSTR
(
tmp
,
src
,
32
);
colData
Append
(
pColInfo
,
numOfRows
,
tmp
,
false
);
colData
SetVal
(
pColInfo
,
numOfRows
,
tmp
,
false
);
cols
++
;
cols
++
;
pColInfo
=
taosArrayGet
(
pBlock
->
pDataBlock
,
cols
);
pColInfo
=
taosArrayGet
(
pBlock
->
pDataBlock
,
cols
);
src
=
"unlimited"
;
src
=
"unlimited"
;
STR_WITH_MAXSIZE_TO_VARSTR
(
tmp
,
src
,
32
);
STR_WITH_MAXSIZE_TO_VARSTR
(
tmp
,
src
,
32
);
colData
Append
(
pColInfo
,
numOfRows
,
tmp
,
false
);
colData
SetVal
(
pColInfo
,
numOfRows
,
tmp
,
false
);
cols
++
;
cols
++
;
pColInfo
=
taosArrayGet
(
pBlock
->
pDataBlock
,
cols
);
pColInfo
=
taosArrayGet
(
pBlock
->
pDataBlock
,
cols
);
src
=
"unlimited"
;
src
=
"unlimited"
;
STR_WITH_MAXSIZE_TO_VARSTR
(
tmp
,
src
,
32
);
STR_WITH_MAXSIZE_TO_VARSTR
(
tmp
,
src
,
32
);
colData
Append
(
pColInfo
,
numOfRows
,
tmp
,
false
);
colData
SetVal
(
pColInfo
,
numOfRows
,
tmp
,
false
);
cols
++
;
cols
++
;
pColInfo
=
taosArrayGet
(
pBlock
->
pDataBlock
,
cols
);
pColInfo
=
taosArrayGet
(
pBlock
->
pDataBlock
,
cols
);
src
=
"unlimited"
;
src
=
"unlimited"
;
STR_WITH_MAXSIZE_TO_VARSTR
(
tmp
,
src
,
32
);
STR_WITH_MAXSIZE_TO_VARSTR
(
tmp
,
src
,
32
);
colData
Append
(
pColInfo
,
numOfRows
,
tmp
,
false
);
colData
SetVal
(
pColInfo
,
numOfRows
,
tmp
,
false
);
cols
++
;
cols
++
;
pColInfo
=
taosArrayGet
(
pBlock
->
pDataBlock
,
cols
);
pColInfo
=
taosArrayGet
(
pBlock
->
pDataBlock
,
cols
);
src
=
"unlimited"
;
src
=
"unlimited"
;
STR_WITH_MAXSIZE_TO_VARSTR
(
tmp
,
src
,
32
);
STR_WITH_MAXSIZE_TO_VARSTR
(
tmp
,
src
,
32
);
colData
Append
(
pColInfo
,
numOfRows
,
tmp
,
false
);
colData
SetVal
(
pColInfo
,
numOfRows
,
tmp
,
false
);
cols
++
;
cols
++
;
pColInfo
=
taosArrayGet
(
pBlock
->
pDataBlock
,
cols
);
pColInfo
=
taosArrayGet
(
pBlock
->
pDataBlock
,
cols
);
src
=
"unlimited"
;
src
=
"unlimited"
;
STR_WITH_MAXSIZE_TO_VARSTR
(
tmp
,
src
,
32
);
STR_WITH_MAXSIZE_TO_VARSTR
(
tmp
,
src
,
32
);
colData
Append
(
pColInfo
,
numOfRows
,
tmp
,
false
);
colData
SetVal
(
pColInfo
,
numOfRows
,
tmp
,
false
);
cols
++
;
cols
++
;
pColInfo
=
taosArrayGet
(
pBlock
->
pDataBlock
,
cols
);
pColInfo
=
taosArrayGet
(
pBlock
->
pDataBlock
,
cols
);
src
=
"unlimited"
;
src
=
"unlimited"
;
STR_WITH_MAXSIZE_TO_VARSTR
(
tmp
,
src
,
32
);
STR_WITH_MAXSIZE_TO_VARSTR
(
tmp
,
src
,
32
);
colData
Append
(
pColInfo
,
numOfRows
,
tmp
,
false
);
colData
SetVal
(
pColInfo
,
numOfRows
,
tmp
,
false
);
cols
++
;
cols
++
;
pColInfo
=
taosArrayGet
(
pBlock
->
pDataBlock
,
cols
);
pColInfo
=
taosArrayGet
(
pBlock
->
pDataBlock
,
cols
);
src
=
"unlimited"
;
src
=
"unlimited"
;
STR_WITH_MAXSIZE_TO_VARSTR
(
tmp
,
src
,
32
);
STR_WITH_MAXSIZE_TO_VARSTR
(
tmp
,
src
,
32
);
colData
Append
(
pColInfo
,
numOfRows
,
tmp
,
false
);
colData
SetVal
(
pColInfo
,
numOfRows
,
tmp
,
false
);
cols
++
;
cols
++
;
pColInfo
=
taosArrayGet
(
pBlock
->
pDataBlock
,
cols
);
pColInfo
=
taosArrayGet
(
pBlock
->
pDataBlock
,
cols
);
src
=
"unlimited"
;
src
=
"unlimited"
;
STR_WITH_MAXSIZE_TO_VARSTR
(
tmp
,
src
,
32
);
STR_WITH_MAXSIZE_TO_VARSTR
(
tmp
,
src
,
32
);
colData
Append
(
pColInfo
,
numOfRows
,
tmp
,
false
);
colData
SetVal
(
pColInfo
,
numOfRows
,
tmp
,
false
);
numOfRows
++
;
numOfRows
++
;
}
}
...
...
source/dnode/mnode/impl/src/mndMnode.c
浏览文件 @
8d187efc
...
@@ -608,13 +608,13 @@ static int32_t mndRetrieveMnodes(SRpcMsg *pReq, SShowObj *pShow, SSDataBlock *pB
...
@@ -608,13 +608,13 @@ static int32_t mndRetrieveMnodes(SRpcMsg *pReq, SShowObj *pShow, SSDataBlock *pB
cols
=
0
;
cols
=
0
;
SColumnInfoData
*
pColInfo
=
taosArrayGet
(
pBlock
->
pDataBlock
,
cols
++
);
SColumnInfoData
*
pColInfo
=
taosArrayGet
(
pBlock
->
pDataBlock
,
cols
++
);
colData
Append
(
pColInfo
,
numOfRows
,
(
const
char
*
)
&
pObj
->
id
,
false
);
colData
SetVal
(
pColInfo
,
numOfRows
,
(
const
char
*
)
&
pObj
->
id
,
false
);
char
b1
[
TSDB_EP_LEN
+
VARSTR_HEADER_SIZE
]
=
{
0
};
char
b1
[
TSDB_EP_LEN
+
VARSTR_HEADER_SIZE
]
=
{
0
};
STR_WITH_MAXSIZE_TO_VARSTR
(
b1
,
pObj
->
pDnode
->
ep
,
TSDB_EP_LEN
+
VARSTR_HEADER_SIZE
);
STR_WITH_MAXSIZE_TO_VARSTR
(
b1
,
pObj
->
pDnode
->
ep
,
TSDB_EP_LEN
+
VARSTR_HEADER_SIZE
);
pColInfo
=
taosArrayGet
(
pBlock
->
pDataBlock
,
cols
++
);
pColInfo
=
taosArrayGet
(
pBlock
->
pDataBlock
,
cols
++
);
colData
Append
(
pColInfo
,
numOfRows
,
b1
,
false
);
colData
SetVal
(
pColInfo
,
numOfRows
,
b1
,
false
);
char
role
[
20
]
=
"offline"
;
char
role
[
20
]
=
"offline"
;
if
(
pObj
->
id
==
pMnode
->
selfDnodeId
)
{
if
(
pObj
->
id
==
pMnode
->
selfDnodeId
)
{
...
@@ -630,7 +630,7 @@ static int32_t mndRetrieveMnodes(SRpcMsg *pReq, SShowObj *pShow, SSDataBlock *pB
...
@@ -630,7 +630,7 @@ static int32_t mndRetrieveMnodes(SRpcMsg *pReq, SShowObj *pShow, SSDataBlock *pB
char
b2
[
12
+
VARSTR_HEADER_SIZE
]
=
{
0
};
char
b2
[
12
+
VARSTR_HEADER_SIZE
]
=
{
0
};
STR_WITH_MAXSIZE_TO_VARSTR
(
b2
,
role
,
pShow
->
pMeta
->
pSchemas
[
cols
].
bytes
);
STR_WITH_MAXSIZE_TO_VARSTR
(
b2
,
role
,
pShow
->
pMeta
->
pSchemas
[
cols
].
bytes
);
pColInfo
=
taosArrayGet
(
pBlock
->
pDataBlock
,
cols
++
);
pColInfo
=
taosArrayGet
(
pBlock
->
pDataBlock
,
cols
++
);
colData
Append
(
pColInfo
,
numOfRows
,
(
const
char
*
)
b2
,
false
);
colData
SetVal
(
pColInfo
,
numOfRows
,
(
const
char
*
)
b2
,
false
);
const
char
*
status
=
"ready"
;
const
char
*
status
=
"ready"
;
if
(
objStatus
==
SDB_STATUS_CREATING
)
status
=
"creating"
;
if
(
objStatus
==
SDB_STATUS_CREATING
)
status
=
"creating"
;
...
@@ -639,10 +639,10 @@ static int32_t mndRetrieveMnodes(SRpcMsg *pReq, SShowObj *pShow, SSDataBlock *pB
...
@@ -639,10 +639,10 @@ static int32_t mndRetrieveMnodes(SRpcMsg *pReq, SShowObj *pShow, SSDataBlock *pB
char
b3
[
9
+
VARSTR_HEADER_SIZE
]
=
{
0
};
char
b3
[
9
+
VARSTR_HEADER_SIZE
]
=
{
0
};
STR_WITH_MAXSIZE_TO_VARSTR
(
b3
,
status
,
pShow
->
pMeta
->
pSchemas
[
cols
].
bytes
);
STR_WITH_MAXSIZE_TO_VARSTR
(
b3
,
status
,
pShow
->
pMeta
->
pSchemas
[
cols
].
bytes
);
pColInfo
=
taosArrayGet
(
pBlock
->
pDataBlock
,
cols
++
);
pColInfo
=
taosArrayGet
(
pBlock
->
pDataBlock
,
cols
++
);
colData
Append
(
pColInfo
,
numOfRows
,
(
const
char
*
)
b3
,
false
);
colData
SetVal
(
pColInfo
,
numOfRows
,
(
const
char
*
)
b3
,
false
);
pColInfo
=
taosArrayGet
(
pBlock
->
pDataBlock
,
cols
++
);
pColInfo
=
taosArrayGet
(
pBlock
->
pDataBlock
,
cols
++
);
colData
Append
(
pColInfo
,
numOfRows
,
(
const
char
*
)
&
pObj
->
createdTime
,
false
);
colData
SetVal
(
pColInfo
,
numOfRows
,
(
const
char
*
)
&
pObj
->
createdTime
,
false
);
numOfRows
++
;
numOfRows
++
;
sdbRelease
(
pSdb
,
pObj
);
sdbRelease
(
pSdb
,
pObj
);
...
...
source/dnode/mnode/impl/src/mndProfile.c
浏览文件 @
8d187efc
...
@@ -709,32 +709,32 @@ static int32_t mndRetrieveConns(SRpcMsg *pReq, SShowObj *pShow, SSDataBlock *pBl
...
@@ -709,32 +709,32 @@ static int32_t mndRetrieveConns(SRpcMsg *pReq, SShowObj *pShow, SSDataBlock *pBl
cols
=
0
;
cols
=
0
;
SColumnInfoData
*
pColInfo
=
taosArrayGet
(
pBlock
->
pDataBlock
,
cols
++
);
SColumnInfoData
*
pColInfo
=
taosArrayGet
(
pBlock
->
pDataBlock
,
cols
++
);
colData
Append
(
pColInfo
,
numOfRows
,
(
const
char
*
)
&
pConn
->
id
,
false
);
colData
SetVal
(
pColInfo
,
numOfRows
,
(
const
char
*
)
&
pConn
->
id
,
false
);
char
user
[
TSDB_USER_LEN
+
VARSTR_HEADER_SIZE
]
=
{
0
};
char
user
[
TSDB_USER_LEN
+
VARSTR_HEADER_SIZE
]
=
{
0
};
STR_TO_VARSTR
(
user
,
pConn
->
user
);
STR_TO_VARSTR
(
user
,
pConn
->
user
);
pColInfo
=
taosArrayGet
(
pBlock
->
pDataBlock
,
cols
++
);
pColInfo
=
taosArrayGet
(
pBlock
->
pDataBlock
,
cols
++
);
colData
Append
(
pColInfo
,
numOfRows
,
(
const
char
*
)
user
,
false
);
colData
SetVal
(
pColInfo
,
numOfRows
,
(
const
char
*
)
user
,
false
);
char
app
[
TSDB_APP_NAME_LEN
+
VARSTR_HEADER_SIZE
];
char
app
[
TSDB_APP_NAME_LEN
+
VARSTR_HEADER_SIZE
];
STR_TO_VARSTR
(
app
,
pConn
->
app
);
STR_TO_VARSTR
(
app
,
pConn
->
app
);
pColInfo
=
taosArrayGet
(
pBlock
->
pDataBlock
,
cols
++
);
pColInfo
=
taosArrayGet
(
pBlock
->
pDataBlock
,
cols
++
);
colData
Append
(
pColInfo
,
numOfRows
,
(
const
char
*
)
app
,
false
);
colData
SetVal
(
pColInfo
,
numOfRows
,
(
const
char
*
)
app
,
false
);
pColInfo
=
taosArrayGet
(
pBlock
->
pDataBlock
,
cols
++
);
pColInfo
=
taosArrayGet
(
pBlock
->
pDataBlock
,
cols
++
);
colData
Append
(
pColInfo
,
numOfRows
,
(
const
char
*
)
&
pConn
->
pid
,
false
);
colData
SetVal
(
pColInfo
,
numOfRows
,
(
const
char
*
)
&
pConn
->
pid
,
false
);
char
endpoint
[
TSDB_IPv4ADDR_LEN
+
6
+
VARSTR_HEADER_SIZE
]
=
{
0
};
char
endpoint
[
TSDB_IPv4ADDR_LEN
+
6
+
VARSTR_HEADER_SIZE
]
=
{
0
};
sprintf
(
&
endpoint
[
VARSTR_HEADER_SIZE
],
"%s:%d"
,
taosIpStr
(
pConn
->
ip
),
pConn
->
port
);
sprintf
(
&
endpoint
[
VARSTR_HEADER_SIZE
],
"%s:%d"
,
taosIpStr
(
pConn
->
ip
),
pConn
->
port
);
varDataLen
(
endpoint
)
=
strlen
(
&
endpoint
[
VARSTR_HEADER_SIZE
]);
varDataLen
(
endpoint
)
=
strlen
(
&
endpoint
[
VARSTR_HEADER_SIZE
]);
pColInfo
=
taosArrayGet
(
pBlock
->
pDataBlock
,
cols
++
);
pColInfo
=
taosArrayGet
(
pBlock
->
pDataBlock
,
cols
++
);
colData
Append
(
pColInfo
,
numOfRows
,
(
const
char
*
)
endpoint
,
false
);
colData
SetVal
(
pColInfo
,
numOfRows
,
(
const
char
*
)
endpoint
,
false
);
pColInfo
=
taosArrayGet
(
pBlock
->
pDataBlock
,
cols
++
);
pColInfo
=
taosArrayGet
(
pBlock
->
pDataBlock
,
cols
++
);
colData
Append
(
pColInfo
,
numOfRows
,
(
const
char
*
)
&
pConn
->
loginTimeMs
,
false
);
colData
SetVal
(
pColInfo
,
numOfRows
,
(
const
char
*
)
&
pConn
->
loginTimeMs
,
false
);
pColInfo
=
taosArrayGet
(
pBlock
->
pDataBlock
,
cols
++
);
pColInfo
=
taosArrayGet
(
pBlock
->
pDataBlock
,
cols
++
);
colData
Append
(
pColInfo
,
numOfRows
,
(
const
char
*
)
&
pConn
->
lastAccessTimeMs
,
false
);
colData
SetVal
(
pColInfo
,
numOfRows
,
(
const
char
*
)
&
pConn
->
lastAccessTimeMs
,
false
);
numOfRows
++
;
numOfRows
++
;
}
}
...
@@ -777,44 +777,44 @@ static int32_t mndRetrieveQueries(SRpcMsg *pReq, SShowObj *pShow, SSDataBlock *p
...
@@ -777,44 +777,44 @@ static int32_t mndRetrieveQueries(SRpcMsg *pReq, SShowObj *pShow, SSDataBlock *p
sprintf
(
&
queryId
[
VARSTR_HEADER_SIZE
],
"%x:%"
PRIx64
,
pConn
->
id
,
pQuery
->
reqRid
);
sprintf
(
&
queryId
[
VARSTR_HEADER_SIZE
],
"%x:%"
PRIx64
,
pConn
->
id
,
pQuery
->
reqRid
);
varDataLen
(
queryId
)
=
strlen
(
&
queryId
[
VARSTR_HEADER_SIZE
]);
varDataLen
(
queryId
)
=
strlen
(
&
queryId
[
VARSTR_HEADER_SIZE
]);
SColumnInfoData
*
pColInfo
=
taosArrayGet
(
pBlock
->
pDataBlock
,
cols
++
);
SColumnInfoData
*
pColInfo
=
taosArrayGet
(
pBlock
->
pDataBlock
,
cols
++
);
colData
Append
(
pColInfo
,
numOfRows
,
(
const
char
*
)
queryId
,
false
);
colData
SetVal
(
pColInfo
,
numOfRows
,
(
const
char
*
)
queryId
,
false
);
pColInfo
=
taosArrayGet
(
pBlock
->
pDataBlock
,
cols
++
);
pColInfo
=
taosArrayGet
(
pBlock
->
pDataBlock
,
cols
++
);
colData
Append
(
pColInfo
,
numOfRows
,
(
const
char
*
)
&
pQuery
->
queryId
,
false
);
colData
SetVal
(
pColInfo
,
numOfRows
,
(
const
char
*
)
&
pQuery
->
queryId
,
false
);
pColInfo
=
taosArrayGet
(
pBlock
->
pDataBlock
,
cols
++
);
pColInfo
=
taosArrayGet
(
pBlock
->
pDataBlock
,
cols
++
);
colData
Append
(
pColInfo
,
numOfRows
,
(
const
char
*
)
&
pConn
->
id
,
false
);
colData
SetVal
(
pColInfo
,
numOfRows
,
(
const
char
*
)
&
pConn
->
id
,
false
);
char
app
[
TSDB_APP_NAME_LEN
+
VARSTR_HEADER_SIZE
];
char
app
[
TSDB_APP_NAME_LEN
+
VARSTR_HEADER_SIZE
];
STR_TO_VARSTR
(
app
,
pConn
->
app
);
STR_TO_VARSTR
(
app
,
pConn
->
app
);
pColInfo
=
taosArrayGet
(
pBlock
->
pDataBlock
,
cols
++
);
pColInfo
=
taosArrayGet
(
pBlock
->
pDataBlock
,
cols
++
);
colData
Append
(
pColInfo
,
numOfRows
,
(
const
char
*
)
app
,
false
);
colData
SetVal
(
pColInfo
,
numOfRows
,
(
const
char
*
)
app
,
false
);
pColInfo
=
taosArrayGet
(
pBlock
->
pDataBlock
,
cols
++
);
pColInfo
=
taosArrayGet
(
pBlock
->
pDataBlock
,
cols
++
);
colData
Append
(
pColInfo
,
numOfRows
,
(
const
char
*
)
&
pConn
->
pid
,
false
);
colData
SetVal
(
pColInfo
,
numOfRows
,
(
const
char
*
)
&
pConn
->
pid
,
false
);
char
user
[
TSDB_USER_LEN
+
VARSTR_HEADER_SIZE
]
=
{
0
};
char
user
[
TSDB_USER_LEN
+
VARSTR_HEADER_SIZE
]
=
{
0
};
STR_TO_VARSTR
(
user
,
pConn
->
user
);
STR_TO_VARSTR
(
user
,
pConn
->
user
);
pColInfo
=
taosArrayGet
(
pBlock
->
pDataBlock
,
cols
++
);
pColInfo
=
taosArrayGet
(
pBlock
->
pDataBlock
,
cols
++
);
colData
Append
(
pColInfo
,
numOfRows
,
(
const
char
*
)
user
,
false
);
colData
SetVal
(
pColInfo
,
numOfRows
,
(
const
char
*
)
user
,
false
);
char
endpoint
[
TSDB_IPv4ADDR_LEN
+
6
+
VARSTR_HEADER_SIZE
]
=
{
0
};
char
endpoint
[
TSDB_IPv4ADDR_LEN
+
6
+
VARSTR_HEADER_SIZE
]
=
{
0
};
sprintf
(
&
endpoint
[
VARSTR_HEADER_SIZE
],
"%s:%d"
,
taosIpStr
(
pConn
->
ip
),
pConn
->
port
);
sprintf
(
&
endpoint
[
VARSTR_HEADER_SIZE
],
"%s:%d"
,
taosIpStr
(
pConn
->
ip
),
pConn
->
port
);
varDataLen
(
endpoint
)
=
strlen
(
&
endpoint
[
VARSTR_HEADER_SIZE
]);
varDataLen
(
endpoint
)
=
strlen
(
&
endpoint
[
VARSTR_HEADER_SIZE
]);
pColInfo
=
taosArrayGet
(
pBlock
->
pDataBlock
,
cols
++
);
pColInfo
=
taosArrayGet
(
pBlock
->
pDataBlock
,
cols
++
);
colData
Append
(
pColInfo
,
numOfRows
,
(
const
char
*
)
endpoint
,
false
);
colData
SetVal
(
pColInfo
,
numOfRows
,
(
const
char
*
)
endpoint
,
false
);
pColInfo
=
taosArrayGet
(
pBlock
->
pDataBlock
,
cols
++
);
pColInfo
=
taosArrayGet
(
pBlock
->
pDataBlock
,
cols
++
);
colData
Append
(
pColInfo
,
numOfRows
,
(
const
char
*
)
&
pQuery
->
stime
,
false
);
colData
SetVal
(
pColInfo
,
numOfRows
,
(
const
char
*
)
&
pQuery
->
stime
,
false
);
pColInfo
=
taosArrayGet
(
pBlock
->
pDataBlock
,
cols
++
);
pColInfo
=
taosArrayGet
(
pBlock
->
pDataBlock
,
cols
++
);
colData
Append
(
pColInfo
,
numOfRows
,
(
const
char
*
)
&
pQuery
->
useconds
,
false
);
colData
SetVal
(
pColInfo
,
numOfRows
,
(
const
char
*
)
&
pQuery
->
useconds
,
false
);
pColInfo
=
taosArrayGet
(
pBlock
->
pDataBlock
,
cols
++
);
pColInfo
=
taosArrayGet
(
pBlock
->
pDataBlock
,
cols
++
);
colData
Append
(
pColInfo
,
numOfRows
,
(
const
char
*
)
&
pQuery
->
stableQuery
,
false
);
colData
SetVal
(
pColInfo
,
numOfRows
,
(
const
char
*
)
&
pQuery
->
stableQuery
,
false
);
pColInfo
=
taosArrayGet
(
pBlock
->
pDataBlock
,
cols
++
);
pColInfo
=
taosArrayGet
(
pBlock
->
pDataBlock
,
cols
++
);
colData
Append
(
pColInfo
,
numOfRows
,
(
const
char
*
)
&
pQuery
->
subPlanNum
,
false
);
colData
SetVal
(
pColInfo
,
numOfRows
,
(
const
char
*
)
&
pQuery
->
subPlanNum
,
false
);
char
subStatus
[
TSDB_SHOW_SUBQUERY_LEN
+
VARSTR_HEADER_SIZE
]
=
{
0
};
char
subStatus
[
TSDB_SHOW_SUBQUERY_LEN
+
VARSTR_HEADER_SIZE
]
=
{
0
};
int32_t
strSize
=
sizeof
(
subStatus
);
int32_t
strSize
=
sizeof
(
subStatus
);
...
@@ -828,12 +828,12 @@ static int32_t mndRetrieveQueries(SRpcMsg *pReq, SShowObj *pShow, SSDataBlock *p
...
@@ -828,12 +828,12 @@ static int32_t mndRetrieveQueries(SRpcMsg *pReq, SShowObj *pShow, SSDataBlock *p
}
}
varDataLen
(
subStatus
)
=
strlen
(
&
subStatus
[
VARSTR_HEADER_SIZE
]);
varDataLen
(
subStatus
)
=
strlen
(
&
subStatus
[
VARSTR_HEADER_SIZE
]);
pColInfo
=
taosArrayGet
(
pBlock
->
pDataBlock
,
cols
++
);
pColInfo
=
taosArrayGet
(
pBlock
->
pDataBlock
,
cols
++
);
colData
Append
(
pColInfo
,
numOfRows
,
subStatus
,
false
);
colData
SetVal
(
pColInfo
,
numOfRows
,
subStatus
,
false
);
char
sql
[
TSDB_SHOW_SQL_LEN
+
VARSTR_HEADER_SIZE
]
=
{
0
};
char
sql
[
TSDB_SHOW_SQL_LEN
+
VARSTR_HEADER_SIZE
]
=
{
0
};
STR_TO_VARSTR
(
sql
,
pQuery
->
sql
);
STR_TO_VARSTR
(
sql
,
pQuery
->
sql
);
pColInfo
=
taosArrayGet
(
pBlock
->
pDataBlock
,
cols
++
);
pColInfo
=
taosArrayGet
(
pBlock
->
pDataBlock
,
cols
++
);
colData
Append
(
pColInfo
,
numOfRows
,
(
const
char
*
)
sql
,
false
);
colData
SetVal
(
pColInfo
,
numOfRows
,
(
const
char
*
)
sql
,
false
);
numOfRows
++
;
numOfRows
++
;
}
}
...
@@ -867,55 +867,55 @@ static int32_t mndRetrieveApps(SRpcMsg *pReq, SShowObj *pShow, SSDataBlock *pBlo
...
@@ -867,55 +867,55 @@ static int32_t mndRetrieveApps(SRpcMsg *pReq, SShowObj *pShow, SSDataBlock *pBlo
cols
=
0
;
cols
=
0
;
SColumnInfoData
*
pColInfo
=
taosArrayGet
(
pBlock
->
pDataBlock
,
cols
++
);
SColumnInfoData
*
pColInfo
=
taosArrayGet
(
pBlock
->
pDataBlock
,
cols
++
);
colData
Append
(
pColInfo
,
numOfRows
,
(
const
char
*
)
&
pApp
->
appId
,
false
);
colData
SetVal
(
pColInfo
,
numOfRows
,
(
const
char
*
)
&
pApp
->
appId
,
false
);
char
ip
[
TSDB_IPv4ADDR_LEN
+
6
+
VARSTR_HEADER_SIZE
]
=
{
0
};
char
ip
[
TSDB_IPv4ADDR_LEN
+
6
+
VARSTR_HEADER_SIZE
]
=
{
0
};
sprintf
(
&
ip
[
VARSTR_HEADER_SIZE
],
"%s"
,
taosIpStr
(
pApp
->
ip
));
sprintf
(
&
ip
[
VARSTR_HEADER_SIZE
],
"%s"
,
taosIpStr
(
pApp
->
ip
));
varDataLen
(
ip
)
=
strlen
(
&
ip
[
VARSTR_HEADER_SIZE
]);
varDataLen
(
ip
)
=
strlen
(
&
ip
[
VARSTR_HEADER_SIZE
]);
pColInfo
=
taosArrayGet
(
pBlock
->
pDataBlock
,
cols
++
);
pColInfo
=
taosArrayGet
(
pBlock
->
pDataBlock
,
cols
++
);
colData
Append
(
pColInfo
,
numOfRows
,
(
const
char
*
)
ip
,
false
);
colData
SetVal
(
pColInfo
,
numOfRows
,
(
const
char
*
)
ip
,
false
);
pColInfo
=
taosArrayGet
(
pBlock
->
pDataBlock
,
cols
++
);
pColInfo
=
taosArrayGet
(
pBlock
->
pDataBlock
,
cols
++
);
colData
Append
(
pColInfo
,
numOfRows
,
(
const
char
*
)
&
pApp
->
pid
,
false
);
colData
SetVal
(
pColInfo
,
numOfRows
,
(
const
char
*
)
&
pApp
->
pid
,
false
);
char
name
[
TSDB_APP_NAME_LEN
+
6
+
VARSTR_HEADER_SIZE
]
=
{
0
};
char
name
[
TSDB_APP_NAME_LEN
+
6
+
VARSTR_HEADER_SIZE
]
=
{
0
};
sprintf
(
&
name
[
VARSTR_HEADER_SIZE
],
"%s"
,
pApp
->
name
);
sprintf
(
&
name
[
VARSTR_HEADER_SIZE
],
"%s"
,
pApp
->
name
);
varDataLen
(
name
)
=
strlen
(
&
name
[
VARSTR_HEADER_SIZE
]);
varDataLen
(
name
)
=
strlen
(
&
name
[
VARSTR_HEADER_SIZE
]);
pColInfo
=
taosArrayGet
(
pBlock
->
pDataBlock
,
cols
++
);
pColInfo
=
taosArrayGet
(
pBlock
->
pDataBlock
,
cols
++
);
colData
Append
(
pColInfo
,
numOfRows
,
(
const
char
*
)
name
,
false
);
colData
SetVal
(
pColInfo
,
numOfRows
,
(
const
char
*
)
name
,
false
);
pColInfo
=
taosArrayGet
(
pBlock
->
pDataBlock
,
cols
++
);
pColInfo
=
taosArrayGet
(
pBlock
->
pDataBlock
,
cols
++
);
colData
Append
(
pColInfo
,
numOfRows
,
(
const
char
*
)
&
pApp
->
startTime
,
false
);
colData
SetVal
(
pColInfo
,
numOfRows
,
(
const
char
*
)
&
pApp
->
startTime
,
false
);
pColInfo
=
taosArrayGet
(
pBlock
->
pDataBlock
,
cols
++
);
pColInfo
=
taosArrayGet
(
pBlock
->
pDataBlock
,
cols
++
);
colData
Append
(
pColInfo
,
numOfRows
,
(
const
char
*
)
&
pApp
->
summary
.
numOfInsertsReq
,
false
);
colData
SetVal
(
pColInfo
,
numOfRows
,
(
const
char
*
)
&
pApp
->
summary
.
numOfInsertsReq
,
false
);
pColInfo
=
taosArrayGet
(
pBlock
->
pDataBlock
,
cols
++
);
pColInfo
=
taosArrayGet
(
pBlock
->
pDataBlock
,
cols
++
);
colData
Append
(
pColInfo
,
numOfRows
,
(
const
char
*
)
&
pApp
->
summary
.
numOfInsertRows
,
false
);
colData
SetVal
(
pColInfo
,
numOfRows
,
(
const
char
*
)
&
pApp
->
summary
.
numOfInsertRows
,
false
);
pColInfo
=
taosArrayGet
(
pBlock
->
pDataBlock
,
cols
++
);
pColInfo
=
taosArrayGet
(
pBlock
->
pDataBlock
,
cols
++
);
colData
Append
(
pColInfo
,
numOfRows
,
(
const
char
*
)
&
pApp
->
summary
.
insertElapsedTime
,
false
);
colData
SetVal
(
pColInfo
,
numOfRows
,
(
const
char
*
)
&
pApp
->
summary
.
insertElapsedTime
,
false
);
pColInfo
=
taosArrayGet
(
pBlock
->
pDataBlock
,
cols
++
);
pColInfo
=
taosArrayGet
(
pBlock
->
pDataBlock
,
cols
++
);
colData
Append
(
pColInfo
,
numOfRows
,
(
const
char
*
)
&
pApp
->
summary
.
insertBytes
,
false
);
colData
SetVal
(
pColInfo
,
numOfRows
,
(
const
char
*
)
&
pApp
->
summary
.
insertBytes
,
false
);
pColInfo
=
taosArrayGet
(
pBlock
->
pDataBlock
,
cols
++
);
pColInfo
=
taosArrayGet
(
pBlock
->
pDataBlock
,
cols
++
);
colData
Append
(
pColInfo
,
numOfRows
,
(
const
char
*
)
&
pApp
->
summary
.
fetchBytes
,
false
);
colData
SetVal
(
pColInfo
,
numOfRows
,
(
const
char
*
)
&
pApp
->
summary
.
fetchBytes
,
false
);
pColInfo
=
taosArrayGet
(
pBlock
->
pDataBlock
,
cols
++
);
pColInfo
=
taosArrayGet
(
pBlock
->
pDataBlock
,
cols
++
);
colData
Append
(
pColInfo
,
numOfRows
,
(
const
char
*
)
&
pApp
->
summary
.
queryElapsedTime
,
false
);
colData
SetVal
(
pColInfo
,
numOfRows
,
(
const
char
*
)
&
pApp
->
summary
.
queryElapsedTime
,
false
);
pColInfo
=
taosArrayGet
(
pBlock
->
pDataBlock
,
cols
++
);
pColInfo
=
taosArrayGet
(
pBlock
->
pDataBlock
,
cols
++
);
colData
Append
(
pColInfo
,
numOfRows
,
(
const
char
*
)
&
pApp
->
summary
.
numOfSlowQueries
,
false
);
colData
SetVal
(
pColInfo
,
numOfRows
,
(
const
char
*
)
&
pApp
->
summary
.
numOfSlowQueries
,
false
);
pColInfo
=
taosArrayGet
(
pBlock
->
pDataBlock
,
cols
++
);
pColInfo
=
taosArrayGet
(
pBlock
->
pDataBlock
,
cols
++
);
colData
Append
(
pColInfo
,
numOfRows
,
(
const
char
*
)
&
pApp
->
summary
.
totalRequests
,
false
);
colData
SetVal
(
pColInfo
,
numOfRows
,
(
const
char
*
)
&
pApp
->
summary
.
totalRequests
,
false
);
pColInfo
=
taosArrayGet
(
pBlock
->
pDataBlock
,
cols
++
);
pColInfo
=
taosArrayGet
(
pBlock
->
pDataBlock
,
cols
++
);
colData
Append
(
pColInfo
,
numOfRows
,
(
const
char
*
)
&
pApp
->
summary
.
currentRequests
,
false
);
colData
SetVal
(
pColInfo
,
numOfRows
,
(
const
char
*
)
&
pApp
->
summary
.
currentRequests
,
false
);
pColInfo
=
taosArrayGet
(
pBlock
->
pDataBlock
,
cols
++
);
pColInfo
=
taosArrayGet
(
pBlock
->
pDataBlock
,
cols
++
);
colData
Append
(
pColInfo
,
numOfRows
,
(
const
char
*
)
&
pApp
->
lastAccessTimeMs
,
false
);
colData
SetVal
(
pColInfo
,
numOfRows
,
(
const
char
*
)
&
pApp
->
lastAccessTimeMs
,
false
);
numOfRows
++
;
numOfRows
++
;
}
}
...
...
source/dnode/mnode/impl/src/mndQnode.c
浏览文件 @
8d187efc
...
@@ -507,15 +507,15 @@ static int32_t mndRetrieveQnodes(SRpcMsg *pReq, SShowObj *pShow, SSDataBlock *pB
...
@@ -507,15 +507,15 @@ static int32_t mndRetrieveQnodes(SRpcMsg *pReq, SShowObj *pShow, SSDataBlock *pB
cols
=
0
;
cols
=
0
;
SColumnInfoData
*
pColInfo
=
taosArrayGet
(
pBlock
->
pDataBlock
,
cols
++
);
SColumnInfoData
*
pColInfo
=
taosArrayGet
(
pBlock
->
pDataBlock
,
cols
++
);
colData
Append
(
pColInfo
,
numOfRows
,
(
const
char
*
)
&
pObj
->
id
,
false
);
colData
SetVal
(
pColInfo
,
numOfRows
,
(
const
char
*
)
&
pObj
->
id
,
false
);
char
ep
[
TSDB_EP_LEN
+
VARSTR_HEADER_SIZE
]
=
{
0
};
char
ep
[
TSDB_EP_LEN
+
VARSTR_HEADER_SIZE
]
=
{
0
};
STR_WITH_MAXSIZE_TO_VARSTR
(
ep
,
pObj
->
pDnode
->
ep
,
pShow
->
pMeta
->
pSchemas
[
cols
].
bytes
);
STR_WITH_MAXSIZE_TO_VARSTR
(
ep
,
pObj
->
pDnode
->
ep
,
pShow
->
pMeta
->
pSchemas
[
cols
].
bytes
);
pColInfo
=
taosArrayGet
(
pBlock
->
pDataBlock
,
cols
++
);
pColInfo
=
taosArrayGet
(
pBlock
->
pDataBlock
,
cols
++
);
colData
Append
(
pColInfo
,
numOfRows
,
(
const
char
*
)
ep
,
false
);
colData
SetVal
(
pColInfo
,
numOfRows
,
(
const
char
*
)
ep
,
false
);
pColInfo
=
taosArrayGet
(
pBlock
->
pDataBlock
,
cols
++
);
pColInfo
=
taosArrayGet
(
pBlock
->
pDataBlock
,
cols
++
);
colData
Append
(
pColInfo
,
numOfRows
,
(
const
char
*
)
&
pObj
->
createdTime
,
false
);
colData
SetVal
(
pColInfo
,
numOfRows
,
(
const
char
*
)
&
pObj
->
createdTime
,
false
);
numOfRows
++
;
numOfRows
++
;
sdbRelease
(
pSdb
,
pObj
);
sdbRelease
(
pSdb
,
pObj
);
...
...
source/dnode/mnode/impl/src/mndSma.c
浏览文件 @
8d187efc
...
@@ -1220,19 +1220,19 @@ static int32_t mndRetrieveSma(SRpcMsg *pReq, SShowObj *pShow, SSDataBlock *pBloc
...
@@ -1220,19 +1220,19 @@ static int32_t mndRetrieveSma(SRpcMsg *pReq, SShowObj *pShow, SSDataBlock *pBloc
STR_TO_VARSTR
(
n3
,
(
char
*
)
tNameGetTableName
(
&
stbName
));
STR_TO_VARSTR
(
n3
,
(
char
*
)
tNameGetTableName
(
&
stbName
));
SColumnInfoData
*
pColInfo
=
taosArrayGet
(
pBlock
->
pDataBlock
,
cols
++
);
SColumnInfoData
*
pColInfo
=
taosArrayGet
(
pBlock
->
pDataBlock
,
cols
++
);
colData
Append
(
pColInfo
,
numOfRows
,
(
const
char
*
)
n1
,
false
);
colData
SetVal
(
pColInfo
,
numOfRows
,
(
const
char
*
)
n1
,
false
);
pColInfo
=
taosArrayGet
(
pBlock
->
pDataBlock
,
cols
++
);
pColInfo
=
taosArrayGet
(
pBlock
->
pDataBlock
,
cols
++
);
colData
Append
(
pColInfo
,
numOfRows
,
(
const
char
*
)
n2
,
false
);
colData
SetVal
(
pColInfo
,
numOfRows
,
(
const
char
*
)
n2
,
false
);
pColInfo
=
taosArrayGet
(
pBlock
->
pDataBlock
,
cols
++
);
pColInfo
=
taosArrayGet
(
pBlock
->
pDataBlock
,
cols
++
);
colData
Append
(
pColInfo
,
numOfRows
,
(
const
char
*
)
n3
,
false
);
colData
SetVal
(
pColInfo
,
numOfRows
,
(
const
char
*
)
n3
,
false
);
pColInfo
=
taosArrayGet
(
pBlock
->
pDataBlock
,
cols
++
);
pColInfo
=
taosArrayGet
(
pBlock
->
pDataBlock
,
cols
++
);
colData
Append
(
pColInfo
,
numOfRows
,
(
const
char
*
)
&
pSma
->
dstVgId
,
false
);
colData
SetVal
(
pColInfo
,
numOfRows
,
(
const
char
*
)
&
pSma
->
dstVgId
,
false
);
pColInfo
=
taosArrayGet
(
pBlock
->
pDataBlock
,
cols
++
);
pColInfo
=
taosArrayGet
(
pBlock
->
pDataBlock
,
cols
++
);
colData
Append
(
pColInfo
,
numOfRows
,
(
const
char
*
)
&
pSma
->
createdTime
,
false
);
colData
SetVal
(
pColInfo
,
numOfRows
,
(
const
char
*
)
&
pSma
->
createdTime
,
false
);
numOfRows
++
;
numOfRows
++
;
sdbRelease
(
pSdb
,
pSma
);
sdbRelease
(
pSdb
,
pSma
);
...
...
source/dnode/mnode/impl/src/mndSnode.c
浏览文件 @
8d187efc
...
@@ -441,16 +441,16 @@ static int32_t mndRetrieveSnodes(SRpcMsg *pReq, SShowObj *pShow, SSDataBlock *pB
...
@@ -441,16 +441,16 @@ static int32_t mndRetrieveSnodes(SRpcMsg *pReq, SShowObj *pShow, SSDataBlock *pB
cols
=
0
;
cols
=
0
;
SColumnInfoData
*
pColInfo
=
taosArrayGet
(
pBlock
->
pDataBlock
,
cols
++
);
SColumnInfoData
*
pColInfo
=
taosArrayGet
(
pBlock
->
pDataBlock
,
cols
++
);
colData
Append
(
pColInfo
,
numOfRows
,
(
const
char
*
)
&
pObj
->
id
,
false
);
colData
SetVal
(
pColInfo
,
numOfRows
,
(
const
char
*
)
&
pObj
->
id
,
false
);
char
ep
[
TSDB_EP_LEN
+
VARSTR_HEADER_SIZE
]
=
{
0
};
char
ep
[
TSDB_EP_LEN
+
VARSTR_HEADER_SIZE
]
=
{
0
};
STR_WITH_MAXSIZE_TO_VARSTR
(
ep
,
pObj
->
pDnode
->
ep
,
pShow
->
pMeta
->
pSchemas
[
cols
].
bytes
);
STR_WITH_MAXSIZE_TO_VARSTR
(
ep
,
pObj
->
pDnode
->
ep
,
pShow
->
pMeta
->
pSchemas
[
cols
].
bytes
);
pColInfo
=
taosArrayGet
(
pBlock
->
pDataBlock
,
cols
++
);
pColInfo
=
taosArrayGet
(
pBlock
->
pDataBlock
,
cols
++
);
colData
Append
(
pColInfo
,
numOfRows
,
(
const
char
*
)
ep
,
false
);
colData
SetVal
(
pColInfo
,
numOfRows
,
(
const
char
*
)
ep
,
false
);
pColInfo
=
taosArrayGet
(
pBlock
->
pDataBlock
,
cols
++
);
pColInfo
=
taosArrayGet
(
pBlock
->
pDataBlock
,
cols
++
);
colData
Append
(
pColInfo
,
numOfRows
,
(
const
char
*
)
&
pObj
->
createdTime
,
false
);
colData
SetVal
(
pColInfo
,
numOfRows
,
(
const
char
*
)
&
pObj
->
createdTime
,
false
);
numOfRows
++
;
numOfRows
++
;
sdbRelease
(
pSdb
,
pObj
);
sdbRelease
(
pSdb
,
pObj
);
...
...
source/dnode/mnode/impl/src/mndStb.c
浏览文件 @
8d187efc
...
@@ -2525,7 +2525,7 @@ static int32_t mndRetrieveStb(SRpcMsg *pReq, SShowObj *pShow, SSDataBlock *pBloc
...
@@ -2525,7 +2525,7 @@ static int32_t mndRetrieveStb(SRpcMsg *pReq, SShowObj *pShow, SSDataBlock *pBloc
varDataSetLen
(
stbName
,
strlen
(
&
stbName
[
VARSTR_HEADER_SIZE
]));
varDataSetLen
(
stbName
,
strlen
(
&
stbName
[
VARSTR_HEADER_SIZE
]));
SColumnInfoData
*
pColInfo
=
taosArrayGet
(
pBlock
->
pDataBlock
,
cols
++
);
SColumnInfoData
*
pColInfo
=
taosArrayGet
(
pBlock
->
pDataBlock
,
cols
++
);
colData
Append
(
pColInfo
,
numOfRows
,
(
const
char
*
)
stbName
,
false
);
colData
SetVal
(
pColInfo
,
numOfRows
,
(
const
char
*
)
stbName
,
false
);
char
db
[
TSDB_DB_NAME_LEN
+
VARSTR_HEADER_SIZE
]
=
{
0
};
char
db
[
TSDB_DB_NAME_LEN
+
VARSTR_HEADER_SIZE
]
=
{
0
};
tNameFromString
(
&
name
,
pStb
->
db
,
T_NAME_ACCT
|
T_NAME_DB
);
tNameFromString
(
&
name
,
pStb
->
db
,
T_NAME_ACCT
|
T_NAME_DB
);
...
@@ -2533,29 +2533,29 @@ static int32_t mndRetrieveStb(SRpcMsg *pReq, SShowObj *pShow, SSDataBlock *pBloc
...
@@ -2533,29 +2533,29 @@ static int32_t mndRetrieveStb(SRpcMsg *pReq, SShowObj *pShow, SSDataBlock *pBloc
varDataSetLen
(
db
,
strlen
(
varDataVal
(
db
)));
varDataSetLen
(
db
,
strlen
(
varDataVal
(
db
)));
pColInfo
=
taosArrayGet
(
pBlock
->
pDataBlock
,
cols
++
);
pColInfo
=
taosArrayGet
(
pBlock
->
pDataBlock
,
cols
++
);
colData
Append
(
pColInfo
,
numOfRows
,
(
const
char
*
)
db
,
false
);
colData
SetVal
(
pColInfo
,
numOfRows
,
(
const
char
*
)
db
,
false
);
pColInfo
=
taosArrayGet
(
pBlock
->
pDataBlock
,
cols
++
);
pColInfo
=
taosArrayGet
(
pBlock
->
pDataBlock
,
cols
++
);
colData
Append
(
pColInfo
,
numOfRows
,
(
const
char
*
)
&
pStb
->
createdTime
,
false
);
colData
SetVal
(
pColInfo
,
numOfRows
,
(
const
char
*
)
&
pStb
->
createdTime
,
false
);
pColInfo
=
taosArrayGet
(
pBlock
->
pDataBlock
,
cols
++
);
pColInfo
=
taosArrayGet
(
pBlock
->
pDataBlock
,
cols
++
);
colData
Append
(
pColInfo
,
numOfRows
,
(
const
char
*
)
&
pStb
->
numOfColumns
,
false
);
colData
SetVal
(
pColInfo
,
numOfRows
,
(
const
char
*
)
&
pStb
->
numOfColumns
,
false
);
pColInfo
=
taosArrayGet
(
pBlock
->
pDataBlock
,
cols
++
);
pColInfo
=
taosArrayGet
(
pBlock
->
pDataBlock
,
cols
++
);
colData
Append
(
pColInfo
,
numOfRows
,
(
const
char
*
)
&
pStb
->
numOfTags
,
false
);
colData
SetVal
(
pColInfo
,
numOfRows
,
(
const
char
*
)
&
pStb
->
numOfTags
,
false
);
pColInfo
=
taosArrayGet
(
pBlock
->
pDataBlock
,
cols
++
);
pColInfo
=
taosArrayGet
(
pBlock
->
pDataBlock
,
cols
++
);
colData
Append
(
pColInfo
,
numOfRows
,
(
const
char
*
)
&
pStb
->
updateTime
,
false
);
// number of tables
colData
SetVal
(
pColInfo
,
numOfRows
,
(
const
char
*
)
&
pStb
->
updateTime
,
false
);
// number of tables
pColInfo
=
taosArrayGet
(
pBlock
->
pDataBlock
,
cols
++
);
pColInfo
=
taosArrayGet
(
pBlock
->
pDataBlock
,
cols
++
);
if
(
pStb
->
commentLen
>
0
)
{
if
(
pStb
->
commentLen
>
0
)
{
char
comment
[
TSDB_TB_COMMENT_LEN
+
VARSTR_HEADER_SIZE
]
=
{
0
};
char
comment
[
TSDB_TB_COMMENT_LEN
+
VARSTR_HEADER_SIZE
]
=
{
0
};
STR_TO_VARSTR
(
comment
,
pStb
->
comment
);
STR_TO_VARSTR
(
comment
,
pStb
->
comment
);
colData
Append
(
pColInfo
,
numOfRows
,
comment
,
false
);
colData
SetVal
(
pColInfo
,
numOfRows
,
comment
,
false
);
}
else
if
(
pStb
->
commentLen
==
0
)
{
}
else
if
(
pStb
->
commentLen
==
0
)
{
char
comment
[
VARSTR_HEADER_SIZE
+
VARSTR_HEADER_SIZE
]
=
{
0
};
char
comment
[
VARSTR_HEADER_SIZE
+
VARSTR_HEADER_SIZE
]
=
{
0
};
STR_TO_VARSTR
(
comment
,
""
);
STR_TO_VARSTR
(
comment
,
""
);
colData
Append
(
pColInfo
,
numOfRows
,
comment
,
false
);
colData
SetVal
(
pColInfo
,
numOfRows
,
comment
,
false
);
}
else
{
}
else
{
colDataAppendNULL
(
pColInfo
,
numOfRows
);
colDataAppendNULL
(
pColInfo
,
numOfRows
);
}
}
...
@@ -2565,14 +2565,14 @@ static int32_t mndRetrieveStb(SRpcMsg *pReq, SShowObj *pShow, SSDataBlock *pBloc
...
@@ -2565,14 +2565,14 @@ static int32_t mndRetrieveStb(SRpcMsg *pReq, SShowObj *pShow, SSDataBlock *pBloc
varDataSetLen
(
watermark
,
strlen
(
varDataVal
(
watermark
)));
varDataSetLen
(
watermark
,
strlen
(
varDataVal
(
watermark
)));
pColInfo
=
taosArrayGet
(
pBlock
->
pDataBlock
,
cols
++
);
pColInfo
=
taosArrayGet
(
pBlock
->
pDataBlock
,
cols
++
);
colData
Append
(
pColInfo
,
numOfRows
,
(
const
char
*
)
watermark
,
false
);
colData
SetVal
(
pColInfo
,
numOfRows
,
(
const
char
*
)
watermark
,
false
);
char
maxDelay
[
64
+
VARSTR_HEADER_SIZE
]
=
{
0
};
char
maxDelay
[
64
+
VARSTR_HEADER_SIZE
]
=
{
0
};
sprintf
(
varDataVal
(
maxDelay
),
"%"
PRId64
"a,%"
PRId64
"a"
,
pStb
->
maxdelay
[
0
],
pStb
->
maxdelay
[
1
]);
sprintf
(
varDataVal
(
maxDelay
),
"%"
PRId64
"a,%"
PRId64
"a"
,
pStb
->
maxdelay
[
0
],
pStb
->
maxdelay
[
1
]);
varDataSetLen
(
maxDelay
,
strlen
(
varDataVal
(
maxDelay
)));
varDataSetLen
(
maxDelay
,
strlen
(
varDataVal
(
maxDelay
)));
pColInfo
=
taosArrayGet
(
pBlock
->
pDataBlock
,
cols
++
);
pColInfo
=
taosArrayGet
(
pBlock
->
pDataBlock
,
cols
++
);
colData
Append
(
pColInfo
,
numOfRows
,
(
const
char
*
)
maxDelay
,
false
);
colData
SetVal
(
pColInfo
,
numOfRows
,
(
const
char
*
)
maxDelay
,
false
);
char
rollup
[
160
+
VARSTR_HEADER_SIZE
]
=
{
0
};
char
rollup
[
160
+
VARSTR_HEADER_SIZE
]
=
{
0
};
int32_t
rollupNum
=
(
int32_t
)
taosArrayGetSize
(
pStb
->
pFuncs
);
int32_t
rollupNum
=
(
int32_t
)
taosArrayGetSize
(
pStb
->
pFuncs
);
...
@@ -2591,7 +2591,7 @@ static int32_t mndRetrieveStb(SRpcMsg *pReq, SShowObj *pShow, SSDataBlock *pBloc
...
@@ -2591,7 +2591,7 @@ static int32_t mndRetrieveStb(SRpcMsg *pReq, SShowObj *pShow, SSDataBlock *pBloc
varDataSetLen
(
rollup
,
strlen
(
varDataVal
(
rollup
)));
varDataSetLen
(
rollup
,
strlen
(
varDataVal
(
rollup
)));
pColInfo
=
taosArrayGet
(
pBlock
->
pDataBlock
,
cols
++
);
pColInfo
=
taosArrayGet
(
pBlock
->
pDataBlock
,
cols
++
);
colData
Append
(
pColInfo
,
numOfRows
,
(
const
char
*
)
rollup
,
false
);
colData
SetVal
(
pColInfo
,
numOfRows
,
(
const
char
*
)
rollup
,
false
);
numOfRows
++
;
numOfRows
++
;
sdbRelease
(
pSdb
,
pStb
);
sdbRelease
(
pSdb
,
pStb
);
...
...
source/dnode/mnode/impl/src/mndStream.c
浏览文件 @
8d187efc
...
@@ -1055,52 +1055,52 @@ static int32_t mndRetrieveStream(SRpcMsg *pReq, SShowObj *pShow, SSDataBlock *pB
...
@@ -1055,52 +1055,52 @@ static int32_t mndRetrieveStream(SRpcMsg *pReq, SShowObj *pShow, SSDataBlock *pB
char
streamName
[
TSDB_TABLE_NAME_LEN
+
VARSTR_HEADER_SIZE
]
=
{
0
};
char
streamName
[
TSDB_TABLE_NAME_LEN
+
VARSTR_HEADER_SIZE
]
=
{
0
};
STR_WITH_MAXSIZE_TO_VARSTR
(
streamName
,
mndGetDbStr
(
pStream
->
name
),
sizeof
(
streamName
));
STR_WITH_MAXSIZE_TO_VARSTR
(
streamName
,
mndGetDbStr
(
pStream
->
name
),
sizeof
(
streamName
));
pColInfo
=
taosArrayGet
(
pBlock
->
pDataBlock
,
cols
++
);
pColInfo
=
taosArrayGet
(
pBlock
->
pDataBlock
,
cols
++
);
colData
Append
(
pColInfo
,
numOfRows
,
(
const
char
*
)
streamName
,
false
);
colData
SetVal
(
pColInfo
,
numOfRows
,
(
const
char
*
)
streamName
,
false
);
pColInfo
=
taosArrayGet
(
pBlock
->
pDataBlock
,
cols
++
);
pColInfo
=
taosArrayGet
(
pBlock
->
pDataBlock
,
cols
++
);
colData
Append
(
pColInfo
,
numOfRows
,
(
const
char
*
)
&
pStream
->
createTime
,
false
);
colData
SetVal
(
pColInfo
,
numOfRows
,
(
const
char
*
)
&
pStream
->
createTime
,
false
);
char
sql
[
TSDB_SHOW_SQL_LEN
+
VARSTR_HEADER_SIZE
]
=
{
0
};
char
sql
[
TSDB_SHOW_SQL_LEN
+
VARSTR_HEADER_SIZE
]
=
{
0
};
STR_WITH_MAXSIZE_TO_VARSTR
(
sql
,
pStream
->
sql
,
sizeof
(
sql
));
STR_WITH_MAXSIZE_TO_VARSTR
(
sql
,
pStream
->
sql
,
sizeof
(
sql
));
pColInfo
=
taosArrayGet
(
pBlock
->
pDataBlock
,
cols
++
);
pColInfo
=
taosArrayGet
(
pBlock
->
pDataBlock
,
cols
++
);
colData
Append
(
pColInfo
,
numOfRows
,
(
const
char
*
)
sql
,
false
);
colData
SetVal
(
pColInfo
,
numOfRows
,
(
const
char
*
)
sql
,
false
);
char
status
[
20
+
VARSTR_HEADER_SIZE
]
=
{
0
};
char
status
[
20
+
VARSTR_HEADER_SIZE
]
=
{
0
};
char
status2
[
20
]
=
{
0
};
char
status2
[
20
]
=
{
0
};
mndShowStreamStatus
(
status2
,
pStream
);
mndShowStreamStatus
(
status2
,
pStream
);
STR_WITH_MAXSIZE_TO_VARSTR
(
status
,
status2
,
sizeof
(
status
));
STR_WITH_MAXSIZE_TO_VARSTR
(
status
,
status2
,
sizeof
(
status
));
pColInfo
=
taosArrayGet
(
pBlock
->
pDataBlock
,
cols
++
);
pColInfo
=
taosArrayGet
(
pBlock
->
pDataBlock
,
cols
++
);
colData
Append
(
pColInfo
,
numOfRows
,
(
const
char
*
)
&
status
,
false
);
colData
SetVal
(
pColInfo
,
numOfRows
,
(
const
char
*
)
&
status
,
false
);
char
sourceDB
[
TSDB_DB_NAME_LEN
+
VARSTR_HEADER_SIZE
]
=
{
0
};
char
sourceDB
[
TSDB_DB_NAME_LEN
+
VARSTR_HEADER_SIZE
]
=
{
0
};
STR_WITH_MAXSIZE_TO_VARSTR
(
sourceDB
,
mndGetDbStr
(
pStream
->
sourceDb
),
sizeof
(
sourceDB
));
STR_WITH_MAXSIZE_TO_VARSTR
(
sourceDB
,
mndGetDbStr
(
pStream
->
sourceDb
),
sizeof
(
sourceDB
));
pColInfo
=
taosArrayGet
(
pBlock
->
pDataBlock
,
cols
++
);
pColInfo
=
taosArrayGet
(
pBlock
->
pDataBlock
,
cols
++
);
colData
Append
(
pColInfo
,
numOfRows
,
(
const
char
*
)
&
sourceDB
,
false
);
colData
SetVal
(
pColInfo
,
numOfRows
,
(
const
char
*
)
&
sourceDB
,
false
);
char
targetDB
[
TSDB_DB_NAME_LEN
+
VARSTR_HEADER_SIZE
]
=
{
0
};
char
targetDB
[
TSDB_DB_NAME_LEN
+
VARSTR_HEADER_SIZE
]
=
{
0
};
STR_WITH_MAXSIZE_TO_VARSTR
(
targetDB
,
mndGetDbStr
(
pStream
->
targetDb
),
sizeof
(
targetDB
));
STR_WITH_MAXSIZE_TO_VARSTR
(
targetDB
,
mndGetDbStr
(
pStream
->
targetDb
),
sizeof
(
targetDB
));
pColInfo
=
taosArrayGet
(
pBlock
->
pDataBlock
,
cols
++
);
pColInfo
=
taosArrayGet
(
pBlock
->
pDataBlock
,
cols
++
);
colData
Append
(
pColInfo
,
numOfRows
,
(
const
char
*
)
&
targetDB
,
false
);
colData
SetVal
(
pColInfo
,
numOfRows
,
(
const
char
*
)
&
targetDB
,
false
);
if
(
pStream
->
targetSTbName
[
0
]
==
0
)
{
if
(
pStream
->
targetSTbName
[
0
]
==
0
)
{
pColInfo
=
taosArrayGet
(
pBlock
->
pDataBlock
,
cols
++
);
pColInfo
=
taosArrayGet
(
pBlock
->
pDataBlock
,
cols
++
);
colData
Append
(
pColInfo
,
numOfRows
,
NULL
,
true
);
colData
SetVal
(
pColInfo
,
numOfRows
,
NULL
,
true
);
}
else
{
}
else
{
char
targetSTB
[
TSDB_TABLE_NAME_LEN
+
VARSTR_HEADER_SIZE
]
=
{
0
};
char
targetSTB
[
TSDB_TABLE_NAME_LEN
+
VARSTR_HEADER_SIZE
]
=
{
0
};
STR_WITH_MAXSIZE_TO_VARSTR
(
targetSTB
,
mndGetStbStr
(
pStream
->
targetSTbName
),
sizeof
(
targetSTB
));
STR_WITH_MAXSIZE_TO_VARSTR
(
targetSTB
,
mndGetStbStr
(
pStream
->
targetSTbName
),
sizeof
(
targetSTB
));
pColInfo
=
taosArrayGet
(
pBlock
->
pDataBlock
,
cols
++
);
pColInfo
=
taosArrayGet
(
pBlock
->
pDataBlock
,
cols
++
);
colData
Append
(
pColInfo
,
numOfRows
,
(
const
char
*
)
&
targetSTB
,
false
);
colData
SetVal
(
pColInfo
,
numOfRows
,
(
const
char
*
)
&
targetSTB
,
false
);
}
}
pColInfo
=
taosArrayGet
(
pBlock
->
pDataBlock
,
cols
++
);
pColInfo
=
taosArrayGet
(
pBlock
->
pDataBlock
,
cols
++
);
colData
Append
(
pColInfo
,
numOfRows
,
(
const
char
*
)
&
pStream
->
watermark
,
false
);
colData
SetVal
(
pColInfo
,
numOfRows
,
(
const
char
*
)
&
pStream
->
watermark
,
false
);
char
trigger
[
20
+
VARSTR_HEADER_SIZE
]
=
{
0
};
char
trigger
[
20
+
VARSTR_HEADER_SIZE
]
=
{
0
};
char
trigger2
[
20
]
=
{
0
};
char
trigger2
[
20
]
=
{
0
};
mndShowStreamTrigger
(
trigger2
,
pStream
);
mndShowStreamTrigger
(
trigger2
,
pStream
);
STR_WITH_MAXSIZE_TO_VARSTR
(
trigger
,
trigger2
,
sizeof
(
trigger
));
STR_WITH_MAXSIZE_TO_VARSTR
(
trigger
,
trigger2
,
sizeof
(
trigger
));
pColInfo
=
taosArrayGet
(
pBlock
->
pDataBlock
,
cols
++
);
pColInfo
=
taosArrayGet
(
pBlock
->
pDataBlock
,
cols
++
);
colData
Append
(
pColInfo
,
numOfRows
,
(
const
char
*
)
&
trigger
,
false
);
colData
SetVal
(
pColInfo
,
numOfRows
,
(
const
char
*
)
&
trigger
,
false
);
numOfRows
++
;
numOfRows
++
;
sdbRelease
(
pSdb
,
pStream
);
sdbRelease
(
pSdb
,
pStream
);
...
@@ -1152,11 +1152,11 @@ static int32_t mndRetrieveStreamTask(SRpcMsg *pReq, SShowObj *pShow, SSDataBlock
...
@@ -1152,11 +1152,11 @@ static int32_t mndRetrieveStreamTask(SRpcMsg *pReq, SShowObj *pShow, SSDataBlock
char
streamName
[
TSDB_TABLE_NAME_LEN
+
VARSTR_HEADER_SIZE
]
=
{
0
};
char
streamName
[
TSDB_TABLE_NAME_LEN
+
VARSTR_HEADER_SIZE
]
=
{
0
};
STR_WITH_MAXSIZE_TO_VARSTR
(
streamName
,
mndGetDbStr
(
pStream
->
name
),
sizeof
(
streamName
));
STR_WITH_MAXSIZE_TO_VARSTR
(
streamName
,
mndGetDbStr
(
pStream
->
name
),
sizeof
(
streamName
));
pColInfo
=
taosArrayGet
(
pBlock
->
pDataBlock
,
cols
++
);
pColInfo
=
taosArrayGet
(
pBlock
->
pDataBlock
,
cols
++
);
colData
Append
(
pColInfo
,
numOfRows
,
(
const
char
*
)
streamName
,
false
);
colData
SetVal
(
pColInfo
,
numOfRows
,
(
const
char
*
)
streamName
,
false
);
// task id
// task id
pColInfo
=
taosArrayGet
(
pBlock
->
pDataBlock
,
cols
++
);
pColInfo
=
taosArrayGet
(
pBlock
->
pDataBlock
,
cols
++
);
colData
Append
(
pColInfo
,
numOfRows
,
(
const
char
*
)
&
pTask
->
taskId
,
false
);
colData
SetVal
(
pColInfo
,
numOfRows
,
(
const
char
*
)
&
pTask
->
taskId
,
false
);
// node type
// node type
char
nodeType
[
20
+
VARSTR_HEADER_SIZE
]
=
{
0
};
char
nodeType
[
20
+
VARSTR_HEADER_SIZE
]
=
{
0
};
...
@@ -1167,12 +1167,12 @@ static int32_t mndRetrieveStreamTask(SRpcMsg *pReq, SShowObj *pShow, SSDataBlock
...
@@ -1167,12 +1167,12 @@ static int32_t mndRetrieveStreamTask(SRpcMsg *pReq, SShowObj *pShow, SSDataBlock
}
else
{
}
else
{
memcpy
(
varDataVal
(
nodeType
),
"snode"
,
5
);
memcpy
(
varDataVal
(
nodeType
),
"snode"
,
5
);
}
}
colData
Append
(
pColInfo
,
numOfRows
,
nodeType
,
false
);
colData
SetVal
(
pColInfo
,
numOfRows
,
nodeType
,
false
);
// node id
// node id
pColInfo
=
taosArrayGet
(
pBlock
->
pDataBlock
,
cols
++
);
pColInfo
=
taosArrayGet
(
pBlock
->
pDataBlock
,
cols
++
);
int32_t
nodeId
=
TMAX
(
pTask
->
nodeId
,
0
);
int32_t
nodeId
=
TMAX
(
pTask
->
nodeId
,
0
);
colData
Append
(
pColInfo
,
numOfRows
,
(
const
char
*
)
&
nodeId
,
false
);
colData
SetVal
(
pColInfo
,
numOfRows
,
(
const
char
*
)
&
nodeId
,
false
);
// level
// level
char
level
[
20
+
VARSTR_HEADER_SIZE
]
=
{
0
};
char
level
[
20
+
VARSTR_HEADER_SIZE
]
=
{
0
};
...
@@ -1188,7 +1188,7 @@ static int32_t mndRetrieveStreamTask(SRpcMsg *pReq, SShowObj *pShow, SSDataBlock
...
@@ -1188,7 +1188,7 @@ static int32_t mndRetrieveStreamTask(SRpcMsg *pReq, SShowObj *pShow, SSDataBlock
}
else
if
(
pTask
->
taskLevel
==
TASK_LEVEL__SINK
)
{
}
else
if
(
pTask
->
taskLevel
==
TASK_LEVEL__SINK
)
{
}
}
pColInfo
=
taosArrayGet
(
pBlock
->
pDataBlock
,
cols
++
);
pColInfo
=
taosArrayGet
(
pBlock
->
pDataBlock
,
cols
++
);
colData
Append
(
pColInfo
,
numOfRows
,
(
const
char
*
)
&
level
,
false
);
colData
SetVal
(
pColInfo
,
numOfRows
,
(
const
char
*
)
&
level
,
false
);
// status
// status
char
status
[
20
+
VARSTR_HEADER_SIZE
]
=
{
0
};
char
status
[
20
+
VARSTR_HEADER_SIZE
]
=
{
0
};
...
@@ -1196,7 +1196,7 @@ static int32_t mndRetrieveStreamTask(SRpcMsg *pReq, SShowObj *pShow, SSDataBlock
...
@@ -1196,7 +1196,7 @@ static int32_t mndRetrieveStreamTask(SRpcMsg *pReq, SShowObj *pShow, SSDataBlock
strcpy
(
status
,
"normal"
);
strcpy
(
status
,
"normal"
);
STR_WITH_MAXSIZE_TO_VARSTR
(
status
,
status2
,
sizeof
(
status
));
STR_WITH_MAXSIZE_TO_VARSTR
(
status
,
status2
,
sizeof
(
status
));
pColInfo
=
taosArrayGet
(
pBlock
->
pDataBlock
,
cols
++
);
pColInfo
=
taosArrayGet
(
pBlock
->
pDataBlock
,
cols
++
);
colData
Append
(
pColInfo
,
numOfRows
,
(
const
char
*
)
&
status
,
false
);
colData
SetVal
(
pColInfo
,
numOfRows
,
(
const
char
*
)
&
status
,
false
);
numOfRows
++
;
numOfRows
++
;
}
}
...
...
source/dnode/mnode/impl/src/mndSubscribe.c
浏览文件 @
8d187efc
...
@@ -998,18 +998,18 @@ static int32_t mndRetrieveSubscribe(SRpcMsg *pReq, SShowObj *pShow, SSDataBlock
...
@@ -998,18 +998,18 @@ static int32_t mndRetrieveSubscribe(SRpcMsg *pReq, SShowObj *pShow, SSDataBlock
varDataSetLen
(
cgroup
,
strlen
(
varDataVal
(
cgroup
)));
varDataSetLen
(
cgroup
,
strlen
(
varDataVal
(
cgroup
)));
pColInfo
=
taosArrayGet
(
pBlock
->
pDataBlock
,
cols
++
);
pColInfo
=
taosArrayGet
(
pBlock
->
pDataBlock
,
cols
++
);
colData
Append
(
pColInfo
,
numOfRows
,
(
const
char
*
)
topic
,
false
);
colData
SetVal
(
pColInfo
,
numOfRows
,
(
const
char
*
)
topic
,
false
);
pColInfo
=
taosArrayGet
(
pBlock
->
pDataBlock
,
cols
++
);
pColInfo
=
taosArrayGet
(
pBlock
->
pDataBlock
,
cols
++
);
colData
Append
(
pColInfo
,
numOfRows
,
(
const
char
*
)
cgroup
,
false
);
colData
SetVal
(
pColInfo
,
numOfRows
,
(
const
char
*
)
cgroup
,
false
);
// vg id
// vg id
pColInfo
=
taosArrayGet
(
pBlock
->
pDataBlock
,
cols
++
);
pColInfo
=
taosArrayGet
(
pBlock
->
pDataBlock
,
cols
++
);
colData
Append
(
pColInfo
,
numOfRows
,
(
const
char
*
)
&
pVgEp
->
vgId
,
false
);
colData
SetVal
(
pColInfo
,
numOfRows
,
(
const
char
*
)
&
pVgEp
->
vgId
,
false
);
// consumer id
// consumer id
pColInfo
=
taosArrayGet
(
pBlock
->
pDataBlock
,
cols
++
);
pColInfo
=
taosArrayGet
(
pBlock
->
pDataBlock
,
cols
++
);
colData
Append
(
pColInfo
,
numOfRows
,
(
const
char
*
)
&
pConsumerEp
->
consumerId
,
false
);
colData
SetVal
(
pColInfo
,
numOfRows
,
(
const
char
*
)
&
pConsumerEp
->
consumerId
,
false
);
mDebug
(
"mnd show subscriptions: topic %s, consumer %"
PRId64
" cgroup %s vgid %d"
,
varDataVal
(
topic
),
mDebug
(
"mnd show subscriptions: topic %s, consumer %"
PRId64
" cgroup %s vgid %d"
,
varDataVal
(
topic
),
pConsumerEp
->
consumerId
,
varDataVal
(
cgroup
),
pVgEp
->
vgId
);
pConsumerEp
->
consumerId
,
varDataVal
(
cgroup
),
pVgEp
->
vgId
);
...
@@ -1018,11 +1018,11 @@ static int32_t mndRetrieveSubscribe(SRpcMsg *pReq, SShowObj *pShow, SSDataBlock
...
@@ -1018,11 +1018,11 @@ static int32_t mndRetrieveSubscribe(SRpcMsg *pReq, SShowObj *pShow, SSDataBlock
#if 0
#if 0
// subscribe time
// subscribe time
pColInfo = taosArrayGet(pBlock->pDataBlock, cols++);
pColInfo = taosArrayGet(pBlock->pDataBlock, cols++);
colData
Append
(pColInfo, numOfRows, (const char *)&pSub->subscribeTime, false);
colData
SetVal
(pColInfo, numOfRows, (const char *)&pSub->subscribeTime, false);
// rebalance time
// rebalance time
pColInfo = taosArrayGet(pBlock->pDataBlock, cols++);
pColInfo = taosArrayGet(pBlock->pDataBlock, cols++);
colData
Append
(pColInfo, numOfRows, (const char *)&pSub->rebalanceTime, pConsumer->rebalanceTime == 0);
colData
SetVal
(pColInfo, numOfRows, (const char *)&pSub->rebalanceTime, pConsumer->rebalanceTime == 0);
#endif
#endif
numOfRows
++
;
numOfRows
++
;
...
@@ -1046,18 +1046,18 @@ static int32_t mndRetrieveSubscribe(SRpcMsg *pReq, SShowObj *pShow, SSDataBlock
...
@@ -1046,18 +1046,18 @@ static int32_t mndRetrieveSubscribe(SRpcMsg *pReq, SShowObj *pShow, SSDataBlock
varDataSetLen
(
cgroup
,
strlen
(
varDataVal
(
cgroup
)));
varDataSetLen
(
cgroup
,
strlen
(
varDataVal
(
cgroup
)));
pColInfo
=
taosArrayGet
(
pBlock
->
pDataBlock
,
cols
++
);
pColInfo
=
taosArrayGet
(
pBlock
->
pDataBlock
,
cols
++
);
colData
Append
(
pColInfo
,
numOfRows
,
(
const
char
*
)
topic
,
false
);
colData
SetVal
(
pColInfo
,
numOfRows
,
(
const
char
*
)
topic
,
false
);
pColInfo
=
taosArrayGet
(
pBlock
->
pDataBlock
,
cols
++
);
pColInfo
=
taosArrayGet
(
pBlock
->
pDataBlock
,
cols
++
);
colData
Append
(
pColInfo
,
numOfRows
,
(
const
char
*
)
cgroup
,
false
);
colData
SetVal
(
pColInfo
,
numOfRows
,
(
const
char
*
)
cgroup
,
false
);
// vg id
// vg id
pColInfo
=
taosArrayGet
(
pBlock
->
pDataBlock
,
cols
++
);
pColInfo
=
taosArrayGet
(
pBlock
->
pDataBlock
,
cols
++
);
colData
Append
(
pColInfo
,
numOfRows
,
(
const
char
*
)
&
pVgEp
->
vgId
,
false
);
colData
SetVal
(
pColInfo
,
numOfRows
,
(
const
char
*
)
&
pVgEp
->
vgId
,
false
);
// consumer id
// consumer id
pColInfo
=
taosArrayGet
(
pBlock
->
pDataBlock
,
cols
++
);
pColInfo
=
taosArrayGet
(
pBlock
->
pDataBlock
,
cols
++
);
colData
Append
(
pColInfo
,
numOfRows
,
NULL
,
true
);
colData
SetVal
(
pColInfo
,
numOfRows
,
NULL
,
true
);
mDebug
(
"mnd show subscriptions(unassigned): topic %s, cgroup %s vgid %d"
,
varDataVal
(
topic
),
varDataVal
(
cgroup
),
mDebug
(
"mnd show subscriptions(unassigned): topic %s, cgroup %s vgid %d"
,
varDataVal
(
topic
),
varDataVal
(
cgroup
),
pVgEp
->
vgId
);
pVgEp
->
vgId
);
...
@@ -1066,11 +1066,11 @@ static int32_t mndRetrieveSubscribe(SRpcMsg *pReq, SShowObj *pShow, SSDataBlock
...
@@ -1066,11 +1066,11 @@ static int32_t mndRetrieveSubscribe(SRpcMsg *pReq, SShowObj *pShow, SSDataBlock
#if 0
#if 0
// subscribe time
// subscribe time
pColInfo = taosArrayGet(pBlock->pDataBlock, cols++);
pColInfo = taosArrayGet(pBlock->pDataBlock, cols++);
colData
Append
(pColInfo, numOfRows, (const char *)&pSub->subscribeTime, false);
colData
SetVal
(pColInfo, numOfRows, (const char *)&pSub->subscribeTime, false);
// rebalance time
// rebalance time
pColInfo = taosArrayGet(pBlock->pDataBlock, cols++);
pColInfo = taosArrayGet(pBlock->pDataBlock, cols++);
colData
Append
(pColInfo, numOfRows, (const char *)&pSub->rebalanceTime, pConsumer->rebalanceTime == 0);
colData
SetVal
(pColInfo, numOfRows, (const char *)&pSub->rebalanceTime, pConsumer->rebalanceTime == 0);
#endif
#endif
numOfRows
++
;
numOfRows
++
;
...
...
source/dnode/mnode/impl/src/mndTopic.c
浏览文件 @
8d187efc
...
@@ -818,23 +818,23 @@ static int32_t mndRetrieveTopic(SRpcMsg *pReq, SShowObj *pShow, SSDataBlock *pBl
...
@@ -818,23 +818,23 @@ static int32_t mndRetrieveTopic(SRpcMsg *pReq, SShowObj *pShow, SSDataBlock *pBl
/*tNameGetDbName(&n, varDataVal(topicName));*/
/*tNameGetDbName(&n, varDataVal(topicName));*/
varDataSetLen
(
topicName
,
strlen
(
varDataVal
(
topicName
)));
varDataSetLen
(
topicName
,
strlen
(
varDataVal
(
topicName
)));
pColInfo
=
taosArrayGet
(
pBlock
->
pDataBlock
,
cols
++
);
pColInfo
=
taosArrayGet
(
pBlock
->
pDataBlock
,
cols
++
);
colData
Append
(
pColInfo
,
numOfRows
,
(
const
char
*
)
topicName
,
false
);
colData
SetVal
(
pColInfo
,
numOfRows
,
(
const
char
*
)
topicName
,
false
);
char
dbName
[
TSDB_DB_NAME_LEN
+
VARSTR_HEADER_SIZE
]
=
{
0
};
char
dbName
[
TSDB_DB_NAME_LEN
+
VARSTR_HEADER_SIZE
]
=
{
0
};
tNameFromString
(
&
n
,
pTopic
->
db
,
T_NAME_ACCT
|
T_NAME_DB
);
tNameFromString
(
&
n
,
pTopic
->
db
,
T_NAME_ACCT
|
T_NAME_DB
);
tNameGetDbName
(
&
n
,
varDataVal
(
dbName
));
tNameGetDbName
(
&
n
,
varDataVal
(
dbName
));
varDataSetLen
(
dbName
,
strlen
(
varDataVal
(
dbName
)));
varDataSetLen
(
dbName
,
strlen
(
varDataVal
(
dbName
)));
pColInfo
=
taosArrayGet
(
pBlock
->
pDataBlock
,
cols
++
);
pColInfo
=
taosArrayGet
(
pBlock
->
pDataBlock
,
cols
++
);
colData
Append
(
pColInfo
,
numOfRows
,
(
const
char
*
)
dbName
,
false
);
colData
SetVal
(
pColInfo
,
numOfRows
,
(
const
char
*
)
dbName
,
false
);
pColInfo
=
taosArrayGet
(
pBlock
->
pDataBlock
,
cols
++
);
pColInfo
=
taosArrayGet
(
pBlock
->
pDataBlock
,
cols
++
);
colData
Append
(
pColInfo
,
numOfRows
,
(
const
char
*
)
&
pTopic
->
createTime
,
false
);
colData
SetVal
(
pColInfo
,
numOfRows
,
(
const
char
*
)
&
pTopic
->
createTime
,
false
);
char
sql
[
TSDB_SHOW_SQL_LEN
+
VARSTR_HEADER_SIZE
]
=
{
0
};
char
sql
[
TSDB_SHOW_SQL_LEN
+
VARSTR_HEADER_SIZE
]
=
{
0
};
tstrncpy
(
&
sql
[
VARSTR_HEADER_SIZE
],
pTopic
->
sql
,
TSDB_SHOW_SQL_LEN
);
tstrncpy
(
&
sql
[
VARSTR_HEADER_SIZE
],
pTopic
->
sql
,
TSDB_SHOW_SQL_LEN
);
varDataSetLen
(
sql
,
strlen
(
&
sql
[
VARSTR_HEADER_SIZE
]));
varDataSetLen
(
sql
,
strlen
(
&
sql
[
VARSTR_HEADER_SIZE
]));
pColInfo
=
taosArrayGet
(
pBlock
->
pDataBlock
,
cols
++
);
pColInfo
=
taosArrayGet
(
pBlock
->
pDataBlock
,
cols
++
);
colData
Append
(
pColInfo
,
numOfRows
,
(
const
char
*
)
sql
,
false
);
colData
SetVal
(
pColInfo
,
numOfRows
,
(
const
char
*
)
sql
,
false
);
numOfRows
++
;
numOfRows
++
;
sdbRelease
(
pSdb
,
pTopic
);
sdbRelease
(
pSdb
,
pTopic
);
...
...
source/dnode/mnode/impl/src/mndTrans.c
浏览文件 @
8d187efc
...
@@ -1658,36 +1658,36 @@ static int32_t mndRetrieveTrans(SRpcMsg *pReq, SShowObj *pShow, SSDataBlock *pBl
...
@@ -1658,36 +1658,36 @@ static int32_t mndRetrieveTrans(SRpcMsg *pReq, SShowObj *pShow, SSDataBlock *pBl
cols
=
0
;
cols
=
0
;
SColumnInfoData
*
pColInfo
=
taosArrayGet
(
pBlock
->
pDataBlock
,
cols
++
);
SColumnInfoData
*
pColInfo
=
taosArrayGet
(
pBlock
->
pDataBlock
,
cols
++
);
colData
Append
(
pColInfo
,
numOfRows
,
(
const
char
*
)
&
pTrans
->
id
,
false
);
colData
SetVal
(
pColInfo
,
numOfRows
,
(
const
char
*
)
&
pTrans
->
id
,
false
);
pColInfo
=
taosArrayGet
(
pBlock
->
pDataBlock
,
cols
++
);
pColInfo
=
taosArrayGet
(
pBlock
->
pDataBlock
,
cols
++
);
colData
Append
(
pColInfo
,
numOfRows
,
(
const
char
*
)
&
pTrans
->
createdTime
,
false
);
colData
SetVal
(
pColInfo
,
numOfRows
,
(
const
char
*
)
&
pTrans
->
createdTime
,
false
);
char
stage
[
TSDB_TRANS_STAGE_LEN
+
VARSTR_HEADER_SIZE
]
=
{
0
};
char
stage
[
TSDB_TRANS_STAGE_LEN
+
VARSTR_HEADER_SIZE
]
=
{
0
};
STR_WITH_MAXSIZE_TO_VARSTR
(
stage
,
mndTransStr
(
pTrans
->
stage
),
pShow
->
pMeta
->
pSchemas
[
cols
].
bytes
);
STR_WITH_MAXSIZE_TO_VARSTR
(
stage
,
mndTransStr
(
pTrans
->
stage
),
pShow
->
pMeta
->
pSchemas
[
cols
].
bytes
);
pColInfo
=
taosArrayGet
(
pBlock
->
pDataBlock
,
cols
++
);
pColInfo
=
taosArrayGet
(
pBlock
->
pDataBlock
,
cols
++
);
colData
Append
(
pColInfo
,
numOfRows
,
(
const
char
*
)
stage
,
false
);
colData
SetVal
(
pColInfo
,
numOfRows
,
(
const
char
*
)
stage
,
false
);
char
opername
[
TSDB_TRANS_OPER_LEN
+
VARSTR_HEADER_SIZE
]
=
{
0
};
char
opername
[
TSDB_TRANS_OPER_LEN
+
VARSTR_HEADER_SIZE
]
=
{
0
};
STR_WITH_MAXSIZE_TO_VARSTR
(
opername
,
pTrans
->
opername
,
pShow
->
pMeta
->
pSchemas
[
cols
].
bytes
);
STR_WITH_MAXSIZE_TO_VARSTR
(
opername
,
pTrans
->
opername
,
pShow
->
pMeta
->
pSchemas
[
cols
].
bytes
);
pColInfo
=
taosArrayGet
(
pBlock
->
pDataBlock
,
cols
++
);
pColInfo
=
taosArrayGet
(
pBlock
->
pDataBlock
,
cols
++
);
colData
Append
(
pColInfo
,
numOfRows
,
(
const
char
*
)
opername
,
false
);
colData
SetVal
(
pColInfo
,
numOfRows
,
(
const
char
*
)
opername
,
false
);
char
dbname
[
TSDB_DB_NAME_LEN
+
VARSTR_HEADER_SIZE
]
=
{
0
};
char
dbname
[
TSDB_DB_NAME_LEN
+
VARSTR_HEADER_SIZE
]
=
{
0
};
STR_WITH_MAXSIZE_TO_VARSTR
(
dbname
,
mndGetDbStr
(
pTrans
->
dbname
),
pShow
->
pMeta
->
pSchemas
[
cols
].
bytes
);
STR_WITH_MAXSIZE_TO_VARSTR
(
dbname
,
mndGetDbStr
(
pTrans
->
dbname
),
pShow
->
pMeta
->
pSchemas
[
cols
].
bytes
);
pColInfo
=
taosArrayGet
(
pBlock
->
pDataBlock
,
cols
++
);
pColInfo
=
taosArrayGet
(
pBlock
->
pDataBlock
,
cols
++
);
colData
Append
(
pColInfo
,
numOfRows
,
(
const
char
*
)
dbname
,
false
);
colData
SetVal
(
pColInfo
,
numOfRows
,
(
const
char
*
)
dbname
,
false
);
char
stbname
[
TSDB_TABLE_NAME_LEN
+
VARSTR_HEADER_SIZE
]
=
{
0
};
char
stbname
[
TSDB_TABLE_NAME_LEN
+
VARSTR_HEADER_SIZE
]
=
{
0
};
STR_WITH_MAXSIZE_TO_VARSTR
(
stbname
,
mndGetDbStr
(
pTrans
->
stbname
),
pShow
->
pMeta
->
pSchemas
[
cols
].
bytes
);
STR_WITH_MAXSIZE_TO_VARSTR
(
stbname
,
mndGetDbStr
(
pTrans
->
stbname
),
pShow
->
pMeta
->
pSchemas
[
cols
].
bytes
);
pColInfo
=
taosArrayGet
(
pBlock
->
pDataBlock
,
cols
++
);
pColInfo
=
taosArrayGet
(
pBlock
->
pDataBlock
,
cols
++
);
colData
Append
(
pColInfo
,
numOfRows
,
(
const
char
*
)
stbname
,
false
);
colData
SetVal
(
pColInfo
,
numOfRows
,
(
const
char
*
)
stbname
,
false
);
pColInfo
=
taosArrayGet
(
pBlock
->
pDataBlock
,
cols
++
);
pColInfo
=
taosArrayGet
(
pBlock
->
pDataBlock
,
cols
++
);
colData
Append
(
pColInfo
,
numOfRows
,
(
const
char
*
)
&
pTrans
->
failedTimes
,
false
);
colData
SetVal
(
pColInfo
,
numOfRows
,
(
const
char
*
)
&
pTrans
->
failedTimes
,
false
);
pColInfo
=
taosArrayGet
(
pBlock
->
pDataBlock
,
cols
++
);
pColInfo
=
taosArrayGet
(
pBlock
->
pDataBlock
,
cols
++
);
colData
Append
(
pColInfo
,
numOfRows
,
(
const
char
*
)
&
pTrans
->
lastExecTime
,
false
);
colData
SetVal
(
pColInfo
,
numOfRows
,
(
const
char
*
)
&
pTrans
->
lastExecTime
,
false
);
char
lastInfo
[
TSDB_TRANS_ERROR_LEN
+
VARSTR_HEADER_SIZE
]
=
{
0
};
char
lastInfo
[
TSDB_TRANS_ERROR_LEN
+
VARSTR_HEADER_SIZE
]
=
{
0
};
char
detail
[
TSDB_TRANS_ERROR_LEN
+
1
]
=
{
0
};
char
detail
[
TSDB_TRANS_ERROR_LEN
+
1
]
=
{
0
};
...
@@ -1703,7 +1703,7 @@ static int32_t mndRetrieveTrans(SRpcMsg *pReq, SShowObj *pShow, SSDataBlock *pBl
...
@@ -1703,7 +1703,7 @@ static int32_t mndRetrieveTrans(SRpcMsg *pReq, SShowObj *pShow, SSDataBlock *pBl
}
}
STR_WITH_MAXSIZE_TO_VARSTR
(
lastInfo
,
detail
,
pShow
->
pMeta
->
pSchemas
[
cols
].
bytes
);
STR_WITH_MAXSIZE_TO_VARSTR
(
lastInfo
,
detail
,
pShow
->
pMeta
->
pSchemas
[
cols
].
bytes
);
pColInfo
=
taosArrayGet
(
pBlock
->
pDataBlock
,
cols
++
);
pColInfo
=
taosArrayGet
(
pBlock
->
pDataBlock
,
cols
++
);
colData
Append
(
pColInfo
,
numOfRows
,
(
const
char
*
)
lastInfo
,
false
);
colData
SetVal
(
pColInfo
,
numOfRows
,
(
const
char
*
)
lastInfo
,
false
);
numOfRows
++
;
numOfRows
++
;
sdbRelease
(
pSdb
,
pTrans
);
sdbRelease
(
pSdb
,
pTrans
);
...
...
source/dnode/mnode/impl/src/mndUser.c
浏览文件 @
8d187efc
...
@@ -795,23 +795,23 @@ static int32_t mndRetrieveUsers(SRpcMsg *pReq, SShowObj *pShow, SSDataBlock *pBl
...
@@ -795,23 +795,23 @@ static int32_t mndRetrieveUsers(SRpcMsg *pReq, SShowObj *pShow, SSDataBlock *pBl
SColumnInfoData
*
pColInfo
=
taosArrayGet
(
pBlock
->
pDataBlock
,
cols
);
SColumnInfoData
*
pColInfo
=
taosArrayGet
(
pBlock
->
pDataBlock
,
cols
);
char
name
[
TSDB_USER_LEN
+
VARSTR_HEADER_SIZE
]
=
{
0
};
char
name
[
TSDB_USER_LEN
+
VARSTR_HEADER_SIZE
]
=
{
0
};
STR_WITH_MAXSIZE_TO_VARSTR
(
name
,
pUser
->
user
,
pShow
->
pMeta
->
pSchemas
[
cols
].
bytes
);
STR_WITH_MAXSIZE_TO_VARSTR
(
name
,
pUser
->
user
,
pShow
->
pMeta
->
pSchemas
[
cols
].
bytes
);
colData
Append
(
pColInfo
,
numOfRows
,
(
const
char
*
)
name
,
false
);
colData
SetVal
(
pColInfo
,
numOfRows
,
(
const
char
*
)
name
,
false
);
cols
++
;
cols
++
;
pColInfo
=
taosArrayGet
(
pBlock
->
pDataBlock
,
cols
);
pColInfo
=
taosArrayGet
(
pBlock
->
pDataBlock
,
cols
);
colData
Append
(
pColInfo
,
numOfRows
,
(
const
char
*
)
&
pUser
->
superUser
,
false
);
colData
SetVal
(
pColInfo
,
numOfRows
,
(
const
char
*
)
&
pUser
->
superUser
,
false
);
cols
++
;
cols
++
;
pColInfo
=
taosArrayGet
(
pBlock
->
pDataBlock
,
cols
);
pColInfo
=
taosArrayGet
(
pBlock
->
pDataBlock
,
cols
);
colData
Append
(
pColInfo
,
numOfRows
,
(
const
char
*
)
&
pUser
->
enable
,
false
);
colData
SetVal
(
pColInfo
,
numOfRows
,
(
const
char
*
)
&
pUser
->
enable
,
false
);
cols
++
;
cols
++
;
pColInfo
=
taosArrayGet
(
pBlock
->
pDataBlock
,
cols
);
pColInfo
=
taosArrayGet
(
pBlock
->
pDataBlock
,
cols
);
colData
Append
(
pColInfo
,
numOfRows
,
(
const
char
*
)
&
pUser
->
sysInfo
,
false
);
colData
SetVal
(
pColInfo
,
numOfRows
,
(
const
char
*
)
&
pUser
->
sysInfo
,
false
);
cols
++
;
cols
++
;
pColInfo
=
taosArrayGet
(
pBlock
->
pDataBlock
,
cols
);
pColInfo
=
taosArrayGet
(
pBlock
->
pDataBlock
,
cols
);
colData
Append
(
pColInfo
,
numOfRows
,
(
const
char
*
)
&
pUser
->
createdTime
,
false
);
colData
SetVal
(
pColInfo
,
numOfRows
,
(
const
char
*
)
&
pUser
->
createdTime
,
false
);
numOfRows
++
;
numOfRows
++
;
sdbRelease
(
pSdb
,
pUser
);
sdbRelease
(
pSdb
,
pUser
);
...
@@ -848,17 +848,17 @@ static int32_t mndRetrievePrivileges(SRpcMsg *pReq, SShowObj *pShow, SSDataBlock
...
@@ -848,17 +848,17 @@ static int32_t mndRetrievePrivileges(SRpcMsg *pReq, SShowObj *pShow, SSDataBlock
char
userName
[
TSDB_USER_LEN
+
VARSTR_HEADER_SIZE
]
=
{
0
};
char
userName
[
TSDB_USER_LEN
+
VARSTR_HEADER_SIZE
]
=
{
0
};
STR_WITH_MAXSIZE_TO_VARSTR
(
userName
,
pUser
->
user
,
pShow
->
pMeta
->
pSchemas
[
cols
].
bytes
);
STR_WITH_MAXSIZE_TO_VARSTR
(
userName
,
pUser
->
user
,
pShow
->
pMeta
->
pSchemas
[
cols
].
bytes
);
SColumnInfoData
*
pColInfo
=
taosArrayGet
(
pBlock
->
pDataBlock
,
cols
++
);
SColumnInfoData
*
pColInfo
=
taosArrayGet
(
pBlock
->
pDataBlock
,
cols
++
);
colData
Append
(
pColInfo
,
numOfRows
,
(
const
char
*
)
userName
,
false
);
colData
SetVal
(
pColInfo
,
numOfRows
,
(
const
char
*
)
userName
,
false
);
char
privilege
[
20
]
=
{
0
};
char
privilege
[
20
]
=
{
0
};
STR_WITH_MAXSIZE_TO_VARSTR
(
privilege
,
"all"
,
pShow
->
pMeta
->
pSchemas
[
cols
].
bytes
);
STR_WITH_MAXSIZE_TO_VARSTR
(
privilege
,
"all"
,
pShow
->
pMeta
->
pSchemas
[
cols
].
bytes
);
pColInfo
=
taosArrayGet
(
pBlock
->
pDataBlock
,
cols
++
);
pColInfo
=
taosArrayGet
(
pBlock
->
pDataBlock
,
cols
++
);
colData
Append
(
pColInfo
,
numOfRows
,
(
const
char
*
)
privilege
,
false
);
colData
SetVal
(
pColInfo
,
numOfRows
,
(
const
char
*
)
privilege
,
false
);
char
objName
[
20
]
=
{
0
};
char
objName
[
20
]
=
{
0
};
STR_WITH_MAXSIZE_TO_VARSTR
(
objName
,
"all"
,
pShow
->
pMeta
->
pSchemas
[
cols
].
bytes
);
STR_WITH_MAXSIZE_TO_VARSTR
(
objName
,
"all"
,
pShow
->
pMeta
->
pSchemas
[
cols
].
bytes
);
pColInfo
=
taosArrayGet
(
pBlock
->
pDataBlock
,
cols
++
);
pColInfo
=
taosArrayGet
(
pBlock
->
pDataBlock
,
cols
++
);
colData
Append
(
pColInfo
,
numOfRows
,
(
const
char
*
)
objName
,
false
);
colData
SetVal
(
pColInfo
,
numOfRows
,
(
const
char
*
)
objName
,
false
);
numOfRows
++
;
numOfRows
++
;
}
}
...
@@ -869,12 +869,12 @@ static int32_t mndRetrievePrivileges(SRpcMsg *pReq, SShowObj *pShow, SSDataBlock
...
@@ -869,12 +869,12 @@ static int32_t mndRetrievePrivileges(SRpcMsg *pReq, SShowObj *pShow, SSDataBlock
char
userName
[
TSDB_USER_LEN
+
VARSTR_HEADER_SIZE
]
=
{
0
};
char
userName
[
TSDB_USER_LEN
+
VARSTR_HEADER_SIZE
]
=
{
0
};
STR_WITH_MAXSIZE_TO_VARSTR
(
userName
,
pUser
->
user
,
pShow
->
pMeta
->
pSchemas
[
cols
].
bytes
);
STR_WITH_MAXSIZE_TO_VARSTR
(
userName
,
pUser
->
user
,
pShow
->
pMeta
->
pSchemas
[
cols
].
bytes
);
SColumnInfoData
*
pColInfo
=
taosArrayGet
(
pBlock
->
pDataBlock
,
cols
++
);
SColumnInfoData
*
pColInfo
=
taosArrayGet
(
pBlock
->
pDataBlock
,
cols
++
);
colData
Append
(
pColInfo
,
numOfRows
,
(
const
char
*
)
userName
,
false
);
colData
SetVal
(
pColInfo
,
numOfRows
,
(
const
char
*
)
userName
,
false
);
char
privilege
[
20
]
=
{
0
};
char
privilege
[
20
]
=
{
0
};
STR_WITH_MAXSIZE_TO_VARSTR
(
privilege
,
"read"
,
pShow
->
pMeta
->
pSchemas
[
cols
].
bytes
);
STR_WITH_MAXSIZE_TO_VARSTR
(
privilege
,
"read"
,
pShow
->
pMeta
->
pSchemas
[
cols
].
bytes
);
pColInfo
=
taosArrayGet
(
pBlock
->
pDataBlock
,
cols
++
);
pColInfo
=
taosArrayGet
(
pBlock
->
pDataBlock
,
cols
++
);
colData
Append
(
pColInfo
,
numOfRows
,
(
const
char
*
)
privilege
,
false
);
colData
SetVal
(
pColInfo
,
numOfRows
,
(
const
char
*
)
privilege
,
false
);
SName
name
=
{
0
};
SName
name
=
{
0
};
char
objName
[
TSDB_DB_NAME_LEN
+
VARSTR_HEADER_SIZE
]
=
{
0
};
char
objName
[
TSDB_DB_NAME_LEN
+
VARSTR_HEADER_SIZE
]
=
{
0
};
...
@@ -882,7 +882,7 @@ static int32_t mndRetrievePrivileges(SRpcMsg *pReq, SShowObj *pShow, SSDataBlock
...
@@ -882,7 +882,7 @@ static int32_t mndRetrievePrivileges(SRpcMsg *pReq, SShowObj *pShow, SSDataBlock
tNameGetDbName
(
&
name
,
varDataVal
(
objName
));
tNameGetDbName
(
&
name
,
varDataVal
(
objName
));
varDataSetLen
(
objName
,
strlen
(
varDataVal
(
objName
)));
varDataSetLen
(
objName
,
strlen
(
varDataVal
(
objName
)));
pColInfo
=
taosArrayGet
(
pBlock
->
pDataBlock
,
cols
++
);
pColInfo
=
taosArrayGet
(
pBlock
->
pDataBlock
,
cols
++
);
colData
Append
(
pColInfo
,
numOfRows
,
(
const
char
*
)
objName
,
false
);
colData
SetVal
(
pColInfo
,
numOfRows
,
(
const
char
*
)
objName
,
false
);
numOfRows
++
;
numOfRows
++
;
db
=
taosHashIterate
(
pUser
->
readDbs
,
db
);
db
=
taosHashIterate
(
pUser
->
readDbs
,
db
);
...
@@ -894,12 +894,12 @@ static int32_t mndRetrievePrivileges(SRpcMsg *pReq, SShowObj *pShow, SSDataBlock
...
@@ -894,12 +894,12 @@ static int32_t mndRetrievePrivileges(SRpcMsg *pReq, SShowObj *pShow, SSDataBlock
char
userName
[
TSDB_USER_LEN
+
VARSTR_HEADER_SIZE
]
=
{
0
};
char
userName
[
TSDB_USER_LEN
+
VARSTR_HEADER_SIZE
]
=
{
0
};
STR_WITH_MAXSIZE_TO_VARSTR
(
userName
,
pUser
->
user
,
pShow
->
pMeta
->
pSchemas
[
cols
].
bytes
);
STR_WITH_MAXSIZE_TO_VARSTR
(
userName
,
pUser
->
user
,
pShow
->
pMeta
->
pSchemas
[
cols
].
bytes
);
SColumnInfoData
*
pColInfo
=
taosArrayGet
(
pBlock
->
pDataBlock
,
cols
++
);
SColumnInfoData
*
pColInfo
=
taosArrayGet
(
pBlock
->
pDataBlock
,
cols
++
);
colData
Append
(
pColInfo
,
numOfRows
,
(
const
char
*
)
userName
,
false
);
colData
SetVal
(
pColInfo
,
numOfRows
,
(
const
char
*
)
userName
,
false
);
char
privilege
[
20
]
=
{
0
};
char
privilege
[
20
]
=
{
0
};
STR_WITH_MAXSIZE_TO_VARSTR
(
privilege
,
"write"
,
pShow
->
pMeta
->
pSchemas
[
cols
].
bytes
);
STR_WITH_MAXSIZE_TO_VARSTR
(
privilege
,
"write"
,
pShow
->
pMeta
->
pSchemas
[
cols
].
bytes
);
pColInfo
=
taosArrayGet
(
pBlock
->
pDataBlock
,
cols
++
);
pColInfo
=
taosArrayGet
(
pBlock
->
pDataBlock
,
cols
++
);
colData
Append
(
pColInfo
,
numOfRows
,
(
const
char
*
)
privilege
,
false
);
colData
SetVal
(
pColInfo
,
numOfRows
,
(
const
char
*
)
privilege
,
false
);
SName
name
=
{
0
};
SName
name
=
{
0
};
char
objName
[
TSDB_DB_NAME_LEN
+
VARSTR_HEADER_SIZE
]
=
{
0
};
char
objName
[
TSDB_DB_NAME_LEN
+
VARSTR_HEADER_SIZE
]
=
{
0
};
...
@@ -907,7 +907,7 @@ static int32_t mndRetrievePrivileges(SRpcMsg *pReq, SShowObj *pShow, SSDataBlock
...
@@ -907,7 +907,7 @@ static int32_t mndRetrievePrivileges(SRpcMsg *pReq, SShowObj *pShow, SSDataBlock
tNameGetDbName
(
&
name
,
varDataVal
(
objName
));
tNameGetDbName
(
&
name
,
varDataVal
(
objName
));
varDataSetLen
(
objName
,
strlen
(
varDataVal
(
objName
)));
varDataSetLen
(
objName
,
strlen
(
varDataVal
(
objName
)));
pColInfo
=
taosArrayGet
(
pBlock
->
pDataBlock
,
cols
++
);
pColInfo
=
taosArrayGet
(
pBlock
->
pDataBlock
,
cols
++
);
colData
Append
(
pColInfo
,
numOfRows
,
(
const
char
*
)
objName
,
false
);
colData
SetVal
(
pColInfo
,
numOfRows
,
(
const
char
*
)
objName
,
false
);
numOfRows
++
;
numOfRows
++
;
db
=
taosHashIterate
(
pUser
->
writeDbs
,
db
);
db
=
taosHashIterate
(
pUser
->
writeDbs
,
db
);
...
@@ -919,18 +919,18 @@ static int32_t mndRetrievePrivileges(SRpcMsg *pReq, SShowObj *pShow, SSDataBlock
...
@@ -919,18 +919,18 @@ static int32_t mndRetrievePrivileges(SRpcMsg *pReq, SShowObj *pShow, SSDataBlock
char
userName
[
TSDB_USER_LEN
+
VARSTR_HEADER_SIZE
]
=
{
0
};
char
userName
[
TSDB_USER_LEN
+
VARSTR_HEADER_SIZE
]
=
{
0
};
STR_WITH_MAXSIZE_TO_VARSTR
(
userName
,
pUser
->
user
,
pShow
->
pMeta
->
pSchemas
[
cols
].
bytes
);
STR_WITH_MAXSIZE_TO_VARSTR
(
userName
,
pUser
->
user
,
pShow
->
pMeta
->
pSchemas
[
cols
].
bytes
);
SColumnInfoData
*
pColInfo
=
taosArrayGet
(
pBlock
->
pDataBlock
,
cols
++
);
SColumnInfoData
*
pColInfo
=
taosArrayGet
(
pBlock
->
pDataBlock
,
cols
++
);
colData
Append
(
pColInfo
,
numOfRows
,
(
const
char
*
)
userName
,
false
);
colData
SetVal
(
pColInfo
,
numOfRows
,
(
const
char
*
)
userName
,
false
);
char
privilege
[
20
]
=
{
0
};
char
privilege
[
20
]
=
{
0
};
STR_WITH_MAXSIZE_TO_VARSTR
(
privilege
,
"subscribe"
,
pShow
->
pMeta
->
pSchemas
[
cols
].
bytes
);
STR_WITH_MAXSIZE_TO_VARSTR
(
privilege
,
"subscribe"
,
pShow
->
pMeta
->
pSchemas
[
cols
].
bytes
);
pColInfo
=
taosArrayGet
(
pBlock
->
pDataBlock
,
cols
++
);
pColInfo
=
taosArrayGet
(
pBlock
->
pDataBlock
,
cols
++
);
colData
Append
(
pColInfo
,
numOfRows
,
(
const
char
*
)
privilege
,
false
);
colData
SetVal
(
pColInfo
,
numOfRows
,
(
const
char
*
)
privilege
,
false
);
char
topicName
[
TSDB_TOPIC_NAME_LEN
+
VARSTR_HEADER_SIZE
+
5
]
=
{
0
};
char
topicName
[
TSDB_TOPIC_NAME_LEN
+
VARSTR_HEADER_SIZE
+
5
]
=
{
0
};
tstrncpy
(
varDataVal
(
topicName
),
mndGetDbStr
(
topic
),
TSDB_TOPIC_NAME_LEN
-
2
);
tstrncpy
(
varDataVal
(
topicName
),
mndGetDbStr
(
topic
),
TSDB_TOPIC_NAME_LEN
-
2
);
varDataSetLen
(
topicName
,
strlen
(
varDataVal
(
topicName
)));
varDataSetLen
(
topicName
,
strlen
(
varDataVal
(
topicName
)));
pColInfo
=
taosArrayGet
(
pBlock
->
pDataBlock
,
cols
++
);
pColInfo
=
taosArrayGet
(
pBlock
->
pDataBlock
,
cols
++
);
colData
Append
(
pColInfo
,
numOfRows
,
(
const
char
*
)
topicName
,
false
);
colData
SetVal
(
pColInfo
,
numOfRows
,
(
const
char
*
)
topicName
,
false
);
numOfRows
++
;
numOfRows
++
;
topic
=
taosHashIterate
(
pUser
->
topics
,
topic
);
topic
=
taosHashIterate
(
pUser
->
topics
,
topic
);
...
...
source/dnode/mnode/impl/src/mndVgroup.c
浏览文件 @
8d187efc
...
@@ -681,7 +681,7 @@ static int32_t mndRetrieveVgroups(SRpcMsg *pReq, SShowObj *pShow, SSDataBlock *p
...
@@ -681,7 +681,7 @@ static int32_t mndRetrieveVgroups(SRpcMsg *pReq, SShowObj *pShow, SSDataBlock *p
cols
=
0
;
cols
=
0
;
SColumnInfoData
*
pColInfo
=
taosArrayGet
(
pBlock
->
pDataBlock
,
cols
++
);
SColumnInfoData
*
pColInfo
=
taosArrayGet
(
pBlock
->
pDataBlock
,
cols
++
);
colData
Append
(
pColInfo
,
numOfRows
,
(
const
char
*
)
&
pVgroup
->
vgId
,
false
);
colData
SetVal
(
pColInfo
,
numOfRows
,
(
const
char
*
)
&
pVgroup
->
vgId
,
false
);
SName
name
=
{
0
};
SName
name
=
{
0
};
char
db
[
TSDB_DB_NAME_LEN
+
VARSTR_HEADER_SIZE
]
=
{
0
};
char
db
[
TSDB_DB_NAME_LEN
+
VARSTR_HEADER_SIZE
]
=
{
0
};
...
@@ -690,17 +690,17 @@ static int32_t mndRetrieveVgroups(SRpcMsg *pReq, SShowObj *pShow, SSDataBlock *p
...
@@ -690,17 +690,17 @@ static int32_t mndRetrieveVgroups(SRpcMsg *pReq, SShowObj *pShow, SSDataBlock *p
varDataSetLen
(
db
,
strlen
(
varDataVal
(
db
)));
varDataSetLen
(
db
,
strlen
(
varDataVal
(
db
)));
pColInfo
=
taosArrayGet
(
pBlock
->
pDataBlock
,
cols
++
);
pColInfo
=
taosArrayGet
(
pBlock
->
pDataBlock
,
cols
++
);
colData
Append
(
pColInfo
,
numOfRows
,
(
const
char
*
)
db
,
false
);
colData
SetVal
(
pColInfo
,
numOfRows
,
(
const
char
*
)
db
,
false
);
pColInfo
=
taosArrayGet
(
pBlock
->
pDataBlock
,
cols
++
);
pColInfo
=
taosArrayGet
(
pBlock
->
pDataBlock
,
cols
++
);
colData
Append
(
pColInfo
,
numOfRows
,
(
const
char
*
)
&
pVgroup
->
numOfTables
,
false
);
colData
SetVal
(
pColInfo
,
numOfRows
,
(
const
char
*
)
&
pVgroup
->
numOfTables
,
false
);
// default 3 replica, add 1 replica if move vnode
// default 3 replica, add 1 replica if move vnode
for
(
int32_t
i
=
0
;
i
<
4
;
++
i
)
{
for
(
int32_t
i
=
0
;
i
<
4
;
++
i
)
{
pColInfo
=
taosArrayGet
(
pBlock
->
pDataBlock
,
cols
++
);
pColInfo
=
taosArrayGet
(
pBlock
->
pDataBlock
,
cols
++
);
if
(
i
<
pVgroup
->
replica
)
{
if
(
i
<
pVgroup
->
replica
)
{
int16_t
dnodeId
=
(
int16_t
)
pVgroup
->
vnodeGid
[
i
].
dnodeId
;
int16_t
dnodeId
=
(
int16_t
)
pVgroup
->
vnodeGid
[
i
].
dnodeId
;
colData
Append
(
pColInfo
,
numOfRows
,
(
const
char
*
)
&
dnodeId
,
false
);
colData
SetVal
(
pColInfo
,
numOfRows
,
(
const
char
*
)
&
dnodeId
,
false
);
bool
exist
=
false
;
bool
exist
=
false
;
bool
online
=
false
;
bool
online
=
false
;
...
@@ -731,7 +731,7 @@ static int32_t mndRetrieveVgroups(SRpcMsg *pReq, SShowObj *pShow, SSDataBlock *p
...
@@ -731,7 +731,7 @@ static int32_t mndRetrieveVgroups(SRpcMsg *pReq, SShowObj *pShow, SSDataBlock *p
STR_WITH_MAXSIZE_TO_VARSTR
(
buf1
,
role
,
pShow
->
pMeta
->
pSchemas
[
cols
].
bytes
);
STR_WITH_MAXSIZE_TO_VARSTR
(
buf1
,
role
,
pShow
->
pMeta
->
pSchemas
[
cols
].
bytes
);
pColInfo
=
taosArrayGet
(
pBlock
->
pDataBlock
,
cols
++
);
pColInfo
=
taosArrayGet
(
pBlock
->
pDataBlock
,
cols
++
);
colData
Append
(
pColInfo
,
numOfRows
,
(
const
char
*
)
buf1
,
false
);
colData
SetVal
(
pColInfo
,
numOfRows
,
(
const
char
*
)
buf1
,
false
);
}
else
{
}
else
{
colDataAppendNULL
(
pColInfo
,
numOfRows
);
colDataAppendNULL
(
pColInfo
,
numOfRows
);
pColInfo
=
taosArrayGet
(
pBlock
->
pDataBlock
,
cols
++
);
pColInfo
=
taosArrayGet
(
pBlock
->
pDataBlock
,
cols
++
);
...
@@ -741,10 +741,10 @@ static int32_t mndRetrieveVgroups(SRpcMsg *pReq, SShowObj *pShow, SSDataBlock *p
...
@@ -741,10 +741,10 @@ static int32_t mndRetrieveVgroups(SRpcMsg *pReq, SShowObj *pShow, SSDataBlock *p
pColInfo
=
taosArrayGet
(
pBlock
->
pDataBlock
,
cols
++
);
pColInfo
=
taosArrayGet
(
pBlock
->
pDataBlock
,
cols
++
);
int32_t
cacheUsage
=
(
int32_t
)
pVgroup
->
cacheUsage
;
int32_t
cacheUsage
=
(
int32_t
)
pVgroup
->
cacheUsage
;
colData
Append
(
pColInfo
,
numOfRows
,
(
const
char
*
)
&
cacheUsage
,
false
);
colData
SetVal
(
pColInfo
,
numOfRows
,
(
const
char
*
)
&
cacheUsage
,
false
);
pColInfo
=
taosArrayGet
(
pBlock
->
pDataBlock
,
cols
++
);
pColInfo
=
taosArrayGet
(
pBlock
->
pDataBlock
,
cols
++
);
colData
Append
(
pColInfo
,
numOfRows
,
(
const
char
*
)
&
pVgroup
->
isTsma
,
false
);
colData
SetVal
(
pColInfo
,
numOfRows
,
(
const
char
*
)
&
pVgroup
->
isTsma
,
false
);
numOfRows
++
;
numOfRows
++
;
sdbRelease
(
pSdb
,
pVgroup
);
sdbRelease
(
pSdb
,
pVgroup
);
...
@@ -840,15 +840,15 @@ static int32_t mndRetrieveVnodes(SRpcMsg *pReq, SShowObj *pShow, SSDataBlock *pB
...
@@ -840,15 +840,15 @@ static int32_t mndRetrieveVnodes(SRpcMsg *pReq, SShowObj *pShow, SSDataBlock *pB
cols
=
0
;
cols
=
0
;
pColInfo
=
taosArrayGet
(
pBlock
->
pDataBlock
,
cols
++
);
pColInfo
=
taosArrayGet
(
pBlock
->
pDataBlock
,
cols
++
);
colData
Append
(
pColInfo
,
numOfRows
,
(
const
char
*
)
&
pVgroup
->
vgId
,
false
);
colData
SetVal
(
pColInfo
,
numOfRows
,
(
const
char
*
)
&
pVgroup
->
vgId
,
false
);
pColInfo
=
taosArrayGet
(
pBlock
->
pDataBlock
,
cols
++
);
pColInfo
=
taosArrayGet
(
pBlock
->
pDataBlock
,
cols
++
);
colData
Append
(
pColInfo
,
numOfRows
,
(
const
char
*
)
&
pVgroup
->
replica
,
false
);
colData
SetVal
(
pColInfo
,
numOfRows
,
(
const
char
*
)
&
pVgroup
->
replica
,
false
);
char
buf
[
20
]
=
{
0
};
char
buf
[
20
]
=
{
0
};
STR_TO_VARSTR
(
buf
,
syncStr
(
pVgid
->
syncState
));
STR_TO_VARSTR
(
buf
,
syncStr
(
pVgid
->
syncState
));
pColInfo
=
taosArrayGet
(
pBlock
->
pDataBlock
,
cols
++
);
pColInfo
=
taosArrayGet
(
pBlock
->
pDataBlock
,
cols
++
);
colData
Append
(
pColInfo
,
numOfRows
,
(
const
char
*
)
buf
,
false
);
colData
SetVal
(
pColInfo
,
numOfRows
,
(
const
char
*
)
buf
,
false
);
const
char
*
dbname
=
mndGetDbStr
(
pVgroup
->
dbName
);
const
char
*
dbname
=
mndGetDbStr
(
pVgroup
->
dbName
);
char
b1
[
TSDB_DB_NAME_LEN
+
VARSTR_HEADER_SIZE
]
=
{
0
};
char
b1
[
TSDB_DB_NAME_LEN
+
VARSTR_HEADER_SIZE
]
=
{
0
};
...
@@ -858,10 +858,10 @@ static int32_t mndRetrieveVnodes(SRpcMsg *pReq, SShowObj *pShow, SSDataBlock *pB
...
@@ -858,10 +858,10 @@ static int32_t mndRetrieveVnodes(SRpcMsg *pReq, SShowObj *pShow, SSDataBlock *pB
STR_WITH_MAXSIZE_TO_VARSTR
(
b1
,
"NULL"
,
TSDB_DB_NAME_LEN
+
VARSTR_HEADER_SIZE
);
STR_WITH_MAXSIZE_TO_VARSTR
(
b1
,
"NULL"
,
TSDB_DB_NAME_LEN
+
VARSTR_HEADER_SIZE
);
}
}
pColInfo
=
taosArrayGet
(
pBlock
->
pDataBlock
,
cols
++
);
pColInfo
=
taosArrayGet
(
pBlock
->
pDataBlock
,
cols
++
);
colData
Append
(
pColInfo
,
numOfRows
,
(
const
char
*
)
b1
,
false
);
colData
SetVal
(
pColInfo
,
numOfRows
,
(
const
char
*
)
b1
,
false
);
pColInfo
=
taosArrayGet
(
pBlock
->
pDataBlock
,
cols
++
);
pColInfo
=
taosArrayGet
(
pBlock
->
pDataBlock
,
cols
++
);
colData
Append
(
pColInfo
,
numOfRows
,
(
const
char
*
)
&
pVgid
->
dnodeId
,
false
);
colData
SetVal
(
pColInfo
,
numOfRows
,
(
const
char
*
)
&
pVgid
->
dnodeId
,
false
);
SDnodeObj
*
pDnode
=
mndAcquireDnode
(
pMnode
,
pVgid
->
dnodeId
);
SDnodeObj
*
pDnode
=
mndAcquireDnode
(
pMnode
,
pVgid
->
dnodeId
);
char
b2
[
TSDB_EP_LEN
+
VARSTR_HEADER_SIZE
]
=
{
0
};
char
b2
[
TSDB_EP_LEN
+
VARSTR_HEADER_SIZE
]
=
{
0
};
...
@@ -871,7 +871,7 @@ static int32_t mndRetrieveVnodes(SRpcMsg *pReq, SShowObj *pShow, SSDataBlock *pB
...
@@ -871,7 +871,7 @@ static int32_t mndRetrieveVnodes(SRpcMsg *pReq, SShowObj *pShow, SSDataBlock *pB
STR_WITH_MAXSIZE_TO_VARSTR
(
b2
,
"NULL"
,
TSDB_EP_LEN
+
VARSTR_HEADER_SIZE
);
STR_WITH_MAXSIZE_TO_VARSTR
(
b2
,
"NULL"
,
TSDB_EP_LEN
+
VARSTR_HEADER_SIZE
);
}
}
pColInfo
=
taosArrayGet
(
pBlock
->
pDataBlock
,
cols
++
);
pColInfo
=
taosArrayGet
(
pBlock
->
pDataBlock
,
cols
++
);
colData
Append
(
pColInfo
,
numOfRows
,
(
const
char
*
)
b2
,
false
);
colData
SetVal
(
pColInfo
,
numOfRows
,
(
const
char
*
)
b2
,
false
);
numOfRows
++
;
numOfRows
++
;
}
}
...
...
source/dnode/vnode/src/tq/tq.c
浏览文件 @
8d187efc
...
@@ -1264,13 +1264,13 @@ int32_t tqProcessDelReq(STQ* pTq, void* pReq, int32_t len, int64_t ver) {
...
@@ -1264,13 +1264,13 @@ int32_t tqProcessDelReq(STQ* pTq, void* pReq, int32_t len, int64_t ver) {
for
(
int32_t
i
=
0
;
i
<
sz
;
i
++
)
{
for
(
int32_t
i
=
0
;
i
<
sz
;
i
++
)
{
// start key column
// start key column
SColumnInfoData
*
pStartCol
=
taosArrayGet
(
pDelBlock
->
pDataBlock
,
START_TS_COLUMN_INDEX
);
SColumnInfoData
*
pStartCol
=
taosArrayGet
(
pDelBlock
->
pDataBlock
,
START_TS_COLUMN_INDEX
);
colData
Append
(
pStartCol
,
i
,
(
const
char
*
)
&
pRes
->
skey
,
false
);
// end key column
colData
SetVal
(
pStartCol
,
i
,
(
const
char
*
)
&
pRes
->
skey
,
false
);
// end key column
SColumnInfoData
*
pEndCol
=
taosArrayGet
(
pDelBlock
->
pDataBlock
,
END_TS_COLUMN_INDEX
);
SColumnInfoData
*
pEndCol
=
taosArrayGet
(
pDelBlock
->
pDataBlock
,
END_TS_COLUMN_INDEX
);
colData
Append
(
pEndCol
,
i
,
(
const
char
*
)
&
pRes
->
ekey
,
false
);
colData
SetVal
(
pEndCol
,
i
,
(
const
char
*
)
&
pRes
->
ekey
,
false
);
// uid column
// uid column
SColumnInfoData
*
pUidCol
=
taosArrayGet
(
pDelBlock
->
pDataBlock
,
UID_COLUMN_INDEX
);
SColumnInfoData
*
pUidCol
=
taosArrayGet
(
pDelBlock
->
pDataBlock
,
UID_COLUMN_INDEX
);
int64_t
*
pUid
=
taosArrayGet
(
pRes
->
uidList
,
i
);
int64_t
*
pUid
=
taosArrayGet
(
pRes
->
uidList
,
i
);
colData
Append
(
pUidCol
,
i
,
(
const
char
*
)
pUid
,
false
);
colData
SetVal
(
pUidCol
,
i
,
(
const
char
*
)
pUid
,
false
);
colDataAppendNULL
(
taosArrayGet
(
pDelBlock
->
pDataBlock
,
GROUPID_COLUMN_INDEX
),
i
);
colDataAppendNULL
(
taosArrayGet
(
pDelBlock
->
pDataBlock
,
GROUPID_COLUMN_INDEX
),
i
);
colDataAppendNULL
(
taosArrayGet
(
pDelBlock
->
pDataBlock
,
CALCULATE_START_TS_COLUMN_INDEX
),
i
);
colDataAppendNULL
(
taosArrayGet
(
pDelBlock
->
pDataBlock
,
CALCULATE_START_TS_COLUMN_INDEX
),
i
);
...
...
source/dnode/vnode/src/tq/tqRead.c
浏览文件 @
8d187efc
...
@@ -544,7 +544,7 @@ int32_t tqRetrieveDataBlock(SSDataBlock* pBlock, STqReader* pReader) {
...
@@ -544,7 +544,7 @@ int32_t tqRetrieveDataBlock(SSDataBlock* pBlock, STqReader* pReader) {
if
(
!
tdSTSRowIterFetch
(
&
iter
,
pColData
->
info
.
colId
,
pColData
->
info
.
type
,
&
sVal
))
{
if
(
!
tdSTSRowIterFetch
(
&
iter
,
pColData
->
info
.
colId
,
pColData
->
info
.
type
,
&
sVal
))
{
break
;
break
;
}
}
if
(
colData
Append
(
pColData
,
curRow
,
sVal
.
val
,
sVal
.
valType
!=
TD_VTYPE_NORM
)
<
0
)
{
if
(
colData
SetVal
(
pColData
,
curRow
,
sVal
.
val
,
sVal
.
valType
!=
TD_VTYPE_NORM
)
<
0
)
{
goto
FAIL
;
goto
FAIL
;
}
}
}
}
...
@@ -673,7 +673,7 @@ int32_t tqRetrieveTaosxBlock(STqReader* pReader, SArray* blocks, SArray* schemas
...
@@ -673,7 +673,7 @@ int32_t tqRetrieveTaosxBlock(STqReader* pReader, SArray* blocks, SArray* schemas
ASSERT
(
sVal
.
valType
!=
TD_VTYPE_NONE
);
ASSERT
(
sVal
.
valType
!=
TD_VTYPE_NONE
);
if
(
colData
Append
(
pColData
,
curRow
,
sVal
.
val
,
sVal
.
valType
==
TD_VTYPE_NULL
)
<
0
)
{
if
(
colData
SetVal
(
pColData
,
curRow
,
sVal
.
val
,
sVal
.
valType
==
TD_VTYPE_NULL
)
<
0
)
{
goto
FAIL
;
goto
FAIL
;
}
}
tqDebug
(
"vgId:%d, row %d col %d append %d"
,
pReader
->
pWalReader
->
pWal
->
cfg
.
vgId
,
curRow
,
i
,
tqDebug
(
"vgId:%d, row %d col %d append %d"
,
pReader
->
pWalReader
->
pWal
->
cfg
.
vgId
,
curRow
,
i
,
...
...
source/dnode/vnode/src/tsdb/tsdbCacheRead.c
浏览文件 @
8d187efc
...
@@ -67,7 +67,7 @@ static int32_t saveOneRow(SArray* pRow, SSDataBlock* pBlock, SCacheRowsReader* p
...
@@ -67,7 +67,7 @@ static int32_t saveOneRow(SArray* pRow, SSDataBlock* pBlock, SCacheRowsReader* p
// pColInfoData->info.bytes includes the VARSTR_HEADER_SIZE, need to substruct it
// pColInfoData->info.bytes includes the VARSTR_HEADER_SIZE, need to substruct it
p
->
hasResult
=
true
;
p
->
hasResult
=
true
;
varDataSetLen
(
pRes
[
i
],
pColInfoData
->
info
.
bytes
-
VARSTR_HEADER_SIZE
);
varDataSetLen
(
pRes
[
i
],
pColInfoData
->
info
.
bytes
-
VARSTR_HEADER_SIZE
);
colData
Append
(
pColInfoData
,
numOfRows
,
(
const
char
*
)
pRes
[
i
],
false
);
colData
SetVal
(
pColInfoData
,
numOfRows
,
(
const
char
*
)
pRes
[
i
],
false
);
}
}
pBlock
->
info
.
rows
+=
allNullRow
?
0
:
1
;
pBlock
->
info
.
rows
+=
allNullRow
?
0
:
1
;
...
@@ -77,7 +77,7 @@ static int32_t saveOneRow(SArray* pRow, SSDataBlock* pBlock, SCacheRowsReader* p
...
@@ -77,7 +77,7 @@ static int32_t saveOneRow(SArray* pRow, SSDataBlock* pBlock, SCacheRowsReader* p
if
(
slotIds
[
i
]
==
-
1
)
{
if
(
slotIds
[
i
]
==
-
1
)
{
SLastCol
*
pColVal
=
(
SLastCol
*
)
taosArrayGet
(
pRow
,
0
);
SLastCol
*
pColVal
=
(
SLastCol
*
)
taosArrayGet
(
pRow
,
0
);
colData
Append
(
pColInfoData
,
numOfRows
,
(
const
char
*
)
&
pColVal
->
ts
,
false
);
colData
SetVal
(
pColInfoData
,
numOfRows
,
(
const
char
*
)
&
pColVal
->
ts
,
false
);
}
else
{
}
else
{
int32_t
slotId
=
slotIds
[
i
];
int32_t
slotId
=
slotIds
[
i
];
SLastCol
*
pColVal
=
(
SLastCol
*
)
taosArrayGet
(
pRow
,
slotId
);
SLastCol
*
pColVal
=
(
SLastCol
*
)
taosArrayGet
(
pRow
,
slotId
);
...
@@ -85,14 +85,14 @@ static int32_t saveOneRow(SArray* pRow, SSDataBlock* pBlock, SCacheRowsReader* p
...
@@ -85,14 +85,14 @@ static int32_t saveOneRow(SArray* pRow, SSDataBlock* pBlock, SCacheRowsReader* p
if
(
IS_VAR_DATA_TYPE
(
pColVal
->
colVal
.
type
))
{
if
(
IS_VAR_DATA_TYPE
(
pColVal
->
colVal
.
type
))
{
if
(
!
COL_VAL_IS_VALUE
(
&
pColVal
->
colVal
))
{
if
(
!
COL_VAL_IS_VALUE
(
&
pColVal
->
colVal
))
{
colData
Append
NULL
(
pColInfoData
,
numOfRows
);
colData
Set
NULL
(
pColInfoData
,
numOfRows
);
}
else
{
}
else
{
varDataSetLen
(
pReader
->
transferBuf
[
slotId
],
pVal
->
value
.
nData
);
varDataSetLen
(
pReader
->
transferBuf
[
slotId
],
pVal
->
value
.
nData
);
memcpy
(
varDataVal
(
pReader
->
transferBuf
[
slotId
]),
pVal
->
value
.
pData
,
pVal
->
value
.
nData
);
memcpy
(
varDataVal
(
pReader
->
transferBuf
[
slotId
]),
pVal
->
value
.
pData
,
pVal
->
value
.
nData
);
colData
Append
(
pColInfoData
,
numOfRows
,
pReader
->
transferBuf
[
slotId
],
false
);
colData
SetVal
(
pColInfoData
,
numOfRows
,
pReader
->
transferBuf
[
slotId
],
false
);
}
}
}
else
{
}
else
{
colData
Append
(
pColInfoData
,
numOfRows
,
(
const
char
*
)
&
pVal
->
value
.
val
,
!
COL_VAL_IS_VALUE
(
pVal
));
colData
SetVal
(
pColInfoData
,
numOfRows
,
(
const
char
*
)
&
pVal
->
value
.
val
,
!
COL_VAL_IS_VALUE
(
pVal
));
}
}
}
}
}
}
...
...
source/dnode/vnode/src/tsdb/tsdbRead.c
浏览文件 @
8d187efc
...
@@ -820,7 +820,7 @@ static void doCopyColVal(SColumnInfoData* pColInfoData, int32_t rowIndex, int32_
...
@@ -820,7 +820,7 @@ static void doCopyColVal(SColumnInfoData* pColInfoData, int32_t rowIndex, int32_
SBlockLoadSuppInfo
*
pSup
)
{
SBlockLoadSuppInfo
*
pSup
)
{
if
(
IS_VAR_DATA_TYPE
(
pColVal
->
type
))
{
if
(
IS_VAR_DATA_TYPE
(
pColVal
->
type
))
{
if
(
!
COL_VAL_IS_VALUE
(
pColVal
))
{
if
(
!
COL_VAL_IS_VALUE
(
pColVal
))
{
colData
Append
NULL
(
pColInfoData
,
rowIndex
);
colData
Set
NULL
(
pColInfoData
,
rowIndex
);
}
else
{
}
else
{
varDataSetLen
(
pSup
->
buildBuf
[
colIndex
],
pColVal
->
value
.
nData
);
varDataSetLen
(
pSup
->
buildBuf
[
colIndex
],
pColVal
->
value
.
nData
);
ASSERT
(
pColVal
->
value
.
nData
<=
pColInfoData
->
info
.
bytes
);
ASSERT
(
pColVal
->
value
.
nData
<=
pColInfoData
->
info
.
bytes
);
...
@@ -828,10 +828,10 @@ static void doCopyColVal(SColumnInfoData* pColInfoData, int32_t rowIndex, int32_
...
@@ -828,10 +828,10 @@ static void doCopyColVal(SColumnInfoData* pColInfoData, int32_t rowIndex, int32_
memcpy
(
varDataVal
(
pSup
->
buildBuf
[
colIndex
]),
pColVal
->
value
.
pData
,
pColVal
->
value
.
nData
);
memcpy
(
varDataVal
(
pSup
->
buildBuf
[
colIndex
]),
pColVal
->
value
.
pData
,
pColVal
->
value
.
nData
);
}
}
colData
Append
(
pColInfoData
,
rowIndex
,
pSup
->
buildBuf
[
colIndex
],
false
);
colData
SetVal
(
pColInfoData
,
rowIndex
,
pSup
->
buildBuf
[
colIndex
],
false
);
}
}
}
else
{
}
else
{
colData
Append
(
pColInfoData
,
rowIndex
,
(
const
char
*
)
&
pColVal
->
value
,
!
COL_VAL_IS_VALUE
(
pColVal
));
colData
SetVal
(
pColInfoData
,
rowIndex
,
(
const
char
*
)
&
pColVal
->
value
,
!
COL_VAL_IS_VALUE
(
pColVal
));
}
}
}
}
...
@@ -1106,7 +1106,7 @@ static int32_t copyBlockDataToSDataBlock(STsdbReader* pReader) {
...
@@ -1106,7 +1106,7 @@ static int32_t copyBlockDataToSDataBlock(STsdbReader* pReader) {
pColData
=
taosArrayGet
(
pResBlock
->
pDataBlock
,
pSupInfo
->
slotId
[
i
]);
pColData
=
taosArrayGet
(
pResBlock
->
pDataBlock
,
pSupInfo
->
slotId
[
i
]);
if
(
pData
->
flag
==
HAS_NONE
||
pData
->
flag
==
HAS_NULL
||
pData
->
flag
==
(
HAS_NULL
|
HAS_NONE
))
{
if
(
pData
->
flag
==
HAS_NONE
||
pData
->
flag
==
HAS_NULL
||
pData
->
flag
==
(
HAS_NULL
|
HAS_NONE
))
{
colData
Append
NNULL
(
pColData
,
0
,
dumpedRows
);
colData
Set
NNULL
(
pColData
,
0
,
dumpedRows
);
}
else
{
}
else
{
if
(
IS_MATHABLE_TYPE
(
pColData
->
info
.
type
))
{
if
(
IS_MATHABLE_TYPE
(
pColData
->
info
.
type
))
{
copyNumericCols
(
pData
,
pDumpInfo
,
pColData
,
dumpedRows
,
asc
);
copyNumericCols
(
pData
,
pDumpInfo
,
pColData
,
dumpedRows
,
asc
);
...
@@ -1122,7 +1122,7 @@ static int32_t copyBlockDataToSDataBlock(STsdbReader* pReader) {
...
@@ -1122,7 +1122,7 @@ static int32_t copyBlockDataToSDataBlock(STsdbReader* pReader) {
i
+=
1
;
i
+=
1
;
}
else
{
// the specified column does not exist in file block, fill with null data
}
else
{
// the specified column does not exist in file block, fill with null data
pColData
=
taosArrayGet
(
pResBlock
->
pDataBlock
,
pSupInfo
->
slotId
[
i
]);
pColData
=
taosArrayGet
(
pResBlock
->
pDataBlock
,
pSupInfo
->
slotId
[
i
]);
colData
Append
NNULL
(
pColData
,
0
,
dumpedRows
);
colData
Set
NNULL
(
pColData
,
0
,
dumpedRows
);
i
+=
1
;
i
+=
1
;
}
}
}
}
...
@@ -1130,7 +1130,7 @@ static int32_t copyBlockDataToSDataBlock(STsdbReader* pReader) {
...
@@ -1130,7 +1130,7 @@ static int32_t copyBlockDataToSDataBlock(STsdbReader* pReader) {
// fill the mis-matched columns with null value
// fill the mis-matched columns with null value
while
(
i
<
numOfOutputCols
)
{
while
(
i
<
numOfOutputCols
)
{
pColData
=
taosArrayGet
(
pResBlock
->
pDataBlock
,
pSupInfo
->
slotId
[
i
]);
pColData
=
taosArrayGet
(
pResBlock
->
pDataBlock
,
pSupInfo
->
slotId
[
i
]);
colData
Append
NNULL
(
pColData
,
0
,
dumpedRows
);
colData
Set
NNULL
(
pColData
,
0
,
dumpedRows
);
i
+=
1
;
i
+=
1
;
}
}
...
...
source/libs/command/src/command.c
浏览文件 @
8d187efc
...
@@ -104,13 +104,13 @@ static void setDescResultIntoDataBlock(bool sysInfoUser, SSDataBlock* pBlock, in
...
@@ -104,13 +104,13 @@ static void setDescResultIntoDataBlock(bool sysInfoUser, SSDataBlock* pBlock, in
continue
;
continue
;
}
}
STR_TO_VARSTR
(
buf
,
pMeta
->
schema
[
i
].
name
);
STR_TO_VARSTR
(
buf
,
pMeta
->
schema
[
i
].
name
);
colData
Append
(
pCol1
,
pBlock
->
info
.
rows
,
buf
,
false
);
colData
SetVal
(
pCol1
,
pBlock
->
info
.
rows
,
buf
,
false
);
STR_TO_VARSTR
(
buf
,
tDataTypes
[
pMeta
->
schema
[
i
].
type
].
name
);
STR_TO_VARSTR
(
buf
,
tDataTypes
[
pMeta
->
schema
[
i
].
type
].
name
);
colData
Append
(
pCol2
,
pBlock
->
info
.
rows
,
buf
,
false
);
colData
SetVal
(
pCol2
,
pBlock
->
info
.
rows
,
buf
,
false
);
int32_t
bytes
=
getSchemaBytes
(
pMeta
->
schema
+
i
);
int32_t
bytes
=
getSchemaBytes
(
pMeta
->
schema
+
i
);
colData
Append
(
pCol3
,
pBlock
->
info
.
rows
,
(
const
char
*
)
&
bytes
,
false
);
colData
SetVal
(
pCol3
,
pBlock
->
info
.
rows
,
(
const
char
*
)
&
bytes
,
false
);
STR_TO_VARSTR
(
buf
,
i
>=
pMeta
->
tableInfo
.
numOfColumns
?
"TAG"
:
""
);
STR_TO_VARSTR
(
buf
,
i
>=
pMeta
->
tableInfo
.
numOfColumns
?
"TAG"
:
""
);
colData
Append
(
pCol4
,
pBlock
->
info
.
rows
,
buf
,
false
);
colData
SetVal
(
pCol4
,
pBlock
->
info
.
rows
,
buf
,
false
);
++
(
pBlock
->
info
.
rows
);
++
(
pBlock
->
info
.
rows
);
}
}
}
}
...
@@ -238,7 +238,7 @@ static void setCreateDBResultIntoDataBlock(SSDataBlock* pBlock, char* dbFName, S
...
@@ -238,7 +238,7 @@ static void setCreateDBResultIntoDataBlock(SSDataBlock* pBlock, char* dbFName, S
SColumnInfoData
*
pCol1
=
taosArrayGet
(
pBlock
->
pDataBlock
,
0
);
SColumnInfoData
*
pCol1
=
taosArrayGet
(
pBlock
->
pDataBlock
,
0
);
char
buf1
[
SHOW_CREATE_DB_RESULT_FIELD1_LEN
]
=
{
0
};
char
buf1
[
SHOW_CREATE_DB_RESULT_FIELD1_LEN
]
=
{
0
};
STR_TO_VARSTR
(
buf1
,
dbFName
);
STR_TO_VARSTR
(
buf1
,
dbFName
);
colData
Append
(
pCol1
,
0
,
buf1
,
false
);
colData
SetVal
(
pCol1
,
0
,
buf1
,
false
);
SColumnInfoData
*
pCol2
=
taosArrayGet
(
pBlock
->
pDataBlock
,
1
);
SColumnInfoData
*
pCol2
=
taosArrayGet
(
pBlock
->
pDataBlock
,
1
);
char
buf2
[
SHOW_CREATE_DB_RESULT_FIELD2_LEN
]
=
{
0
};
char
buf2
[
SHOW_CREATE_DB_RESULT_FIELD2_LEN
]
=
{
0
};
...
@@ -278,7 +278,7 @@ static void setCreateDBResultIntoDataBlock(SSDataBlock* pBlock, char* dbFName, S
...
@@ -278,7 +278,7 @@ static void setCreateDBResultIntoDataBlock(SSDataBlock* pBlock, char* dbFName, S
(
varDataLen
(
buf2
))
=
len
;
(
varDataLen
(
buf2
))
=
len
;
colData
Append
(
pCol2
,
0
,
buf2
,
false
);
colData
SetVal
(
pCol2
,
0
,
buf2
,
false
);
}
}
static
int32_t
execShowCreateDatabase
(
SShowCreateDatabaseStmt
*
pStmt
,
SRetrieveTableRsp
**
pRsp
)
{
static
int32_t
execShowCreateDatabase
(
SShowCreateDatabaseStmt
*
pStmt
,
SRetrieveTableRsp
**
pRsp
)
{
...
@@ -488,7 +488,7 @@ static int32_t setCreateTBResultIntoDataBlock(SSDataBlock* pBlock, SDbCfgInfo* p
...
@@ -488,7 +488,7 @@ static int32_t setCreateTBResultIntoDataBlock(SSDataBlock* pBlock, SDbCfgInfo* p
SColumnInfoData
*
pCol1
=
taosArrayGet
(
pBlock
->
pDataBlock
,
0
);
SColumnInfoData
*
pCol1
=
taosArrayGet
(
pBlock
->
pDataBlock
,
0
);
char
buf1
[
SHOW_CREATE_TB_RESULT_FIELD1_LEN
]
=
{
0
};
char
buf1
[
SHOW_CREATE_TB_RESULT_FIELD1_LEN
]
=
{
0
};
STR_TO_VARSTR
(
buf1
,
tbName
);
STR_TO_VARSTR
(
buf1
,
tbName
);
colData
Append
(
pCol1
,
0
,
buf1
,
false
);
colData
SetVal
(
pCol1
,
0
,
buf1
,
false
);
SColumnInfoData
*
pCol2
=
taosArrayGet
(
pBlock
->
pDataBlock
,
1
);
SColumnInfoData
*
pCol2
=
taosArrayGet
(
pBlock
->
pDataBlock
,
1
);
char
*
buf2
=
taosMemoryMalloc
(
SHOW_CREATE_TB_RESULT_FIELD2_LEN
);
char
*
buf2
=
taosMemoryMalloc
(
SHOW_CREATE_TB_RESULT_FIELD2_LEN
);
...
@@ -526,7 +526,7 @@ static int32_t setCreateTBResultIntoDataBlock(SSDataBlock* pBlock, SDbCfgInfo* p
...
@@ -526,7 +526,7 @@ static int32_t setCreateTBResultIntoDataBlock(SSDataBlock* pBlock, SDbCfgInfo* p
varDataLen
(
buf2
)
=
(
len
>
65535
)
?
65535
:
len
;
varDataLen
(
buf2
)
=
(
len
>
65535
)
?
65535
:
len
;
colData
Append
(
pCol2
,
0
,
buf2
,
false
);
colData
SetVal
(
pCol2
,
0
,
buf2
,
false
);
taosMemoryFree
(
buf2
);
taosMemoryFree
(
buf2
);
...
@@ -649,14 +649,14 @@ int32_t setLocalVariablesResultIntoDataBlock(SSDataBlock* pBlock) {
...
@@ -649,14 +649,14 @@ int32_t setLocalVariablesResultIntoDataBlock(SSDataBlock* pBlock) {
char
name
[
TSDB_CONFIG_OPTION_LEN
+
VARSTR_HEADER_SIZE
]
=
{
0
};
char
name
[
TSDB_CONFIG_OPTION_LEN
+
VARSTR_HEADER_SIZE
]
=
{
0
};
STR_WITH_MAXSIZE_TO_VARSTR
(
name
,
pItem
->
name
,
TSDB_CONFIG_OPTION_LEN
+
VARSTR_HEADER_SIZE
);
STR_WITH_MAXSIZE_TO_VARSTR
(
name
,
pItem
->
name
,
TSDB_CONFIG_OPTION_LEN
+
VARSTR_HEADER_SIZE
);
SColumnInfoData
*
pColInfo
=
taosArrayGet
(
pBlock
->
pDataBlock
,
c
++
);
SColumnInfoData
*
pColInfo
=
taosArrayGet
(
pBlock
->
pDataBlock
,
c
++
);
colData
Append
(
pColInfo
,
i
,
name
,
false
);
colData
SetVal
(
pColInfo
,
i
,
name
,
false
);
char
value
[
TSDB_CONFIG_VALUE_LEN
+
VARSTR_HEADER_SIZE
]
=
{
0
};
char
value
[
TSDB_CONFIG_VALUE_LEN
+
VARSTR_HEADER_SIZE
]
=
{
0
};
int32_t
valueLen
=
0
;
int32_t
valueLen
=
0
;
cfgDumpItemValue
(
pItem
,
&
value
[
VARSTR_HEADER_SIZE
],
TSDB_CONFIG_VALUE_LEN
,
&
valueLen
);
cfgDumpItemValue
(
pItem
,
&
value
[
VARSTR_HEADER_SIZE
],
TSDB_CONFIG_VALUE_LEN
,
&
valueLen
);
varDataSetLen
(
value
,
valueLen
);
varDataSetLen
(
value
,
valueLen
);
pColInfo
=
taosArrayGet
(
pBlock
->
pDataBlock
,
c
++
);
pColInfo
=
taosArrayGet
(
pBlock
->
pDataBlock
,
c
++
);
colData
Append
(
pColInfo
,
i
,
value
,
false
);
colData
SetVal
(
pColInfo
,
i
,
value
,
false
);
numOfRows
++
;
numOfRows
++
;
}
}
...
@@ -712,9 +712,9 @@ int32_t buildSelectResultDataBlock(SNodeList* pProjects, SSDataBlock* pBlock) {
...
@@ -712,9 +712,9 @@ int32_t buildSelectResultDataBlock(SNodeList* pProjects, SSDataBlock* pBlock) {
return
TSDB_CODE_PAR_INVALID_SELECTED_EXPR
;
return
TSDB_CODE_PAR_INVALID_SELECTED_EXPR
;
}
else
{
}
else
{
if
(((
SValueNode
*
)
pProj
)
->
isNull
)
{
if
(((
SValueNode
*
)
pProj
)
->
isNull
)
{
colData
Append
(
taosArrayGet
(
pBlock
->
pDataBlock
,
index
++
),
0
,
NULL
,
true
);
colData
SetVal
(
taosArrayGet
(
pBlock
->
pDataBlock
,
index
++
),
0
,
NULL
,
true
);
}
else
{
}
else
{
colData
Append
(
taosArrayGet
(
pBlock
->
pDataBlock
,
index
++
),
0
,
nodesGetValueFromNode
((
SValueNode
*
)
pProj
),
false
);
colData
SetVal
(
taosArrayGet
(
pBlock
->
pDataBlock
,
index
++
),
0
,
nodesGetValueFromNode
((
SValueNode
*
)
pProj
),
false
);
}
}
}
}
}
}
...
...
source/libs/command/src/explain.c
浏览文件 @
8d187efc
...
@@ -1648,7 +1648,7 @@ int32_t qExplainGetRspFromCtx(void *ctx, SRetrieveTableRsp **pRsp) {
...
@@ -1648,7 +1648,7 @@ int32_t qExplainGetRspFromCtx(void *ctx, SRetrieveTableRsp **pRsp) {
for
(
int32_t
i
=
0
;
i
<
rowNum
;
++
i
)
{
for
(
int32_t
i
=
0
;
i
<
rowNum
;
++
i
)
{
SQueryExplainRowInfo
*
row
=
taosArrayGet
(
pCtx
->
rows
,
i
);
SQueryExplainRowInfo
*
row
=
taosArrayGet
(
pCtx
->
rows
,
i
);
colData
Append
(
pInfoData
,
i
,
row
->
buf
,
false
);
colData
SetVal
(
pInfoData
,
i
,
row
->
buf
,
false
);
}
}
pBlock
->
info
.
rows
=
rowNum
;
pBlock
->
info
.
rows
=
rowNum
;
...
...
source/libs/executor/src/cachescanoperator.c
浏览文件 @
8d187efc
...
@@ -185,7 +185,7 @@ SSDataBlock* doScanCache(SOperatorInfo* pOperator) {
...
@@ -185,7 +185,7 @@ SSDataBlock* doScanCache(SOperatorInfo* pOperator) {
colDataAppendNULL
(
pDst
,
0
);
colDataAppendNULL
(
pDst
,
0
);
}
else
{
}
else
{
char
*
p
=
colDataGetData
(
pSrc
,
pInfo
->
indexOfBufferedRes
);
char
*
p
=
colDataGetData
(
pSrc
,
pInfo
->
indexOfBufferedRes
);
colData
Append
(
pDst
,
0
,
p
,
false
);
colData
SetVal
(
pDst
,
0
,
p
,
false
);
}
}
}
}
...
...
source/libs/executor/src/executil.c
浏览文件 @
8d187efc
...
@@ -855,7 +855,7 @@ static SSDataBlock* createTagValBlockForFilter(SArray* pColList, int32_t numOfTa
...
@@ -855,7 +855,7 @@ static SSDataBlock* createTagValBlockForFilter(SArray* pColList, int32_t numOfTa
metaGetTableNameByUid
(
metaHandle
,
p1
->
uid
,
str
);
metaGetTableNameByUid
(
metaHandle
,
p1
->
uid
,
str
);
}
}
colData
Append
(
pColInfo
,
i
,
str
,
false
);
colData
SetVal
(
pColInfo
,
i
,
str
,
false
);
#if TAG_FILTER_DEBUG
#if TAG_FILTER_DEBUG
qDebug
(
"tagfilter uid:%ld, tbname:%s"
,
*
uid
,
str
+
2
);
qDebug
(
"tagfilter uid:%ld, tbname:%s"
,
*
uid
,
str
+
2
);
#endif
#endif
...
@@ -863,25 +863,25 @@ static SSDataBlock* createTagValBlockForFilter(SArray* pColList, int32_t numOfTa
...
@@ -863,25 +863,25 @@ static SSDataBlock* createTagValBlockForFilter(SArray* pColList, int32_t numOfTa
STagVal
tagVal
=
{
0
};
STagVal
tagVal
=
{
0
};
tagVal
.
cid
=
pColInfo
->
info
.
colId
;
tagVal
.
cid
=
pColInfo
->
info
.
colId
;
if
(
p1
->
pTagVal
==
NULL
)
{
if
(
p1
->
pTagVal
==
NULL
)
{
colData
Append
NULL
(
pColInfo
,
i
);
colData
Set
NULL
(
pColInfo
,
i
);
}
}
const
char
*
p
=
metaGetTableTagVal
(
p1
->
pTagVal
,
pColInfo
->
info
.
type
,
&
tagVal
);
const
char
*
p
=
metaGetTableTagVal
(
p1
->
pTagVal
,
pColInfo
->
info
.
type
,
&
tagVal
);
if
(
p
==
NULL
||
(
pColInfo
->
info
.
type
==
TSDB_DATA_TYPE_JSON
&&
((
STag
*
)
p
)
->
nTag
==
0
))
{
if
(
p
==
NULL
||
(
pColInfo
->
info
.
type
==
TSDB_DATA_TYPE_JSON
&&
((
STag
*
)
p
)
->
nTag
==
0
))
{
colData
Append
NULL
(
pColInfo
,
i
);
colData
Set
NULL
(
pColInfo
,
i
);
}
else
if
(
pColInfo
->
info
.
type
==
TSDB_DATA_TYPE_JSON
)
{
}
else
if
(
pColInfo
->
info
.
type
==
TSDB_DATA_TYPE_JSON
)
{
colData
Append
(
pColInfo
,
i
,
p
,
false
);
colData
SetVal
(
pColInfo
,
i
,
p
,
false
);
}
else
if
(
IS_VAR_DATA_TYPE
(
pColInfo
->
info
.
type
))
{
}
else
if
(
IS_VAR_DATA_TYPE
(
pColInfo
->
info
.
type
))
{
char
*
tmp
=
alloca
(
tagVal
.
nData
+
VARSTR_HEADER_SIZE
+
1
);
char
*
tmp
=
alloca
(
tagVal
.
nData
+
VARSTR_HEADER_SIZE
+
1
);
varDataSetLen
(
tmp
,
tagVal
.
nData
);
varDataSetLen
(
tmp
,
tagVal
.
nData
);
memcpy
(
tmp
+
VARSTR_HEADER_SIZE
,
tagVal
.
pData
,
tagVal
.
nData
);
memcpy
(
tmp
+
VARSTR_HEADER_SIZE
,
tagVal
.
pData
,
tagVal
.
nData
);
colData
Append
(
pColInfo
,
i
,
tmp
,
false
);
colData
SetVal
(
pColInfo
,
i
,
tmp
,
false
);
#if TAG_FILTER_DEBUG
#if TAG_FILTER_DEBUG
qDebug
(
"tagfilter varch:%s"
,
tmp
+
2
);
qDebug
(
"tagfilter varch:%s"
,
tmp
+
2
);
#endif
#endif
}
else
{
}
else
{
colData
Append
(
pColInfo
,
i
,
(
const
char
*
)
&
tagVal
.
i64
,
false
);
colData
SetVal
(
pColInfo
,
i
,
(
const
char
*
)
&
tagVal
.
i64
,
false
);
#if TAG_FILTER_DEBUG
#if TAG_FILTER_DEBUG
if
(
pColInfo
->
info
.
type
==
TSDB_DATA_TYPE_INT
)
{
if
(
pColInfo
->
info
.
type
==
TSDB_DATA_TYPE_INT
)
{
qDebug
(
"tagfilter int:%d"
,
*
(
int
*
)(
&
tagVal
.
i64
));
qDebug
(
"tagfilter int:%d"
,
*
(
int
*
)(
&
tagVal
.
i64
));
...
...
source/libs/executor/src/executorimpl.c
浏览文件 @
8d187efc
...
@@ -322,13 +322,13 @@ void initExecTimeWindowInfo(SColumnInfoData* pColData, STimeWindow* pQueryWindow
...
@@ -322,13 +322,13 @@ void initExecTimeWindowInfo(SColumnInfoData* pColData, STimeWindow* pQueryWindow
pColData
->
info
.
bytes
=
sizeof
(
int64_t
);
pColData
->
info
.
bytes
=
sizeof
(
int64_t
);
colInfoDataEnsureCapacity
(
pColData
,
5
,
false
);
colInfoDataEnsureCapacity
(
pColData
,
5
,
false
);
colData
Append
Int64
(
pColData
,
0
,
&
pQueryWindow
->
skey
);
colData
Set
Int64
(
pColData
,
0
,
&
pQueryWindow
->
skey
);
colData
Append
Int64
(
pColData
,
1
,
&
pQueryWindow
->
ekey
);
colData
Set
Int64
(
pColData
,
1
,
&
pQueryWindow
->
ekey
);
int64_t
interval
=
0
;
int64_t
interval
=
0
;
colData
Append
Int64
(
pColData
,
2
,
&
interval
);
// this value may be variable in case of 'n' and 'y'.
colData
Set
Int64
(
pColData
,
2
,
&
interval
);
// this value may be variable in case of 'n' and 'y'.
colData
Append
Int64
(
pColData
,
3
,
&
pQueryWindow
->
skey
);
colData
Set
Int64
(
pColData
,
3
,
&
pQueryWindow
->
skey
);
colData
Append
Int64
(
pColData
,
4
,
&
pQueryWindow
->
ekey
);
colData
Set
Int64
(
pColData
,
4
,
&
pQueryWindow
->
ekey
);
}
}
typedef
struct
{
typedef
struct
{
...
@@ -439,18 +439,18 @@ static int32_t doCreateConstantValColumnInfo(SInputColumnInfoData* pInput, SFunc
...
@@ -439,18 +439,18 @@ static int32_t doCreateConstantValColumnInfo(SInputColumnInfoData* pInput, SFunc
if
(
type
==
TSDB_DATA_TYPE_BIGINT
||
type
==
TSDB_DATA_TYPE_UBIGINT
)
{
if
(
type
==
TSDB_DATA_TYPE_BIGINT
||
type
==
TSDB_DATA_TYPE_UBIGINT
)
{
int64_t
v
=
pFuncParam
->
param
.
i
;
int64_t
v
=
pFuncParam
->
param
.
i
;
for
(
int32_t
i
=
0
;
i
<
numOfRows
;
++
i
)
{
for
(
int32_t
i
=
0
;
i
<
numOfRows
;
++
i
)
{
colData
Append
Int64
(
pColInfo
,
i
,
&
v
);
colData
Set
Int64
(
pColInfo
,
i
,
&
v
);
}
}
}
else
if
(
type
==
TSDB_DATA_TYPE_DOUBLE
)
{
}
else
if
(
type
==
TSDB_DATA_TYPE_DOUBLE
)
{
double
v
=
pFuncParam
->
param
.
d
;
double
v
=
pFuncParam
->
param
.
d
;
for
(
int32_t
i
=
0
;
i
<
numOfRows
;
++
i
)
{
for
(
int32_t
i
=
0
;
i
<
numOfRows
;
++
i
)
{
colData
Append
Double
(
pColInfo
,
i
,
&
v
);
colData
Set
Double
(
pColInfo
,
i
,
&
v
);
}
}
}
else
if
(
type
==
TSDB_DATA_TYPE_VARCHAR
)
{
}
else
if
(
type
==
TSDB_DATA_TYPE_VARCHAR
)
{
char
*
tmp
=
taosMemoryMalloc
(
pFuncParam
->
param
.
nLen
+
VARSTR_HEADER_SIZE
);
char
*
tmp
=
taosMemoryMalloc
(
pFuncParam
->
param
.
nLen
+
VARSTR_HEADER_SIZE
);
STR_WITH_SIZE_TO_VARSTR
(
tmp
,
pFuncParam
->
param
.
pz
,
pFuncParam
->
param
.
nLen
);
STR_WITH_SIZE_TO_VARSTR
(
tmp
,
pFuncParam
->
param
.
pz
,
pFuncParam
->
param
.
nLen
);
for
(
int32_t
i
=
0
;
i
<
numOfRows
;
++
i
)
{
for
(
int32_t
i
=
0
;
i
<
numOfRows
;
++
i
)
{
colData
Append
(
pColInfo
,
i
,
tmp
,
false
);
colData
SetVal
(
pColInfo
,
i
,
tmp
,
false
);
}
}
taosMemoryFree
(
tmp
);
taosMemoryFree
(
tmp
);
}
}
...
@@ -909,7 +909,7 @@ void extractQualifiedTupleByFilterResult(SSDataBlock* pBlock, const SColumnInfoD
...
@@ -909,7 +909,7 @@ void extractQualifiedTupleByFilterResult(SSDataBlock* pBlock, const SColumnInfoD
colDataSetNull_var
(
pDst
,
numOfRows
);
colDataSetNull_var
(
pDst
,
numOfRows
);
}
else
{
}
else
{
char
*
p1
=
colDataGetVarData
(
pDst
,
j
);
char
*
p1
=
colDataGetVarData
(
pDst
,
j
);
colData
Append
(
pDst
,
numOfRows
,
p1
,
false
);
colData
SetVal
(
pDst
,
numOfRows
,
p1
,
false
);
}
}
numOfRows
+=
1
;
numOfRows
+=
1
;
j
+=
1
;
j
+=
1
;
...
@@ -1104,7 +1104,7 @@ static void doCopyResultToDataBlock(SExprInfo* pExprInfo, int32_t numOfExprs, SR
...
@@ -1104,7 +1104,7 @@ static void doCopyResultToDataBlock(SExprInfo* pExprInfo, int32_t numOfExprs, SR
SColumnInfoData
*
pColInfoData
=
taosArrayGet
(
pBlock
->
pDataBlock
,
slotId
);
SColumnInfoData
*
pColInfoData
=
taosArrayGet
(
pBlock
->
pDataBlock
,
slotId
);
char
*
in
=
GET_ROWCELL_INTERBUF
(
pCtx
[
j
].
resultInfo
);
char
*
in
=
GET_ROWCELL_INTERBUF
(
pCtx
[
j
].
resultInfo
);
for
(
int32_t
k
=
0
;
k
<
pRow
->
numOfRows
;
++
k
)
{
for
(
int32_t
k
=
0
;
k
<
pRow
->
numOfRows
;
++
k
)
{
colData
Append
(
pColInfoData
,
pBlock
->
info
.
rows
+
k
,
in
,
pCtx
[
j
].
resultInfo
->
isNullRes
);
colData
SetVal
(
pColInfoData
,
pBlock
->
info
.
rows
+
k
,
in
,
pCtx
[
j
].
resultInfo
->
isNullRes
);
}
}
}
}
}
}
...
@@ -2667,7 +2667,7 @@ int32_t buildDataBlockFromGroupRes(SOperatorInfo* pOperator, SStreamState* pStat
...
@@ -2667,7 +2667,7 @@ int32_t buildDataBlockFromGroupRes(SOperatorInfo* pOperator, SStreamState* pStat
SColumnInfoData
*
pColInfoData
=
taosArrayGet
(
pBlock
->
pDataBlock
,
slotId
);
SColumnInfoData
*
pColInfoData
=
taosArrayGet
(
pBlock
->
pDataBlock
,
slotId
);
char
*
in
=
GET_ROWCELL_INTERBUF
(
pCtx
[
j
].
resultInfo
);
char
*
in
=
GET_ROWCELL_INTERBUF
(
pCtx
[
j
].
resultInfo
);
for
(
int32_t
k
=
0
;
k
<
pRow
->
numOfRows
;
++
k
)
{
for
(
int32_t
k
=
0
;
k
<
pRow
->
numOfRows
;
++
k
)
{
colData
Append
(
pColInfoData
,
pBlock
->
info
.
rows
+
k
,
in
,
pCtx
[
j
].
resultInfo
->
isNullRes
);
colData
SetVal
(
pColInfoData
,
pBlock
->
info
.
rows
+
k
,
in
,
pCtx
[
j
].
resultInfo
->
isNullRes
);
}
}
}
}
}
}
...
@@ -2760,7 +2760,7 @@ int32_t buildSessionResultDataBlock(SOperatorInfo* pOperator, SStreamState* pSta
...
@@ -2760,7 +2760,7 @@ int32_t buildSessionResultDataBlock(SOperatorInfo* pOperator, SStreamState* pSta
SColumnInfoData
*
pColInfoData
=
taosArrayGet
(
pBlock
->
pDataBlock
,
slotId
);
SColumnInfoData
*
pColInfoData
=
taosArrayGet
(
pBlock
->
pDataBlock
,
slotId
);
char
*
in
=
GET_ROWCELL_INTERBUF
(
pCtx
[
j
].
resultInfo
);
char
*
in
=
GET_ROWCELL_INTERBUF
(
pCtx
[
j
].
resultInfo
);
for
(
int32_t
k
=
0
;
k
<
pRow
->
numOfRows
;
++
k
)
{
for
(
int32_t
k
=
0
;
k
<
pRow
->
numOfRows
;
++
k
)
{
colData
Append
(
pColInfoData
,
pBlock
->
info
.
rows
+
k
,
in
,
pCtx
[
j
].
resultInfo
->
isNullRes
);
colData
SetVal
(
pColInfoData
,
pBlock
->
info
.
rows
+
k
,
in
,
pCtx
[
j
].
resultInfo
->
isNullRes
);
}
}
}
}
}
}
...
...
source/libs/executor/src/filloperator.c
浏览文件 @
8d187efc
...
@@ -411,7 +411,7 @@ TSKEY getPrevWindowTs(TSKEY ts, SInterval* pInterval) {
...
@@ -411,7 +411,7 @@ TSKEY getPrevWindowTs(TSKEY ts, SInterval* pInterval) {
}
}
void
setRowCell
(
SColumnInfoData
*
pCol
,
int32_t
rowId
,
const
SResultCellData
*
pCell
)
{
void
setRowCell
(
SColumnInfoData
*
pCol
,
int32_t
rowId
,
const
SResultCellData
*
pCell
)
{
colData
Append
(
pCol
,
rowId
,
pCell
->
pData
,
pCell
->
isNull
);
colData
SetVal
(
pCol
,
rowId
,
pCell
->
pData
,
pCell
->
isNull
);
}
}
SResultCellData
*
getResultCell
(
SResultRowData
*
pRaw
,
int32_t
index
)
{
SResultCellData
*
getResultCell
(
SResultRowData
*
pRaw
,
int32_t
index
)
{
...
@@ -905,7 +905,7 @@ static void doStreamFillLinear(SStreamFillSupporter* pFillSup, SStreamFillInfo*
...
@@ -905,7 +905,7 @@ static void doStreamFillLinear(SStreamFillSupporter* pFillSup, SStreamFillInfo*
}
}
}
else
{
}
else
{
if
(
IS_VAR_DATA_TYPE
(
type
)
||
type
==
TSDB_DATA_TYPE_BOOL
||
pCell
->
isNull
)
{
if
(
IS_VAR_DATA_TYPE
(
type
)
||
type
==
TSDB_DATA_TYPE_BOOL
||
pCell
->
isNull
)
{
colData
Append
NULL
(
pColData
,
index
);
colData
Set
NULL
(
pColData
,
index
);
continue
;
continue
;
}
}
double
*
pDelta
=
taosArrayGet
(
pFillInfo
->
pLinearInfo
->
pDeltaVal
,
slotId
);
double
*
pDelta
=
taosArrayGet
(
pFillInfo
->
pLinearInfo
->
pDeltaVal
,
slotId
);
...
@@ -914,7 +914,7 @@ static void doStreamFillLinear(SStreamFillSupporter* pFillSup, SStreamFillInfo*
...
@@ -914,7 +914,7 @@ static void doStreamFillLinear(SStreamFillSupporter* pFillSup, SStreamFillInfo*
vCell
+=
(
*
pDelta
)
*
pFillInfo
->
pLinearInfo
->
winIndex
;
vCell
+=
(
*
pDelta
)
*
pFillInfo
->
pLinearInfo
->
winIndex
;
int64_t
result
=
0
;
int64_t
result
=
0
;
SET_TYPED_DATA
(
&
result
,
pCell
->
type
,
vCell
);
SET_TYPED_DATA
(
&
result
,
pCell
->
type
,
vCell
);
colData
Append
(
pColData
,
index
,
(
const
char
*
)
&
result
,
false
);
colData
SetVal
(
pColData
,
index
,
(
const
char
*
)
&
result
,
false
);
}
}
}
}
pFillInfo
->
current
=
taosTimeAdd
(
pFillInfo
->
current
,
pFillSup
->
interval
.
sliding
,
pFillSup
->
interval
.
slidingUnit
,
pFillInfo
->
current
=
taosTimeAdd
(
pFillInfo
->
current
,
pFillSup
->
interval
.
sliding
,
pFillSup
->
interval
.
slidingUnit
,
...
@@ -1033,23 +1033,23 @@ static void buildDeleteRange(SOperatorInfo* pOp, TSKEY start, TSKEY end, uint64_
...
@@ -1033,23 +1033,23 @@ static void buildDeleteRange(SOperatorInfo* pOp, TSKEY start, TSKEY end, uint64_
SColumnInfoData
*
pCalStartCol
=
taosArrayGet
(
pBlock
->
pDataBlock
,
CALCULATE_START_TS_COLUMN_INDEX
);
SColumnInfoData
*
pCalStartCol
=
taosArrayGet
(
pBlock
->
pDataBlock
,
CALCULATE_START_TS_COLUMN_INDEX
);
SColumnInfoData
*
pCalEndCol
=
taosArrayGet
(
pBlock
->
pDataBlock
,
CALCULATE_END_TS_COLUMN_INDEX
);
SColumnInfoData
*
pCalEndCol
=
taosArrayGet
(
pBlock
->
pDataBlock
,
CALCULATE_END_TS_COLUMN_INDEX
);
SColumnInfoData
*
pTbNameCol
=
taosArrayGet
(
pBlock
->
pDataBlock
,
TABLE_NAME_COLUMN_INDEX
);
SColumnInfoData
*
pTbNameCol
=
taosArrayGet
(
pBlock
->
pDataBlock
,
TABLE_NAME_COLUMN_INDEX
);
colData
Append
(
pStartCol
,
pBlock
->
info
.
rows
,
(
const
char
*
)
&
start
,
false
);
colData
SetVal
(
pStartCol
,
pBlock
->
info
.
rows
,
(
const
char
*
)
&
start
,
false
);
colData
Append
(
pEndCol
,
pBlock
->
info
.
rows
,
(
const
char
*
)
&
end
,
false
);
colData
SetVal
(
pEndCol
,
pBlock
->
info
.
rows
,
(
const
char
*
)
&
end
,
false
);
colData
Append
NULL
(
pUidCol
,
pBlock
->
info
.
rows
);
colData
Set
NULL
(
pUidCol
,
pBlock
->
info
.
rows
);
colData
Append
(
pGroupCol
,
pBlock
->
info
.
rows
,
(
const
char
*
)
&
groupId
,
false
);
colData
SetVal
(
pGroupCol
,
pBlock
->
info
.
rows
,
(
const
char
*
)
&
groupId
,
false
);
colData
Append
NULL
(
pCalStartCol
,
pBlock
->
info
.
rows
);
colData
Set
NULL
(
pCalStartCol
,
pBlock
->
info
.
rows
);
colData
Append
NULL
(
pCalEndCol
,
pBlock
->
info
.
rows
);
colData
Set
NULL
(
pCalEndCol
,
pBlock
->
info
.
rows
);
SColumnInfoData
*
pTableCol
=
taosArrayGet
(
pBlock
->
pDataBlock
,
TABLE_NAME_COLUMN_INDEX
);
SColumnInfoData
*
pTableCol
=
taosArrayGet
(
pBlock
->
pDataBlock
,
TABLE_NAME_COLUMN_INDEX
);
void
*
tbname
=
NULL
;
void
*
tbname
=
NULL
;
streamStateGetParName
(
pOp
->
pTaskInfo
->
streamInfo
.
pState
,
groupId
,
&
tbname
);
streamStateGetParName
(
pOp
->
pTaskInfo
->
streamInfo
.
pState
,
groupId
,
&
tbname
);
if
(
tbname
==
NULL
)
{
if
(
tbname
==
NULL
)
{
colData
Append
NULL
(
pTableCol
,
pBlock
->
info
.
rows
);
colData
Set
NULL
(
pTableCol
,
pBlock
->
info
.
rows
);
}
else
{
}
else
{
char
parTbName
[
VARSTR_HEADER_SIZE
+
TSDB_TABLE_NAME_LEN
];
char
parTbName
[
VARSTR_HEADER_SIZE
+
TSDB_TABLE_NAME_LEN
];
STR_WITH_MAXSIZE_TO_VARSTR
(
parTbName
,
tbname
,
sizeof
(
parTbName
));
STR_WITH_MAXSIZE_TO_VARSTR
(
parTbName
,
tbname
,
sizeof
(
parTbName
));
colData
Append
(
pTableCol
,
pBlock
->
info
.
rows
,
(
const
char
*
)
parTbName
,
false
);
colData
SetVal
(
pTableCol
,
pBlock
->
info
.
rows
,
(
const
char
*
)
parTbName
,
false
);
tdbFree
(
tbname
);
tdbFree
(
tbname
);
}
}
...
...
source/libs/executor/src/groupoperator.c
浏览文件 @
8d187efc
...
@@ -957,7 +957,7 @@ static SSDataBlock* buildStreamPartitionResult(SOperatorInfo* pOperator) {
...
@@ -957,7 +957,7 @@ static SSDataBlock* buildStreamPartitionResult(SOperatorInfo* pOperator) {
SColumnInfoData
*
pDestCol
=
taosArrayGet
(
pDest
->
pDataBlock
,
j
);
SColumnInfoData
*
pDestCol
=
taosArrayGet
(
pDest
->
pDataBlock
,
j
);
bool
isNull
=
colDataIsNull
(
pSrcCol
,
pSrc
->
info
.
rows
,
rowIndex
,
NULL
);
bool
isNull
=
colDataIsNull
(
pSrcCol
,
pSrc
->
info
.
rows
,
rowIndex
,
NULL
);
char
*
pSrcData
=
colDataGetData
(
pSrcCol
,
rowIndex
);
char
*
pSrcData
=
colDataGetData
(
pSrcCol
,
rowIndex
);
colData
Append
(
pDestCol
,
pDest
->
info
.
rows
,
pSrcData
,
isNull
);
colData
SetVal
(
pDestCol
,
pDest
->
info
.
rows
,
pSrcData
,
isNull
);
}
}
pDest
->
info
.
rows
++
;
pDest
->
info
.
rows
++
;
if
(
pInfo
->
tbnameCalSup
.
numOfExprs
>
0
&&
i
==
0
)
{
if
(
pInfo
->
tbnameCalSup
.
numOfExprs
>
0
&&
i
==
0
)
{
...
...
source/libs/executor/src/joinoperator.c
浏览文件 @
8d187efc
...
@@ -199,7 +199,7 @@ static void mergeJoinJoinLeftRight(struct SOperatorInfo* pOperator, SSDataBlock*
...
@@ -199,7 +199,7 @@ static void mergeJoinJoinLeftRight(struct SOperatorInfo* pOperator, SSDataBlock*
colDataAppendNULL
(
pDst
,
currRow
);
colDataAppendNULL
(
pDst
,
currRow
);
}
else
{
}
else
{
char
*
p
=
colDataGetData
(
pSrc
,
rowIndex
);
char
*
p
=
colDataGetData
(
pSrc
,
rowIndex
);
colData
Append
(
pDst
,
currRow
,
p
,
false
);
colData
SetVal
(
pDst
,
currRow
,
p
,
false
);
}
}
}
}
}
}
...
...
source/libs/executor/src/projectoperator.c
浏览文件 @
8d187efc
...
@@ -623,9 +623,9 @@ SSDataBlock* doGenerateSourceData(SOperatorInfo* pOperator) {
...
@@ -623,9 +623,9 @@ SSDataBlock* doGenerateSourceData(SOperatorInfo* pOperator) {
int32_t
type
=
pExpr
[
k
].
base
.
pParam
[
0
].
param
.
nType
;
int32_t
type
=
pExpr
[
k
].
base
.
pParam
[
0
].
param
.
nType
;
if
(
TSDB_DATA_TYPE_NULL
==
type
)
{
if
(
TSDB_DATA_TYPE_NULL
==
type
)
{
colData
Append
NNULL
(
pColInfoData
,
0
,
1
);
colData
Set
NNULL
(
pColInfoData
,
0
,
1
);
}
else
{
}
else
{
colData
Append
(
pColInfoData
,
0
,
taosVariantGet
(
&
pExpr
[
k
].
base
.
pParam
[
0
].
param
,
type
),
false
);
colData
SetVal
(
pColInfoData
,
0
,
taosVariantGet
(
&
pExpr
[
k
].
base
.
pParam
[
0
].
param
,
type
),
false
);
}
}
}
}
...
@@ -665,9 +665,9 @@ int32_t projectApplyFunctions(SExprInfo* pExpr, SSDataBlock* pResult, SSDataBloc
...
@@ -665,9 +665,9 @@ int32_t projectApplyFunctions(SExprInfo* pExpr, SSDataBlock* pResult, SSDataBloc
int32_t
type
=
pExpr
[
k
].
base
.
pParam
[
0
].
param
.
nType
;
int32_t
type
=
pExpr
[
k
].
base
.
pParam
[
0
].
param
.
nType
;
if
(
TSDB_DATA_TYPE_NULL
==
type
)
{
if
(
TSDB_DATA_TYPE_NULL
==
type
)
{
colData
Append
NNULL
(
pColInfoData
,
0
,
1
);
colData
Set
NNULL
(
pColInfoData
,
0
,
1
);
}
else
{
}
else
{
colData
Append
(
pColInfoData
,
0
,
taosVariantGet
(
&
pExpr
[
k
].
base
.
pParam
[
0
].
param
,
type
),
false
);
colData
SetVal
(
pColInfoData
,
0
,
taosVariantGet
(
&
pExpr
[
k
].
base
.
pParam
[
0
].
param
,
type
),
false
);
}
}
}
}
...
@@ -728,11 +728,11 @@ int32_t projectApplyFunctions(SExprInfo* pExpr, SSDataBlock* pResult, SSDataBloc
...
@@ -728,11 +728,11 @@ int32_t projectApplyFunctions(SExprInfo* pExpr, SSDataBlock* pResult, SSDataBloc
int32_t
type
=
pExpr
[
k
].
base
.
pParam
[
0
].
param
.
nType
;
int32_t
type
=
pExpr
[
k
].
base
.
pParam
[
0
].
param
.
nType
;
if
(
TSDB_DATA_TYPE_NULL
==
type
)
{
if
(
TSDB_DATA_TYPE_NULL
==
type
)
{
colData
Append
NNULL
(
pColInfoData
,
offset
,
pSrcBlock
->
info
.
rows
);
colData
Set
NNULL
(
pColInfoData
,
offset
,
pSrcBlock
->
info
.
rows
);
}
else
{
}
else
{
char
*
p
=
taosVariantGet
(
&
pExpr
[
k
].
base
.
pParam
[
0
].
param
,
type
);
char
*
p
=
taosVariantGet
(
&
pExpr
[
k
].
base
.
pParam
[
0
].
param
,
type
);
for
(
int32_t
i
=
0
;
i
<
pSrcBlock
->
info
.
rows
;
++
i
)
{
for
(
int32_t
i
=
0
;
i
<
pSrcBlock
->
info
.
rows
;
++
i
)
{
colData
Append
(
pColInfoData
,
i
+
offset
,
p
,
false
);
colData
SetVal
(
pColInfoData
,
i
+
offset
,
p
,
false
);
}
}
}
}
...
@@ -800,10 +800,10 @@ int32_t projectApplyFunctions(SExprInfo* pExpr, SSDataBlock* pResult, SSDataBloc
...
@@ -800,10 +800,10 @@ int32_t projectApplyFunctions(SExprInfo* pExpr, SSDataBlock* pResult, SSDataBloc
for
(
int32_t
f
=
0
;
f
<
pSrcBlock
->
info
.
rows
;
++
f
)
{
for
(
int32_t
f
=
0
;
f
<
pSrcBlock
->
info
.
rows
;
++
f
)
{
bool
isNull
=
colDataIsNull_s
(
pInput
,
f
);
bool
isNull
=
colDataIsNull_s
(
pInput
,
f
);
if
(
isNull
)
{
if
(
isNull
)
{
colData
Append
NULL
(
pOutput
,
pResult
->
info
.
rows
+
f
);
colData
Set
NULL
(
pOutput
,
pResult
->
info
.
rows
+
f
);
}
else
{
}
else
{
char
*
data
=
colDataGetData
(
pInput
,
f
);
char
*
data
=
colDataGetData
(
pInput
,
f
);
colData
Append
(
pOutput
,
pResult
->
info
.
rows
+
f
,
data
,
isNull
);
colData
SetVal
(
pOutput
,
pResult
->
info
.
rows
+
f
,
data
,
isNull
);
}
}
}
}
...
...
source/libs/executor/src/scanoperator.c
浏览文件 @
8d187efc
...
@@ -267,7 +267,7 @@ bool applyLimitOffset(SLimitInfo* pLimitInfo, SSDataBlock* pBlock, SExecTaskInfo
...
@@ -267,7 +267,7 @@ bool applyLimitOffset(SLimitInfo* pLimitInfo, SSDataBlock* pBlock, SExecTaskInfo
qDebug
(
"current block ignore due to offset, current:%"
PRId64
", %s"
,
pLimitInfo
->
remainOffset
,
id
);
qDebug
(
"current block ignore due to offset, current:%"
PRId64
", %s"
,
pLimitInfo
->
remainOffset
,
id
);
return
false
;
return
false
;
}
else
{
}
else
{
blockDataTrimFirst
N
Rows
(
pBlock
,
pLimitInfo
->
remainOffset
);
blockDataTrimFirstRows
(
pBlock
,
pLimitInfo
->
remainOffset
);
pLimitInfo
->
remainOffset
=
0
;
pLimitInfo
->
remainOffset
=
0
;
}
}
}
}
...
@@ -452,7 +452,7 @@ static void doSetNullValue(SSDataBlock* pBlock, const SExprInfo* pExpr, int32_t
...
@@ -452,7 +452,7 @@ static void doSetNullValue(SSDataBlock* pBlock, const SExprInfo* pExpr, int32_t
int32_t
dstSlotId
=
pExpr
[
j
].
base
.
resSchema
.
slotId
;
int32_t
dstSlotId
=
pExpr
[
j
].
base
.
resSchema
.
slotId
;
SColumnInfoData
*
pColInfoData
=
taosArrayGet
(
pBlock
->
pDataBlock
,
dstSlotId
);
SColumnInfoData
*
pColInfoData
=
taosArrayGet
(
pBlock
->
pDataBlock
,
dstSlotId
);
colData
Append
NNULL
(
pColInfoData
,
0
,
pBlock
->
info
.
rows
);
colData
Set
NNULL
(
pColInfoData
,
0
,
pBlock
->
info
.
rows
);
}
}
}
}
...
@@ -577,15 +577,15 @@ int32_t addTagPseudoColumnData(SReadHandle* pHandle, const SExprInfo* pExpr, int
...
@@ -577,15 +577,15 @@ int32_t addTagPseudoColumnData(SReadHandle* pHandle, const SExprInfo* pExpr, int
bool
isNullVal
=
(
data
==
NULL
)
||
(
pColInfoData
->
info
.
type
==
TSDB_DATA_TYPE_JSON
&&
tTagIsJsonNull
(
data
));
bool
isNullVal
=
(
data
==
NULL
)
||
(
pColInfoData
->
info
.
type
==
TSDB_DATA_TYPE_JSON
&&
tTagIsJsonNull
(
data
));
if
(
isNullVal
)
{
if
(
isNullVal
)
{
colData
Append
NNULL
(
pColInfoData
,
0
,
pBlock
->
info
.
rows
);
colData
Set
NNULL
(
pColInfoData
,
0
,
pBlock
->
info
.
rows
);
}
else
if
(
pColInfoData
->
info
.
type
!=
TSDB_DATA_TYPE_JSON
)
{
}
else
if
(
pColInfoData
->
info
.
type
!=
TSDB_DATA_TYPE_JSON
)
{
colData
Append
NItems
(
pColInfoData
,
0
,
data
,
pBlock
->
info
.
rows
);
colData
Set
NItems
(
pColInfoData
,
0
,
data
,
pBlock
->
info
.
rows
);
if
(
IS_VAR_DATA_TYPE
(((
const
STagVal
*
)
p
)
->
type
))
{
if
(
IS_VAR_DATA_TYPE
(((
const
STagVal
*
)
p
)
->
type
))
{
taosMemoryFree
(
data
);
taosMemoryFree
(
data
);
}
}
}
else
{
// todo opt for json tag
}
else
{
// todo opt for json tag
for
(
int32_t
i
=
0
;
i
<
pBlock
->
info
.
rows
;
++
i
)
{
for
(
int32_t
i
=
0
;
i
<
pBlock
->
info
.
rows
;
++
i
)
{
colData
Append
(
pColInfoData
,
i
,
data
,
false
);
colData
SetVal
(
pColInfoData
,
i
,
data
,
false
);
}
}
}
}
}
}
...
@@ -611,7 +611,7 @@ void setTbNameColData(const SSDataBlock* pBlock, SColumnInfoData* pColInfoData,
...
@@ -611,7 +611,7 @@ void setTbNameColData(const SSDataBlock* pBlock, SColumnInfoData* pColInfoData,
SColumnInfoData
infoData
=
createColumnInfoData
(
TSDB_DATA_TYPE_VARCHAR
,
len
,
1
);
SColumnInfoData
infoData
=
createColumnInfoData
(
TSDB_DATA_TYPE_VARCHAR
,
len
,
1
);
colInfoDataEnsureCapacity
(
&
infoData
,
1
,
false
);
colInfoDataEnsureCapacity
(
&
infoData
,
1
,
false
);
colData
Append
(
&
infoData
,
0
,
buf
,
false
);
colData
SetVal
(
&
infoData
,
0
,
buf
,
false
);
SScalarParam
srcParam
=
{.
numOfRows
=
pBlock
->
info
.
rows
,
.
columnData
=
&
infoData
};
SScalarParam
srcParam
=
{.
numOfRows
=
pBlock
->
info
.
rows
,
.
columnData
=
&
infoData
};
SScalarParam
param
=
{.
columnData
=
pColInfoData
};
SScalarParam
param
=
{.
columnData
=
pColInfoData
};
...
@@ -1156,7 +1156,7 @@ static SSDataBlock* doRangeScan(SStreamScanInfo* pInfo, SSDataBlock* pSDB, int32
...
@@ -1156,7 +1156,7 @@ static SSDataBlock* doRangeScan(SStreamScanInfo* pInfo, SSDataBlock* pSDB, int32
SColumnInfoData
*
pDestCol
=
taosArrayGet
(
pResult
->
pDataBlock
,
j
);
SColumnInfoData
*
pDestCol
=
taosArrayGet
(
pResult
->
pDataBlock
,
j
);
bool
isNull
=
colDataIsNull
(
pSrcCol
,
tmpBlock
->
info
.
rows
,
i
,
NULL
);
bool
isNull
=
colDataIsNull
(
pSrcCol
,
tmpBlock
->
info
.
rows
,
i
,
NULL
);
char
*
pSrcData
=
colDataGetData
(
pSrcCol
,
i
);
char
*
pSrcData
=
colDataGetData
(
pSrcCol
,
i
);
colData
Append
(
pDestCol
,
pResult
->
info
.
rows
,
pSrcData
,
isNull
);
colData
SetVal
(
pDestCol
,
pResult
->
info
.
rows
,
pSrcData
,
isNull
);
}
}
pResult
->
info
.
rows
++
;
pResult
->
info
.
rows
++
;
}
}
...
@@ -1232,11 +1232,11 @@ static int32_t generateSessionScanRange(SStreamScanInfo* pInfo, SSDataBlock* pSr
...
@@ -1232,11 +1232,11 @@ static int32_t generateSessionScanRange(SStreamScanInfo* pInfo, SSDataBlock* pSr
qError
(
"generate session scan range failed. rang start:%"
PRIx64
", end:%"
PRIx64
,
startData
[
i
],
endData
[
i
]);
qError
(
"generate session scan range failed. rang start:%"
PRIx64
", end:%"
PRIx64
,
startData
[
i
],
endData
[
i
]);
continue
;
continue
;
}
}
colData
Append
(
pDestStartCol
,
i
,
(
const
char
*
)
&
startWin
.
win
.
skey
,
false
);
colData
SetVal
(
pDestStartCol
,
i
,
(
const
char
*
)
&
startWin
.
win
.
skey
,
false
);
colData
Append
(
pDestEndCol
,
i
,
(
const
char
*
)
&
endWin
.
win
.
ekey
,
false
);
colData
SetVal
(
pDestEndCol
,
i
,
(
const
char
*
)
&
endWin
.
win
.
ekey
,
false
);
colDataAppendNULL
(
pDestUidCol
,
i
);
colDataAppendNULL
(
pDestUidCol
,
i
);
colData
Append
(
pDestGpCol
,
i
,
(
const
char
*
)
&
groupId
,
false
);
colData
SetVal
(
pDestGpCol
,
i
,
(
const
char
*
)
&
groupId
,
false
);
colDataAppendNULL
(
pDestCalStartTsCol
,
i
);
colDataAppendNULL
(
pDestCalStartTsCol
,
i
);
colDataAppendNULL
(
pDestCalEndTsCol
,
i
);
colDataAppendNULL
(
pDestCalEndTsCol
,
i
);
pDestBlock
->
info
.
rows
++
;
pDestBlock
->
info
.
rows
++
;
...
@@ -1307,15 +1307,15 @@ static int32_t generateIntervalScanRange(SStreamScanInfo* pInfo, SSDataBlock* pS
...
@@ -1307,15 +1307,15 @@ static int32_t generateIntervalScanRange(SStreamScanInfo* pInfo, SSDataBlock* pS
groupId
=
getGroupIdByData
(
pInfo
,
srcUid
,
srcStartTsCol
[
i
],
version
);
groupId
=
getGroupIdByData
(
pInfo
,
srcUid
,
srcStartTsCol
[
i
],
version
);
}
}
TSKEY
calStartTs
=
srcStartTsCol
[
i
];
TSKEY
calStartTs
=
srcStartTsCol
[
i
];
colData
Append
(
pCalStartTsCol
,
pDestBlock
->
info
.
rows
,
(
const
char
*
)(
&
calStartTs
),
false
);
colData
SetVal
(
pCalStartTsCol
,
pDestBlock
->
info
.
rows
,
(
const
char
*
)(
&
calStartTs
),
false
);
STimeWindow
win
=
getSlidingWindow
(
srcStartTsCol
,
srcEndTsCol
,
srcGp
,
&
pInfo
->
interval
,
&
pSrcBlock
->
info
,
&
i
,
STimeWindow
win
=
getSlidingWindow
(
srcStartTsCol
,
srcEndTsCol
,
srcGp
,
&
pInfo
->
interval
,
&
pSrcBlock
->
info
,
&
i
,
pInfo
->
partitionSup
.
needCalc
);
pInfo
->
partitionSup
.
needCalc
);
TSKEY
calEndTs
=
srcStartTsCol
[
i
-
1
];
TSKEY
calEndTs
=
srcStartTsCol
[
i
-
1
];
colData
Append
(
pCalEndTsCol
,
pDestBlock
->
info
.
rows
,
(
const
char
*
)(
&
calEndTs
),
false
);
colData
SetVal
(
pCalEndTsCol
,
pDestBlock
->
info
.
rows
,
(
const
char
*
)(
&
calEndTs
),
false
);
colData
Append
(
pDeUidCol
,
pDestBlock
->
info
.
rows
,
(
const
char
*
)(
&
srcUid
),
false
);
colData
SetVal
(
pDeUidCol
,
pDestBlock
->
info
.
rows
,
(
const
char
*
)(
&
srcUid
),
false
);
colData
Append
(
pStartTsCol
,
pDestBlock
->
info
.
rows
,
(
const
char
*
)(
&
win
.
skey
),
false
);
colData
SetVal
(
pStartTsCol
,
pDestBlock
->
info
.
rows
,
(
const
char
*
)(
&
win
.
skey
),
false
);
colData
Append
(
pEndTsCol
,
pDestBlock
->
info
.
rows
,
(
const
char
*
)(
&
win
.
ekey
),
false
);
colData
SetVal
(
pEndTsCol
,
pDestBlock
->
info
.
rows
,
(
const
char
*
)(
&
win
.
ekey
),
false
);
colData
Append
(
pGpCol
,
pDestBlock
->
info
.
rows
,
(
const
char
*
)(
&
groupId
),
false
);
colData
SetVal
(
pGpCol
,
pDestBlock
->
info
.
rows
,
(
const
char
*
)(
&
groupId
),
false
);
pDestBlock
->
info
.
rows
++
;
pDestBlock
->
info
.
rows
++
;
}
}
return
TSDB_CODE_SUCCESS
;
return
TSDB_CODE_SUCCESS
;
...
@@ -1436,13 +1436,13 @@ void appendOneRowToStreamSpecialBlock(SSDataBlock* pBlock, TSKEY* pStartTs, TSKE
...
@@ -1436,13 +1436,13 @@ void appendOneRowToStreamSpecialBlock(SSDataBlock* pBlock, TSKEY* pStartTs, TSKE
SColumnInfoData
*
pCalStartCol
=
taosArrayGet
(
pBlock
->
pDataBlock
,
CALCULATE_START_TS_COLUMN_INDEX
);
SColumnInfoData
*
pCalStartCol
=
taosArrayGet
(
pBlock
->
pDataBlock
,
CALCULATE_START_TS_COLUMN_INDEX
);
SColumnInfoData
*
pCalEndCol
=
taosArrayGet
(
pBlock
->
pDataBlock
,
CALCULATE_END_TS_COLUMN_INDEX
);
SColumnInfoData
*
pCalEndCol
=
taosArrayGet
(
pBlock
->
pDataBlock
,
CALCULATE_END_TS_COLUMN_INDEX
);
SColumnInfoData
*
pTableCol
=
taosArrayGet
(
pBlock
->
pDataBlock
,
TABLE_NAME_COLUMN_INDEX
);
SColumnInfoData
*
pTableCol
=
taosArrayGet
(
pBlock
->
pDataBlock
,
TABLE_NAME_COLUMN_INDEX
);
colData
Append
(
pStartTsCol
,
pBlock
->
info
.
rows
,
(
const
char
*
)
pStartTs
,
false
);
colData
SetVal
(
pStartTsCol
,
pBlock
->
info
.
rows
,
(
const
char
*
)
pStartTs
,
false
);
colData
Append
(
pEndTsCol
,
pBlock
->
info
.
rows
,
(
const
char
*
)
pEndTs
,
false
);
colData
SetVal
(
pEndTsCol
,
pBlock
->
info
.
rows
,
(
const
char
*
)
pEndTs
,
false
);
colData
Append
(
pUidCol
,
pBlock
->
info
.
rows
,
(
const
char
*
)
pUid
,
false
);
colData
SetVal
(
pUidCol
,
pBlock
->
info
.
rows
,
(
const
char
*
)
pUid
,
false
);
colData
Append
(
pGpCol
,
pBlock
->
info
.
rows
,
(
const
char
*
)
pGp
,
false
);
colData
SetVal
(
pGpCol
,
pBlock
->
info
.
rows
,
(
const
char
*
)
pGp
,
false
);
colData
Append
(
pCalStartCol
,
pBlock
->
info
.
rows
,
(
const
char
*
)
pStartTs
,
false
);
colData
SetVal
(
pCalStartCol
,
pBlock
->
info
.
rows
,
(
const
char
*
)
pStartTs
,
false
);
colData
Append
(
pCalEndCol
,
pBlock
->
info
.
rows
,
(
const
char
*
)
pEndTs
,
false
);
colData
SetVal
(
pCalEndCol
,
pBlock
->
info
.
rows
,
(
const
char
*
)
pEndTs
,
false
);
colData
Append
(
pTableCol
,
pBlock
->
info
.
rows
,
(
const
char
*
)
pTbName
,
pTbName
==
NULL
);
colData
SetVal
(
pTableCol
,
pBlock
->
info
.
rows
,
(
const
char
*
)
pTbName
,
pTbName
==
NULL
);
pBlock
->
info
.
rows
++
;
pBlock
->
info
.
rows
++
;
}
}
...
@@ -1529,7 +1529,7 @@ static int32_t setBlockIntoRes(SStreamScanInfo* pInfo, const SSDataBlock* pBlock
...
@@ -1529,7 +1529,7 @@ static int32_t setBlockIntoRes(SStreamScanInfo* pInfo, const SSDataBlock* pBlock
// the required column does not exists in submit block, let's set it to be all null value
// the required column does not exists in submit block, let's set it to be all null value
if
(
!
colExists
)
{
if
(
!
colExists
)
{
SColumnInfoData
*
pDst
=
taosArrayGet
(
pInfo
->
pRes
->
pDataBlock
,
pColMatchInfo
->
dstSlotId
);
SColumnInfoData
*
pDst
=
taosArrayGet
(
pInfo
->
pRes
->
pDataBlock
,
pColMatchInfo
->
dstSlotId
);
colData
Append
NNULL
(
pDst
,
0
,
pBlockInfo
->
rows
);
colData
Set
NNULL
(
pDst
,
0
,
pBlockInfo
->
rows
);
}
}
}
}
...
@@ -1691,9 +1691,9 @@ static int32_t filterDelBlockByUid(SSDataBlock* pDst, const SSDataBlock* pSrc, S
...
@@ -1691,9 +1691,9 @@ static int32_t filterDelBlockByUid(SSDataBlock* pDst, const SSDataBlock* pSrc, S
int32_t
j
=
0
;
int32_t
j
=
0
;
for
(
int32_t
i
=
0
;
i
<
rows
;
i
++
)
{
for
(
int32_t
i
=
0
;
i
<
rows
;
i
++
)
{
if
(
taosHashGet
(
pReader
->
tbIdHash
,
&
uidCol
[
i
],
sizeof
(
uint64_t
)))
{
if
(
taosHashGet
(
pReader
->
tbIdHash
,
&
uidCol
[
i
],
sizeof
(
uint64_t
)))
{
colData
Append
(
pDstStartCol
,
j
,
(
const
char
*
)
&
startCol
[
i
],
false
);
colData
SetVal
(
pDstStartCol
,
j
,
(
const
char
*
)
&
startCol
[
i
],
false
);
colData
Append
(
pDstEndCol
,
j
,
(
const
char
*
)
&
endCol
[
i
],
false
);
colData
SetVal
(
pDstEndCol
,
j
,
(
const
char
*
)
&
endCol
[
i
],
false
);
colData
Append
(
pDstUidCol
,
j
,
(
const
char
*
)
&
uidCol
[
i
],
false
);
colData
SetVal
(
pDstUidCol
,
j
,
(
const
char
*
)
&
uidCol
[
i
],
false
);
colDataAppendNULL
(
taosArrayGet
(
pDst
->
pDataBlock
,
GROUPID_COLUMN_INDEX
),
j
);
colDataAppendNULL
(
taosArrayGet
(
pDst
->
pDataBlock
,
GROUPID_COLUMN_INDEX
),
j
);
colDataAppendNULL
(
taosArrayGet
(
pDst
->
pDataBlock
,
CALCULATE_START_TS_COLUMN_INDEX
),
j
);
colDataAppendNULL
(
taosArrayGet
(
pDst
->
pDataBlock
,
CALCULATE_START_TS_COLUMN_INDEX
),
j
);
...
@@ -1721,7 +1721,7 @@ static void setBlockGroupIdByUid(SStreamScanInfo* pInfo, SSDataBlock* pBlock) {
...
@@ -1721,7 +1721,7 @@ static void setBlockGroupIdByUid(SStreamScanInfo* pInfo, SSDataBlock* pBlock) {
if
(
!
pInfo
->
partitionSup
.
needCalc
)
{
if
(
!
pInfo
->
partitionSup
.
needCalc
)
{
for
(
int32_t
i
=
0
;
i
<
rows
;
i
++
)
{
for
(
int32_t
i
=
0
;
i
<
rows
;
i
++
)
{
uint64_t
groupId
=
getGroupIdByUid
(
pInfo
,
uidCol
[
i
]);
uint64_t
groupId
=
getGroupIdByUid
(
pInfo
,
uidCol
[
i
]);
colData
Append
(
pGpCol
,
i
,
(
const
char
*
)
&
groupId
,
false
);
colData
SetVal
(
pGpCol
,
i
,
(
const
char
*
)
&
groupId
,
false
);
}
}
}
}
}
}
...
@@ -2432,7 +2432,7 @@ static SSDataBlock* doTagScan(SOperatorInfo* pOperator) {
...
@@ -2432,7 +2432,7 @@ static SSDataBlock* doTagScan(SOperatorInfo* pOperator) {
// refactor later
// refactor later
if
(
fmIsScanPseudoColumnFunc
(
pExprInfo
[
j
].
pExpr
->
_function
.
functionId
))
{
if
(
fmIsScanPseudoColumnFunc
(
pExprInfo
[
j
].
pExpr
->
_function
.
functionId
))
{
STR_TO_VARSTR
(
str
,
mr
.
me
.
name
);
STR_TO_VARSTR
(
str
,
mr
.
me
.
name
);
colData
Append
(
pDst
,
count
,
str
,
false
);
colData
SetVal
(
pDst
,
count
,
str
,
false
);
}
else
{
// it is a tag value
}
else
{
// it is a tag value
STagVal
val
=
{
0
};
STagVal
val
=
{
0
};
val
.
cid
=
pExprInfo
[
j
].
base
.
pParam
[
0
].
pCol
->
colId
;
val
.
cid
=
pExprInfo
[
j
].
base
.
pParam
[
0
].
pCol
->
colId
;
...
@@ -2444,7 +2444,7 @@ static SSDataBlock* doTagScan(SOperatorInfo* pOperator) {
...
@@ -2444,7 +2444,7 @@ static SSDataBlock* doTagScan(SOperatorInfo* pOperator) {
}
else
{
}
else
{
data
=
(
char
*
)
p
;
data
=
(
char
*
)
p
;
}
}
colData
Append
(
pDst
,
count
,
data
,
colData
SetVal
(
pDst
,
count
,
data
,
(
data
==
NULL
)
||
(
pDst
->
info
.
type
==
TSDB_DATA_TYPE_JSON
&&
tTagIsJsonNull
(
data
)));
(
data
==
NULL
)
||
(
pDst
->
info
.
type
==
TSDB_DATA_TYPE_JSON
&&
tTagIsJsonNull
(
data
)));
if
(
pDst
->
info
.
type
!=
TSDB_DATA_TYPE_JSON
&&
p
!=
NULL
&&
IS_VAR_DATA_TYPE
(((
const
STagVal
*
)
p
)
->
type
)
&&
if
(
pDst
->
info
.
type
!=
TSDB_DATA_TYPE_JSON
&&
p
!=
NULL
&&
IS_VAR_DATA_TYPE
(((
const
STagVal
*
)
p
)
->
type
)
&&
...
@@ -3098,7 +3098,7 @@ void fillTableCountScanDataBlock(STableCountScanSupp* pSupp, char* dbName, char*
...
@@ -3098,7 +3098,7 @@ void fillTableCountScanDataBlock(STableCountScanSupp* pSupp, char* dbName, char*
tstrncpy
(
varDataVal
(
varDbName
),
dbName
,
TSDB_DB_NAME_LEN
);
tstrncpy
(
varDataVal
(
varDbName
),
dbName
,
TSDB_DB_NAME_LEN
);
varDataSetLen
(
varDbName
,
strlen
(
dbName
));
varDataSetLen
(
varDbName
,
strlen
(
dbName
));
colData
Append
(
colInfoData
,
0
,
varDbName
,
false
);
colData
SetVal
(
colInfoData
,
0
,
varDbName
,
false
);
}
}
if
(
pSupp
->
stbNameSlotId
!=
-
1
)
{
if
(
pSupp
->
stbNameSlotId
!=
-
1
)
{
...
@@ -3107,7 +3107,7 @@ void fillTableCountScanDataBlock(STableCountScanSupp* pSupp, char* dbName, char*
...
@@ -3107,7 +3107,7 @@ void fillTableCountScanDataBlock(STableCountScanSupp* pSupp, char* dbName, char*
char
varStbName
[
TSDB_TABLE_NAME_LEN
+
VARSTR_HEADER_SIZE
]
=
{
0
};
char
varStbName
[
TSDB_TABLE_NAME_LEN
+
VARSTR_HEADER_SIZE
]
=
{
0
};
strncpy
(
varDataVal
(
varStbName
),
stbName
,
TSDB_TABLE_NAME_LEN
);
strncpy
(
varDataVal
(
varStbName
),
stbName
,
TSDB_TABLE_NAME_LEN
);
varDataSetLen
(
varStbName
,
strlen
(
stbName
));
varDataSetLen
(
varStbName
,
strlen
(
stbName
));
colData
Append
(
colInfoData
,
0
,
varStbName
,
false
);
colData
SetVal
(
colInfoData
,
0
,
varStbName
,
false
);
}
else
{
}
else
{
colDataAppendNULL
(
colInfoData
,
0
);
colDataAppendNULL
(
colInfoData
,
0
);
}
}
...
@@ -3115,7 +3115,7 @@ void fillTableCountScanDataBlock(STableCountScanSupp* pSupp, char* dbName, char*
...
@@ -3115,7 +3115,7 @@ void fillTableCountScanDataBlock(STableCountScanSupp* pSupp, char* dbName, char*
if
(
pSupp
->
tbCountSlotId
!=
-
1
)
{
if
(
pSupp
->
tbCountSlotId
!=
-
1
)
{
SColumnInfoData
*
colInfoData
=
taosArrayGet
(
pRes
->
pDataBlock
,
pSupp
->
tbCountSlotId
);
SColumnInfoData
*
colInfoData
=
taosArrayGet
(
pRes
->
pDataBlock
,
pSupp
->
tbCountSlotId
);
colData
Append
(
colInfoData
,
0
,
(
char
*
)
&
count
,
false
);
colData
SetVal
(
colInfoData
,
0
,
(
char
*
)
&
count
,
false
);
}
}
pRes
->
info
.
rows
=
1
;
pRes
->
info
.
rows
=
1
;
}
}
...
...
source/libs/executor/src/sortoperator.c
浏览文件 @
8d187efc
...
@@ -105,7 +105,7 @@ void appendOneRowToDataBlock(SSDataBlock* pBlock, STupleHandle* pTupleHandle) {
...
@@ -105,7 +105,7 @@ void appendOneRowToDataBlock(SSDataBlock* pBlock, STupleHandle* pTupleHandle) {
}
else
{
}
else
{
char
*
pData
=
tsortGetValue
(
pTupleHandle
,
i
);
char
*
pData
=
tsortGetValue
(
pTupleHandle
,
i
);
if
(
pData
!=
NULL
)
{
if
(
pData
!=
NULL
)
{
colData
Append
(
pColInfo
,
pBlock
->
info
.
rows
,
pData
,
false
);
colData
SetVal
(
pColInfo
,
pBlock
->
info
.
rows
,
pData
,
false
);
}
}
}
}
}
}
...
...
source/libs/executor/src/sysscanoperator.c
浏览文件 @
8d187efc
...
@@ -654,21 +654,21 @@ static int32_t sysTableUserTagsFillOneTableTags(const SSysTableScanInfo* pInfo,
...
@@ -654,21 +654,21 @@ static int32_t sysTableUserTagsFillOneTableTags(const SSysTableScanInfo* pInfo,
// table name
// table name
pColInfoData
=
taosArrayGet
(
dataBlock
->
pDataBlock
,
0
);
pColInfoData
=
taosArrayGet
(
dataBlock
->
pDataBlock
,
0
);
colData
Append
(
pColInfoData
,
numOfRows
,
tableName
,
false
);
colData
SetVal
(
pColInfoData
,
numOfRows
,
tableName
,
false
);
// database name
// database name
pColInfoData
=
taosArrayGet
(
dataBlock
->
pDataBlock
,
1
);
pColInfoData
=
taosArrayGet
(
dataBlock
->
pDataBlock
,
1
);
colData
Append
(
pColInfoData
,
numOfRows
,
dbname
,
false
);
colData
SetVal
(
pColInfoData
,
numOfRows
,
dbname
,
false
);
// super table name
// super table name
pColInfoData
=
taosArrayGet
(
dataBlock
->
pDataBlock
,
2
);
pColInfoData
=
taosArrayGet
(
dataBlock
->
pDataBlock
,
2
);
colData
Append
(
pColInfoData
,
numOfRows
,
stableName
,
false
);
colData
SetVal
(
pColInfoData
,
numOfRows
,
stableName
,
false
);
// tag name
// tag name
char
tagName
[
TSDB_COL_NAME_LEN
+
VARSTR_HEADER_SIZE
]
=
{
0
};
char
tagName
[
TSDB_COL_NAME_LEN
+
VARSTR_HEADER_SIZE
]
=
{
0
};
STR_TO_VARSTR
(
tagName
,
(
*
smrSuperTable
).
me
.
stbEntry
.
schemaTag
.
pSchema
[
i
].
name
);
STR_TO_VARSTR
(
tagName
,
(
*
smrSuperTable
).
me
.
stbEntry
.
schemaTag
.
pSchema
[
i
].
name
);
pColInfoData
=
taosArrayGet
(
dataBlock
->
pDataBlock
,
3
);
pColInfoData
=
taosArrayGet
(
dataBlock
->
pDataBlock
,
3
);
colData
Append
(
pColInfoData
,
numOfRows
,
tagName
,
false
);
colData
SetVal
(
pColInfoData
,
numOfRows
,
tagName
,
false
);
// tag type
// tag type
int8_t
tagType
=
(
*
smrSuperTable
).
me
.
stbEntry
.
schemaTag
.
pSchema
[
i
].
type
;
int8_t
tagType
=
(
*
smrSuperTable
).
me
.
stbEntry
.
schemaTag
.
pSchema
[
i
].
type
;
...
@@ -684,7 +684,7 @@ static int32_t sysTableUserTagsFillOneTableTags(const SSysTableScanInfo* pInfo,
...
@@ -684,7 +684,7 @@ static int32_t sysTableUserTagsFillOneTableTags(const SSysTableScanInfo* pInfo,
(
int32_t
)(((
*
smrSuperTable
).
me
.
stbEntry
.
schemaTag
.
pSchema
[
i
].
bytes
-
VARSTR_HEADER_SIZE
)
/
TSDB_NCHAR_SIZE
));
(
int32_t
)(((
*
smrSuperTable
).
me
.
stbEntry
.
schemaTag
.
pSchema
[
i
].
bytes
-
VARSTR_HEADER_SIZE
)
/
TSDB_NCHAR_SIZE
));
}
}
varDataSetLen
(
tagTypeStr
,
tagTypeLen
);
varDataSetLen
(
tagTypeStr
,
tagTypeLen
);
colData
Append
(
pColInfoData
,
numOfRows
,
(
char
*
)
tagTypeStr
,
false
);
colData
SetVal
(
pColInfoData
,
numOfRows
,
(
char
*
)
tagTypeStr
,
false
);
STagVal
tagVal
=
{
0
};
STagVal
tagVal
=
{
0
};
tagVal
.
cid
=
(
*
smrSuperTable
).
me
.
stbEntry
.
schemaTag
.
pSchema
[
i
].
colId
;
tagVal
.
cid
=
(
*
smrSuperTable
).
me
.
stbEntry
.
schemaTag
.
pSchema
[
i
].
colId
;
...
@@ -724,7 +724,7 @@ static int32_t sysTableUserTagsFillOneTableTags(const SSysTableScanInfo* pInfo,
...
@@ -724,7 +724,7 @@ static int32_t sysTableUserTagsFillOneTableTags(const SSysTableScanInfo* pInfo,
}
}
}
}
pColInfoData
=
taosArrayGet
(
dataBlock
->
pDataBlock
,
5
);
pColInfoData
=
taosArrayGet
(
dataBlock
->
pDataBlock
,
5
);
colData
Append
(
pColInfoData
,
numOfRows
,
tagVarChar
,
colData
SetVal
(
pColInfoData
,
numOfRows
,
tagVarChar
,
(
tagData
==
NULL
)
||
(
tagType
==
TSDB_DATA_TYPE_JSON
&&
tTagIsJsonNull
(
tagData
)));
(
tagData
==
NULL
)
||
(
tagType
==
TSDB_DATA_TYPE_JSON
&&
tTagIsJsonNull
(
tagData
)));
taosMemoryFree
(
tagVarChar
);
taosMemoryFree
(
tagVarChar
);
++
numOfRows
;
++
numOfRows
;
...
@@ -772,12 +772,12 @@ int32_t buildDbTableInfoBlock(bool sysInfo, const SSDataBlock* p, const SSysTabl
...
@@ -772,12 +772,12 @@ int32_t buildDbTableInfoBlock(bool sysInfo, const SSDataBlock* p, const SSysTabl
SColumnInfoData
*
pColInfoData
=
taosArrayGet
(
p
->
pDataBlock
,
0
);
SColumnInfoData
*
pColInfoData
=
taosArrayGet
(
p
->
pDataBlock
,
0
);
STR_TO_VARSTR
(
n
,
pm
->
name
);
STR_TO_VARSTR
(
n
,
pm
->
name
);
colData
Append
(
pColInfoData
,
numOfRows
,
n
,
false
);
colData
SetVal
(
pColInfoData
,
numOfRows
,
n
,
false
);
// database name
// database name
STR_TO_VARSTR
(
n
,
dbName
);
STR_TO_VARSTR
(
n
,
dbName
);
pColInfoData
=
taosArrayGet
(
p
->
pDataBlock
,
1
);
pColInfoData
=
taosArrayGet
(
p
->
pDataBlock
,
1
);
colData
Append
(
pColInfoData
,
numOfRows
,
n
,
false
);
colData
SetVal
(
pColInfoData
,
numOfRows
,
n
,
false
);
// create time
// create time
pColInfoData
=
taosArrayGet
(
p
->
pDataBlock
,
2
);
pColInfoData
=
taosArrayGet
(
p
->
pDataBlock
,
2
);
...
@@ -785,7 +785,7 @@ int32_t buildDbTableInfoBlock(bool sysInfo, const SSDataBlock* p, const SSysTabl
...
@@ -785,7 +785,7 @@ int32_t buildDbTableInfoBlock(bool sysInfo, const SSDataBlock* p, const SSysTabl
// number of columns
// number of columns
pColInfoData
=
taosArrayGet
(
p
->
pDataBlock
,
3
);
pColInfoData
=
taosArrayGet
(
p
->
pDataBlock
,
3
);
colData
Append
(
pColInfoData
,
numOfRows
,
(
char
*
)
&
pm
->
colNum
,
false
);
colData
SetVal
(
pColInfoData
,
numOfRows
,
(
char
*
)
&
pm
->
colNum
,
false
);
for
(
int32_t
j
=
4
;
j
<=
8
;
++
j
)
{
for
(
int32_t
j
=
4
;
j
<=
8
;
++
j
)
{
pColInfoData
=
taosArrayGet
(
p
->
pDataBlock
,
j
);
pColInfoData
=
taosArrayGet
(
p
->
pDataBlock
,
j
);
...
@@ -795,7 +795,7 @@ int32_t buildDbTableInfoBlock(bool sysInfo, const SSDataBlock* p, const SSysTabl
...
@@ -795,7 +795,7 @@ int32_t buildDbTableInfoBlock(bool sysInfo, const SSDataBlock* p, const SSysTabl
STR_TO_VARSTR
(
n
,
"SYSTEM_TABLE"
);
STR_TO_VARSTR
(
n
,
"SYSTEM_TABLE"
);
pColInfoData
=
taosArrayGet
(
p
->
pDataBlock
,
9
);
pColInfoData
=
taosArrayGet
(
p
->
pDataBlock
,
9
);
colData
Append
(
pColInfoData
,
numOfRows
,
n
,
false
);
colData
SetVal
(
pColInfoData
,
numOfRows
,
n
,
false
);
numOfRows
+=
1
;
numOfRows
+=
1
;
}
}
...
@@ -863,22 +863,22 @@ static SSDataBlock* sysTableBuildUserTablesByUids(SOperatorInfo* pOperator) {
...
@@ -863,22 +863,22 @@ static SSDataBlock* sysTableBuildUserTablesByUids(SOperatorInfo* pOperator) {
// table name
// table name
SColumnInfoData
*
pColInfoData
=
taosArrayGet
(
p
->
pDataBlock
,
0
);
SColumnInfoData
*
pColInfoData
=
taosArrayGet
(
p
->
pDataBlock
,
0
);
colData
Append
(
pColInfoData
,
numOfRows
,
n
,
false
);
colData
SetVal
(
pColInfoData
,
numOfRows
,
n
,
false
);
// database name
// database name
pColInfoData
=
taosArrayGet
(
p
->
pDataBlock
,
1
);
pColInfoData
=
taosArrayGet
(
p
->
pDataBlock
,
1
);
colData
Append
(
pColInfoData
,
numOfRows
,
dbname
,
false
);
colData
SetVal
(
pColInfoData
,
numOfRows
,
dbname
,
false
);
// vgId
// vgId
pColInfoData
=
taosArrayGet
(
p
->
pDataBlock
,
6
);
pColInfoData
=
taosArrayGet
(
p
->
pDataBlock
,
6
);
colData
Append
(
pColInfoData
,
numOfRows
,
(
char
*
)
&
vgId
,
false
);
colData
SetVal
(
pColInfoData
,
numOfRows
,
(
char
*
)
&
vgId
,
false
);
int32_t
tableType
=
mr
.
me
.
type
;
int32_t
tableType
=
mr
.
me
.
type
;
if
(
tableType
==
TSDB_CHILD_TABLE
)
{
if
(
tableType
==
TSDB_CHILD_TABLE
)
{
// create time
// create time
int64_t
ts
=
mr
.
me
.
ctbEntry
.
ctime
;
int64_t
ts
=
mr
.
me
.
ctbEntry
.
ctime
;
pColInfoData
=
taosArrayGet
(
p
->
pDataBlock
,
2
);
pColInfoData
=
taosArrayGet
(
p
->
pDataBlock
,
2
);
colData
Append
(
pColInfoData
,
numOfRows
,
(
char
*
)
&
ts
,
false
);
colData
SetVal
(
pColInfoData
,
numOfRows
,
(
char
*
)
&
ts
,
false
);
SMetaReader
mr1
=
{
0
};
SMetaReader
mr1
=
{
0
};
metaReaderInit
(
&
mr1
,
pInfo
->
readHandle
.
meta
,
META_READER_NOLOCK
);
metaReaderInit
(
&
mr1
,
pInfo
->
readHandle
.
meta
,
META_READER_NOLOCK
);
...
@@ -893,12 +893,12 @@ static SSDataBlock* sysTableBuildUserTablesByUids(SOperatorInfo* pOperator) {
...
@@ -893,12 +893,12 @@ static SSDataBlock* sysTableBuildUserTablesByUids(SOperatorInfo* pOperator) {
T_LONG_JMP
(
pTaskInfo
->
env
,
terrno
);
T_LONG_JMP
(
pTaskInfo
->
env
,
terrno
);
}
}
pColInfoData
=
taosArrayGet
(
p
->
pDataBlock
,
3
);
pColInfoData
=
taosArrayGet
(
p
->
pDataBlock
,
3
);
colData
Append
(
pColInfoData
,
numOfRows
,
(
char
*
)
&
mr1
.
me
.
stbEntry
.
schemaRow
.
nCols
,
false
);
colData
SetVal
(
pColInfoData
,
numOfRows
,
(
char
*
)
&
mr1
.
me
.
stbEntry
.
schemaRow
.
nCols
,
false
);
// super table name
// super table name
STR_TO_VARSTR
(
n
,
mr1
.
me
.
name
);
STR_TO_VARSTR
(
n
,
mr1
.
me
.
name
);
pColInfoData
=
taosArrayGet
(
p
->
pDataBlock
,
4
);
pColInfoData
=
taosArrayGet
(
p
->
pDataBlock
,
4
);
colData
Append
(
pColInfoData
,
numOfRows
,
n
,
false
);
colData
SetVal
(
pColInfoData
,
numOfRows
,
n
,
false
);
metaReaderClear
(
&
mr1
);
metaReaderClear
(
&
mr1
);
// table comment
// table comment
...
@@ -906,33 +906,33 @@ static SSDataBlock* sysTableBuildUserTablesByUids(SOperatorInfo* pOperator) {
...
@@ -906,33 +906,33 @@ static SSDataBlock* sysTableBuildUserTablesByUids(SOperatorInfo* pOperator) {
if
(
mr
.
me
.
ctbEntry
.
commentLen
>
0
)
{
if
(
mr
.
me
.
ctbEntry
.
commentLen
>
0
)
{
char
comment
[
TSDB_TB_COMMENT_LEN
+
VARSTR_HEADER_SIZE
]
=
{
0
};
char
comment
[
TSDB_TB_COMMENT_LEN
+
VARSTR_HEADER_SIZE
]
=
{
0
};
STR_TO_VARSTR
(
comment
,
mr
.
me
.
ctbEntry
.
comment
);
STR_TO_VARSTR
(
comment
,
mr
.
me
.
ctbEntry
.
comment
);
colData
Append
(
pColInfoData
,
numOfRows
,
comment
,
false
);
colData
SetVal
(
pColInfoData
,
numOfRows
,
comment
,
false
);
}
else
if
(
mr
.
me
.
ctbEntry
.
commentLen
==
0
)
{
}
else
if
(
mr
.
me
.
ctbEntry
.
commentLen
==
0
)
{
char
comment
[
VARSTR_HEADER_SIZE
+
VARSTR_HEADER_SIZE
]
=
{
0
};
char
comment
[
VARSTR_HEADER_SIZE
+
VARSTR_HEADER_SIZE
]
=
{
0
};
STR_TO_VARSTR
(
comment
,
""
);
STR_TO_VARSTR
(
comment
,
""
);
colData
Append
(
pColInfoData
,
numOfRows
,
comment
,
false
);
colData
SetVal
(
pColInfoData
,
numOfRows
,
comment
,
false
);
}
else
{
}
else
{
colDataAppendNULL
(
pColInfoData
,
numOfRows
);
colDataAppendNULL
(
pColInfoData
,
numOfRows
);
}
}
// uid
// uid
pColInfoData
=
taosArrayGet
(
p
->
pDataBlock
,
5
);
pColInfoData
=
taosArrayGet
(
p
->
pDataBlock
,
5
);
colData
Append
(
pColInfoData
,
numOfRows
,
(
char
*
)
&
mr
.
me
.
uid
,
false
);
colData
SetVal
(
pColInfoData
,
numOfRows
,
(
char
*
)
&
mr
.
me
.
uid
,
false
);
// ttl
// ttl
pColInfoData
=
taosArrayGet
(
p
->
pDataBlock
,
7
);
pColInfoData
=
taosArrayGet
(
p
->
pDataBlock
,
7
);
colData
Append
(
pColInfoData
,
numOfRows
,
(
char
*
)
&
mr
.
me
.
ctbEntry
.
ttlDays
,
false
);
colData
SetVal
(
pColInfoData
,
numOfRows
,
(
char
*
)
&
mr
.
me
.
ctbEntry
.
ttlDays
,
false
);
STR_TO_VARSTR
(
n
,
"CHILD_TABLE"
);
STR_TO_VARSTR
(
n
,
"CHILD_TABLE"
);
}
else
if
(
tableType
==
TSDB_NORMAL_TABLE
)
{
}
else
if
(
tableType
==
TSDB_NORMAL_TABLE
)
{
// create time
// create time
pColInfoData
=
taosArrayGet
(
p
->
pDataBlock
,
2
);
pColInfoData
=
taosArrayGet
(
p
->
pDataBlock
,
2
);
colData
Append
(
pColInfoData
,
numOfRows
,
(
char
*
)
&
pInfo
->
pCur
->
mr
.
me
.
ntbEntry
.
ctime
,
false
);
colData
SetVal
(
pColInfoData
,
numOfRows
,
(
char
*
)
&
pInfo
->
pCur
->
mr
.
me
.
ntbEntry
.
ctime
,
false
);
// number of columns
// number of columns
pColInfoData
=
taosArrayGet
(
p
->
pDataBlock
,
3
);
pColInfoData
=
taosArrayGet
(
p
->
pDataBlock
,
3
);
colData
Append
(
pColInfoData
,
numOfRows
,
(
char
*
)
&
pInfo
->
pCur
->
mr
.
me
.
ntbEntry
.
schemaRow
.
nCols
,
false
);
colData
SetVal
(
pColInfoData
,
numOfRows
,
(
char
*
)
&
pInfo
->
pCur
->
mr
.
me
.
ntbEntry
.
schemaRow
.
nCols
,
false
);
// super table name
// super table name
pColInfoData
=
taosArrayGet
(
p
->
pDataBlock
,
4
);
pColInfoData
=
taosArrayGet
(
p
->
pDataBlock
,
4
);
...
@@ -943,22 +943,22 @@ static SSDataBlock* sysTableBuildUserTablesByUids(SOperatorInfo* pOperator) {
...
@@ -943,22 +943,22 @@ static SSDataBlock* sysTableBuildUserTablesByUids(SOperatorInfo* pOperator) {
if
(
mr
.
me
.
ntbEntry
.
commentLen
>
0
)
{
if
(
mr
.
me
.
ntbEntry
.
commentLen
>
0
)
{
char
comment
[
TSDB_TB_COMMENT_LEN
+
VARSTR_HEADER_SIZE
]
=
{
0
};
char
comment
[
TSDB_TB_COMMENT_LEN
+
VARSTR_HEADER_SIZE
]
=
{
0
};
STR_TO_VARSTR
(
comment
,
mr
.
me
.
ntbEntry
.
comment
);
STR_TO_VARSTR
(
comment
,
mr
.
me
.
ntbEntry
.
comment
);
colData
Append
(
pColInfoData
,
numOfRows
,
comment
,
false
);
colData
SetVal
(
pColInfoData
,
numOfRows
,
comment
,
false
);
}
else
if
(
mr
.
me
.
ntbEntry
.
commentLen
==
0
)
{
}
else
if
(
mr
.
me
.
ntbEntry
.
commentLen
==
0
)
{
char
comment
[
VARSTR_HEADER_SIZE
+
VARSTR_HEADER_SIZE
]
=
{
0
};
char
comment
[
VARSTR_HEADER_SIZE
+
VARSTR_HEADER_SIZE
]
=
{
0
};
STR_TO_VARSTR
(
comment
,
""
);
STR_TO_VARSTR
(
comment
,
""
);
colData
Append
(
pColInfoData
,
numOfRows
,
comment
,
false
);
colData
SetVal
(
pColInfoData
,
numOfRows
,
comment
,
false
);
}
else
{
}
else
{
colDataAppendNULL
(
pColInfoData
,
numOfRows
);
colDataAppendNULL
(
pColInfoData
,
numOfRows
);
}
}
// uid
// uid
pColInfoData
=
taosArrayGet
(
p
->
pDataBlock
,
5
);
pColInfoData
=
taosArrayGet
(
p
->
pDataBlock
,
5
);
colData
Append
(
pColInfoData
,
numOfRows
,
(
char
*
)
&
mr
.
me
.
uid
,
false
);
colData
SetVal
(
pColInfoData
,
numOfRows
,
(
char
*
)
&
mr
.
me
.
uid
,
false
);
// ttl
// ttl
pColInfoData
=
taosArrayGet
(
p
->
pDataBlock
,
7
);
pColInfoData
=
taosArrayGet
(
p
->
pDataBlock
,
7
);
colData
Append
(
pColInfoData
,
numOfRows
,
(
char
*
)
&
mr
.
me
.
ntbEntry
.
ttlDays
,
false
);
colData
SetVal
(
pColInfoData
,
numOfRows
,
(
char
*
)
&
mr
.
me
.
ntbEntry
.
ttlDays
,
false
);
STR_TO_VARSTR
(
n
,
"NORMAL_TABLE"
);
STR_TO_VARSTR
(
n
,
"NORMAL_TABLE"
);
// impl later
// impl later
...
@@ -967,7 +967,7 @@ static SSDataBlock* sysTableBuildUserTablesByUids(SOperatorInfo* pOperator) {
...
@@ -967,7 +967,7 @@ static SSDataBlock* sysTableBuildUserTablesByUids(SOperatorInfo* pOperator) {
metaReaderClear
(
&
mr
);
metaReaderClear
(
&
mr
);
pColInfoData
=
taosArrayGet
(
p
->
pDataBlock
,
9
);
pColInfoData
=
taosArrayGet
(
p
->
pDataBlock
,
9
);
colData
Append
(
pColInfoData
,
numOfRows
,
n
,
false
);
colData
SetVal
(
pColInfoData
,
numOfRows
,
n
,
false
);
if
(
++
numOfRows
>=
pOperator
->
resultInfo
.
capacity
)
{
if
(
++
numOfRows
>=
pOperator
->
resultInfo
.
capacity
)
{
p
->
info
.
rows
=
numOfRows
;
p
->
info
.
rows
=
numOfRows
;
...
@@ -1041,22 +1041,22 @@ static SSDataBlock* sysTableBuildUserTables(SOperatorInfo* pOperator) {
...
@@ -1041,22 +1041,22 @@ static SSDataBlock* sysTableBuildUserTables(SOperatorInfo* pOperator) {
// table name
// table name
SColumnInfoData
*
pColInfoData
=
taosArrayGet
(
p
->
pDataBlock
,
0
);
SColumnInfoData
*
pColInfoData
=
taosArrayGet
(
p
->
pDataBlock
,
0
);
colData
Append
(
pColInfoData
,
numOfRows
,
n
,
false
);
colData
SetVal
(
pColInfoData
,
numOfRows
,
n
,
false
);
// database name
// database name
pColInfoData
=
taosArrayGet
(
p
->
pDataBlock
,
1
);
pColInfoData
=
taosArrayGet
(
p
->
pDataBlock
,
1
);
colData
Append
(
pColInfoData
,
numOfRows
,
dbname
,
false
);
colData
SetVal
(
pColInfoData
,
numOfRows
,
dbname
,
false
);
// vgId
// vgId
pColInfoData
=
taosArrayGet
(
p
->
pDataBlock
,
6
);
pColInfoData
=
taosArrayGet
(
p
->
pDataBlock
,
6
);
colData
Append
(
pColInfoData
,
numOfRows
,
(
char
*
)
&
vgId
,
false
);
colData
SetVal
(
pColInfoData
,
numOfRows
,
(
char
*
)
&
vgId
,
false
);
int32_t
tableType
=
pInfo
->
pCur
->
mr
.
me
.
type
;
int32_t
tableType
=
pInfo
->
pCur
->
mr
.
me
.
type
;
if
(
tableType
==
TSDB_CHILD_TABLE
)
{
if
(
tableType
==
TSDB_CHILD_TABLE
)
{
// create time
// create time
int64_t
ts
=
pInfo
->
pCur
->
mr
.
me
.
ctbEntry
.
ctime
;
int64_t
ts
=
pInfo
->
pCur
->
mr
.
me
.
ctbEntry
.
ctime
;
pColInfoData
=
taosArrayGet
(
p
->
pDataBlock
,
2
);
pColInfoData
=
taosArrayGet
(
p
->
pDataBlock
,
2
);
colData
Append
(
pColInfoData
,
numOfRows
,
(
char
*
)
&
ts
,
false
);
colData
SetVal
(
pColInfoData
,
numOfRows
,
(
char
*
)
&
ts
,
false
);
SMetaReader
mr
=
{
0
};
SMetaReader
mr
=
{
0
};
metaReaderInit
(
&
mr
,
pInfo
->
readHandle
.
meta
,
META_READER_NOLOCK
);
metaReaderInit
(
&
mr
,
pInfo
->
readHandle
.
meta
,
META_READER_NOLOCK
);
...
@@ -1074,12 +1074,12 @@ static SSDataBlock* sysTableBuildUserTables(SOperatorInfo* pOperator) {
...
@@ -1074,12 +1074,12 @@ static SSDataBlock* sysTableBuildUserTables(SOperatorInfo* pOperator) {
// number of columns
// number of columns
pColInfoData
=
taosArrayGet
(
p
->
pDataBlock
,
3
);
pColInfoData
=
taosArrayGet
(
p
->
pDataBlock
,
3
);
colData
Append
(
pColInfoData
,
numOfRows
,
(
char
*
)
&
mr
.
me
.
stbEntry
.
schemaRow
.
nCols
,
false
);
colData
SetVal
(
pColInfoData
,
numOfRows
,
(
char
*
)
&
mr
.
me
.
stbEntry
.
schemaRow
.
nCols
,
false
);
// super table name
// super table name
STR_TO_VARSTR
(
n
,
mr
.
me
.
name
);
STR_TO_VARSTR
(
n
,
mr
.
me
.
name
);
pColInfoData
=
taosArrayGet
(
p
->
pDataBlock
,
4
);
pColInfoData
=
taosArrayGet
(
p
->
pDataBlock
,
4
);
colData
Append
(
pColInfoData
,
numOfRows
,
n
,
false
);
colData
SetVal
(
pColInfoData
,
numOfRows
,
n
,
false
);
metaReaderClear
(
&
mr
);
metaReaderClear
(
&
mr
);
// table comment
// table comment
...
@@ -1087,32 +1087,32 @@ static SSDataBlock* sysTableBuildUserTables(SOperatorInfo* pOperator) {
...
@@ -1087,32 +1087,32 @@ static SSDataBlock* sysTableBuildUserTables(SOperatorInfo* pOperator) {
if
(
pInfo
->
pCur
->
mr
.
me
.
ctbEntry
.
commentLen
>
0
)
{
if
(
pInfo
->
pCur
->
mr
.
me
.
ctbEntry
.
commentLen
>
0
)
{
char
comment
[
TSDB_TB_COMMENT_LEN
+
VARSTR_HEADER_SIZE
]
=
{
0
};
char
comment
[
TSDB_TB_COMMENT_LEN
+
VARSTR_HEADER_SIZE
]
=
{
0
};
STR_TO_VARSTR
(
comment
,
pInfo
->
pCur
->
mr
.
me
.
ctbEntry
.
comment
);
STR_TO_VARSTR
(
comment
,
pInfo
->
pCur
->
mr
.
me
.
ctbEntry
.
comment
);
colData
Append
(
pColInfoData
,
numOfRows
,
comment
,
false
);
colData
SetVal
(
pColInfoData
,
numOfRows
,
comment
,
false
);
}
else
if
(
pInfo
->
pCur
->
mr
.
me
.
ctbEntry
.
commentLen
==
0
)
{
}
else
if
(
pInfo
->
pCur
->
mr
.
me
.
ctbEntry
.
commentLen
==
0
)
{
char
comment
[
VARSTR_HEADER_SIZE
+
VARSTR_HEADER_SIZE
]
=
{
0
};
char
comment
[
VARSTR_HEADER_SIZE
+
VARSTR_HEADER_SIZE
]
=
{
0
};
STR_TO_VARSTR
(
comment
,
""
);
STR_TO_VARSTR
(
comment
,
""
);
colData
Append
(
pColInfoData
,
numOfRows
,
comment
,
false
);
colData
SetVal
(
pColInfoData
,
numOfRows
,
comment
,
false
);
}
else
{
}
else
{
colDataAppendNULL
(
pColInfoData
,
numOfRows
);
colDataAppendNULL
(
pColInfoData
,
numOfRows
);
}
}
// uid
// uid
pColInfoData
=
taosArrayGet
(
p
->
pDataBlock
,
5
);
pColInfoData
=
taosArrayGet
(
p
->
pDataBlock
,
5
);
colData
Append
(
pColInfoData
,
numOfRows
,
(
char
*
)
&
pInfo
->
pCur
->
mr
.
me
.
uid
,
false
);
colData
SetVal
(
pColInfoData
,
numOfRows
,
(
char
*
)
&
pInfo
->
pCur
->
mr
.
me
.
uid
,
false
);
// ttl
// ttl
pColInfoData
=
taosArrayGet
(
p
->
pDataBlock
,
7
);
pColInfoData
=
taosArrayGet
(
p
->
pDataBlock
,
7
);
colData
Append
(
pColInfoData
,
numOfRows
,
(
char
*
)
&
pInfo
->
pCur
->
mr
.
me
.
ctbEntry
.
ttlDays
,
false
);
colData
SetVal
(
pColInfoData
,
numOfRows
,
(
char
*
)
&
pInfo
->
pCur
->
mr
.
me
.
ctbEntry
.
ttlDays
,
false
);
STR_TO_VARSTR
(
n
,
"CHILD_TABLE"
);
STR_TO_VARSTR
(
n
,
"CHILD_TABLE"
);
}
else
if
(
tableType
==
TSDB_NORMAL_TABLE
)
{
}
else
if
(
tableType
==
TSDB_NORMAL_TABLE
)
{
// create time
// create time
pColInfoData
=
taosArrayGet
(
p
->
pDataBlock
,
2
);
pColInfoData
=
taosArrayGet
(
p
->
pDataBlock
,
2
);
colData
Append
(
pColInfoData
,
numOfRows
,
(
char
*
)
&
pInfo
->
pCur
->
mr
.
me
.
ntbEntry
.
ctime
,
false
);
colData
SetVal
(
pColInfoData
,
numOfRows
,
(
char
*
)
&
pInfo
->
pCur
->
mr
.
me
.
ntbEntry
.
ctime
,
false
);
// number of columns
// number of columns
pColInfoData
=
taosArrayGet
(
p
->
pDataBlock
,
3
);
pColInfoData
=
taosArrayGet
(
p
->
pDataBlock
,
3
);
colData
Append
(
pColInfoData
,
numOfRows
,
(
char
*
)
&
pInfo
->
pCur
->
mr
.
me
.
ntbEntry
.
schemaRow
.
nCols
,
false
);
colData
SetVal
(
pColInfoData
,
numOfRows
,
(
char
*
)
&
pInfo
->
pCur
->
mr
.
me
.
ntbEntry
.
schemaRow
.
nCols
,
false
);
// super table name
// super table name
pColInfoData
=
taosArrayGet
(
p
->
pDataBlock
,
4
);
pColInfoData
=
taosArrayGet
(
p
->
pDataBlock
,
4
);
...
@@ -1123,28 +1123,28 @@ static SSDataBlock* sysTableBuildUserTables(SOperatorInfo* pOperator) {
...
@@ -1123,28 +1123,28 @@ static SSDataBlock* sysTableBuildUserTables(SOperatorInfo* pOperator) {
if
(
pInfo
->
pCur
->
mr
.
me
.
ntbEntry
.
commentLen
>
0
)
{
if
(
pInfo
->
pCur
->
mr
.
me
.
ntbEntry
.
commentLen
>
0
)
{
char
comment
[
TSDB_TB_COMMENT_LEN
+
VARSTR_HEADER_SIZE
]
=
{
0
};
char
comment
[
TSDB_TB_COMMENT_LEN
+
VARSTR_HEADER_SIZE
]
=
{
0
};
STR_TO_VARSTR
(
comment
,
pInfo
->
pCur
->
mr
.
me
.
ntbEntry
.
comment
);
STR_TO_VARSTR
(
comment
,
pInfo
->
pCur
->
mr
.
me
.
ntbEntry
.
comment
);
colData
Append
(
pColInfoData
,
numOfRows
,
comment
,
false
);
colData
SetVal
(
pColInfoData
,
numOfRows
,
comment
,
false
);
}
else
if
(
pInfo
->
pCur
->
mr
.
me
.
ntbEntry
.
commentLen
==
0
)
{
}
else
if
(
pInfo
->
pCur
->
mr
.
me
.
ntbEntry
.
commentLen
==
0
)
{
char
comment
[
VARSTR_HEADER_SIZE
+
VARSTR_HEADER_SIZE
]
=
{
0
};
char
comment
[
VARSTR_HEADER_SIZE
+
VARSTR_HEADER_SIZE
]
=
{
0
};
STR_TO_VARSTR
(
comment
,
""
);
STR_TO_VARSTR
(
comment
,
""
);
colData
Append
(
pColInfoData
,
numOfRows
,
comment
,
false
);
colData
SetVal
(
pColInfoData
,
numOfRows
,
comment
,
false
);
}
else
{
}
else
{
colDataAppendNULL
(
pColInfoData
,
numOfRows
);
colDataAppendNULL
(
pColInfoData
,
numOfRows
);
}
}
// uid
// uid
pColInfoData
=
taosArrayGet
(
p
->
pDataBlock
,
5
);
pColInfoData
=
taosArrayGet
(
p
->
pDataBlock
,
5
);
colData
Append
(
pColInfoData
,
numOfRows
,
(
char
*
)
&
pInfo
->
pCur
->
mr
.
me
.
uid
,
false
);
colData
SetVal
(
pColInfoData
,
numOfRows
,
(
char
*
)
&
pInfo
->
pCur
->
mr
.
me
.
uid
,
false
);
// ttl
// ttl
pColInfoData
=
taosArrayGet
(
p
->
pDataBlock
,
7
);
pColInfoData
=
taosArrayGet
(
p
->
pDataBlock
,
7
);
colData
Append
(
pColInfoData
,
numOfRows
,
(
char
*
)
&
pInfo
->
pCur
->
mr
.
me
.
ntbEntry
.
ttlDays
,
false
);
colData
SetVal
(
pColInfoData
,
numOfRows
,
(
char
*
)
&
pInfo
->
pCur
->
mr
.
me
.
ntbEntry
.
ttlDays
,
false
);
STR_TO_VARSTR
(
n
,
"NORMAL_TABLE"
);
STR_TO_VARSTR
(
n
,
"NORMAL_TABLE"
);
}
}
pColInfoData
=
taosArrayGet
(
p
->
pDataBlock
,
9
);
pColInfoData
=
taosArrayGet
(
p
->
pDataBlock
,
9
);
colData
Append
(
pColInfoData
,
numOfRows
,
n
,
false
);
colData
SetVal
(
pColInfoData
,
numOfRows
,
n
,
false
);
if
(
++
numOfRows
>=
pOperator
->
resultInfo
.
capacity
)
{
if
(
++
numOfRows
>=
pOperator
->
resultInfo
.
capacity
)
{
p
->
info
.
rows
=
numOfRows
;
p
->
info
.
rows
=
numOfRows
;
...
@@ -1361,7 +1361,7 @@ static void sysTableScanFillTbName(SOperatorInfo* pOperator, const SSysTableScan
...
@@ -1361,7 +1361,7 @@ static void sysTableScanFillTbName(SOperatorInfo* pOperator, const SSysTableScan
memcpy
(
varDataVal
(
varTbName
),
name
,
strlen
(
name
));
memcpy
(
varDataVal
(
varTbName
),
name
,
strlen
(
name
));
varDataSetLen
(
varTbName
,
strlen
(
name
));
varDataSetLen
(
varTbName
,
strlen
(
name
));
colData
Append
NItems
(
pColumnInfoData
,
0
,
varTbName
,
pBlock
->
info
.
rows
);
colData
Set
NItems
(
pColumnInfoData
,
0
,
varTbName
,
pBlock
->
info
.
rows
);
}
}
doFilter
(
pBlock
,
pOperator
->
exprSupp
.
pFilterInfo
,
NULL
);
doFilter
(
pBlock
,
pOperator
->
exprSupp
.
pFilterInfo
,
NULL
);
...
@@ -1921,14 +1921,14 @@ static SSDataBlock* doBlockInfoScan(SOperatorInfo* pOperator) {
...
@@ -1921,14 +1921,14 @@ static SSDataBlock* doBlockInfoScan(SOperatorInfo* pOperator) {
tSerializeBlockDistInfo
(
varDataVal
(
p
),
len
,
&
blockDistInfo
);
tSerializeBlockDistInfo
(
varDataVal
(
p
),
len
,
&
blockDistInfo
);
varDataSetLen
(
p
,
len
);
varDataSetLen
(
p
,
len
);
colData
Append
(
pColInfo
,
0
,
p
,
false
);
colData
SetVal
(
pColInfo
,
0
,
p
,
false
);
taosMemoryFree
(
p
);
taosMemoryFree
(
p
);
// make the valgrind happy that all memory buffer has been initialized already.
// make the valgrind happy that all memory buffer has been initialized already.
if
(
slotId
!=
0
)
{
if
(
slotId
!=
0
)
{
SColumnInfoData
*
p1
=
taosArrayGet
(
pBlock
->
pDataBlock
,
0
);
SColumnInfoData
*
p1
=
taosArrayGet
(
pBlock
->
pDataBlock
,
0
);
int64_t
v
=
0
;
int64_t
v
=
0
;
colData
Append
Int64
(
p1
,
0
,
&
v
);
colData
Set
Int64
(
p1
,
0
,
&
v
);
}
}
pBlock
->
info
.
rows
=
1
;
pBlock
->
info
.
rows
=
1
;
...
...
source/libs/executor/src/tfill.c
浏览文件 @
8d187efc
...
@@ -69,17 +69,17 @@ static void doSetUserSpecifiedValue(SColumnInfoData* pDst, SVariant* pVar, int32
...
@@ -69,17 +69,17 @@ static void doSetUserSpecifiedValue(SColumnInfoData* pDst, SVariant* pVar, int32
if
(
pDst
->
info
.
type
==
TSDB_DATA_TYPE_FLOAT
)
{
if
(
pDst
->
info
.
type
==
TSDB_DATA_TYPE_FLOAT
)
{
float
v
=
0
;
float
v
=
0
;
GET_TYPED_DATA
(
v
,
float
,
pVar
->
nType
,
&
pVar
->
i
);
GET_TYPED_DATA
(
v
,
float
,
pVar
->
nType
,
&
pVar
->
i
);
colData
Append
(
pDst
,
rowIndex
,
(
char
*
)
&
v
,
false
);
colData
SetVal
(
pDst
,
rowIndex
,
(
char
*
)
&
v
,
false
);
}
else
if
(
pDst
->
info
.
type
==
TSDB_DATA_TYPE_DOUBLE
)
{
}
else
if
(
pDst
->
info
.
type
==
TSDB_DATA_TYPE_DOUBLE
)
{
double
v
=
0
;
double
v
=
0
;
GET_TYPED_DATA
(
v
,
double
,
pVar
->
nType
,
&
pVar
->
i
);
GET_TYPED_DATA
(
v
,
double
,
pVar
->
nType
,
&
pVar
->
i
);
colData
Append
(
pDst
,
rowIndex
,
(
char
*
)
&
v
,
false
);
colData
SetVal
(
pDst
,
rowIndex
,
(
char
*
)
&
v
,
false
);
}
else
if
(
IS_SIGNED_NUMERIC_TYPE
(
pDst
->
info
.
type
))
{
}
else
if
(
IS_SIGNED_NUMERIC_TYPE
(
pDst
->
info
.
type
))
{
int64_t
v
=
0
;
int64_t
v
=
0
;
GET_TYPED_DATA
(
v
,
int64_t
,
pVar
->
nType
,
&
pVar
->
i
);
GET_TYPED_DATA
(
v
,
int64_t
,
pVar
->
nType
,
&
pVar
->
i
);
colData
Append
(
pDst
,
rowIndex
,
(
char
*
)
&
v
,
false
);
colData
SetVal
(
pDst
,
rowIndex
,
(
char
*
)
&
v
,
false
);
}
else
if
(
pDst
->
info
.
type
==
TSDB_DATA_TYPE_TIMESTAMP
)
{
}
else
if
(
pDst
->
info
.
type
==
TSDB_DATA_TYPE_TIMESTAMP
)
{
colData
Append
(
pDst
,
rowIndex
,
(
const
char
*
)
&
currentKey
,
false
);
colData
SetVal
(
pDst
,
rowIndex
,
(
const
char
*
)
&
currentKey
,
false
);
}
else
{
// varchar/nchar data
}
else
{
// varchar/nchar data
colDataAppendNULL
(
pDst
,
rowIndex
);
colDataAppendNULL
(
pDst
,
rowIndex
);
}
}
...
@@ -96,18 +96,18 @@ bool fillIfWindowPseudoColumn(SFillInfo* pFillInfo, SFillColInfo* pCol, SColumnI
...
@@ -96,18 +96,18 @@ bool fillIfWindowPseudoColumn(SFillInfo* pFillInfo, SFillColInfo* pCol, SColumnI
return
false
;
return
false
;
}
}
if
(
pCol
->
pExpr
->
base
.
pParam
[
0
].
pCol
->
colType
==
COLUMN_TYPE_WINDOW_START
)
{
if
(
pCol
->
pExpr
->
base
.
pParam
[
0
].
pCol
->
colType
==
COLUMN_TYPE_WINDOW_START
)
{
colData
Append
(
pDstColInfoData
,
rowIndex
,
(
const
char
*
)
&
pFillInfo
->
currentKey
,
false
);
colData
SetVal
(
pDstColInfoData
,
rowIndex
,
(
const
char
*
)
&
pFillInfo
->
currentKey
,
false
);
return
true
;
return
true
;
}
else
if
(
pCol
->
pExpr
->
base
.
pParam
[
0
].
pCol
->
colType
==
COLUMN_TYPE_WINDOW_END
)
{
}
else
if
(
pCol
->
pExpr
->
base
.
pParam
[
0
].
pCol
->
colType
==
COLUMN_TYPE_WINDOW_END
)
{
// TODO: include endpoint
// TODO: include endpoint
SInterval
*
pInterval
=
&
pFillInfo
->
interval
;
SInterval
*
pInterval
=
&
pFillInfo
->
interval
;
int64_t
windowEnd
=
int64_t
windowEnd
=
taosTimeAdd
(
pFillInfo
->
currentKey
,
pInterval
->
interval
,
pInterval
->
intervalUnit
,
pInterval
->
precision
);
taosTimeAdd
(
pFillInfo
->
currentKey
,
pInterval
->
interval
,
pInterval
->
intervalUnit
,
pInterval
->
precision
);
colData
Append
(
pDstColInfoData
,
rowIndex
,
(
const
char
*
)
&
windowEnd
,
false
);
colData
SetVal
(
pDstColInfoData
,
rowIndex
,
(
const
char
*
)
&
windowEnd
,
false
);
return
true
;
return
true
;
}
else
if
(
pCol
->
pExpr
->
base
.
pParam
[
0
].
pCol
->
colType
==
COLUMN_TYPE_WINDOW_DURATION
)
{
}
else
if
(
pCol
->
pExpr
->
base
.
pParam
[
0
].
pCol
->
colType
==
COLUMN_TYPE_WINDOW_DURATION
)
{
// TODO: include endpoint
// TODO: include endpoint
colData
Append
(
pDstColInfoData
,
rowIndex
,
(
const
char
*
)
&
pFillInfo
->
interval
.
sliding
,
false
);
colData
SetVal
(
pDstColInfoData
,
rowIndex
,
(
const
char
*
)
&
pFillInfo
->
interval
.
sliding
,
false
);
return
true
;
return
true
;
}
}
}
}
...
@@ -182,7 +182,7 @@ static void doFillOneRow(SFillInfo* pFillInfo, SSDataBlock* pBlock, SSDataBlock*
...
@@ -182,7 +182,7 @@ static void doFillOneRow(SFillInfo* pFillInfo, SSDataBlock* pBlock, SSDataBlock*
point
=
(
SPoint
){.
key
=
pFillInfo
->
currentKey
,
.
val
=
&
out
};
point
=
(
SPoint
){.
key
=
pFillInfo
->
currentKey
,
.
val
=
&
out
};
taosGetLinearInterpolationVal
(
&
point
,
type
,
&
point1
,
&
point2
,
type
);
taosGetLinearInterpolationVal
(
&
point
,
type
,
&
point1
,
&
point2
,
type
);
colData
Append
(
pDstCol
,
index
,
(
const
char
*
)
&
out
,
false
);
colData
SetVal
(
pDstCol
,
index
,
(
const
char
*
)
&
out
,
false
);
}
}
}
}
}
}
...
@@ -219,7 +219,7 @@ void doSetVal(SColumnInfoData* pDstCol, int32_t rowIndex, const SGroupKeys* pKey
...
@@ -219,7 +219,7 @@ void doSetVal(SColumnInfoData* pDstCol, int32_t rowIndex, const SGroupKeys* pKey
if
(
pKey
->
isNull
)
{
if
(
pKey
->
isNull
)
{
colDataAppendNULL
(
pDstCol
,
rowIndex
);
colDataAppendNULL
(
pDstCol
,
rowIndex
);
}
else
{
}
else
{
colData
Append
(
pDstCol
,
rowIndex
,
pKey
->
pData
,
false
);
colData
SetVal
(
pDstCol
,
rowIndex
,
pKey
->
pData
,
false
);
}
}
}
}
...
@@ -332,14 +332,14 @@ static int32_t fillResultImpl(SFillInfo* pFillInfo, SSDataBlock* pBlock, int32_t
...
@@ -332,14 +332,14 @@ static int32_t fillResultImpl(SFillInfo* pFillInfo, SSDataBlock* pBlock, int32_t
char
*
src
=
colDataGetData
(
pSrc
,
pFillInfo
->
index
);
char
*
src
=
colDataGetData
(
pSrc
,
pFillInfo
->
index
);
if
(
!
colDataIsNull_s
(
pSrc
,
pFillInfo
->
index
))
{
if
(
!
colDataIsNull_s
(
pSrc
,
pFillInfo
->
index
))
{
colData
Append
(
pDst
,
index
,
src
,
false
);
colData
SetVal
(
pDst
,
index
,
src
,
false
);
saveColData
(
pFillInfo
->
prev
.
pRowVal
,
i
,
src
,
false
);
saveColData
(
pFillInfo
->
prev
.
pRowVal
,
i
,
src
,
false
);
if
(
pFillInfo
->
srcTsSlotId
==
dstSlotId
)
{
if
(
pFillInfo
->
srcTsSlotId
==
dstSlotId
)
{
pFillInfo
->
prev
.
key
=
*
(
int64_t
*
)
src
;
pFillInfo
->
prev
.
key
=
*
(
int64_t
*
)
src
;
}
}
}
else
{
// the value is null
}
else
{
// the value is null
if
(
pDst
->
info
.
type
==
TSDB_DATA_TYPE_TIMESTAMP
)
{
if
(
pDst
->
info
.
type
==
TSDB_DATA_TYPE_TIMESTAMP
)
{
colData
Append
(
pDst
,
index
,
(
const
char
*
)
&
pFillInfo
->
currentKey
,
false
);
colData
SetVal
(
pDst
,
index
,
(
const
char
*
)
&
pFillInfo
->
currentKey
,
false
);
}
else
{
// i > 0 and data is null , do interpolation
}
else
{
// i > 0 and data is null , do interpolation
if
(
pFillInfo
->
type
==
TSDB_FILL_PREV
)
{
if
(
pFillInfo
->
type
==
TSDB_FILL_PREV
)
{
SArray
*
p
=
FILL_IS_ASC_FILL
(
pFillInfo
)
?
pFillInfo
->
prev
.
pRowVal
:
pFillInfo
->
next
.
pRowVal
;
SArray
*
p
=
FILL_IS_ASC_FILL
(
pFillInfo
)
?
pFillInfo
->
prev
.
pRowVal
:
pFillInfo
->
next
.
pRowVal
;
...
@@ -347,7 +347,7 @@ static int32_t fillResultImpl(SFillInfo* pFillInfo, SSDataBlock* pBlock, int32_t
...
@@ -347,7 +347,7 @@ static int32_t fillResultImpl(SFillInfo* pFillInfo, SSDataBlock* pBlock, int32_t
doSetVal
(
pDst
,
index
,
pKey
);
doSetVal
(
pDst
,
index
,
pKey
);
}
else
if
(
pFillInfo
->
type
==
TSDB_FILL_LINEAR
)
{
}
else
if
(
pFillInfo
->
type
==
TSDB_FILL_LINEAR
)
{
bool
isNull
=
colDataIsNull_s
(
pSrc
,
pFillInfo
->
index
);
bool
isNull
=
colDataIsNull_s
(
pSrc
,
pFillInfo
->
index
);
colData
Append
(
pDst
,
index
,
src
,
isNull
);
colData
SetVal
(
pDst
,
index
,
src
,
isNull
);
saveColData
(
pFillInfo
->
prev
.
pRowVal
,
i
,
src
,
isNull
);
// todo:
saveColData
(
pFillInfo
->
prev
.
pRowVal
,
i
,
src
,
isNull
);
// todo:
}
else
if
(
pFillInfo
->
type
==
TSDB_FILL_NULL
||
pFillInfo
->
type
==
TSDB_FILL_NULL_F
)
{
}
else
if
(
pFillInfo
->
type
==
TSDB_FILL_NULL
||
pFillInfo
->
type
==
TSDB_FILL_NULL_F
)
{
colDataAppendNULL
(
pDst
,
index
);
colDataAppendNULL
(
pDst
,
index
);
...
...
source/libs/executor/src/timesliceoperator.c
浏览文件 @
8d187efc
...
@@ -175,7 +175,7 @@ static bool genInterpolationResult(STimeSliceOperatorInfo* pSliceInfo, SExprSupp
...
@@ -175,7 +175,7 @@ static bool genInterpolationResult(STimeSliceOperatorInfo* pSliceInfo, SExprSupp
SColumnInfoData
*
pDst
=
taosArrayGet
(
pResBlock
->
pDataBlock
,
dstSlot
);
SColumnInfoData
*
pDst
=
taosArrayGet
(
pResBlock
->
pDataBlock
,
dstSlot
);
if
(
IS_TIMESTAMP_TYPE
(
pExprInfo
->
base
.
resSchema
.
type
))
{
if
(
IS_TIMESTAMP_TYPE
(
pExprInfo
->
base
.
resSchema
.
type
))
{
colData
Append
(
pDst
,
rows
,
(
char
*
)
&
pSliceInfo
->
current
,
false
);
colData
SetVal
(
pDst
,
rows
,
(
char
*
)
&
pSliceInfo
->
current
,
false
);
continue
;
continue
;
}
}
...
@@ -194,15 +194,15 @@ static bool genInterpolationResult(STimeSliceOperatorInfo* pSliceInfo, SExprSupp
...
@@ -194,15 +194,15 @@ static bool genInterpolationResult(STimeSliceOperatorInfo* pSliceInfo, SExprSupp
if
(
pDst
->
info
.
type
==
TSDB_DATA_TYPE_FLOAT
)
{
if
(
pDst
->
info
.
type
==
TSDB_DATA_TYPE_FLOAT
)
{
float
v
=
0
;
float
v
=
0
;
GET_TYPED_DATA
(
v
,
float
,
pVar
->
nType
,
&
pVar
->
i
);
GET_TYPED_DATA
(
v
,
float
,
pVar
->
nType
,
&
pVar
->
i
);
colData
Append
(
pDst
,
rows
,
(
char
*
)
&
v
,
false
);
colData
SetVal
(
pDst
,
rows
,
(
char
*
)
&
v
,
false
);
}
else
if
(
pDst
->
info
.
type
==
TSDB_DATA_TYPE_DOUBLE
)
{
}
else
if
(
pDst
->
info
.
type
==
TSDB_DATA_TYPE_DOUBLE
)
{
double
v
=
0
;
double
v
=
0
;
GET_TYPED_DATA
(
v
,
double
,
pVar
->
nType
,
&
pVar
->
i
);
GET_TYPED_DATA
(
v
,
double
,
pVar
->
nType
,
&
pVar
->
i
);
colData
Append
(
pDst
,
rows
,
(
char
*
)
&
v
,
false
);
colData
SetVal
(
pDst
,
rows
,
(
char
*
)
&
v
,
false
);
}
else
if
(
IS_SIGNED_NUMERIC_TYPE
(
pDst
->
info
.
type
))
{
}
else
if
(
IS_SIGNED_NUMERIC_TYPE
(
pDst
->
info
.
type
))
{
int64_t
v
=
0
;
int64_t
v
=
0
;
GET_TYPED_DATA
(
v
,
int64_t
,
pVar
->
nType
,
&
pVar
->
i
);
GET_TYPED_DATA
(
v
,
int64_t
,
pVar
->
nType
,
&
pVar
->
i
);
colData
Append
(
pDst
,
rows
,
(
char
*
)
&
v
,
false
);
colData
SetVal
(
pDst
,
rows
,
(
char
*
)
&
v
,
false
);
}
}
break
;
break
;
}
}
...
@@ -231,7 +231,7 @@ static bool genInterpolationResult(STimeSliceOperatorInfo* pSliceInfo, SExprSupp
...
@@ -231,7 +231,7 @@ static bool genInterpolationResult(STimeSliceOperatorInfo* pSliceInfo, SExprSupp
current
.
val
=
taosMemoryCalloc
(
pLinearInfo
->
bytes
,
1
);
current
.
val
=
taosMemoryCalloc
(
pLinearInfo
->
bytes
,
1
);
taosGetLinearInterpolationVal
(
&
current
,
pLinearInfo
->
type
,
&
start
,
&
end
,
pLinearInfo
->
type
);
taosGetLinearInterpolationVal
(
&
current
,
pLinearInfo
->
type
,
&
start
,
&
end
,
pLinearInfo
->
type
);
colData
Append
(
pDst
,
rows
,
(
char
*
)
current
.
val
,
false
);
colData
SetVal
(
pDst
,
rows
,
(
char
*
)
current
.
val
,
false
);
taosMemoryFree
(
current
.
val
);
taosMemoryFree
(
current
.
val
);
break
;
break
;
...
@@ -244,7 +244,7 @@ static bool genInterpolationResult(STimeSliceOperatorInfo* pSliceInfo, SExprSupp
...
@@ -244,7 +244,7 @@ static bool genInterpolationResult(STimeSliceOperatorInfo* pSliceInfo, SExprSupp
SGroupKeys
*
pkey
=
taosArrayGet
(
pSliceInfo
->
pPrevRow
,
srcSlot
);
SGroupKeys
*
pkey
=
taosArrayGet
(
pSliceInfo
->
pPrevRow
,
srcSlot
);
if
(
pkey
->
isNull
==
false
)
{
if
(
pkey
->
isNull
==
false
)
{
colData
Append
(
pDst
,
rows
,
pkey
->
pData
,
false
);
colData
SetVal
(
pDst
,
rows
,
pkey
->
pData
,
false
);
}
else
{
}
else
{
colDataAppendNULL
(
pDst
,
rows
);
colDataAppendNULL
(
pDst
,
rows
);
}
}
...
@@ -259,7 +259,7 @@ static bool genInterpolationResult(STimeSliceOperatorInfo* pSliceInfo, SExprSupp
...
@@ -259,7 +259,7 @@ static bool genInterpolationResult(STimeSliceOperatorInfo* pSliceInfo, SExprSupp
SGroupKeys
*
pkey
=
taosArrayGet
(
pSliceInfo
->
pNextRow
,
srcSlot
);
SGroupKeys
*
pkey
=
taosArrayGet
(
pSliceInfo
->
pNextRow
,
srcSlot
);
if
(
pkey
->
isNull
==
false
)
{
if
(
pkey
->
isNull
==
false
)
{
colData
Append
(
pDst
,
rows
,
pkey
->
pData
,
false
);
colData
SetVal
(
pDst
,
rows
,
pkey
->
pData
,
false
);
}
else
{
}
else
{
colDataAppendNULL
(
pDst
,
rows
);
colDataAppendNULL
(
pDst
,
rows
);
}
}
...
@@ -289,7 +289,7 @@ static void addCurrentRowToResult(STimeSliceOperatorInfo* pSliceInfo, SExprSupp*
...
@@ -289,7 +289,7 @@ static void addCurrentRowToResult(STimeSliceOperatorInfo* pSliceInfo, SExprSupp*
SColumnInfoData
*
pDst
=
taosArrayGet
(
pResBlock
->
pDataBlock
,
dstSlot
);
SColumnInfoData
*
pDst
=
taosArrayGet
(
pResBlock
->
pDataBlock
,
dstSlot
);
if
(
IS_TIMESTAMP_TYPE
(
pExprInfo
->
base
.
resSchema
.
type
))
{
if
(
IS_TIMESTAMP_TYPE
(
pExprInfo
->
base
.
resSchema
.
type
))
{
colData
Append
(
pDst
,
pResBlock
->
info
.
rows
,
(
char
*
)
&
pSliceInfo
->
current
,
false
);
colData
SetVal
(
pDst
,
pResBlock
->
info
.
rows
,
(
char
*
)
&
pSliceInfo
->
current
,
false
);
}
else
{
}
else
{
int32_t
srcSlot
=
pExprInfo
->
base
.
pParam
[
0
].
pCol
->
slotId
;
int32_t
srcSlot
=
pExprInfo
->
base
.
pParam
[
0
].
pCol
->
slotId
;
SColumnInfoData
*
pSrc
=
taosArrayGet
(
pSrcBlock
->
pDataBlock
,
srcSlot
);
SColumnInfoData
*
pSrc
=
taosArrayGet
(
pSrcBlock
->
pDataBlock
,
srcSlot
);
...
@@ -300,7 +300,7 @@ static void addCurrentRowToResult(STimeSliceOperatorInfo* pSliceInfo, SExprSupp*
...
@@ -300,7 +300,7 @@ static void addCurrentRowToResult(STimeSliceOperatorInfo* pSliceInfo, SExprSupp*
}
}
char
*
v
=
colDataGetData
(
pSrc
,
index
);
char
*
v
=
colDataGetData
(
pSrc
,
index
);
colData
Append
(
pDst
,
pResBlock
->
info
.
rows
,
v
,
false
);
colData
SetVal
(
pDst
,
pResBlock
->
info
.
rows
,
v
,
false
);
}
}
}
}
...
...
source/libs/executor/src/timewindowoperator.c
浏览文件 @
8d187efc
...
@@ -2272,11 +2272,11 @@ static void doBuildPullDataBlock(SArray* array, int32_t* pIndex, SSDataBlock* pB
...
@@ -2272,11 +2272,11 @@ static void doBuildPullDataBlock(SArray* array, int32_t* pIndex, SSDataBlock* pB
SColumnInfoData
*
pCalEndTs
=
(
SColumnInfoData
*
)
taosArrayGet
(
pBlock
->
pDataBlock
,
CALCULATE_END_TS_COLUMN_INDEX
);
SColumnInfoData
*
pCalEndTs
=
(
SColumnInfoData
*
)
taosArrayGet
(
pBlock
->
pDataBlock
,
CALCULATE_END_TS_COLUMN_INDEX
);
for
(;
(
*
pIndex
)
<
size
;
(
*
pIndex
)
++
)
{
for
(;
(
*
pIndex
)
<
size
;
(
*
pIndex
)
++
)
{
SPullWindowInfo
*
pWin
=
taosArrayGet
(
array
,
(
*
pIndex
));
SPullWindowInfo
*
pWin
=
taosArrayGet
(
array
,
(
*
pIndex
));
colData
Append
(
pStartTs
,
pBlock
->
info
.
rows
,
(
const
char
*
)
&
pWin
->
window
.
skey
,
false
);
colData
SetVal
(
pStartTs
,
pBlock
->
info
.
rows
,
(
const
char
*
)
&
pWin
->
window
.
skey
,
false
);
colData
Append
(
pEndTs
,
pBlock
->
info
.
rows
,
(
const
char
*
)
&
pWin
->
window
.
ekey
,
false
);
colData
SetVal
(
pEndTs
,
pBlock
->
info
.
rows
,
(
const
char
*
)
&
pWin
->
window
.
ekey
,
false
);
colData
Append
(
pGroupId
,
pBlock
->
info
.
rows
,
(
const
char
*
)
&
pWin
->
groupId
,
false
);
colData
SetVal
(
pGroupId
,
pBlock
->
info
.
rows
,
(
const
char
*
)
&
pWin
->
groupId
,
false
);
colData
Append
(
pCalStartTs
,
pBlock
->
info
.
rows
,
(
const
char
*
)
&
pWin
->
calWin
.
skey
,
false
);
colData
SetVal
(
pCalStartTs
,
pBlock
->
info
.
rows
,
(
const
char
*
)
&
pWin
->
calWin
.
skey
,
false
);
colData
Append
(
pCalEndTs
,
pBlock
->
info
.
rows
,
(
const
char
*
)
&
pWin
->
calWin
.
ekey
,
false
);
colData
SetVal
(
pCalEndTs
,
pBlock
->
info
.
rows
,
(
const
char
*
)
&
pWin
->
calWin
.
ekey
,
false
);
pBlock
->
info
.
rows
++
;
pBlock
->
info
.
rows
++
;
}
}
if
((
*
pIndex
)
==
size
)
{
if
((
*
pIndex
)
==
size
)
{
...
@@ -3273,13 +3273,13 @@ void doBuildDeleteDataBlock(SOperatorInfo* pOp, SSHashObj* pStDeleted, SSDataBlo
...
@@ -3273,13 +3273,13 @@ void doBuildDeleteDataBlock(SOperatorInfo* pOp, SSHashObj* pStDeleted, SSDataBlo
}
}
SSessionKey
*
res
=
tSimpleHashGetKey
(
*
Ite
,
&
keyLen
);
SSessionKey
*
res
=
tSimpleHashGetKey
(
*
Ite
,
&
keyLen
);
SColumnInfoData
*
pStartTsCol
=
taosArrayGet
(
pBlock
->
pDataBlock
,
START_TS_COLUMN_INDEX
);
SColumnInfoData
*
pStartTsCol
=
taosArrayGet
(
pBlock
->
pDataBlock
,
START_TS_COLUMN_INDEX
);
colData
Append
(
pStartTsCol
,
pBlock
->
info
.
rows
,
(
const
char
*
)
&
res
->
win
.
skey
,
false
);
colData
SetVal
(
pStartTsCol
,
pBlock
->
info
.
rows
,
(
const
char
*
)
&
res
->
win
.
skey
,
false
);
SColumnInfoData
*
pEndTsCol
=
taosArrayGet
(
pBlock
->
pDataBlock
,
END_TS_COLUMN_INDEX
);
SColumnInfoData
*
pEndTsCol
=
taosArrayGet
(
pBlock
->
pDataBlock
,
END_TS_COLUMN_INDEX
);
colData
Append
(
pEndTsCol
,
pBlock
->
info
.
rows
,
(
const
char
*
)
&
res
->
win
.
skey
,
false
);
colData
SetVal
(
pEndTsCol
,
pBlock
->
info
.
rows
,
(
const
char
*
)
&
res
->
win
.
skey
,
false
);
SColumnInfoData
*
pUidCol
=
taosArrayGet
(
pBlock
->
pDataBlock
,
UID_COLUMN_INDEX
);
SColumnInfoData
*
pUidCol
=
taosArrayGet
(
pBlock
->
pDataBlock
,
UID_COLUMN_INDEX
);
colDataAppendNULL
(
pUidCol
,
pBlock
->
info
.
rows
);
colDataAppendNULL
(
pUidCol
,
pBlock
->
info
.
rows
);
SColumnInfoData
*
pGpCol
=
taosArrayGet
(
pBlock
->
pDataBlock
,
GROUPID_COLUMN_INDEX
);
SColumnInfoData
*
pGpCol
=
taosArrayGet
(
pBlock
->
pDataBlock
,
GROUPID_COLUMN_INDEX
);
colData
Append
(
pGpCol
,
pBlock
->
info
.
rows
,
(
const
char
*
)
&
res
->
groupId
,
false
);
colData
SetVal
(
pGpCol
,
pBlock
->
info
.
rows
,
(
const
char
*
)
&
res
->
groupId
,
false
);
SColumnInfoData
*
pCalStCol
=
taosArrayGet
(
pBlock
->
pDataBlock
,
CALCULATE_START_TS_COLUMN_INDEX
);
SColumnInfoData
*
pCalStCol
=
taosArrayGet
(
pBlock
->
pDataBlock
,
CALCULATE_START_TS_COLUMN_INDEX
);
colDataAppendNULL
(
pCalStCol
,
pBlock
->
info
.
rows
);
colDataAppendNULL
(
pCalStCol
,
pBlock
->
info
.
rows
);
SColumnInfoData
*
pCalEdCol
=
taosArrayGet
(
pBlock
->
pDataBlock
,
CALCULATE_END_TS_COLUMN_INDEX
);
SColumnInfoData
*
pCalEdCol
=
taosArrayGet
(
pBlock
->
pDataBlock
,
CALCULATE_END_TS_COLUMN_INDEX
);
...
@@ -3294,7 +3294,7 @@ void doBuildDeleteDataBlock(SOperatorInfo* pOp, SSHashObj* pStDeleted, SSDataBlo
...
@@ -3294,7 +3294,7 @@ void doBuildDeleteDataBlock(SOperatorInfo* pOp, SSHashObj* pStDeleted, SSDataBlo
}
else
{
}
else
{
char
parTbName
[
VARSTR_HEADER_SIZE
+
TSDB_TABLE_NAME_LEN
];
char
parTbName
[
VARSTR_HEADER_SIZE
+
TSDB_TABLE_NAME_LEN
];
STR_WITH_MAXSIZE_TO_VARSTR
(
parTbName
,
tbname
,
sizeof
(
parTbName
));
STR_WITH_MAXSIZE_TO_VARSTR
(
parTbName
,
tbname
,
sizeof
(
parTbName
));
colData
Append
(
pTableCol
,
pBlock
->
info
.
rows
,
(
const
char
*
)
parTbName
,
false
);
colData
SetVal
(
pTableCol
,
pBlock
->
info
.
rows
,
(
const
char
*
)
parTbName
,
false
);
tdbFree
(
tbname
);
tdbFree
(
tbname
);
}
}
pBlock
->
info
.
rows
+=
1
;
pBlock
->
info
.
rows
+=
1
;
...
...
source/libs/executor/src/tsort.c
浏览文件 @
8d187efc
...
@@ -320,10 +320,10 @@ static void appendOneRowToDataBlock(SSDataBlock* pBlock, const SSDataBlock* pSou
...
@@ -320,10 +320,10 @@ static void appendOneRowToDataBlock(SSDataBlock* pBlock, const SSDataBlock* pSou
bool
isNull
=
colDataIsNull
(
pSrcColInfo
,
pSource
->
info
.
rows
,
*
rowIndex
,
NULL
);
bool
isNull
=
colDataIsNull
(
pSrcColInfo
,
pSource
->
info
.
rows
,
*
rowIndex
,
NULL
);
if
(
isNull
)
{
if
(
isNull
)
{
colData
Append
(
pColInfo
,
pBlock
->
info
.
rows
,
NULL
,
true
);
colData
SetVal
(
pColInfo
,
pBlock
->
info
.
rows
,
NULL
,
true
);
}
else
{
}
else
{
char
*
pData
=
colDataGetData
(
pSrcColInfo
,
*
rowIndex
);
char
*
pData
=
colDataGetData
(
pSrcColInfo
,
*
rowIndex
);
colData
Append
(
pColInfo
,
pBlock
->
info
.
rows
,
pData
,
false
);
colData
SetVal
(
pColInfo
,
pBlock
->
info
.
rows
,
pData
,
false
);
}
}
}
}
...
...
source/libs/executor/test/executorTests.cpp
浏览文件 @
8d187efc
...
@@ -110,13 +110,13 @@ SSDataBlock* getDummyBlock(SOperatorInfo* pOperator) {
...
@@ -110,13 +110,13 @@ SSDataBlock* getDummyBlock(SOperatorInfo* pOperator) {
v
=
taosRand
();
v
=
taosRand
();
}
}
colData
Append
(
pColInfo
,
i
,
reinterpret_cast
<
const
char
*>
(
&
v
),
false
);
colData
SetVal
(
pColInfo
,
i
,
reinterpret_cast
<
const
char
*>
(
&
v
),
false
);
// sprintf(buf, "this is %d row", i);
// sprintf(buf, "this is %d row", i);
// STR_TO_VARSTR(b1, buf);
// STR_TO_VARSTR(b1, buf);
//
//
// SColumnInfoData* pColInfo2 = static_cast<SColumnInfoData*>(TARRAY_GET_ELEM(pBlock->pDataBlock, 1));
// SColumnInfoData* pColInfo2 = static_cast<SColumnInfoData*>(TARRAY_GET_ELEM(pBlock->pDataBlock, 1));
// colData
Append
(pColInfo2, i, b1, false);
// colData
SetVal
(pColInfo2, i, b1, false);
}
}
pBlock
->
info
.
rows
=
pInfo
->
numOfRowsPerPage
;
pBlock
->
info
.
rows
=
pInfo
->
numOfRowsPerPage
;
...
@@ -155,7 +155,7 @@ SSDataBlock* get2ColsDummyBlock(SOperatorInfo* pOperator) {
...
@@ -155,7 +155,7 @@ SSDataBlock* get2ColsDummyBlock(SOperatorInfo* pOperator) {
SColumnInfoData
*
pColInfo
=
static_cast
<
SColumnInfoData
*>
(
TARRAY_GET_ELEM
(
pBlock
->
pDataBlock
,
0
));
SColumnInfoData
*
pColInfo
=
static_cast
<
SColumnInfoData
*>
(
TARRAY_GET_ELEM
(
pBlock
->
pDataBlock
,
0
));
ts
=
(
++
pInfo
->
tsStart
);
ts
=
(
++
pInfo
->
tsStart
);
colData
Append
(
pColInfo
,
i
,
reinterpret_cast
<
const
char
*>
(
&
ts
),
false
);
colData
SetVal
(
pColInfo
,
i
,
reinterpret_cast
<
const
char
*>
(
&
ts
),
false
);
SColumnInfoData
*
pColInfo1
=
static_cast
<
SColumnInfoData
*>
(
TARRAY_GET_ELEM
(
pBlock
->
pDataBlock
,
1
));
SColumnInfoData
*
pColInfo1
=
static_cast
<
SColumnInfoData
*>
(
TARRAY_GET_ELEM
(
pBlock
->
pDataBlock
,
1
));
if
(
pInfo
->
type
==
data_desc
)
{
if
(
pInfo
->
type
==
data_desc
)
{
...
@@ -166,13 +166,13 @@ SSDataBlock* get2ColsDummyBlock(SOperatorInfo* pOperator) {
...
@@ -166,13 +166,13 @@ SSDataBlock* get2ColsDummyBlock(SOperatorInfo* pOperator) {
v
=
taosRand
();
v
=
taosRand
();
}
}
colData
Append
(
pColInfo1
,
i
,
reinterpret_cast
<
const
char
*>
(
&
v
),
false
);
colData
SetVal
(
pColInfo1
,
i
,
reinterpret_cast
<
const
char
*>
(
&
v
),
false
);
// sprintf(buf, "this is %d row", i);
// sprintf(buf, "this is %d row", i);
// STR_TO_VARSTR(b1, buf);
// STR_TO_VARSTR(b1, buf);
//
//
// SColumnInfoData* pColInfo2 = static_cast<SColumnInfoData*>(TARRAY_GET_ELEM(pBlock->pDataBlock, 1));
// SColumnInfoData* pColInfo2 = static_cast<SColumnInfoData*>(TARRAY_GET_ELEM(pBlock->pDataBlock, 1));
// colData
Append
(pColInfo2, i, b1, false);
// colData
SetVal
(pColInfo2, i, b1, false);
}
}
pBlock
->
info
.
rows
=
pInfo
->
numOfRowsPerPage
;
pBlock
->
info
.
rows
=
pInfo
->
numOfRowsPerPage
;
...
...
source/libs/executor/test/sortTests.cpp
浏览文件 @
8d187efc
...
@@ -91,7 +91,7 @@ SSDataBlock* getSingleColDummyBlock(void* param) {
...
@@ -91,7 +91,7 @@ SSDataBlock* getSingleColDummyBlock(void* param) {
return
NULL
;
return
NULL
;
}
}
varDataSetLen
(
str
,
len
);
varDataSetLen
(
str
,
len
);
colData
Append
(
pColInfo
,
i
,
reinterpret_cast
<
const
char
*>
(
str
),
false
);
colData
SetVal
(
pColInfo
,
i
,
reinterpret_cast
<
const
char
*>
(
str
),
false
);
pBlock
->
info
.
hasVarCol
=
true
;
pBlock
->
info
.
hasVarCol
=
true
;
printf
(
"nchar: %s
\n
"
,
strOri
);
printf
(
"nchar: %s
\n
"
,
strOri
);
}
else
if
(
pInfo
->
type
==
TSDB_DATA_TYPE_BINARY
)
{
}
else
if
(
pInfo
->
type
==
TSDB_DATA_TYPE_BINARY
)
{
...
@@ -99,12 +99,12 @@ SSDataBlock* getSingleColDummyBlock(void* param) {
...
@@ -99,12 +99,12 @@ SSDataBlock* getSingleColDummyBlock(void* param) {
char
str
[
64
]
=
{
0
};
char
str
[
64
]
=
{
0
};
taosRandStr
(
varDataVal
(
str
),
size
);
taosRandStr
(
varDataVal
(
str
),
size
);
varDataSetLen
(
str
,
size
);
varDataSetLen
(
str
,
size
);
colData
Append
(
pColInfo
,
i
,
reinterpret_cast
<
const
char
*>
(
str
),
false
);
colData
SetVal
(
pColInfo
,
i
,
reinterpret_cast
<
const
char
*>
(
str
),
false
);
pBlock
->
info
.
hasVarCol
=
true
;
pBlock
->
info
.
hasVarCol
=
true
;
printf
(
"binary: %s
\n
"
,
varDataVal
(
str
));
printf
(
"binary: %s
\n
"
,
varDataVal
(
str
));
}
else
if
(
pInfo
->
type
==
TSDB_DATA_TYPE_DOUBLE
||
pInfo
->
type
==
TSDB_DATA_TYPE_FLOAT
)
{
}
else
if
(
pInfo
->
type
==
TSDB_DATA_TYPE_DOUBLE
||
pInfo
->
type
==
TSDB_DATA_TYPE_FLOAT
)
{
double
v
=
rand_f2
();
double
v
=
rand_f2
();
colData
Append
(
pColInfo
,
i
,
reinterpret_cast
<
const
char
*>
(
&
v
),
false
);
colData
SetVal
(
pColInfo
,
i
,
reinterpret_cast
<
const
char
*>
(
&
v
),
false
);
printf
(
"float: %f
\n
"
,
v
);
printf
(
"float: %f
\n
"
,
v
);
}
else
{
}
else
{
int64_t
v
=
++
pInfo
->
startVal
;
int64_t
v
=
++
pInfo
->
startVal
;
...
@@ -115,7 +115,7 @@ SSDataBlock* getSingleColDummyBlock(void* param) {
...
@@ -115,7 +115,7 @@ SSDataBlock* getSingleColDummyBlock(void* param) {
memcpy
(
result
,
(
char
*
)(
&
v
)
+
sizeof
(
int64_t
)
-
tDataTypes
[
pInfo
->
type
].
bytes
,
tDataTypes
[
pInfo
->
type
].
bytes
);
memcpy
(
result
,
(
char
*
)(
&
v
)
+
sizeof
(
int64_t
)
-
tDataTypes
[
pInfo
->
type
].
bytes
,
tDataTypes
[
pInfo
->
type
].
bytes
);
}
}
colData
Append
(
pColInfo
,
i
,
result
,
false
);
colData
SetVal
(
pColInfo
,
i
,
result
,
false
);
printf
(
"int: %"
PRId64
"
\n
"
,
v
);
printf
(
"int: %"
PRId64
"
\n
"
,
v
);
taosMemoryFree
(
result
);
taosMemoryFree
(
result
);
}
}
...
...
source/libs/function/src/builtinsimpl.c
浏览文件 @
8d187efc
此差异已折叠。
点击以展开。
source/libs/function/src/detail/tavgfunction.c
浏览文件 @
8d187efc
...
@@ -847,7 +847,7 @@ int32_t avgPartialFinalize(SqlFunctionCtx* pCtx, SSDataBlock* pBlock) {
...
@@ -847,7 +847,7 @@ int32_t avgPartialFinalize(SqlFunctionCtx* pCtx, SSDataBlock* pBlock) {
int32_t
slotId
=
pCtx
->
pExpr
->
base
.
resSchema
.
slotId
;
int32_t
slotId
=
pCtx
->
pExpr
->
base
.
resSchema
.
slotId
;
SColumnInfoData
*
pCol
=
taosArrayGet
(
pBlock
->
pDataBlock
,
slotId
);
SColumnInfoData
*
pCol
=
taosArrayGet
(
pBlock
->
pDataBlock
,
slotId
);
colData
Append
(
pCol
,
pBlock
->
info
.
rows
,
res
,
false
);
colData
SetVal
(
pCol
,
pBlock
->
info
.
rows
,
res
,
false
);
taosMemoryFree
(
res
);
taosMemoryFree
(
res
);
return
pResInfo
->
numOfRes
;
return
pResInfo
->
numOfRes
;
...
...
source/libs/function/src/tfunctionInt.c
浏览文件 @
8d187efc
...
@@ -47,11 +47,11 @@ int32_t getNumOfResult(SqlFunctionCtx* pCtx, int32_t num, SSDataBlock* pResBlock
...
@@ -47,11 +47,11 @@ int32_t getNumOfResult(SqlFunctionCtx* pCtx, int32_t num, SSDataBlock* pResBlock
SResultRowEntryInfo
*
pResInfo
=
GET_RES_INFO
(
&
pCtx
[
i
]);
SResultRowEntryInfo
*
pResInfo
=
GET_RES_INFO
(
&
pCtx
[
i
]);
if
(
pResInfo
->
numOfRes
==
0
)
{
if
(
pResInfo
->
numOfRes
==
0
)
{
for
(
int32_t
j
=
0
;
j
<
pResInfo
->
numOfRes
;
++
j
)
{
for
(
int32_t
j
=
0
;
j
<
pResInfo
->
numOfRes
;
++
j
)
{
colData
Append
(
pCol
,
j
,
NULL
,
true
);
// TODO add set null data api
colData
SetVal
(
pCol
,
j
,
NULL
,
true
);
// TODO add set null data api
}
}
}
else
{
}
else
{
for
(
int32_t
j
=
0
;
j
<
pResInfo
->
numOfRes
;
++
j
)
{
for
(
int32_t
j
=
0
;
j
<
pResInfo
->
numOfRes
;
++
j
)
{
colData
Append
(
pCol
,
j
,
GET_ROWCELL_INTERBUF
(
pResInfo
),
false
);
colData
SetVal
(
pCol
,
j
,
GET_ROWCELL_INTERBUF
(
pResInfo
),
false
);
}
}
}
}
}
}
...
...
source/libs/function/src/tudf.c
浏览文件 @
8d187efc
...
@@ -864,13 +864,13 @@ int32_t convertScalarParamToDataBlock(SScalarParam *input, int32_t numOfCols, SS
...
@@ -864,13 +864,13 @@ int32_t convertScalarParamToDataBlock(SScalarParam *input, int32_t numOfCols, SS
int
expandRows
=
numOfRows
-
startRow
;
int
expandRows
=
numOfRows
-
startRow
;
bool
isNull
=
colDataIsNull_s
(
pColInfoData
,
(
input
+
i
)
->
numOfRows
-
1
);
bool
isNull
=
colDataIsNull_s
(
pColInfoData
,
(
input
+
i
)
->
numOfRows
-
1
);
if
(
isNull
)
{
if
(
isNull
)
{
colData
Append
NNULL
(
pDest
,
startRow
,
expandRows
);
colData
Set
NNULL
(
pDest
,
startRow
,
expandRows
);
}
else
{
}
else
{
char
*
src
=
colDataGetData
(
pColInfoData
,
(
input
+
i
)
->
numOfRows
-
1
);
char
*
src
=
colDataGetData
(
pColInfoData
,
(
input
+
i
)
->
numOfRows
-
1
);
for
(
int
j
=
0
;
j
<
expandRows
;
++
j
)
{
for
(
int
j
=
0
;
j
<
expandRows
;
++
j
)
{
colData
Append
(
pDest
,
startRow
+
j
,
src
,
false
);
colData
SetVal
(
pDest
,
startRow
+
j
,
src
,
false
);
}
}
//colData
Append
NItems(pColInfoData, startRow, data, expandRows);
//colData
Set
NItems(pColInfoData, startRow, data, expandRows);
}
}
}
}
}
}
...
...
source/libs/function/test/runUdf.c
浏览文件 @
8d187efc
...
@@ -55,7 +55,7 @@ int scalarFuncTest() {
...
@@ -55,7 +55,7 @@ int scalarFuncTest() {
SColumnInfoData
*
pCol
=
taosArrayGet
(
pBlock
->
pDataBlock
,
0
);
SColumnInfoData
*
pCol
=
taosArrayGet
(
pBlock
->
pDataBlock
,
0
);
for
(
int32_t
j
=
0
;
j
<
pBlock
->
info
.
rows
;
++
j
)
{
for
(
int32_t
j
=
0
;
j
<
pBlock
->
info
.
rows
;
++
j
)
{
colData
Append
Int32
(
pCol
,
j
,
&
j
);
colData
Set
Int32
(
pCol
,
j
,
&
j
);
}
}
SScalarParam
input
=
{
0
};
SScalarParam
input
=
{
0
};
...
@@ -99,7 +99,7 @@ int aggregateFuncTest() {
...
@@ -99,7 +99,7 @@ int aggregateFuncTest() {
SColumnInfoData
*
pColInfo
=
bdGetColumnInfoData
(
pBlock
,
0
);
SColumnInfoData
*
pColInfo
=
bdGetColumnInfoData
(
pBlock
,
0
);
for
(
int32_t
j
=
0
;
j
<
pBlock
->
info
.
rows
;
++
j
)
{
for
(
int32_t
j
=
0
;
j
<
pBlock
->
info
.
rows
;
++
j
)
{
colData
Append
Int32
(
pColInfo
,
j
,
&
j
);
colData
Set
Int32
(
pColInfo
,
j
,
&
j
);
}
}
SUdfInterBuf
buf
=
{
0
};
SUdfInterBuf
buf
=
{
0
};
...
...
source/libs/scalar/src/scalar.c
浏览文件 @
8d187efc
...
@@ -69,7 +69,7 @@ int32_t sclConvertValueToSclParam(SValueNode *pValueNode, SScalarParam *out, int
...
@@ -69,7 +69,7 @@ int32_t sclConvertValueToSclParam(SValueNode *pValueNode, SScalarParam *out, int
return
code
;
return
code
;
}
}
colData
Append
(
in
.
columnData
,
0
,
nodesGetValueFromNode
(
pValueNode
),
false
);
colData
SetVal
(
in
.
columnData
,
0
,
nodesGetValueFromNode
(
pValueNode
),
false
);
colInfoDataEnsureCapacity
(
out
->
columnData
,
1
,
true
);
colInfoDataEnsureCapacity
(
out
->
columnData
,
1
,
true
);
code
=
vectorConvertSingleColImpl
(
&
in
,
out
,
overflow
,
-
1
,
-
1
);
code
=
vectorConvertSingleColImpl
(
&
in
,
out
,
overflow
,
-
1
,
-
1
);
...
@@ -339,7 +339,7 @@ int32_t sclInitParam(SNode *node, SScalarParam *param, SScalarCtx *ctx, int32_t
...
@@ -339,7 +339,7 @@ int32_t sclInitParam(SNode *node, SScalarParam *param, SScalarCtx *ctx, int32_t
if
(
TSDB_DATA_TYPE_NULL
==
valueNode
->
node
.
resType
.
type
||
valueNode
->
isNull
)
{
if
(
TSDB_DATA_TYPE_NULL
==
valueNode
->
node
.
resType
.
type
||
valueNode
->
isNull
)
{
colDataAppendNULL
(
param
->
columnData
,
0
);
colDataAppendNULL
(
param
->
columnData
,
0
);
}
else
{
}
else
{
colData
Append
(
param
->
columnData
,
0
,
nodesGetValueFromNode
(
valueNode
),
false
);
colData
SetVal
(
param
->
columnData
,
0
,
nodesGetValueFromNode
(
valueNode
),
false
);
}
}
break
;
break
;
}
}
...
@@ -605,7 +605,7 @@ int32_t sclWalkCaseWhenList(SScalarCtx *ctx, SNodeList *pList, struct SListCell
...
@@ -605,7 +605,7 @@ int32_t sclWalkCaseWhenList(SScalarCtx *ctx, SNodeList *pList, struct SListCell
if
(
*
equal
)
{
if
(
*
equal
)
{
bool
isNull
=
colDataIsNull_s
(
pThen
->
columnData
,
(
pThen
->
numOfRows
>
1
?
rowIdx
:
0
));
bool
isNull
=
colDataIsNull_s
(
pThen
->
columnData
,
(
pThen
->
numOfRows
>
1
?
rowIdx
:
0
));
char
*
pData
=
isNull
?
NULL
:
colDataGetData
(
pThen
->
columnData
,
(
pThen
->
numOfRows
>
1
?
rowIdx
:
0
));
char
*
pData
=
isNull
?
NULL
:
colDataGetData
(
pThen
->
columnData
,
(
pThen
->
numOfRows
>
1
?
rowIdx
:
0
));
colData
Append
(
output
->
columnData
,
rowIdx
,
pData
,
isNull
);
colData
SetVal
(
output
->
columnData
,
rowIdx
,
pData
,
isNull
);
if
(
0
==
rowIdx
&&
1
==
pCase
->
numOfRows
&&
1
==
pWhen
->
numOfRows
&&
1
==
pThen
->
numOfRows
&&
totalRows
>
1
)
{
if
(
0
==
rowIdx
&&
1
==
pCase
->
numOfRows
&&
1
==
pWhen
->
numOfRows
&&
1
==
pThen
->
numOfRows
&&
totalRows
>
1
)
{
SCL_ERR_JRET
(
sclExtendResRows
(
output
,
output
,
ctx
->
pBlockList
));
SCL_ERR_JRET
(
sclExtendResRows
(
output
,
output
,
ctx
->
pBlockList
));
...
@@ -619,7 +619,7 @@ int32_t sclWalkCaseWhenList(SScalarCtx *ctx, SNodeList *pList, struct SListCell
...
@@ -619,7 +619,7 @@ int32_t sclWalkCaseWhenList(SScalarCtx *ctx, SNodeList *pList, struct SListCell
if
(
pElse
)
{
if
(
pElse
)
{
bool
isNull
=
colDataIsNull_s
(
pElse
->
columnData
,
(
pElse
->
numOfRows
>
1
?
rowIdx
:
0
));
bool
isNull
=
colDataIsNull_s
(
pElse
->
columnData
,
(
pElse
->
numOfRows
>
1
?
rowIdx
:
0
));
char
*
pData
=
isNull
?
NULL
:
colDataGetData
(
pElse
->
columnData
,
(
pElse
->
numOfRows
>
1
?
rowIdx
:
0
));
char
*
pData
=
isNull
?
NULL
:
colDataGetData
(
pElse
->
columnData
,
(
pElse
->
numOfRows
>
1
?
rowIdx
:
0
));
colData
Append
(
output
->
columnData
,
rowIdx
,
pData
,
isNull
);
colData
SetVal
(
output
->
columnData
,
rowIdx
,
pData
,
isNull
);
if
(
0
==
rowIdx
&&
1
==
pCase
->
numOfRows
&&
1
==
pElse
->
numOfRows
&&
totalRows
>
1
)
{
if
(
0
==
rowIdx
&&
1
==
pCase
->
numOfRows
&&
1
==
pElse
->
numOfRows
&&
totalRows
>
1
)
{
SCL_ERR_JRET
(
sclExtendResRows
(
output
,
output
,
ctx
->
pBlockList
));
SCL_ERR_JRET
(
sclExtendResRows
(
output
,
output
,
ctx
->
pBlockList
));
...
@@ -629,7 +629,7 @@ int32_t sclWalkCaseWhenList(SScalarCtx *ctx, SNodeList *pList, struct SListCell
...
@@ -629,7 +629,7 @@ int32_t sclWalkCaseWhenList(SScalarCtx *ctx, SNodeList *pList, struct SListCell
goto
_return
;
goto
_return
;
}
}
colData
Append
(
output
->
columnData
,
rowIdx
,
NULL
,
true
);
colData
SetVal
(
output
->
columnData
,
rowIdx
,
NULL
,
true
);
if
(
0
==
rowIdx
&&
1
==
pCase
->
numOfRows
&&
totalRows
>
1
)
{
if
(
0
==
rowIdx
&&
1
==
pCase
->
numOfRows
&&
totalRows
>
1
)
{
SCL_ERR_JRET
(
sclExtendResRows
(
output
,
output
,
ctx
->
pBlockList
));
SCL_ERR_JRET
(
sclExtendResRows
(
output
,
output
,
ctx
->
pBlockList
));
...
@@ -668,7 +668,7 @@ int32_t sclWalkWhenList(SScalarCtx *ctx, SNodeList *pList, struct SListCell *pCe
...
@@ -668,7 +668,7 @@ int32_t sclWalkWhenList(SScalarCtx *ctx, SNodeList *pList, struct SListCell *pCe
if
(
*
whenValue
)
{
if
(
*
whenValue
)
{
bool
isNull
=
colDataIsNull_s
(
pThen
->
columnData
,
(
pThen
->
numOfRows
>
1
?
rowIdx
:
0
));
bool
isNull
=
colDataIsNull_s
(
pThen
->
columnData
,
(
pThen
->
numOfRows
>
1
?
rowIdx
:
0
));
char
*
pData
=
isNull
?
NULL
:
colDataGetData
(
pThen
->
columnData
,
(
pThen
->
numOfRows
>
1
?
rowIdx
:
0
));
char
*
pData
=
isNull
?
NULL
:
colDataGetData
(
pThen
->
columnData
,
(
pThen
->
numOfRows
>
1
?
rowIdx
:
0
));
colData
Append
(
output
->
columnData
,
rowIdx
,
pData
,
isNull
);
colData
SetVal
(
output
->
columnData
,
rowIdx
,
pData
,
isNull
);
if
(
preSingle
&&
0
==
rowIdx
&&
1
==
pWhen
->
numOfRows
&&
1
==
pThen
->
numOfRows
&&
totalRows
>
1
)
{
if
(
preSingle
&&
0
==
rowIdx
&&
1
==
pWhen
->
numOfRows
&&
1
==
pThen
->
numOfRows
&&
totalRows
>
1
)
{
SCL_ERR_JRET
(
sclExtendResRows
(
output
,
output
,
ctx
->
pBlockList
));
SCL_ERR_JRET
(
sclExtendResRows
(
output
,
output
,
ctx
->
pBlockList
));
...
@@ -687,7 +687,7 @@ int32_t sclWalkWhenList(SScalarCtx *ctx, SNodeList *pList, struct SListCell *pCe
...
@@ -687,7 +687,7 @@ int32_t sclWalkWhenList(SScalarCtx *ctx, SNodeList *pList, struct SListCell *pCe
if
(
pElse
)
{
if
(
pElse
)
{
bool
isNull
=
colDataIsNull_s
(
pElse
->
columnData
,
(
pElse
->
numOfRows
>
1
?
rowIdx
:
0
));
bool
isNull
=
colDataIsNull_s
(
pElse
->
columnData
,
(
pElse
->
numOfRows
>
1
?
rowIdx
:
0
));
char
*
pData
=
isNull
?
NULL
:
colDataGetData
(
pElse
->
columnData
,
(
pElse
->
numOfRows
>
1
?
rowIdx
:
0
));
char
*
pData
=
isNull
?
NULL
:
colDataGetData
(
pElse
->
columnData
,
(
pElse
->
numOfRows
>
1
?
rowIdx
:
0
));
colData
Append
(
output
->
columnData
,
rowIdx
,
pData
,
isNull
);
colData
SetVal
(
output
->
columnData
,
rowIdx
,
pData
,
isNull
);
if
(
preSingle
&&
0
==
rowIdx
&&
1
==
pElse
->
numOfRows
&&
totalRows
>
1
)
{
if
(
preSingle
&&
0
==
rowIdx
&&
1
==
pElse
->
numOfRows
&&
totalRows
>
1
)
{
SCL_ERR_JRET
(
sclExtendResRows
(
output
,
output
,
ctx
->
pBlockList
));
SCL_ERR_JRET
(
sclExtendResRows
(
output
,
output
,
ctx
->
pBlockList
));
...
@@ -697,7 +697,7 @@ int32_t sclWalkWhenList(SScalarCtx *ctx, SNodeList *pList, struct SListCell *pCe
...
@@ -697,7 +697,7 @@ int32_t sclWalkWhenList(SScalarCtx *ctx, SNodeList *pList, struct SListCell *pCe
goto
_return
;
goto
_return
;
}
}
colData
Append
(
output
->
columnData
,
rowIdx
,
NULL
,
true
);
colData
SetVal
(
output
->
columnData
,
rowIdx
,
NULL
,
true
);
if
(
preSingle
&&
0
==
rowIdx
&&
totalRows
>
1
)
{
if
(
preSingle
&&
0
==
rowIdx
&&
totalRows
>
1
)
{
SCL_ERR_JRET
(
sclExtendResRows
(
output
,
output
,
ctx
->
pBlockList
));
SCL_ERR_JRET
(
sclExtendResRows
(
output
,
output
,
ctx
->
pBlockList
));
...
@@ -815,7 +815,7 @@ int32_t sclExecLogic(SLogicConditionNode *node, SScalarCtx *ctx, SScalarParam *o
...
@@ -815,7 +815,7 @@ int32_t sclExecLogic(SLogicConditionNode *node, SScalarCtx *ctx, SScalarParam *o
}
}
if
(
complete
)
{
if
(
complete
)
{
colData
Append
(
output
->
columnData
,
i
,
(
char
*
)
&
value
,
false
);
colData
SetVal
(
output
->
columnData
,
i
,
(
char
*
)
&
value
,
false
);
if
(
value
)
{
if
(
value
)
{
numOfQualified
++
;
numOfQualified
++
;
}
}
...
@@ -920,7 +920,7 @@ int32_t sclExecCaseWhen(SCaseWhenNode *node, SScalarCtx *ctx, SScalarParam *outp
...
@@ -920,7 +920,7 @@ int32_t sclExecCaseWhen(SCaseWhenNode *node, SScalarCtx *ctx, SScalarParam *outp
for
(
int32_t
i
=
0
;
i
<
rowNum
;
++
i
)
{
for
(
int32_t
i
=
0
;
i
<
rowNum
;
++
i
)
{
bool
*
equal
=
(
bool
*
)
colDataGetData
(
comp
.
columnData
,
(
comp
.
numOfRows
>
1
?
i
:
0
));
bool
*
equal
=
(
bool
*
)
colDataGetData
(
comp
.
columnData
,
(
comp
.
numOfRows
>
1
?
i
:
0
));
if
(
*
equal
)
{
if
(
*
equal
)
{
colData
Append
(
output
->
columnData
,
i
,
colDataGetData
(
pThen
->
columnData
,
(
pThen
->
numOfRows
>
1
?
i
:
0
)),
colData
SetVal
(
output
->
columnData
,
i
,
colDataGetData
(
pThen
->
columnData
,
(
pThen
->
numOfRows
>
1
?
i
:
0
)),
colDataIsNull_s
(
pThen
->
columnData
,
(
pThen
->
numOfRows
>
1
?
i
:
0
)));
colDataIsNull_s
(
pThen
->
columnData
,
(
pThen
->
numOfRows
>
1
?
i
:
0
)));
if
(
0
==
i
&&
1
==
pCase
->
numOfRows
&&
1
==
pWhen
->
numOfRows
&&
1
==
pThen
->
numOfRows
&&
rowNum
>
1
)
{
if
(
0
==
i
&&
1
==
pCase
->
numOfRows
&&
1
==
pWhen
->
numOfRows
&&
1
==
pThen
->
numOfRows
&&
rowNum
>
1
)
{
SCL_ERR_JRET
(
sclExtendResRows
(
output
,
output
,
ctx
->
pBlockList
));
SCL_ERR_JRET
(
sclExtendResRows
(
output
,
output
,
ctx
->
pBlockList
));
...
@@ -938,7 +938,7 @@ int32_t sclExecCaseWhen(SCaseWhenNode *node, SScalarCtx *ctx, SScalarParam *outp
...
@@ -938,7 +938,7 @@ int32_t sclExecCaseWhen(SCaseWhenNode *node, SScalarCtx *ctx, SScalarParam *outp
for
(
int32_t
i
=
0
;
i
<
rowNum
;
++
i
)
{
for
(
int32_t
i
=
0
;
i
<
rowNum
;
++
i
)
{
bool
*
whenValue
=
(
bool
*
)
colDataGetData
(
pWhen
->
columnData
,
(
pWhen
->
numOfRows
>
1
?
i
:
0
));
bool
*
whenValue
=
(
bool
*
)
colDataGetData
(
pWhen
->
columnData
,
(
pWhen
->
numOfRows
>
1
?
i
:
0
));
if
(
*
whenValue
)
{
if
(
*
whenValue
)
{
colData
Append
(
output
->
columnData
,
i
,
colDataGetData
(
pThen
->
columnData
,
(
pThen
->
numOfRows
>
1
?
i
:
0
)),
colData
SetVal
(
output
->
columnData
,
i
,
colDataGetData
(
pThen
->
columnData
,
(
pThen
->
numOfRows
>
1
?
i
:
0
)),
colDataIsNull_s
(
pThen
->
columnData
,
(
pThen
->
numOfRows
>
1
?
i
:
0
)));
colDataIsNull_s
(
pThen
->
columnData
,
(
pThen
->
numOfRows
>
1
?
i
:
0
)));
if
(
0
==
i
&&
1
==
pWhen
->
numOfRows
&&
1
==
pThen
->
numOfRows
&&
rowNum
>
1
)
{
if
(
0
==
i
&&
1
==
pWhen
->
numOfRows
&&
1
==
pThen
->
numOfRows
&&
rowNum
>
1
)
{
SCL_ERR_JRET
(
sclExtendResRows
(
output
,
output
,
ctx
->
pBlockList
));
SCL_ERR_JRET
(
sclExtendResRows
(
output
,
output
,
ctx
->
pBlockList
));
...
...
source/libs/scalar/src/sclfunc.c
浏览文件 @
8d187efc
此差异已折叠。
点击以展开。
source/libs/scalar/src/sclvector.c
浏览文件 @
8d187efc
此差异已折叠。
点击以展开。
source/libs/scalar/test/filter/filterTests.cpp
浏览文件 @
8d187efc
...
@@ -111,7 +111,7 @@ void flttMakeColumnNode(SNode **pNode, SSDataBlock **block, int32_t dataType, in
...
@@ -111,7 +111,7 @@ void flttMakeColumnNode(SNode **pNode, SSDataBlock **block, int32_t dataType, in
SColumnInfoData
*
pColumn
=
(
SColumnInfoData
*
)
taosArrayGetLast
(
res
->
pDataBlock
);
SColumnInfoData
*
pColumn
=
(
SColumnInfoData
*
)
taosArrayGetLast
(
res
->
pDataBlock
);
for
(
int32_t
i
=
0
;
i
<
rowNum
;
++
i
)
{
for
(
int32_t
i
=
0
;
i
<
rowNum
;
++
i
)
{
colData
Append
(
pColumn
,
i
,
(
const
char
*
)
value
,
false
);
colData
SetVal
(
pColumn
,
i
,
(
const
char
*
)
value
,
false
);
if
(
IS_VAR_DATA_TYPE
(
dataType
))
{
if
(
IS_VAR_DATA_TYPE
(
dataType
))
{
value
=
(
char
*
)
value
+
varDataTLen
(
value
);
value
=
(
char
*
)
value
+
varDataTLen
(
value
);
}
else
{
}
else
{
...
@@ -135,7 +135,7 @@ void flttMakeColumnNode(SNode **pNode, SSDataBlock **block, int32_t dataType, in
...
@@ -135,7 +135,7 @@ void flttMakeColumnNode(SNode **pNode, SSDataBlock **block, int32_t dataType, in
SColumnInfoData
*
pColumn
=
(
SColumnInfoData
*
)
taosArrayGetLast
(
res
->
pDataBlock
);
SColumnInfoData
*
pColumn
=
(
SColumnInfoData
*
)
taosArrayGetLast
(
res
->
pDataBlock
);
for
(
int32_t
i
=
0
;
i
<
rowNum
;
++
i
)
{
for
(
int32_t
i
=
0
;
i
<
rowNum
;
++
i
)
{
colData
Append
(
pColumn
,
i
,
(
const
char
*
)
value
,
false
);
colData
SetVal
(
pColumn
,
i
,
(
const
char
*
)
value
,
false
);
if
(
IS_VAR_DATA_TYPE
(
dataType
))
{
if
(
IS_VAR_DATA_TYPE
(
dataType
))
{
value
=
(
char
*
)
value
+
varDataTLen
(
value
);
value
=
(
char
*
)
value
+
varDataTLen
(
value
);
}
else
{
}
else
{
...
@@ -634,8 +634,8 @@ TEST(columnTest, binary_column_is_null) {
...
@@ -634,8 +634,8 @@ TEST(columnTest, binary_column_is_null) {
flttMakeColumnNode
(
&
pLeft
,
&
src
,
TSDB_DATA_TYPE_BINARY
,
3
,
rowNum
,
leftv
);
flttMakeColumnNode
(
&
pLeft
,
&
src
,
TSDB_DATA_TYPE_BINARY
,
3
,
rowNum
,
leftv
);
SColumnInfoData
*
pcolumn
=
(
SColumnInfoData
*
)
taosArrayGetLast
(
src
->
pDataBlock
);
SColumnInfoData
*
pcolumn
=
(
SColumnInfoData
*
)
taosArrayGetLast
(
src
->
pDataBlock
);
colData
Append
(
pcolumn
,
2
,
NULL
,
true
);
colData
SetVal
(
pcolumn
,
2
,
NULL
,
true
);
colData
Append
(
pcolumn
,
4
,
NULL
,
true
);
colData
SetVal
(
pcolumn
,
4
,
NULL
,
true
);
flttMakeOpNode
(
&
opNode
,
OP_TYPE_IS_NULL
,
TSDB_DATA_TYPE_BOOL
,
pLeft
,
NULL
);
flttMakeOpNode
(
&
opNode
,
OP_TYPE_IS_NULL
,
TSDB_DATA_TYPE_BOOL
,
pLeft
,
NULL
);
SFilterInfo
*
filter
=
NULL
;
SFilterInfo
*
filter
=
NULL
;
...
@@ -682,7 +682,7 @@ TEST(columnTest, binary_column_is_not_null) {
...
@@ -682,7 +682,7 @@ TEST(columnTest, binary_column_is_not_null) {
flttMakeColumnNode
(
&
pLeft
,
&
src
,
TSDB_DATA_TYPE_BINARY
,
3
,
rowNum
,
leftv
);
flttMakeColumnNode
(
&
pLeft
,
&
src
,
TSDB_DATA_TYPE_BINARY
,
3
,
rowNum
,
leftv
);
SColumnInfoData
*
pcolumn
=
(
SColumnInfoData
*
)
taosArrayGetLast
(
src
->
pDataBlock
);
SColumnInfoData
*
pcolumn
=
(
SColumnInfoData
*
)
taosArrayGetLast
(
src
->
pDataBlock
);
colData
Append
(
pcolumn
,
4
,
NULL
,
true
);
colData
SetVal
(
pcolumn
,
4
,
NULL
,
true
);
flttMakeOpNode
(
&
opNode
,
OP_TYPE_IS_NOT_NULL
,
TSDB_DATA_TYPE_BOOL
,
pLeft
,
NULL
);
flttMakeOpNode
(
&
opNode
,
OP_TYPE_IS_NOT_NULL
,
TSDB_DATA_TYPE_BOOL
,
pLeft
,
NULL
);
...
...
source/libs/scalar/test/scalar/scalarTests.cpp
浏览文件 @
8d187efc
...
@@ -158,7 +158,7 @@ void scltMakeColumnNode(SNode **pNode, SSDataBlock **block, int32_t dataType, in
...
@@ -158,7 +158,7 @@ void scltMakeColumnNode(SNode **pNode, SSDataBlock **block, int32_t dataType, in
res
->
info
.
rows
=
rowNum
;
res
->
info
.
rows
=
rowNum
;
SColumnInfoData
*
pColumn
=
(
SColumnInfoData
*
)
taosArrayGetLast
(
res
->
pDataBlock
);
SColumnInfoData
*
pColumn
=
(
SColumnInfoData
*
)
taosArrayGetLast
(
res
->
pDataBlock
);
for
(
int32_t
i
=
0
;
i
<
rowNum
;
++
i
)
{
for
(
int32_t
i
=
0
;
i
<
rowNum
;
++
i
)
{
colData
Append
(
pColumn
,
i
,
(
const
char
*
)
value
,
false
);
colData
SetVal
(
pColumn
,
i
,
(
const
char
*
)
value
,
false
);
if
(
IS_VAR_DATA_TYPE
(
dataType
))
{
if
(
IS_VAR_DATA_TYPE
(
dataType
))
{
value
=
(
char
*
)
value
+
varDataTLen
(
value
);
value
=
(
char
*
)
value
+
varDataTLen
(
value
);
}
else
{
}
else
{
...
@@ -183,7 +183,7 @@ void scltMakeColumnNode(SNode **pNode, SSDataBlock **block, int32_t dataType, in
...
@@ -183,7 +183,7 @@ void scltMakeColumnNode(SNode **pNode, SSDataBlock **block, int32_t dataType, in
SColumnInfoData
*
pColumn
=
(
SColumnInfoData
*
)
taosArrayGetLast
(
res
->
pDataBlock
);
SColumnInfoData
*
pColumn
=
(
SColumnInfoData
*
)
taosArrayGetLast
(
res
->
pDataBlock
);
for
(
int32_t
i
=
0
;
i
<
rowNum
;
++
i
)
{
for
(
int32_t
i
=
0
;
i
<
rowNum
;
++
i
)
{
colData
Append
(
pColumn
,
i
,
(
const
char
*
)
value
,
false
);
colData
SetVal
(
pColumn
,
i
,
(
const
char
*
)
value
,
false
);
if
(
IS_VAR_DATA_TYPE
(
dataType
))
{
if
(
IS_VAR_DATA_TYPE
(
dataType
))
{
value
=
(
char
*
)
value
+
varDataTLen
(
value
);
value
=
(
char
*
)
value
+
varDataTLen
(
value
);
}
else
{
}
else
{
...
@@ -1880,8 +1880,8 @@ TEST(columnTest, binary_column_is_null) {
...
@@ -1880,8 +1880,8 @@ TEST(columnTest, binary_column_is_null) {
scltMakeColumnNode
(
&
pLeft
,
&
src
,
TSDB_DATA_TYPE_BINARY
,
3
,
rowNum
,
leftv
);
scltMakeColumnNode
(
&
pLeft
,
&
src
,
TSDB_DATA_TYPE_BINARY
,
3
,
rowNum
,
leftv
);
SColumnInfoData
*
pcolumn
=
(
SColumnInfoData
*
)
taosArrayGetLast
(
src
->
pDataBlock
);
SColumnInfoData
*
pcolumn
=
(
SColumnInfoData
*
)
taosArrayGetLast
(
src
->
pDataBlock
);
colData
Append
(
pcolumn
,
2
,
NULL
,
true
);
colData
SetVal
(
pcolumn
,
2
,
NULL
,
true
);
colData
Append
(
pcolumn
,
4
,
NULL
,
true
);
colData
SetVal
(
pcolumn
,
4
,
NULL
,
true
);
scltMakeOpNode
(
&
opNode
,
OP_TYPE_IS_NULL
,
TSDB_DATA_TYPE_BOOL
,
pLeft
,
NULL
);
scltMakeOpNode
(
&
opNode
,
OP_TYPE_IS_NULL
,
TSDB_DATA_TYPE_BOOL
,
pLeft
,
NULL
);
...
@@ -1924,7 +1924,7 @@ TEST(columnTest, binary_column_is_not_null) {
...
@@ -1924,7 +1924,7 @@ TEST(columnTest, binary_column_is_not_null) {
scltMakeColumnNode
(
&
pLeft
,
&
src
,
TSDB_DATA_TYPE_BINARY
,
3
,
rowNum
,
leftv
);
scltMakeColumnNode
(
&
pLeft
,
&
src
,
TSDB_DATA_TYPE_BINARY
,
3
,
rowNum
,
leftv
);
SColumnInfoData
*
pcolumn
=
(
SColumnInfoData
*
)
taosArrayGetLast
(
src
->
pDataBlock
);
SColumnInfoData
*
pcolumn
=
(
SColumnInfoData
*
)
taosArrayGetLast
(
src
->
pDataBlock
);
colData
Append
(
pcolumn
,
4
,
NULL
,
true
);
colData
SetVal
(
pcolumn
,
4
,
NULL
,
true
);
scltMakeOpNode
(
&
opNode
,
OP_TYPE_IS_NOT_NULL
,
TSDB_DATA_TYPE_BOOL
,
pLeft
,
NULL
);
scltMakeOpNode
(
&
opNode
,
OP_TYPE_IS_NOT_NULL
,
TSDB_DATA_TYPE_BOOL
,
pLeft
,
NULL
);
...
@@ -2030,7 +2030,7 @@ void scltMakeDataBlock(SScalarParam **pInput, int32_t type, void *pVal, int32_t
...
@@ -2030,7 +2030,7 @@ void scltMakeDataBlock(SScalarParam **pInput, int32_t type, void *pVal, int32_t
if
(
setVal
)
{
if
(
setVal
)
{
for
(
int32_t
i
=
0
;
i
<
num
;
++
i
)
{
for
(
int32_t
i
=
0
;
i
<
num
;
++
i
)
{
colData
Append
(
input
->
columnData
,
i
,
(
const
char
*
)
pVal
,
false
);
colData
SetVal
(
input
->
columnData
,
i
,
(
const
char
*
)
pVal
,
false
);
}
}
}
else
{
}
else
{
// memset(input->data, 0, num * bytes);
// memset(input->data, 0, num * bytes);
...
@@ -2225,7 +2225,7 @@ TEST(ScalarFunctionTest, absFunction_column) {
...
@@ -2225,7 +2225,7 @@ TEST(ScalarFunctionTest, absFunction_column) {
scltMakeDataBlock
(
&
pOutput
,
type
,
0
,
rowNum
,
false
);
scltMakeDataBlock
(
&
pOutput
,
type
,
0
,
rowNum
,
false
);
for
(
int32_t
i
=
0
;
i
<
rowNum
;
++
i
)
{
for
(
int32_t
i
=
0
;
i
<
rowNum
;
++
i
)
{
int8_t
v
=
val_tinyint
+
i
;
int8_t
v
=
val_tinyint
+
i
;
colData
Append
(
pInput
->
columnData
,
i
,
(
const
char
*
)
&
v
,
false
);
colData
SetVal
(
pInput
->
columnData
,
i
,
(
const
char
*
)
&
v
,
false
);
PRINTF
(
"tiny_int before ABS:%d
\n
"
,
v
);
PRINTF
(
"tiny_int before ABS:%d
\n
"
,
v
);
}
}
...
@@ -2243,7 +2243,7 @@ TEST(ScalarFunctionTest, absFunction_column) {
...
@@ -2243,7 +2243,7 @@ TEST(ScalarFunctionTest, absFunction_column) {
scltMakeDataBlock
(
&
pOutput
,
type
,
0
,
rowNum
,
false
);
scltMakeDataBlock
(
&
pOutput
,
type
,
0
,
rowNum
,
false
);
for
(
int32_t
i
=
0
;
i
<
rowNum
;
++
i
)
{
for
(
int32_t
i
=
0
;
i
<
rowNum
;
++
i
)
{
int8_t
v
=
val_tinyint
+
i
;
int8_t
v
=
val_tinyint
+
i
;
colData
Append
(
pInput
->
columnData
,
i
,
(
const
char
*
)
&
v
,
false
);
colData
SetVal
(
pInput
->
columnData
,
i
,
(
const
char
*
)
&
v
,
false
);
PRINTF
(
"tiny_int before ABS:%d
\n
"
,
v
);
PRINTF
(
"tiny_int before ABS:%d
\n
"
,
v
);
}
}
...
@@ -2263,7 +2263,7 @@ TEST(ScalarFunctionTest, absFunction_column) {
...
@@ -2263,7 +2263,7 @@ TEST(ScalarFunctionTest, absFunction_column) {
scltMakeDataBlock
(
&
pOutput
,
type
,
0
,
rowNum
,
false
);
scltMakeDataBlock
(
&
pOutput
,
type
,
0
,
rowNum
,
false
);
for
(
int32_t
i
=
0
;
i
<
rowNum
;
++
i
)
{
for
(
int32_t
i
=
0
;
i
<
rowNum
;
++
i
)
{
int16_t
v
=
val_smallint
+
i
;
int16_t
v
=
val_smallint
+
i
;
colData
Append
(
pInput
->
columnData
,
i
,
(
const
char
*
)
&
v
,
false
);
colData
SetVal
(
pInput
->
columnData
,
i
,
(
const
char
*
)
&
v
,
false
);
PRINTF
(
"small_int before ABS:%d
\n
"
,
v
);
PRINTF
(
"small_int before ABS:%d
\n
"
,
v
);
}
}
...
@@ -2281,7 +2281,7 @@ TEST(ScalarFunctionTest, absFunction_column) {
...
@@ -2281,7 +2281,7 @@ TEST(ScalarFunctionTest, absFunction_column) {
scltMakeDataBlock
(
&
pOutput
,
type
,
0
,
rowNum
,
false
);
scltMakeDataBlock
(
&
pOutput
,
type
,
0
,
rowNum
,
false
);
for
(
int32_t
i
=
0
;
i
<
rowNum
;
++
i
)
{
for
(
int32_t
i
=
0
;
i
<
rowNum
;
++
i
)
{
int16_t
v
=
val_smallint
+
i
;
int16_t
v
=
val_smallint
+
i
;
colData
Append
(
pInput
->
columnData
,
i
,
(
const
char
*
)
&
v
,
false
);
colData
SetVal
(
pInput
->
columnData
,
i
,
(
const
char
*
)
&
v
,
false
);
PRINTF
(
"small_int before ABS:%d
\n
"
,
v
);
PRINTF
(
"small_int before ABS:%d
\n
"
,
v
);
}
}
...
@@ -2301,7 +2301,7 @@ TEST(ScalarFunctionTest, absFunction_column) {
...
@@ -2301,7 +2301,7 @@ TEST(ScalarFunctionTest, absFunction_column) {
scltMakeDataBlock
(
&
pOutput
,
type
,
0
,
rowNum
,
false
);
scltMakeDataBlock
(
&
pOutput
,
type
,
0
,
rowNum
,
false
);
for
(
int32_t
i
=
0
;
i
<
rowNum
;
++
i
)
{
for
(
int32_t
i
=
0
;
i
<
rowNum
;
++
i
)
{
int32_t
v
=
val_int
+
i
;
int32_t
v
=
val_int
+
i
;
colData
Append
(
pInput
->
columnData
,
i
,
(
const
char
*
)
&
v
,
false
);
colData
SetVal
(
pInput
->
columnData
,
i
,
(
const
char
*
)
&
v
,
false
);
PRINTF
(
"int before ABS:%d
\n
"
,
v
);
PRINTF
(
"int before ABS:%d
\n
"
,
v
);
}
}
...
@@ -2319,7 +2319,7 @@ TEST(ScalarFunctionTest, absFunction_column) {
...
@@ -2319,7 +2319,7 @@ TEST(ScalarFunctionTest, absFunction_column) {
scltMakeDataBlock
(
&
pOutput
,
type
,
0
,
rowNum
,
false
);
scltMakeDataBlock
(
&
pOutput
,
type
,
0
,
rowNum
,
false
);
for
(
int32_t
i
=
0
;
i
<
rowNum
;
++
i
)
{
for
(
int32_t
i
=
0
;
i
<
rowNum
;
++
i
)
{
int32_t
v
=
val_int
+
i
;
int32_t
v
=
val_int
+
i
;
colData
Append
(
pInput
->
columnData
,
i
,
(
const
char
*
)
&
v
,
false
);
colData
SetVal
(
pInput
->
columnData
,
i
,
(
const
char
*
)
&
v
,
false
);
PRINTF
(
"int before ABS:%d
\n
"
,
v
);
PRINTF
(
"int before ABS:%d
\n
"
,
v
);
}
}
...
@@ -2339,7 +2339,7 @@ TEST(ScalarFunctionTest, absFunction_column) {
...
@@ -2339,7 +2339,7 @@ TEST(ScalarFunctionTest, absFunction_column) {
scltMakeDataBlock
(
&
pOutput
,
type
,
0
,
rowNum
,
false
);
scltMakeDataBlock
(
&
pOutput
,
type
,
0
,
rowNum
,
false
);
for
(
int32_t
i
=
0
;
i
<
rowNum
;
++
i
)
{
for
(
int32_t
i
=
0
;
i
<
rowNum
;
++
i
)
{
float
v
=
val_float
+
i
;
float
v
=
val_float
+
i
;
colData
Append
(
pInput
->
columnData
,
i
,
(
const
char
*
)
&
v
,
false
);
colData
SetVal
(
pInput
->
columnData
,
i
,
(
const
char
*
)
&
v
,
false
);
PRINTF
(
"float before ABS:%f
\n
"
,
v
);
PRINTF
(
"float before ABS:%f
\n
"
,
v
);
}
}
...
@@ -2357,7 +2357,7 @@ TEST(ScalarFunctionTest, absFunction_column) {
...
@@ -2357,7 +2357,7 @@ TEST(ScalarFunctionTest, absFunction_column) {
scltMakeDataBlock
(
&
pOutput
,
type
,
0
,
rowNum
,
false
);
scltMakeDataBlock
(
&
pOutput
,
type
,
0
,
rowNum
,
false
);
for
(
int32_t
i
=
0
;
i
<
rowNum
;
++
i
)
{
for
(
int32_t
i
=
0
;
i
<
rowNum
;
++
i
)
{
float
v
=
val_float
+
i
;
float
v
=
val_float
+
i
;
colData
Append
(
pInput
->
columnData
,
i
,
(
const
char
*
)
&
v
,
false
);
colData
SetVal
(
pInput
->
columnData
,
i
,
(
const
char
*
)
&
v
,
false
);
PRINTF
(
"float before ABS:%f
\n
"
,
v
);
PRINTF
(
"float before ABS:%f
\n
"
,
v
);
}
}
...
@@ -2377,7 +2377,7 @@ TEST(ScalarFunctionTest, absFunction_column) {
...
@@ -2377,7 +2377,7 @@ TEST(ScalarFunctionTest, absFunction_column) {
scltMakeDataBlock
(
&
pOutput
,
type
,
0
,
rowNum
,
false
);
scltMakeDataBlock
(
&
pOutput
,
type
,
0
,
rowNum
,
false
);
for
(
int32_t
i
=
0
;
i
<
rowNum
;
++
i
)
{
for
(
int32_t
i
=
0
;
i
<
rowNum
;
++
i
)
{
double
v
=
val_double
+
i
;
double
v
=
val_double
+
i
;
colData
Append
(
pInput
->
columnData
,
i
,
(
const
char
*
)
&
v
,
false
);
colData
SetVal
(
pInput
->
columnData
,
i
,
(
const
char
*
)
&
v
,
false
);
PRINTF
(
"double before ABS:%f
\n
"
,
v
);
PRINTF
(
"double before ABS:%f
\n
"
,
v
);
}
}
...
@@ -2395,7 +2395,7 @@ TEST(ScalarFunctionTest, absFunction_column) {
...
@@ -2395,7 +2395,7 @@ TEST(ScalarFunctionTest, absFunction_column) {
scltMakeDataBlock
(
&
pOutput
,
type
,
0
,
rowNum
,
false
);
scltMakeDataBlock
(
&
pOutput
,
type
,
0
,
rowNum
,
false
);
for
(
int32_t
i
=
0
;
i
<
rowNum
;
++
i
)
{
for
(
int32_t
i
=
0
;
i
<
rowNum
;
++
i
)
{
double
v
=
val_double
+
i
;
double
v
=
val_double
+
i
;
colData
Append
(
pInput
->
columnData
,
i
,
(
const
char
*
)
&
v
,
false
);
colData
SetVal
(
pInput
->
columnData
,
i
,
(
const
char
*
)
&
v
,
false
);
PRINTF
(
"double before ABS:%f
\n
"
,
v
);
PRINTF
(
"double before ABS:%f
\n
"
,
v
);
}
}
...
@@ -2466,7 +2466,7 @@ TEST(ScalarFunctionTest, sinFunction_column) {
...
@@ -2466,7 +2466,7 @@ TEST(ScalarFunctionTest, sinFunction_column) {
scltMakeDataBlock
(
&
pInput
,
type
,
0
,
rowNum
,
false
);
scltMakeDataBlock
(
&
pInput
,
type
,
0
,
rowNum
,
false
);
scltMakeDataBlock
(
&
pOutput
,
otype
,
0
,
rowNum
,
false
);
scltMakeDataBlock
(
&
pOutput
,
otype
,
0
,
rowNum
,
false
);
for
(
int32_t
i
=
0
;
i
<
rowNum
;
++
i
)
{
for
(
int32_t
i
=
0
;
i
<
rowNum
;
++
i
)
{
colData
Append
(
pInput
->
columnData
,
i
,
(
const
char
*
)
&
val_tinyint
[
i
],
false
);
colData
SetVal
(
pInput
->
columnData
,
i
,
(
const
char
*
)
&
val_tinyint
[
i
],
false
);
PRINTF
(
"tiny_int before SIN:%d
\n
"
,
*
(
int8_t
*
)
colDataGetData
(
pInput
->
columnData
,
i
));
PRINTF
(
"tiny_int before SIN:%d
\n
"
,
*
(
int8_t
*
)
colDataGetData
(
pInput
->
columnData
,
i
));
}
}
...
@@ -2485,7 +2485,7 @@ TEST(ScalarFunctionTest, sinFunction_column) {
...
@@ -2485,7 +2485,7 @@ TEST(ScalarFunctionTest, sinFunction_column) {
scltMakeDataBlock
(
&
pInput
,
type
,
0
,
rowNum
,
false
);
scltMakeDataBlock
(
&
pInput
,
type
,
0
,
rowNum
,
false
);
scltMakeDataBlock
(
&
pOutput
,
otype
,
0
,
rowNum
,
false
);
scltMakeDataBlock
(
&
pOutput
,
otype
,
0
,
rowNum
,
false
);
for
(
int32_t
i
=
0
;
i
<
rowNum
;
++
i
)
{
for
(
int32_t
i
=
0
;
i
<
rowNum
;
++
i
)
{
colData
Append
(
pInput
->
columnData
,
i
,
(
const
char
*
)
&
val_float
[
i
],
false
);
colData
SetVal
(
pInput
->
columnData
,
i
,
(
const
char
*
)
&
val_float
[
i
],
false
);
PRINTF
(
"float before SIN:%f
\n
"
,
*
((
float
*
)
colDataGetData
(
pInput
->
columnData
,
i
)));
PRINTF
(
"float before SIN:%f
\n
"
,
*
((
float
*
)
colDataGetData
(
pInput
->
columnData
,
i
)));
}
}
...
@@ -2556,7 +2556,7 @@ TEST(ScalarFunctionTest, cosFunction_column) {
...
@@ -2556,7 +2556,7 @@ TEST(ScalarFunctionTest, cosFunction_column) {
scltMakeDataBlock
(
&
pInput
,
type
,
0
,
rowNum
,
false
);
scltMakeDataBlock
(
&
pInput
,
type
,
0
,
rowNum
,
false
);
scltMakeDataBlock
(
&
pOutput
,
otype
,
0
,
rowNum
,
false
);
scltMakeDataBlock
(
&
pOutput
,
otype
,
0
,
rowNum
,
false
);
for
(
int32_t
i
=
0
;
i
<
rowNum
;
++
i
)
{
for
(
int32_t
i
=
0
;
i
<
rowNum
;
++
i
)
{
colData
Append
(
pInput
->
columnData
,
i
,
(
const
char
*
)
&
val_tinyint
[
i
],
false
);
colData
SetVal
(
pInput
->
columnData
,
i
,
(
const
char
*
)
&
val_tinyint
[
i
],
false
);
PRINTF
(
"tiny_int before COS:%d
\n
"
,
*
(
int8_t
*
)
colDataGetData
(
pInput
->
columnData
,
i
));
PRINTF
(
"tiny_int before COS:%d
\n
"
,
*
(
int8_t
*
)
colDataGetData
(
pInput
->
columnData
,
i
));
}
}
...
@@ -2575,7 +2575,7 @@ TEST(ScalarFunctionTest, cosFunction_column) {
...
@@ -2575,7 +2575,7 @@ TEST(ScalarFunctionTest, cosFunction_column) {
scltMakeDataBlock
(
&
pInput
,
type
,
0
,
rowNum
,
false
);
scltMakeDataBlock
(
&
pInput
,
type
,
0
,
rowNum
,
false
);
scltMakeDataBlock
(
&
pOutput
,
otype
,
0
,
rowNum
,
false
);
scltMakeDataBlock
(
&
pOutput
,
otype
,
0
,
rowNum
,
false
);
for
(
int32_t
i
=
0
;
i
<
rowNum
;
++
i
)
{
for
(
int32_t
i
=
0
;
i
<
rowNum
;
++
i
)
{
colData
Append
(
pInput
->
columnData
,
i
,
(
const
char
*
)
&
val_float
[
i
],
false
);
colData
SetVal
(
pInput
->
columnData
,
i
,
(
const
char
*
)
&
val_float
[
i
],
false
);
PRINTF
(
"float before COS:%f
\n
"
,
*
(
float
*
)
colDataGetData
(
pInput
->
columnData
,
i
));
PRINTF
(
"float before COS:%f
\n
"
,
*
(
float
*
)
colDataGetData
(
pInput
->
columnData
,
i
));
}
}
...
@@ -2646,7 +2646,7 @@ TEST(ScalarFunctionTest, tanFunction_column) {
...
@@ -2646,7 +2646,7 @@ TEST(ScalarFunctionTest, tanFunction_column) {
scltMakeDataBlock
(
&
pInput
,
type
,
0
,
rowNum
,
false
);
scltMakeDataBlock
(
&
pInput
,
type
,
0
,
rowNum
,
false
);
scltMakeDataBlock
(
&
pOutput
,
otype
,
0
,
rowNum
,
false
);
scltMakeDataBlock
(
&
pOutput
,
otype
,
0
,
rowNum
,
false
);
for
(
int32_t
i
=
0
;
i
<
rowNum
;
++
i
)
{
for
(
int32_t
i
=
0
;
i
<
rowNum
;
++
i
)
{
colData
Append
(
pInput
->
columnData
,
i
,
(
const
char
*
)
&
val_tinyint
[
i
],
false
);
colData
SetVal
(
pInput
->
columnData
,
i
,
(
const
char
*
)
&
val_tinyint
[
i
],
false
);
PRINTF
(
"tiny_int before TAN:%d
\n
"
,
*
((
int8_t
*
)
colDataGetData
(
pInput
->
columnData
,
i
)));
PRINTF
(
"tiny_int before TAN:%d
\n
"
,
*
((
int8_t
*
)
colDataGetData
(
pInput
->
columnData
,
i
)));
}
}
...
@@ -2665,7 +2665,7 @@ TEST(ScalarFunctionTest, tanFunction_column) {
...
@@ -2665,7 +2665,7 @@ TEST(ScalarFunctionTest, tanFunction_column) {
scltMakeDataBlock
(
&
pInput
,
type
,
0
,
rowNum
,
false
);
scltMakeDataBlock
(
&
pInput
,
type
,
0
,
rowNum
,
false
);
scltMakeDataBlock
(
&
pOutput
,
otype
,
0
,
rowNum
,
false
);
scltMakeDataBlock
(
&
pOutput
,
otype
,
0
,
rowNum
,
false
);
for
(
int32_t
i
=
0
;
i
<
rowNum
;
++
i
)
{
for
(
int32_t
i
=
0
;
i
<
rowNum
;
++
i
)
{
colData
Append
(
pInput
->
columnData
,
i
,
(
const
char
*
)
&
val_float
[
i
],
false
);
colData
SetVal
(
pInput
->
columnData
,
i
,
(
const
char
*
)
&
val_float
[
i
],
false
);
PRINTF
(
"float before TAN:%f
\n
"
,
*
((
float
*
)
colDataGetData
(
pInput
->
columnData
,
i
)));
PRINTF
(
"float before TAN:%f
\n
"
,
*
((
float
*
)
colDataGetData
(
pInput
->
columnData
,
i
)));
}
}
...
@@ -2736,7 +2736,7 @@ TEST(ScalarFunctionTest, asinFunction_column) {
...
@@ -2736,7 +2736,7 @@ TEST(ScalarFunctionTest, asinFunction_column) {
scltMakeDataBlock
(
&
pInput
,
type
,
0
,
rowNum
,
false
);
scltMakeDataBlock
(
&
pInput
,
type
,
0
,
rowNum
,
false
);
scltMakeDataBlock
(
&
pOutput
,
otype
,
0
,
rowNum
,
false
);
scltMakeDataBlock
(
&
pOutput
,
otype
,
0
,
rowNum
,
false
);
for
(
int32_t
i
=
0
;
i
<
rowNum
;
++
i
)
{
for
(
int32_t
i
=
0
;
i
<
rowNum
;
++
i
)
{
colData
Append
(
pInput
->
columnData
,
i
,
(
const
char
*
)
&
val_tinyint
[
i
],
false
);
colData
SetVal
(
pInput
->
columnData
,
i
,
(
const
char
*
)
&
val_tinyint
[
i
],
false
);
PRINTF
(
"tiny_int before ASIN:%d
\n
"
,
*
((
int8_t
*
)
colDataGetData
(
pInput
->
columnData
,
i
)));
PRINTF
(
"tiny_int before ASIN:%d
\n
"
,
*
((
int8_t
*
)
colDataGetData
(
pInput
->
columnData
,
i
)));
}
}
...
@@ -3395,7 +3395,7 @@ TEST(ScalarFunctionTest, logFunction_column) {
...
@@ -3395,7 +3395,7 @@ TEST(ScalarFunctionTest, logFunction_column) {
scltMakeDataBlock
(
&
input
[
i
],
type
,
0
,
rowNum
,
false
);
scltMakeDataBlock
(
&
input
[
i
],
type
,
0
,
rowNum
,
false
);
pInput
[
i
]
=
*
input
[
i
];
pInput
[
i
]
=
*
input
[
i
];
for
(
int32_t
j
=
0
;
j
<
rowNum
;
++
j
)
{
for
(
int32_t
j
=
0
;
j
<
rowNum
;
++
j
)
{
colData
Append
(
pInput
[
i
].
columnData
,
j
,
(
const
char
*
)
&
val_tinyint
[
i
][
j
],
false
);
colData
SetVal
(
pInput
[
i
].
columnData
,
j
,
(
const
char
*
)
&
val_tinyint
[
i
][
j
],
false
);
}
}
PRINTF
(
"tiny_int before LOG:%d,%d,%d
\n
"
,
*
((
int8_t
*
)
pInput
[
i
].
data
+
0
),
*
((
int8_t
*
)
pInput
[
i
].
data
+
1
),
PRINTF
(
"tiny_int before LOG:%d,%d,%d
\n
"
,
*
((
int8_t
*
)
pInput
[
i
].
data
+
0
),
*
((
int8_t
*
)
pInput
[
i
].
data
+
1
),
*
((
int8_t
*
)
pInput
[
i
].
data
+
2
));
*
((
int8_t
*
)
pInput
[
i
].
data
+
2
));
...
@@ -3419,7 +3419,7 @@ TEST(ScalarFunctionTest, logFunction_column) {
...
@@ -3419,7 +3419,7 @@ TEST(ScalarFunctionTest, logFunction_column) {
scltMakeDataBlock
(
&
input
[
i
],
type
,
0
,
rowNum
,
false
);
scltMakeDataBlock
(
&
input
[
i
],
type
,
0
,
rowNum
,
false
);
pInput
[
i
]
=
*
input
[
i
];
pInput
[
i
]
=
*
input
[
i
];
for
(
int32_t
j
=
0
;
j
<
rowNum
;
++
j
)
{
for
(
int32_t
j
=
0
;
j
<
rowNum
;
++
j
)
{
colData
Append
(
pInput
[
i
].
columnData
,
j
,
(
const
char
*
)
&
val_float
[
i
][
j
],
false
);
colData
SetVal
(
pInput
[
i
].
columnData
,
j
,
(
const
char
*
)
&
val_float
[
i
][
j
],
false
);
}
}
PRINTF
(
"float before LOG:%f,%f,%f
\n
"
,
*
((
float
*
)
colDataGetData
(
pInput
[
i
],
0
)),
PRINTF
(
"float before LOG:%f,%f,%f
\n
"
,
*
((
float
*
)
colDataGetData
(
pInput
[
i
],
0
)),
*
((
float
*
)
colDataGetData
(
pInput
[
i
],
1
)),
*
((
float
*
)
colDataGetData
(
pInput
[
i
],
2
)));
*
((
float
*
)
colDataGetData
(
pInput
[
i
],
1
)),
*
((
float
*
)
colDataGetData
(
pInput
[
i
],
2
)));
...
@@ -3442,12 +3442,12 @@ TEST(ScalarFunctionTest, logFunction_column) {
...
@@ -3442,12 +3442,12 @@ TEST(ScalarFunctionTest, logFunction_column) {
scltMakeDataBlock
(
&
input
[
0
],
TSDB_DATA_TYPE_TINYINT
,
0
,
rowNum
,
false
);
scltMakeDataBlock
(
&
input
[
0
],
TSDB_DATA_TYPE_TINYINT
,
0
,
rowNum
,
false
);
pInput
[
0
]
=
*
input
[
0
];
pInput
[
0
]
=
*
input
[
0
];
for
(
int32_t
i
=
0
;
i
<
rowNum
;
++
i
)
{
for
(
int32_t
i
=
0
;
i
<
rowNum
;
++
i
)
{
colData
Append
(
pInput
[
0
].
columnData
,
i
,
(
const
char
*
)
&
param0
[
i
],
false
);
colData
SetVal
(
pInput
[
0
].
columnData
,
i
,
(
const
char
*
)
&
param0
[
i
],
false
);
}
}
scltMakeDataBlock
(
&
input
[
1
],
TSDB_DATA_TYPE_FLOAT
,
0
,
rowNum
,
false
);
scltMakeDataBlock
(
&
input
[
1
],
TSDB_DATA_TYPE_FLOAT
,
0
,
rowNum
,
false
);
pInput
[
1
]
=
*
input
[
1
];
pInput
[
1
]
=
*
input
[
1
];
for
(
int32_t
i
=
0
;
i
<
rowNum
;
++
i
)
{
for
(
int32_t
i
=
0
;
i
<
rowNum
;
++
i
)
{
colData
Append
(
pInput
[
1
].
columnData
,
i
,
(
const
char
*
)
&
param1
[
i
],
false
);
colData
SetVal
(
pInput
[
1
].
columnData
,
i
,
(
const
char
*
)
&
param1
[
i
],
false
);
}
}
PRINTF
(
"tiny_int, float before LOG:{%d,%f}, {%d,%f}, {%d,%f}
\n
"
,
*
((
int8_t
*
)
pInput
[
0
].
data
+
0
),
PRINTF
(
"tiny_int, float before LOG:{%d,%f}, {%d,%f}, {%d,%f}
\n
"
,
*
((
int8_t
*
)
pInput
[
0
].
data
+
0
),
*
((
float
*
)
pInput
[
1
].
data
+
0
),
*
((
int8_t
*
)
pInput
[
0
].
data
+
1
),
*
((
float
*
)
pInput
[
1
].
data
+
1
),
*
((
float
*
)
pInput
[
1
].
data
+
0
),
*
((
int8_t
*
)
pInput
[
0
].
data
+
1
),
*
((
float
*
)
pInput
[
1
].
data
+
1
),
...
@@ -3558,7 +3558,7 @@ TEST(ScalarFunctionTest, powFunction_column) {
...
@@ -3558,7 +3558,7 @@ TEST(ScalarFunctionTest, powFunction_column) {
scltMakeDataBlock
(
&
input
[
i
],
type
,
0
,
rowNum
,
false
);
scltMakeDataBlock
(
&
input
[
i
],
type
,
0
,
rowNum
,
false
);
pInput
[
i
]
=
*
input
[
i
];
pInput
[
i
]
=
*
input
[
i
];
for
(
int32_t
j
=
0
;
j
<
rowNum
;
++
j
)
{
for
(
int32_t
j
=
0
;
j
<
rowNum
;
++
j
)
{
colData
Append
(
pInput
[
i
].
columnData
,
j
,
(
const
char
*
)
&
val_tinyint
[
i
][
j
],
false
);
colData
SetVal
(
pInput
[
i
].
columnData
,
j
,
(
const
char
*
)
&
val_tinyint
[
i
][
j
],
false
);
}
}
PRINTF
(
"tiny_int before POW:%d,%d,%d
\n
"
,
*
((
int8_t
*
)
pInput
[
i
].
data
+
0
),
*
((
int8_t
*
)
pInput
[
i
].
data
+
1
),
PRINTF
(
"tiny_int before POW:%d,%d,%d
\n
"
,
*
((
int8_t
*
)
pInput
[
i
].
data
+
0
),
*
((
int8_t
*
)
pInput
[
i
].
data
+
1
),
*
((
int8_t
*
)
pInput
[
i
].
data
+
2
));
*
((
int8_t
*
)
pInput
[
i
].
data
+
2
));
...
@@ -3583,7 +3583,7 @@ TEST(ScalarFunctionTest, powFunction_column) {
...
@@ -3583,7 +3583,7 @@ TEST(ScalarFunctionTest, powFunction_column) {
scltMakeDataBlock
(
&
input
[
i
],
type
,
0
,
rowNum
,
false
);
scltMakeDataBlock
(
&
input
[
i
],
type
,
0
,
rowNum
,
false
);
pInput
[
i
]
=
*
input
[
i
];
pInput
[
i
]
=
*
input
[
i
];
for
(
int32_t
j
=
0
;
j
<
rowNum
;
++
j
)
{
for
(
int32_t
j
=
0
;
j
<
rowNum
;
++
j
)
{
colData
Append
(
pInput
[
i
].
columnData
,
j
,
(
const
char
*
)
&
val_float
[
i
][
j
],
false
);
colData
SetVal
(
pInput
[
i
].
columnData
,
j
,
(
const
char
*
)
&
val_float
[
i
][
j
],
false
);
}
}
PRINTF
(
"float before POW:%f,%f,%f
\n
"
,
*
((
float
*
)
pInput
[
i
].
data
+
0
),
*
((
float
*
)
pInput
[
i
].
data
+
1
),
PRINTF
(
"float before POW:%f,%f,%f
\n
"
,
*
((
float
*
)
pInput
[
i
].
data
+
0
),
*
((
float
*
)
pInput
[
i
].
data
+
1
),
*
((
float
*
)
pInput
[
i
].
data
+
2
));
*
((
float
*
)
pInput
[
i
].
data
+
2
));
...
@@ -3606,12 +3606,12 @@ TEST(ScalarFunctionTest, powFunction_column) {
...
@@ -3606,12 +3606,12 @@ TEST(ScalarFunctionTest, powFunction_column) {
scltMakeDataBlock
(
&
input
[
0
],
TSDB_DATA_TYPE_TINYINT
,
0
,
rowNum
,
false
);
scltMakeDataBlock
(
&
input
[
0
],
TSDB_DATA_TYPE_TINYINT
,
0
,
rowNum
,
false
);
pInput
[
0
]
=
*
input
[
0
];
pInput
[
0
]
=
*
input
[
0
];
for
(
int32_t
i
=
0
;
i
<
rowNum
;
++
i
)
{
for
(
int32_t
i
=
0
;
i
<
rowNum
;
++
i
)
{
colData
Append
(
pInput
[
0
].
columnData
,
i
,
(
const
char
*
)
&
param0
[
i
],
false
);
colData
SetVal
(
pInput
[
0
].
columnData
,
i
,
(
const
char
*
)
&
param0
[
i
],
false
);
}
}
scltMakeDataBlock
(
&
input
[
1
],
TSDB_DATA_TYPE_FLOAT
,
0
,
rowNum
,
false
);
scltMakeDataBlock
(
&
input
[
1
],
TSDB_DATA_TYPE_FLOAT
,
0
,
rowNum
,
false
);
pInput
[
1
]
=
*
input
[
1
];
pInput
[
1
]
=
*
input
[
1
];
for
(
int32_t
i
=
0
;
i
<
rowNum
;
++
i
)
{
for
(
int32_t
i
=
0
;
i
<
rowNum
;
++
i
)
{
colData
Append
(
pInput
[
1
].
columnData
,
i
,
(
const
char
*
)
&
param1
[
i
],
false
);
colData
SetVal
(
pInput
[
1
].
columnData
,
i
,
(
const
char
*
)
&
param1
[
i
],
false
);
}
}
PRINTF
(
"tiny_int, float before POW:{%d,%f}, {%d,%f}, {%d,%f}
\n
"
,
*
((
int8_t
*
)
pInput
[
0
].
data
+
0
),
PRINTF
(
"tiny_int, float before POW:{%d,%f}, {%d,%f}, {%d,%f}
\n
"
,
*
((
int8_t
*
)
pInput
[
0
].
data
+
0
),
*
((
float
*
)
pInput
[
1
].
data
+
0
),
*
((
int8_t
*
)
pInput
[
0
].
data
+
1
),
*
((
float
*
)
pInput
[
1
].
data
+
1
),
*
((
float
*
)
pInput
[
1
].
data
+
0
),
*
((
int8_t
*
)
pInput
[
0
].
data
+
1
),
*
((
float
*
)
pInput
[
1
].
data
+
1
),
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录