Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
taosdata
TDengine
提交
5b37af38
TDengine
项目概览
taosdata
/
TDengine
大约 2 年 前同步成功
通知
1192
Star
22018
Fork
4786
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
1
列表
看板
标记
里程碑
合并请求
0
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
TDengine
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
1
Issue
1
列表
看板
标记
里程碑
合并请求
0
合并请求
0
Pages
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
提交
Issue看板
提交
5b37af38
编写于
3月 03, 2023
作者:
K
kailixu
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
enh: print normal table during start up
上级
6713a520
变更
1
隐藏空白更改
内联
并排
Showing
1 changed file
with
69 addition
and
0 deletion
+69
-0
src/mnode/src/mnodeSdb.c
src/mnode/src/mnodeSdb.c
+69
-0
未找到文件。
src/mnode/src/mnodeSdb.c
浏览文件 @
5b37af38
...
...
@@ -642,6 +642,73 @@ static int32_t sdbPerformUpdateAction(SWalHead *pHead, SSdbTable *pTable) {
return
sdbUpdateHash
(
pTable
,
&
row
);
}
static
int32_t
sdbProcessPrint
(
SWalHead
*
hparam
)
{
SWalHead
*
pHead
=
hparam
;
int32_t
tableId
=
pHead
->
msgType
/
10
;
int32_t
action
=
pHead
->
msgType
%
10
;
SSdbTable
*
pTable
=
sdbGetTableFromId
(
tableId
);
SSdbRow
row
=
{.
rowSize
=
pHead
->
len
,
.
rowData
=
pHead
->
cont
,
.
pTable
=
pTable
};
(
*
pTable
->
fpDecode
)(
&
row
);
if
(
tableId
==
SDB_TABLE_CTABLE
||
tableId
==
SDB_TABLE_STABLE
)
{
STableObj
*
pTableObj
=
(
STableObj
*
)
row
.
pObj
;
sdbTrace
(
"sdbWal, tableId:%d, tableName:%s, tableType:%"
PRIi8
,
tableId
,
pTableObj
->
tableId
,
pTableObj
->
type
);
}
if
(
tableId
==
SDB_TABLE_CTABLE
)
{
SCTableObj
*
pObj
=
(
SCTableObj
*
)
row
.
pObj
;
if
(
pObj
->
info
.
type
==
TSDB_NORMAL_TABLE
)
{
char
*
pBuf
=
NULL
;
if
(
pObj
->
schema
&&
pObj
->
numOfColumns
)
{
int32_t
schemaLen
=
pObj
->
numOfColumns
*
80
;
// sizeof(SSchema) + 7
pBuf
=
malloc
(
schemaLen
);
if
(
!
pBuf
)
{
terrno
=
TSDB_CODE_MND_OUT_OF_MEMORY
;
(
*
pTable
->
fpDestroy
)(
&
row
);
return
terrno
;
}
int32_t
offset
=
0
;
for
(
int16_t
nCol
=
0
;
nCol
<
pObj
->
numOfColumns
;
++
nCol
)
{
SSchema
*
pSchema
=
POINTER_SHIFT
(
pObj
->
schema
,
nCol
*
sizeof
(
SSchema
));
char
tBuf
[
80
];
snprintf
(
tBuf
,
80
,
"%"
PRIi16
",%"
PRIi8
",%"
PRIu8
",%s;"
,
pSchema
->
colId
,
pSchema
->
type
,
pSchema
->
bytes
,
pSchema
->
name
);
sprintf
(
pBuf
+
offset
,
"%s"
,
tBuf
);
offset
+=
strlen
(
tBuf
);
}
memset
(
pBuf
+
offset
-
1
,
0
,
1
);
}
char
ts
[
64
]
=
{
0
};
time_t
sec
=
pObj
->
createdTime
/
1000
;
struct
tm
*
ptm
=
localtime
(
&
sec
);
strftime
(
ts
,
64
,
"%Y-%m-%d %H:%M:%S"
,
ptm
);
char
act
[
10
]
=
{
0
};
if
(
action
==
0
)
{
snprintf
(
act
,
10
,
"%s"
,
"insert"
);
}
else
if
(
action
==
1
)
{
snprintf
(
act
,
10
,
"%s"
,
"delete"
);
}
else
if
(
action
==
2
)
{
snprintf
(
act
,
10
,
"%s"
,
"update"
);
}
else
{
snprintf
(
act
,
10
,
"%d"
,
action
);
}
sdbInfo
(
"sdbWal, act:%s, type:%"
PRIi8
", tableId:%s, suid:%"
PRIu64
", uid:%"
PRIu64
", tid:%d, create:%s, sver:%d, schema:%s"
,
act
,
pObj
->
info
.
type
,
pObj
->
info
.
tableId
,
pObj
->
suid
,
pObj
->
uid
,
pObj
->
tid
,
ts
,
pObj
->
sversion
,
pBuf
?
pBuf
:
""
);
tfree
(
pBuf
);
}
}
(
*
pTable
->
fpDestroy
)(
&
row
);
return
0
;
}
static
int32_t
sdbProcessWrite
(
void
*
wparam
,
void
*
hparam
,
int32_t
qtype
,
void
*
unused
)
{
SSdbRow
*
pRow
=
wparam
;
SWalHead
*
pHead
=
hparam
;
...
...
@@ -687,6 +754,8 @@ static int32_t sdbProcessWrite(void *wparam, void *hparam, int32_t qtype, void *
}
}
sdbProcessPrint
(
hparam
);
int32_t
code
=
walWrite
(
tsSdbMgmt
.
wal
,
pHead
);
if
(
code
<
0
)
{
pthread_mutex_unlock
(
&
tsSdbMgmt
.
mutex
);
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录