Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
taosdata
TDengine
提交
0c7afcc9
T
TDengine
项目概览
taosdata
/
TDengine
大约 1 年 前同步成功
通知
1184
Star
22015
Fork
4786
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
1
列表
看板
标记
里程碑
合并请求
0
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
T
TDengine
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
1
Issue
1
列表
看板
标记
里程碑
合并请求
0
合并请求
0
Pages
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
提交
Issue看板
体验新版 GitCode,发现更多精彩内容 >>
提交
0c7afcc9
编写于
5月 25, 2021
作者:
S
shenglian zhou
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
[TD-4243]<enhance>:remove _block_dist() special dedicated column index
上级
0d4913e0
变更
11
隐藏空白更改
内联
并排
Showing
11 changed file
with
132 addition
and
59 deletion
+132
-59
src/client/src/tscSQLParser.c
src/client/src/tscSQLParser.c
+12
-19
src/client/src/tscUtil.c
src/client/src/tscUtil.c
+8
-10
src/common/inc/tname.h
src/common/inc/tname.h
+0
-2
src/common/src/tname.c
src/common/src/tname.c
+0
-9
src/inc/taosdef.h
src/inc/taosdef.h
+0
-1
src/query/src/qAggMain.c
src/query/src/qAggMain.c
+6
-3
src/query/src/qExecutor.c
src/query/src/qExecutor.c
+9
-15
tests/script/fullGeneralSuite.sim
tests/script/fullGeneralSuite.sim
+1
-0
tests/script/general/compute/block_dist.sim
tests/script/general/compute/block_dist.sim
+94
-0
tests/script/general/compute/testSuite.sim
tests/script/general/compute/testSuite.sim
+1
-0
tests/script/regressionSuite.sim
tests/script/regressionSuite.sim
+1
-0
未找到文件。
src/client/src/tscSQLParser.c
浏览文件 @
0c7afcc9
...
...
@@ -41,11 +41,11 @@
#define TSWINDOW_IS_EQUAL(t1, t2) (((t1).skey == (t2).skey) && ((t1).ekey == (t2).ekey))
// -1 is tbname column index, so here use the -
3
as the initial value
#define COLUMN_INDEX_INITIAL_VAL (-
3
)
// -1 is tbname column index, so here use the -
2
as the initial value
#define COLUMN_INDEX_INITIAL_VAL (-
2
)
#define COLUMN_INDEX_INITIALIZER \
{ COLUMN_INDEX_INITIAL_VAL, COLUMN_INDEX_INITIAL_VAL }
#define COLUMN_INDEX_VALIDE(index) (((index).tableIndex >= 0) && ((index).columnIndex >= TSDB_
BLOCK_DIST
_COLUMN_INDEX))
#define COLUMN_INDEX_VALIDE(index) (((index).tableIndex >= 0) && ((index).columnIndex >= TSDB_
TBNAME
_COLUMN_INDEX))
#define TBNAME_LIST_SEP ","
typedef
struct
SColumnList
{
// todo refactor
...
...
@@ -1873,9 +1873,6 @@ int32_t addProjectionExprAndResultField(SSqlCmd* pCmd, SQueryInfo* pQueryInfo, t
if
(
index
.
columnIndex
==
TSDB_TBNAME_COLUMN_INDEX
)
{
SSchema
*
colSchema
=
tGetTbnameColumnSchema
();
tscAddFuncInSelectClause
(
pQueryInfo
,
startPos
,
TSDB_FUNC_TAGPRJ
,
&
index
,
colSchema
,
TSDB_COL_TAG
,
getNewResColId
(
pCmd
));
}
else
if
(
index
.
columnIndex
==
TSDB_BLOCK_DIST_COLUMN_INDEX
)
{
SSchema
colSchema
=
tGetBlockDistColumnSchema
();
tscAddFuncInSelectClause
(
pQueryInfo
,
startPos
,
TSDB_FUNC_PRJ
,
&
index
,
&
colSchema
,
TSDB_COL_TAG
,
getNewResColId
(
pCmd
));
}
else
{
STableMetaInfo
*
pTableMetaInfo
=
tscGetMetaInfo
(
pQueryInfo
,
index
.
tableIndex
);
STableMeta
*
pTableMeta
=
pTableMetaInfo
->
pTableMeta
;
...
...
@@ -2487,7 +2484,7 @@ int32_t addExprAndResultField(SSqlCmd* pCmd, SQueryInfo* pQueryInfo, int32_t col
return
invalidOperationMsg
(
tscGetErrorMsgPayload
(
pCmd
),
msg2
);
}
SColumnIndex
index
=
{.
tableIndex
=
0
,
.
columnIndex
=
TSDB_BLOCK_DIST_COLUMN_INDEX
,};
SColumnIndex
index
=
{.
tableIndex
=
0
,
.
columnIndex
=
0
,};
pTableMetaInfo
=
tscGetMetaInfo
(
pQueryInfo
,
index
.
tableIndex
);
SSchema
s
=
{.
name
=
"block_dist"
,
.
type
=
TSDB_DATA_TYPE_BINARY
};
...
...
@@ -2495,10 +2492,16 @@ int32_t addExprAndResultField(SSqlCmd* pCmd, SQueryInfo* pQueryInfo, int32_t col
int16_t
resType
=
0
;
int16_t
bytes
=
0
;
getResultDataInfo
(
TSDB_DATA_TYPE_INT
,
4
,
TSDB_FUNC_BLKINFO
,
0
,
&
resType
,
&
bytes
,
&
inter
,
0
,
0
);
s
.
bytes
=
bytes
;
s
.
type
=
(
uint8_t
)
resType
;
SExprInfo
*
pExpr
=
tscAddFuncInSelectClause
(
pQueryInfo
,
0
,
TSDB_FUNC_BLKINFO
,
&
index
,
&
s
,
TSDB_COL_TAG
,
getNewResColId
(
pCmd
));
SExprInfo
*
pExpr
=
tscSqlExprInsert
(
pQueryInfo
,
0
,
TSDB_FUNC_BLKINFO
,
&
index
,
resType
,
bytes
,
getNewResColId
(
pQueryInfo
),
bytes
,
0
);
tstrncpy
(
pExpr
->
base
.
aliasName
,
s
.
name
,
sizeof
(
pExpr
->
base
.
aliasName
));
SColumnList
ids
=
createColumnList
(
1
,
index
.
tableIndex
,
index
.
columnIndex
);
insertResultField
(
pQueryInfo
,
0
,
&
ids
,
bytes
,
s
.
type
,
s
.
name
,
pExpr
);
pExpr
->
base
.
numOfParams
=
1
;
pExpr
->
base
.
param
[
0
].
i64
=
pTableMetaInfo
->
pTableMeta
->
tableInfo
.
rowSize
;
pExpr
->
base
.
param
[
0
].
nType
=
TSDB_DATA_TYPE_BIGINT
;
...
...
@@ -2545,14 +2548,6 @@ static bool isTablenameToken(SStrToken* token) {
return
(
strncasecmp
(
TSQL_TBNAME_L
,
tmpToken
.
z
,
tmpToken
.
n
)
==
0
&&
tmpToken
.
n
==
strlen
(
TSQL_TBNAME_L
));
}
static
bool
isTableBlockDistToken
(
SStrToken
*
token
)
{
SStrToken
tmpToken
=
*
token
;
SStrToken
tableToken
=
{
0
};
extractTableNameFromToken
(
&
tmpToken
,
&
tableToken
);
return
(
strncasecmp
(
TSQL_BLOCK_DIST
,
tmpToken
.
z
,
tmpToken
.
n
)
==
0
&&
tmpToken
.
n
==
strlen
(
TSQL_BLOCK_DIST_L
));
}
static
int16_t
doGetColumnIndex
(
SQueryInfo
*
pQueryInfo
,
int32_t
index
,
SStrToken
*
pToken
)
{
STableMeta
*
pTableMeta
=
tscGetMetaInfo
(
pQueryInfo
,
index
)
->
pTableMeta
;
...
...
@@ -2582,8 +2577,6 @@ int32_t doGetColumnIndexByName(SSqlCmd* pCmd, SStrToken* pToken, SQueryInfo* pQu
if
(
isTablenameToken
(
pToken
))
{
pIndex
->
columnIndex
=
TSDB_TBNAME_COLUMN_INDEX
;
}
else
if
(
isTableBlockDistToken
(
pToken
))
{
pIndex
->
columnIndex
=
TSDB_BLOCK_DIST_COLUMN_INDEX
;
}
else
if
(
strncasecmp
(
pToken
->
z
,
DEFAULT_PRIMARY_TIMESTAMP_COL_NAME
,
pToken
->
n
)
==
0
)
{
pIndex
->
columnIndex
=
PRIMARYKEY_TIMESTAMP_COL_INDEX
;
}
else
{
...
...
src/client/src/tscUtil.c
浏览文件 @
0c7afcc9
...
...
@@ -525,9 +525,9 @@ bool isSimpleAggregateRv(SQueryInfo* pQueryInfo) {
}
bool
isBlockDistQuery
(
SQueryInfo
*
pQueryInfo
)
{
size_t
numOfExprs
=
tscNumOfExprs
(
pQueryInfo
);
SExprInfo
*
pExpr
=
tscExprGet
(
pQueryInfo
,
0
);
return
(
numOfExprs
==
1
&&
pExpr
->
base
.
colInfo
.
colId
==
TSDB_BLOCK_DIST_COLUMN_INDEX
);
size_t
numOfExprs
=
tsc
SqlExpr
NumOfExprs
(
pQueryInfo
);
SExprInfo
*
pExpr
=
tsc
Sql
ExprGet
(
pQueryInfo
,
0
);
return
(
numOfExprs
==
1
&&
pExpr
->
base
.
functionId
==
TSDB_FUNC_BLKINFO
);
}
void
tscClearInterpInfo
(
SQueryInfo
*
pQueryInfo
)
{
...
...
@@ -2048,16 +2048,14 @@ SExprInfo* tscExprCreate(SQueryInfo* pQueryInfo, int16_t functionId, SColumnInde
p
->
colInfo
.
colId
=
TSDB_TBNAME_COLUMN_INDEX
;
p
->
colBytes
=
s
->
bytes
;
p
->
colType
=
s
->
type
;
}
else
if
(
pColIndex
->
columnIndex
==
TSDB_BLOCK_DIST_COLUMN_INDEX
)
{
SSchema
s
=
tGetBlockDistColumnSchema
();
p
->
colInfo
.
colId
=
TSDB_BLOCK_DIST_COLUMN_INDEX
;
p
->
colBytes
=
s
.
bytes
;
p
->
colType
=
s
.
type
;
}
else
if
(
pColIndex
->
columnIndex
<=
TSDB_UD_COLUMN_INDEX
)
{
p
->
colInfo
.
colId
=
pColIndex
->
columnIndex
;
p
->
colBytes
=
size
;
p
->
colType
=
type
;
}
else
if
(
functionId
==
TSDB_FUNC_BLKINFO
)
{
p
->
colInfo
.
colId
=
pColIndex
->
columnIndex
;
p
->
colBytes
=
TSDB_MAX_BINARY_LEN
;
p
->
colType
=
TSDB_DATA_TYPE_BINARY
;
}
else
{
if
(
TSDB_COL_IS_TAG
(
colType
))
{
SSchema
*
pSchema
=
tscGetTableTagSchema
(
pTableMetaInfo
->
pTableMeta
);
...
...
@@ -2553,7 +2551,7 @@ bool tscValidateColumnId(STableMetaInfo* pTableMetaInfo, int32_t colId, int32_t
return
false
;
}
if
(
colId
==
TSDB_TBNAME_COLUMN_INDEX
||
colId
==
TSDB_BLOCK_DIST_COLUMN_INDEX
||
(
colId
<=
TSDB_UD_COLUMN_INDEX
&&
numOfParams
==
2
))
{
if
(
colId
==
TSDB_TBNAME_COLUMN_INDEX
||
(
colId
<=
TSDB_UD_COLUMN_INDEX
&&
numOfParams
==
2
))
{
return
true
;
}
...
...
src/common/inc/tname.h
浏览文件 @
0c7afcc9
...
...
@@ -92,8 +92,6 @@ size_t tableIdPrefix(const char* name, char* prefix, int32_t len);
void
extractTableNameFromToken
(
SStrToken
*
pToken
,
SStrToken
*
pTable
);
SSchema
tGetBlockDistColumnSchema
();
SSchema
tGetUserSpecifiedColumnSchema
(
tVariant
*
pVal
,
SStrToken
*
exprStr
,
const
char
*
name
);
bool
tscValidateTableNameLength
(
size_t
len
);
...
...
src/common/src/tname.c
浏览文件 @
0c7afcc9
...
...
@@ -33,15 +33,6 @@ size_t tableIdPrefix(const char* name, char* prefix, int32_t len) {
return
strlen
(
prefix
);
}
SSchema
tGetBlockDistColumnSchema
()
{
SSchema
s
=
{
0
};
s
.
bytes
=
TSDB_MAX_BINARY_LEN
;;
s
.
type
=
TSDB_DATA_TYPE_BINARY
;
s
.
colId
=
TSDB_BLOCK_DIST_COLUMN_INDEX
;
tstrncpy
(
s
.
name
,
TSQL_BLOCK_DIST_L
,
TSDB_COL_NAME_LEN
);
return
s
;
}
SSchema
tGetUserSpecifiedColumnSchema
(
tVariant
*
pVal
,
SStrToken
*
exprStr
,
const
char
*
name
)
{
SSchema
s
=
{
0
};
...
...
src/inc/taosdef.h
浏览文件 @
0c7afcc9
...
...
@@ -244,7 +244,6 @@ do { \
#define TSDB_MAX_REPLICA 5
#define TSDB_TBNAME_COLUMN_INDEX (-1)
#define TSDB_BLOCK_DIST_COLUMN_INDEX (-2)
#define TSDB_UD_COLUMN_INDEX (-1000)
#define TSDB_RES_COL_ID (-5000)
...
...
src/query/src/qAggMain.c
浏览文件 @
0c7afcc9
...
...
@@ -4894,17 +4894,20 @@ void generateBlockDistResult(STableBlockDist *pTableBlockDist, char* result) {
}
avg
=
totalBlocks
>
0
?
(
int64_t
)(
totalRows
/
totalBlocks
)
:
0
;
min
=
totalBlocks
>
0
?
min
:
0
;
max
=
totalBlocks
>
0
?
max
:
0
;
taosArraySort
(
blockInfos
,
compareBlockInfo
);
uint64_t
totalLen
=
pTableBlockDist
->
totalSize
;
int32_t
rowSize
=
pTableBlockDist
->
rowSize
;
double
compRatio
=
(
totalRows
>
0
)
?
((
double
)(
totalLen
)
/
(
rowSize
*
totalRows
))
:
1
;
int
sz
=
sprintf
(
result
+
VARSTR_HEADER_SIZE
,
"summary:
\n\t
"
"5th=[%d], 10th=[%d], 20th=[%d], 30th=[%d], 40th=[%d], 50th=[%d]
\n\t
"
"60th=[%d], 70th=[%d], 80th=[%d], 90th=[%d], 95th=[%d], 99th=[%d]
\n\t
"
"Min=[%"
PRId64
"(Rows)] Max=[%"
PRId64
"(Rows)] Avg=[%"
PRId64
"(Rows)] Stddev=[%.2f]
\n\t
"
"Rows=[%"
PRId64
"], Blocks=[%"
PRId64
"], Size=[%.3f(Kb)] Comp=[%.2f
%%
]
\n\t
"
"Rows=[%"
PRId64
"], Blocks=[%"
PRId64
"], Size=[%.3f(Kb)] Comp=[%.2f]
\n\t
"
"RowsInMem=[%d]
\n\t
SeekHeaderTime=[%d(us)]"
,
doGetPercentile
(
blockInfos
,
0
.
05
),
doGetPercentile
(
blockInfos
,
0
.
10
),
doGetPercentile
(
blockInfos
,
0
.
20
),
doGetPercentile
(
blockInfos
,
0
.
30
),
...
...
@@ -4913,7 +4916,7 @@ void generateBlockDistResult(STableBlockDist *pTableBlockDist, char* result) {
doGetPercentile
(
blockInfos
,
0
.
80
),
doGetPercentile
(
blockInfos
,
0
.
90
),
doGetPercentile
(
blockInfos
,
0
.
95
),
doGetPercentile
(
blockInfos
,
0
.
99
),
min
,
max
,
avg
,
0
.
0
,
totalRows
,
totalBlocks
,
totalLen
/
1024
.
0
,
(
double
)(
totalLen
*
100
.
0
)
/
(
rowSize
*
totalRows
)
,
totalRows
,
totalBlocks
,
totalLen
/
1024
.
0
,
compRatio
,
pTableBlockDist
->
numOfRowsInMemTable
,
pTableBlockDist
->
firstSeekTimeUs
);
varDataSetLen
(
result
,
sz
);
UNUSED
(
sz
);
...
...
src/query/src/qExecutor.c
浏览文件 @
0c7afcc9
...
...
@@ -935,7 +935,7 @@ static void doSetInputDataBlock(SOperatorInfo* pOperator, SQLFunctionCtx* pCtx,
setArithParams
((
SArithmeticSupport
*
)
pCtx
[
i
].
param
[
1
].
pz
,
&
pOperator
->
pExpr
[
i
],
pBlock
);
}
else
{
SColIndex
*
pCol
=
&
pOperator
->
pExpr
[
i
].
base
.
colInfo
;
if
(
TSDB_COL_IS_NORMAL_COL
(
pCol
->
flag
)
||
(
pC
ol
->
colId
==
TSDB_BLOCK_DIST_COLUMN_INDEX
)
||
if
(
TSDB_COL_IS_NORMAL_COL
(
pCol
->
flag
)
||
(
pC
tx
[
i
].
functionId
==
TSDB_FUNC_BLKINFO
)
||
(
TSDB_COL_IS_TAG
(
pCol
->
flag
)
&&
pOperator
->
pRuntimeEnv
->
scanFlag
==
MERGE_STAGE
))
{
SColIndex
*
pColIndex
=
&
pOperator
->
pExpr
[
i
].
base
.
colInfo
;
SColumnInfoData
*
p
=
taosArrayGet
(
pBlock
->
pDataBlock
,
pColIndex
->
colIndex
);
...
...
@@ -4429,7 +4429,7 @@ SOperatorInfo* createTableBlockInfoScanOperator(void* pTsdbQueryHandle, SQueryRu
SColumnInfoData
infoData
=
{{
0
}};
infoData
.
info
.
type
=
TSDB_DATA_TYPE_BINARY
;
infoData
.
info
.
bytes
=
1024
;
infoData
.
info
.
colId
=
TSDB_BLOCK_DIST_COLUMN_INDEX
;
infoData
.
info
.
colId
=
0
;
taosArrayPush
(
pInfo
->
block
.
pDataBlock
,
&
infoData
);
SOperatorInfo
*
pOperator
=
calloc
(
1
,
sizeof
(
SOperatorInfo
));
...
...
@@ -5958,10 +5958,7 @@ static int32_t getColumnIndexInSource(SQueriedTableInfo *pTableInfo, SSqlExpr *p
if
(
TSDB_COL_IS_TAG
(
pExpr
->
colInfo
.
flag
))
{
if
(
pExpr
->
colInfo
.
colId
==
TSDB_TBNAME_COLUMN_INDEX
)
{
return
TSDB_TBNAME_COLUMN_INDEX
;
}
else
if
(
pExpr
->
colInfo
.
colId
==
TSDB_BLOCK_DIST_COLUMN_INDEX
)
{
return
TSDB_BLOCK_DIST_COLUMN_INDEX
;
}
while
(
j
<
pTableInfo
->
numOfTags
)
{
if
(
pExpr
->
colInfo
.
colId
==
pTagCols
[
j
].
colId
)
{
...
...
@@ -6531,14 +6528,14 @@ int32_t createQueryFunc(SQueriedTableInfo* pTableInfo, int32_t numOfOutput, SExp
type
=
TSDB_DATA_TYPE_DOUBLE
;
bytes
=
tDataTypes
[
type
].
bytes
;
}
else
if
(
pExprs
[
i
].
base
.
functionId
==
TSDB_FUNC_BLKINFO
)
{
SSchema
s
=
{.
type
=
TSDB_DATA_TYPE_BINARY
,
.
bytes
=
TSDB_MAX_BINARY_LEN
};
type
=
s
.
type
;
bytes
=
s
.
bytes
;
}
else
if
(
pExprs
[
i
].
base
.
colInfo
.
colId
==
TSDB_TBNAME_COLUMN_INDEX
&&
pExprs
[
i
].
base
.
functionId
==
TSDB_FUNC_TAGPRJ
)
{
// parse the normal column
SSchema
*
s
=
tGetTbnameColumnSchema
();
type
=
s
->
type
;
bytes
=
s
->
bytes
;
}
else
if
(
pExprs
[
i
].
base
.
colInfo
.
colId
==
TSDB_BLOCK_DIST_COLUMN_INDEX
)
{
SSchema
s
=
tGetBlockDistColumnSchema
();
type
=
s
.
type
;
bytes
=
s
.
bytes
;
}
else
if
(
pExprs
[
i
].
base
.
colInfo
.
colId
<=
TSDB_UD_COLUMN_INDEX
&&
pExprs
[
i
].
base
.
colInfo
.
colId
>
TSDB_RES_COL_ID
)
{
// it is a user-defined constant value column
assert
(
pExprs
[
i
].
base
.
functionId
==
TSDB_FUNC_PRJ
);
...
...
@@ -6551,7 +6548,7 @@ int32_t createQueryFunc(SQueriedTableInfo* pTableInfo, int32_t numOfOutput, SExp
}
else
{
int32_t
j
=
getColumnIndexInSource
(
pTableInfo
,
&
pExprs
[
i
].
base
,
pTagCols
);
if
(
TSDB_COL_IS_TAG
(
pExprs
[
i
].
base
.
colInfo
.
flag
))
{
if
(
j
<
TSDB_
BLOCK_DIST
_COLUMN_INDEX
||
j
>=
pTableInfo
->
numOfTags
)
{
if
(
j
<
TSDB_
TBNAME
_COLUMN_INDEX
||
j
>=
pTableInfo
->
numOfTags
)
{
return
TSDB_CODE_QRY_INVALID_MSG
;
}
}
else
{
...
...
@@ -6787,9 +6784,6 @@ static void doUpdateExprColumnIndex(SQueryAttr *pQueryAttr) {
assert
(
f
<
pQueryAttr
->
numOfCols
);
}
else
if
(
pColIndex
->
colId
<=
TSDB_UD_COLUMN_INDEX
)
{
// do nothing for user-defined constant value result columns
}
else
if
(
pColIndex
->
colId
==
TSDB_BLOCK_DIST_COLUMN_INDEX
)
{
pColIndex
->
colIndex
=
0
;
// only one source column, so it must be 0;
assert
(
pQueryAttr
->
numOfOutput
==
1
);
}
else
{
int32_t
f
=
0
;
for
(
f
=
0
;
f
<
pQueryAttr
->
numOfTags
;
++
f
)
{
...
...
@@ -6799,7 +6793,7 @@ static void doUpdateExprColumnIndex(SQueryAttr *pQueryAttr) {
}
}
assert
(
f
<
pQueryAttr
->
numOfTags
||
pColIndex
->
colId
==
TSDB_TBNAME_COLUMN_INDEX
||
pColIndex
->
colId
==
TSDB_BLOCK_DIST_COLUMN_INDEX
);
assert
(
f
<
pQueryAttr
->
numOfTags
||
pColIndex
->
colId
==
TSDB_TBNAME_COLUMN_INDEX
);
}
}
}
...
...
@@ -6991,7 +6985,7 @@ SQInfo* createQInfoImpl(SQueryTableMsg* pQueryMsg, SGroupbyExpr* pGroupbyExpr, S
colIdCheck
(
pQueryAttr
,
pQInfo
->
qId
);
// todo refactor
pQInfo
->
query
.
queryBlockDist
=
(
numOfOutput
==
1
&&
pExprs
[
0
].
base
.
colInfo
.
colId
==
TSDB_BLOCK_DIST_COLUMN_INDEX
);
pQInfo
->
query
.
queryBlockDist
=
(
numOfOutput
==
1
&&
pExprs
[
0
].
base
.
functionId
==
TSDB_FUNC_BLKINFO
);
qDebug
(
"qmsg:%p QInfo:0x%"
PRIx64
"-%p created"
,
pQueryMsg
,
pQInfo
->
qId
,
pQInfo
);
return
pQInfo
;
...
...
tests/script/fullGeneralSuite.sim
浏览文件 @
0c7afcc9
...
...
@@ -33,6 +33,7 @@ run general/compute/percentile.sim
run general/compute/stddev.sim
run general/compute/sum.sim
run general/compute/top.sim
run general/compute/block_dist.sim
run general/db/alter_option.sim
run general/db/alter_tables_d2.sim
run general/db/alter_tables_v1.sim
...
...
tests/script/general/compute/block_dist.sim
0 → 100644
浏览文件 @
0c7afcc9
system sh/stop_dnodes.sh
system sh/deploy.sh -n dnode1 -i 1
system sh/cfg.sh -n dnode1 -c walLevel -v 1
system sh/exec.sh -n dnode1 -s start
sleep 2000
sql connect
$dbPrefix = m_di_db
$tbPrefix = m_di_tb
$mtPrefix = m_di_mt
$ntPrefix = m_di_nt
$tbNum = 1
$rowNum = 2000
print =============== step1
$i = 0
$db = $dbPrefix . $i
$mt = $mtPrefix . $i
$nt = $ntPrefix . $i
sql drop database $db -x step1
step1:
sql create database $db
sql use $db
sql create table $mt (ts timestamp, tbcol int) TAGS(tgcol int)
$i = 0
while $i < $tbNum
$tb = $tbPrefix . $i
sql create table $tb using $mt tags( $i )
$x = 0
while $x < $rowNum
$cc = $x * 60000
$ms = 1601481600000 + $cc
sql insert into $tb values ($ms , $x )
$x = $x + 1
endw
$i = $i + 1
endw
sql create table $nt (ts timestamp, tbcol int)
$x = 0
while $x < $rowNum
$cc = $x * 60000
$ms = 1601481600000 + $cc
sql insert into $nt values ($ms , $x )
$x = $x + 1
endw
sleep 100
print =============== step2
$i = 0
$tb = $tbPrefix . $i
sql select _block_dist() from $tb
if $rows != 1 then
print expect 1, actual:$rows
return -1
endi
print =============== step3
$i = 0
$mt = $mtPrefix . $i
sql select _block_dist() from $mt
if $rows != 1 then
print expect 1, actual:$rows
return -1
endi
print =============== step4
$i = 0
$nt = $ntPrefix . $i
sql select _block_dist() from $nt
if $rows != 1 then
print expect 1, actual:$rows
return -1
endi
print =============== clear
sql drop database $db
sql show databases
if $rows != 0 then
return -1
endi
system sh/exec.sh -n dnode1 -s stop -x SIGINT
\ No newline at end of file
tests/script/general/compute/testSuite.sim
浏览文件 @
0c7afcc9
...
...
@@ -14,3 +14,4 @@ run general/compute/percentile.sim
run general/compute/stddev.sim
run general/compute/sum.sim
run general/compute/top.sim
run general/compute/block_dist.sim
tests/script/regressionSuite.sim
浏览文件 @
0c7afcc9
...
...
@@ -32,6 +32,7 @@ run general/compute/percentile.sim
run general/compute/stddev.sim
run general/compute/sum.sim
run general/compute/top.sim
run general/compute/block_dist.sim
run general/db/alter_option.sim
run general/db/alter_tables_d2.sim
run general/db/alter_tables_v1.sim
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录