Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
taosdata
TDengine
提交
072a30bd
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,发现更多精彩内容 >>
提交
072a30bd
编写于
3月 01, 2022
作者:
H
Hongze Cheng
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
refact
上级
628c989e
变更
7
显示空白变更内容
内联
并排
Showing
7 changed file
with
39 addition
and
45 deletion
+39
-45
source/libs/tdb/src/db/tdbBtree.c
source/libs/tdb/src/db/tdbBtree.c
+5
-5
source/libs/tdb/src/db/tdbDb.c
source/libs/tdb/src/db/tdbDb.c
+3
-3
source/libs/tdb/src/db/tdbEnv.c
source/libs/tdb/src/db/tdbEnv.c
+1
-1
source/libs/tdb/src/db/tdbPFile.c
source/libs/tdb/src/db/tdbPFile.c
+19
-24
source/libs/tdb/src/inc/tdbBtree.h
source/libs/tdb/src/inc/tdbBtree.h
+1
-1
source/libs/tdb/src/inc/tdbEnv.h
source/libs/tdb/src/inc/tdbEnv.h
+1
-1
source/libs/tdb/src/inc/tdbPFile.h
source/libs/tdb/src/inc/tdbPFile.h
+9
-10
未找到文件。
source/libs/tdb/src/db/tdbBtree.c
浏览文件 @
072a30bd
...
...
@@ -19,7 +19,7 @@ struct SBTree {
SPgno
root
;
int
keyLen
;
int
valLen
;
SP
File
*
pFile
;
SP
ager
*
pFile
;
FKeyComparator
kcmpr
;
};
...
...
@@ -52,7 +52,7 @@ static int tdbInitBtPage(SPage *pPage, SBtPage **ppBtPage);
static
int
tdbCompareKeyAndCell
(
const
void
*
pKey
,
int
kLen
,
const
void
*
pCell
);
static
int
tdbDefaultKeyCmprFn
(
const
void
*
pKey1
,
int
keyLen1
,
const
void
*
pKey2
,
int
keyLen2
);
int
tdbBtreeOpen
(
SPgno
rtPgno
,
int
keyLen
,
int
valLen
,
SP
File
*
pFile
,
FKeyComparator
kcmpr
,
SBTree
**
ppBt
)
{
int
tdbBtreeOpen
(
SPgno
rtPgno
,
int
keyLen
,
int
valLen
,
SP
ager
*
pFile
,
FKeyComparator
kcmpr
,
SBTree
**
ppBt
)
{
SBTree
*
pBt
;
*
ppBt
=
NULL
;
...
...
@@ -93,7 +93,7 @@ int tdbBtreeCursor(SBtCursor *pCur, SBTree *pBt) {
int
tdbBtCursorInsert
(
SBtCursor
*
pCur
,
const
void
*
pKey
,
int
kLen
,
const
void
*
pVal
,
int
vLen
)
{
int
ret
;
SP
File
*
pFile
;
SP
ager
*
pFile
;
SBtPage
*
pPage
;
ret
=
tdbBtCursorMoveTo
(
pCur
,
pKey
,
kLen
);
...
...
@@ -199,7 +199,7 @@ static int tdbEncodeLength(u8 *pBuf, uint len) {
static
int
tdbBtCursorMoveToRoot
(
SBtCursor
*
pCur
)
{
SBTree
*
pBt
;
SP
File
*
pFile
;
SP
ager
*
pFile
;
SPage
*
pPage
;
SBtPage
*
pBtPage
;
int
ret
;
...
...
@@ -207,7 +207,7 @@ static int tdbBtCursorMoveToRoot(SBtCursor *pCur) {
pBt
=
pCur
->
pBt
;
pFile
=
pBt
->
pFile
;
pPage
=
tdbP
File
Get
(
pFile
,
pBt
->
root
);
pPage
=
tdbP
ager
Get
(
pFile
,
pBt
->
root
);
if
(
pPage
==
NULL
)
{
// TODO: handle error
}
...
...
source/libs/tdb/src/db/tdbDb.c
浏览文件 @
072a30bd
...
...
@@ -22,7 +22,7 @@ struct STDb {
int
tdbDbOpen
(
const
char
*
fname
,
int
keyLen
,
int
valLen
,
FKeyComparator
keyCmprFn
,
STEnv
*
pEnv
,
STDb
**
ppDb
)
{
STDb
*
pDb
;
SP
File
*
pFile
;
SP
ager
*
pFile
;
int
ret
;
char
fFullName
[
TDB_FILENAME_LEN
];
SPage
*
pPage
;
...
...
@@ -41,7 +41,7 @@ int tdbDbOpen(const char *fname, int keyLen, int valLen, FKeyComparator keyCmprF
pFile
=
tdbEnvGetPFile
(
pEnv
,
fname
);
if
(
pFile
==
NULL
)
{
snprintf
(
fFullName
,
TDB_FILENAME_LEN
,
"%s/%s"
,
pEnv
->
rootDir
,
fname
);
ret
=
tdbP
File
Open
(
pEnv
->
pCache
,
fFullName
,
&
pFile
);
ret
=
tdbP
ager
Open
(
pEnv
->
pCache
,
fFullName
,
&
pFile
);
if
(
ret
<
0
)
{
return
-
1
;
}
...
...
@@ -49,7 +49,7 @@ int tdbDbOpen(const char *fname, int keyLen, int valLen, FKeyComparator keyCmprF
ASSERT
(
pFile
!=
NULL
);
ret
=
tdbP
File
OpenDB
(
pFile
,
&
pgno
,
true
);
ret
=
tdbP
ager
OpenDB
(
pFile
,
&
pgno
,
true
);
if
(
ret
<
0
)
{
return
-
1
;
}
...
...
source/libs/tdb/src/db/tdbEnv.c
浏览文件 @
072a30bd
...
...
@@ -64,7 +64,7 @@ int tdbEnvClose(STEnv *pEnv) {
return
0
;
}
SP
File
*
tdbEnvGetPFile
(
STEnv
*
pEnv
,
const
char
*
fname
)
{
SP
ager
*
tdbEnvGetPFile
(
STEnv
*
pEnv
,
const
char
*
fname
)
{
// TODO
return
NULL
;
}
\ No newline at end of file
source/libs/tdb/src/db/tdbPFile.c
浏览文件 @
072a30bd
...
...
@@ -15,7 +15,7 @@
#include "tdbInt.h"
struct
SP
File
{
struct
SP
ager
{
char
*
dbFileName
;
char
*
jFileName
;
int
pageSize
;
...
...
@@ -41,11 +41,11 @@ typedef struct __attribute__((__packed__)) {
TDB_STATIC_ASSERT
(
sizeof
(
SFileHdr
)
==
128
,
"Size of file header is not correct"
);
static
int
tdbP
FileReadPage
(
SPFile
*
pFile
,
SPage
*
pPage
);
static
int
tdbP
agerReadPage
(
SPager
*
pFile
,
SPage
*
pPage
);
int
tdbP
FileOpen
(
SPCache
*
pCache
,
const
char
*
fileName
,
SPFile
**
ppFile
)
{
int
tdbP
agerOpen
(
SPCache
*
pCache
,
const
char
*
fileName
,
SPager
**
ppFile
)
{
uint8_t
*
pPtr
;
SP
File
*
pFile
;
SP
ager
*
pFile
;
int
fsize
;
int
zsize
;
int
ret
;
...
...
@@ -53,7 +53,7 @@ int tdbPFileOpen(SPCache *pCache, const char *fileName, SPFile **ppFile) {
*
ppFile
=
NULL
;
fsize
=
strlen
(
fileName
);
zsize
=
sizeof
(
*
pFile
)
/* SP
File
*/
zsize
=
sizeof
(
*
pFile
)
/* SP
ager
*/
+
fsize
+
1
/* dbFileName */
+
fsize
+
8
+
1
;
/* jFileName */
pPtr
=
(
uint8_t
*
)
calloc
(
1
,
zsize
);
...
...
@@ -61,7 +61,7 @@ int tdbPFileOpen(SPCache *pCache, const char *fileName, SPFile **ppFile) {
return
-
1
;
}
pFile
=
(
SP
File
*
)
pPtr
;
pFile
=
(
SP
ager
*
)
pPtr
;
pPtr
+=
sizeof
(
*
pFile
);
// pFile->dbFileName
pFile
->
dbFileName
=
(
char
*
)
pPtr
;
...
...
@@ -92,12 +92,12 @@ int tdbPFileOpen(SPCache *pCache, const char *fileName, SPFile **ppFile) {
return
0
;
}
int
tdbP
FileClose
(
SPFile
*
pFile
)
{
int
tdbP
agerClose
(
SPager
*
pFile
)
{
// TODO
return
0
;
}
int
tdbP
FileOpenDB
(
SPFile
*
pFile
,
SPgno
*
ppgno
,
bool
toCreate
)
{
int
tdbP
agerOpenDB
(
SPager
*
pFile
,
SPgno
*
ppgno
,
bool
toCreate
)
{
SPgno
pgno
;
SPage
*
pPage
;
int
ret
;
...
...
@@ -108,13 +108,13 @@ int tdbPFileOpenDB(SPFile *pFile, SPgno *ppgno, bool toCreate) {
}
if
(
pgno
==
0
&&
toCreate
)
{
ret
=
tdbP
File
AllocPage
(
pFile
,
&
pPage
,
&
pgno
);
ret
=
tdbP
ager
AllocPage
(
pFile
,
&
pPage
,
&
pgno
);
if
(
ret
<
0
)
{
return
-
1
;
}
// tdbPFileZeroPage(pPage);
ret
=
tdbP
File
Write
(
pFile
,
pPage
);
ret
=
tdbP
ager
Write
(
pFile
,
pPage
);
if
(
ret
<
0
)
{
return
-
1
;
}
...
...
@@ -124,7 +124,7 @@ int tdbPFileOpenDB(SPFile *pFile, SPgno *ppgno, bool toCreate) {
return
0
;
}
SPage
*
tdbP
FileGet
(
SPFile
*
pFile
,
SPgno
pgno
)
{
SPage
*
tdbP
agerGet
(
SPager
*
pFile
,
SPgno
pgno
)
{
SPgid
pgid
;
SPage
*
pPage
;
...
...
@@ -142,7 +142,7 @@ SPage *tdbPFileGet(SPFile *pFile, SPgno pgno) {
if
(
pgno
>
pFile
->
dbFileSize
/*TODO*/
)
{
memset
(
pPage
->
pData
,
0
,
pFile
->
pageSize
);
}
else
{
if
(
tdbP
File
ReadPage
(
pFile
,
pPage
)
<
0
)
{
if
(
tdbP
ager
ReadPage
(
pFile
,
pPage
)
<
0
)
{
// TODO: handle error
return
NULL
;
}
...
...
@@ -156,11 +156,11 @@ SPage *tdbPFileGet(SPFile *pFile, SPgno pgno) {
return
pPage
;
}
int
tdbP
FileWrite
(
SPFile
*
pFile
,
SPage
*
pPage
)
{
int
tdbP
agerWrite
(
SPager
*
pFile
,
SPage
*
pPage
)
{
int
ret
;
if
(
pFile
->
inTran
==
0
)
{
ret
=
tdbP
File
Begin
(
pFile
);
ret
=
tdbP
ager
Begin
(
pFile
);
if
(
ret
<
0
)
{
return
-
1
;
}
...
...
@@ -177,13 +177,13 @@ int tdbPFileWrite(SPFile *pFile, SPage *pPage) {
return
0
;
}
int
tdbP
FileAllocPage
(
SPFile
*
pFile
,
SPage
**
ppPage
,
SPgno
*
ppgno
)
{
int
tdbP
agerAllocPage
(
SPager
*
pFile
,
SPage
**
ppPage
,
SPgno
*
ppgno
)
{
SPage
*
pPage
;
SPgno
pgno
;
if
(
1
/*TODO: no free page*/
)
{
pgno
=
++
pFile
->
dbFileSize
;
pPage
=
tdbP
File
Get
(
pFile
,
pgno
);
pPage
=
tdbP
ager
Get
(
pFile
,
pgno
);
ASSERT
(
pPage
!=
NULL
);
}
else
{
/* TODO: allocate from the free list */
...
...
@@ -195,7 +195,7 @@ int tdbPFileAllocPage(SPFile *pFile, SPage **ppPage, SPgno *ppgno) {
return
0
;
}
int
tdbP
FileBegin
(
SPFile
*
pFile
)
{
int
tdbP
agerBegin
(
SPager
*
pFile
)
{
if
(
pFile
->
inTran
)
{
return
0
;
}
...
...
@@ -213,17 +213,12 @@ int tdbPFileBegin(SPFile *pFile) {
return
0
;
}
int
tdbP
FileCommit
(
SPFile
*
pFile
)
{
int
tdbP
agerCommit
(
SPager
*
pFile
)
{
// TODO
return
0
;
}
int
tdbPFileRollback
(
SPFile
*
pFile
)
{
// TODO
return
0
;
}
static
int
tdbPFileReadPage
(
SPFile
*
pFile
,
SPage
*
pPage
)
{
static
int
tdbPagerReadPage
(
SPager
*
pFile
,
SPage
*
pPage
)
{
i64
offset
;
int
ret
;
...
...
source/libs/tdb/src/inc/tdbBtree.h
浏览文件 @
072a30bd
...
...
@@ -34,7 +34,7 @@ struct SBtCursor {
void
*
pBuf
;
};
int
tdbBtreeOpen
(
SPgno
rtPgno
,
int
keyLen
,
int
valLen
,
SP
File
*
pFile
,
FKeyComparator
kcmpr
,
SBTree
**
ppBt
);
int
tdbBtreeOpen
(
SPgno
rtPgno
,
int
keyLen
,
int
valLen
,
SP
ager
*
pFile
,
FKeyComparator
kcmpr
,
SBTree
**
ppBt
);
int
tdbBtreeClose
(
SBTree
*
pBt
);
int
tdbBtreeCursor
(
SBtCursor
*
pCur
,
SBTree
*
pBt
);
int
tdbBtCursorInsert
(
SBtCursor
*
pCur
,
const
void
*
pKey
,
int
kLen
,
const
void
*
pVal
,
int
vLen
);
...
...
source/libs/tdb/src/inc/tdbEnv.h
浏览文件 @
072a30bd
...
...
@@ -30,7 +30,7 @@ typedef struct STEnv {
int
tdbEnvOpen
(
const
char
*
rootDir
,
int
pageSize
,
int
cacheSize
,
STEnv
**
ppEnv
);
int
tdbEnvClose
(
STEnv
*
pEnv
);
SP
File
*
tdbEnvGetPFile
(
STEnv
*
pEnv
,
const
char
*
fname
);
SP
ager
*
tdbEnvGetPFile
(
STEnv
*
pEnv
,
const
char
*
fname
);
#ifdef __cplusplus
}
...
...
source/libs/tdb/src/inc/tdbPFile.h
浏览文件 @
072a30bd
...
...
@@ -20,17 +20,16 @@
extern
"C"
{
#endif
typedef
struct
SP
File
SPFile
;
typedef
struct
SP
ager
SPager
;
int
tdbPFileOpen
(
SPCache
*
pCache
,
const
char
*
fileName
,
SPFile
**
ppFile
);
int
tdbPFileClose
(
SPFile
*
pFile
);
int
tdbPFileOpenDB
(
SPFile
*
pFile
,
SPgno
*
ppgno
,
bool
toCreate
);
SPage
*
tdbPFileGet
(
SPFile
*
pFile
,
SPgno
pgno
);
int
tdbPFileWrite
(
SPFile
*
pFile
,
SPage
*
pPage
);
int
tdbPFileAllocPage
(
SPFile
*
pFile
,
SPage
**
ppPage
,
SPgno
*
ppgno
);
int
tdbPFileBegin
(
SPFile
*
pFile
);
int
tdbPFileCommit
(
SPFile
*
pFile
);
int
tdbPFileRollback
(
SPFile
*
pFile
);
int
tdbPagerOpen
(
SPCache
*
pCache
,
const
char
*
fileName
,
SPager
**
ppFile
);
int
tdbPagerClose
(
SPager
*
pFile
);
int
tdbPagerOpenDB
(
SPager
*
pFile
,
SPgno
*
ppgno
,
bool
toCreate
);
SPage
*
tdbPagerGet
(
SPager
*
pFile
,
SPgno
pgno
);
int
tdbPagerWrite
(
SPager
*
pFile
,
SPage
*
pPage
);
int
tdbPagerAllocPage
(
SPager
*
pFile
,
SPage
**
ppPage
,
SPgno
*
ppgno
);
int
tdbPagerBegin
(
SPager
*
pFile
);
int
tdbPagerCommit
(
SPager
*
pFile
);
#ifdef __cplusplus
}
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录