Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
taosdata
TDengine
提交
44eb2062
T
TDengine
项目概览
taosdata
/
TDengine
1 年多 前同步成功
通知
1185
Star
22016
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看板
提交
44eb2062
编写于
2月 18, 2022
作者:
S
Shengliang Guan
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
trans test
上级
8977e08f
变更
2
隐藏空白更改
内联
并排
Showing
2 changed file
with
50 addition
and
6 deletion
+50
-6
source/dnode/mnode/impl/src/mndTrans.c
source/dnode/mnode/impl/src/mndTrans.c
+2
-5
source/dnode/mnode/impl/test/trans/trans.cpp
source/dnode/mnode/impl/test/trans/trans.cpp
+48
-1
未找到文件。
source/dnode/mnode/impl/src/mndTrans.c
浏览文件 @
44eb2062
...
...
@@ -474,6 +474,7 @@ STrans *mndTransCreate(SMnode *pMnode, ETrnPolicy policy, ETrnType type, const S
pTrans
->
stage
=
TRN_STAGE_PREPARE
;
pTrans
->
policy
=
policy
;
pTrans
->
transType
=
type
;
pTrans
->
createdTime
=
taosGetTimestampMs
();
pTrans
->
rpcHandle
=
pReq
->
handle
;
pTrans
->
rpcAHandle
=
pReq
->
ahandle
;
pTrans
->
redoLogs
=
taosArrayInit
(
MND_TRANS_ARRAY_SIZE
,
sizeof
(
void
*
));
...
...
@@ -1343,11 +1344,7 @@ static int32_t mndRetrieveTrans(SMnodeMsg *pReq, SShowObj *pShow, char *data, in
pWrite
=
data
+
pShow
->
offset
[
cols
]
*
rows
+
pShow
->
bytes
[
cols
]
*
numOfRows
;
char
*
name
=
mnGetDbStr
(
pTrans
->
dbname
);
if
(
name
!=
NULL
)
{
STR_WITH_MAXSIZE_TO_VARSTR
(
pWrite
,
name
,
pShow
->
bytes
[
cols
]);
}
else
{
STR_TO_VARSTR
(
pWrite
,
"-"
);
}
STR_WITH_MAXSIZE_TO_VARSTR
(
pWrite
,
name
,
pShow
->
bytes
[
cols
]);
cols
++
;
pWrite
=
data
+
pShow
->
offset
[
cols
]
*
rows
+
pShow
->
bytes
[
cols
]
*
numOfRows
;
...
...
source/dnode/mnode/impl/test/trans/trans.cpp
浏览文件 @
44eb2062
...
...
@@ -61,6 +61,22 @@ class MndTestTrans : public ::testing::Test {
Testbase
MndTestTrans
::
test
;
TestServer
MndTestTrans
::
server2
;
TEST_F
(
MndTestTrans
,
00
_Create_User_Crash
)
{
test
.
SendShowMetaReq
(
TSDB_MGMT_TABLE_TRANS
,
""
);
CHECK_META
(
"show trans"
,
7
);
CHECK_SCHEMA
(
0
,
TSDB_DATA_TYPE_INT
,
4
,
"id"
);
CHECK_SCHEMA
(
1
,
TSDB_DATA_TYPE_TIMESTAMP
,
8
,
"create_time"
);
CHECK_SCHEMA
(
2
,
TSDB_DATA_TYPE_BINARY
,
TSDB_TRANS_STAGE_LEN
+
VARSTR_HEADER_SIZE
,
"stage"
);
CHECK_SCHEMA
(
3
,
TSDB_DATA_TYPE_BINARY
,
TSDB_DB_NAME_LEN
-
1
+
VARSTR_HEADER_SIZE
,
"db"
);
CHECK_SCHEMA
(
4
,
TSDB_DATA_TYPE_BINARY
,
TSDB_TRANS_TYPE_LEN
+
VARSTR_HEADER_SIZE
,
"type"
);
CHECK_SCHEMA
(
5
,
TSDB_DATA_TYPE_TIMESTAMP
,
8
,
"last_exec_time"
);
CHECK_SCHEMA
(
6
,
TSDB_DATA_TYPE_BINARY
,
TSDB_TRANS_ERROR_LEN
-
1
+
VARSTR_HEADER_SIZE
,
"last_error"
);
test
.
SendShowRetrieveReq
();
EXPECT_EQ
(
test
.
GetShowRows
(),
0
);
}
TEST_F
(
MndTestTrans
,
01
_Create_User_Crash
)
{
{
SCreateUserReq
createReq
=
{
0
};
...
...
@@ -171,6 +187,28 @@ TEST_F(MndTestTrans, 03_Create_Qnode2_Crash) {
ASSERT_EQ
(
pRsp
->
code
,
TSDB_CODE_RPC_NETWORK_UNAVAIL
);
}
{
// show trans
test
.
SendShowMetaReq
(
TSDB_MGMT_TABLE_TRANS
,
""
);
CHECK_META
(
"show trans"
,
7
);
test
.
SendShowRetrieveReq
();
EXPECT_EQ
(
test
.
GetShowRows
(),
1
);
CheckInt32
(
4
);
CheckTimestamp
();
CheckBinary
(
"undoAction"
,
TSDB_TRANS_STAGE_LEN
);
CheckBinary
(
""
,
TSDB_DB_NAME_LEN
-
1
);
CheckBinary
(
"create-qnode"
,
TSDB_TRANS_TYPE_LEN
);
CheckTimestamp
();
CheckBinary
(
"Unable to establish connection"
,
TSDB_TRANS_ERROR_LEN
-
1
);
}
//kill trans
// show trans
// re-create trans
KillThenRestartServer
();
server2
.
DoStart
();
...
...
@@ -200,4 +238,13 @@ TEST_F(MndTestTrans, 03_Create_Qnode2_Crash) {
test
.
SendShowRetrieveReq
();
EXPECT_EQ
(
test
.
GetShowRows
(),
2
);
}
}
\ No newline at end of file
}
// create db
// partial create stb
// drop db failed
// create stb failed
// start
// create stb success
// drop db success
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录