Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
taosdata
TDengine
提交
665eb2e2
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看板
提交
665eb2e2
编写于
3月 03, 2022
作者:
H
Hongze Cheng
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
more TDB
上级
f54e38b3
变更
7
隐藏空白更改
内联
并排
Showing
7 changed file
with
25 addition
and
12 deletion
+25
-12
source/libs/tdb/src/db/tdbBtree.c
source/libs/tdb/src/db/tdbBtree.c
+13
-3
source/libs/tdb/src/db/tdbEnv.c
source/libs/tdb/src/db/tdbEnv.c
+1
-1
source/libs/tdb/src/db/tdbPCache.c
source/libs/tdb/src/db/tdbPCache.c
+3
-1
source/libs/tdb/src/db/tdbPager.c
source/libs/tdb/src/db/tdbPager.c
+4
-1
source/libs/tdb/src/inc/tdbPCache.h
source/libs/tdb/src/inc/tdbPCache.h
+1
-0
source/libs/tdb/src/inc/tdbPage.h
source/libs/tdb/src/inc/tdbPage.h
+2
-6
source/libs/tdb/src/inc/tdbPager.h
source/libs/tdb/src/inc/tdbPager.h
+1
-0
未找到文件。
source/libs/tdb/src/db/tdbBtree.c
浏览文件 @
665eb2e2
...
...
@@ -22,11 +22,11 @@ struct SBTree {
SPager
*
pPager
;
FKeyComparator
kcmpr
;
u8
fanout
;
int
pageSize
;
int
maxLocal
;
int
minLocal
;
int
maxLeaf
;
int
minLeaf
;
int
nPayload
;
};
typedef
struct
SPgHdr
{
...
...
@@ -85,6 +85,16 @@ int tdbBtreeOpen(SPgno rtPgno, int keyLen, int valLen, SPager *pPager, FKeyCompa
ASSERT
(
0
);
// TODO: pBt->fanout = 0;
}
// pBt->pageSize
pBt
->
pageSize
=
tdbPagerGetPageSize
(
pPager
);
// pBt->maxLocal
pBt
->
maxLocal
=
(
pBt
->
pageSize
-
sizeof
(
SPageHdr
))
/
pBt
->
fanout
;
// pBt->minLocal
pBt
->
minLocal
=
(
pBt
->
pageSize
-
sizeof
(
SPageHdr
))
/
pBt
->
fanout
/
2
;
// pBt->maxLeaf
pBt
->
maxLeaf
=
pBt
->
pageSize
-
sizeof
(
SPageHdr
);
// pBt->minLeaf
pBt
->
minLeaf
=
pBt
->
minLocal
;
*
ppBt
=
pBt
;
return
0
;
...
...
@@ -277,11 +287,11 @@ static int tdbDefaultKeyCmprFn(const void *pKey1, int keyLen1, const void *pKey2
return
cret
;
}
static
void
tdbBtreeZeroPage
(
S
PageHandl
e
*
pPage
,
int
flags
)
{
static
void
tdbBtreeZeroPage
(
S
MemPag
e
*
pPage
,
int
flags
)
{
// TODO
}
static
int
tdbBtreeInitPage
(
S
PageHandl
e
*
pPage
)
{
static
int
tdbBtreeInitPage
(
S
MemPag
e
*
pPage
)
{
// TODO
return
0
;
}
\ No newline at end of file
source/libs/tdb/src/db/tdbEnv.c
浏览文件 @
665eb2e2
...
...
@@ -48,7 +48,7 @@ int tdbEnvOpen(const char *rootDir, int pageSize, int cacheSize, STEnv **ppEnv)
pEnv
->
jfd
=
-
1
;
ret
=
tdbPCacheOpen
(
pageSize
,
cacheSize
,
sizeof
(
S
PageHandl
e
),
&
(
pEnv
->
pCache
));
ret
=
tdbPCacheOpen
(
pageSize
,
cacheSize
,
sizeof
(
S
MemPag
e
),
&
(
pEnv
->
pCache
));
if
(
ret
<
0
)
{
return
-
1
;
}
...
...
source/libs/tdb/src/db/tdbPCache.c
浏览文件 @
665eb2e2
...
...
@@ -267,4 +267,6 @@ static int tdbPCacheOpenImpl(SPCache *pCache) {
pCache
->
lru
.
pLruPrev
=
&
(
pCache
->
lru
);
return
0
;
}
\ No newline at end of file
}
int
tdbPCacheGetPageSize
(
SPCache
*
pCache
)
{
return
pCache
->
pageSize
;
}
\ No newline at end of file
source/libs/tdb/src/db/tdbPager.c
浏览文件 @
665eb2e2
...
...
@@ -87,6 +87,7 @@ int tdbPagerOpen(SPCache *pCache, const char *fileName, SPager **ppPager) {
}
pPager
->
jfd
=
-
1
;
pPager
->
pageSize
=
tdbPCacheGetPageSize
(
pCache
);
*
ppPager
=
pPager
;
return
0
;
...
...
@@ -238,4 +239,6 @@ static int tdbPagerReadPage(SPager *pPager, SPage *pPage) {
return
-
1
;
}
return
0
;
}
\ No newline at end of file
}
int
tdbPagerGetPageSize
(
SPager
*
pPager
)
{
return
pPager
->
pageSize
;
}
\ No newline at end of file
source/libs/tdb/src/inc/tdbPCache.h
浏览文件 @
665eb2e2
...
...
@@ -45,6 +45,7 @@ int tdbPCacheClose(SPCache *pCache);
SPage
*
tdbPCacheFetch
(
SPCache
*
pCache
,
const
SPgid
*
pPgid
,
bool
alcNewPage
);
void
tdbPCacheFetchFinish
(
SPCache
*
pCache
,
SPage
*
pPage
);
void
tdbPCacheRelease
(
SPage
*
pPage
);
int
tdbPCacheGetPageSize
(
SPCache
*
pCache
);
#ifdef __cplusplus
}
...
...
source/libs/tdb/src/inc/tdbPage.h
浏览文件 @
665eb2e2
...
...
@@ -21,17 +21,13 @@ extern "C" {
#endif
typedef
struct
__attribute__
((
__packed__
))
{
u
8
flags
;
u
16
flags
;
u16
nCells
;
u16
cellCont
;
u16
freeCell
;
u16
nFree
;
}
SPageHdr
;
typedef
struct
__attribute__
((
__packed__
))
{
SPgno
nPgno
;
}
SOfPageHdr
;
typedef
struct
{
void
*
pData
;
SPageHdr
*
pPageHdr
;
...
...
@@ -41,7 +37,7 @@ typedef struct {
int
vLen
;
int
maxLocal
;
int
minLocal
;
}
S
PageHandl
e
;
}
S
MemPag
e
;
#ifdef __cplusplus
}
...
...
source/libs/tdb/src/inc/tdbPager.h
浏览文件 @
665eb2e2
...
...
@@ -28,6 +28,7 @@ int tdbPagerWrite(SPager *pFile, SPage *pPage);
int
tdbPagerAllocPage
(
SPager
*
pFile
,
SPage
**
ppPage
,
SPgno
*
ppgno
);
int
tdbPagerBegin
(
SPager
*
pFile
);
int
tdbPagerCommit
(
SPager
*
pFile
);
int
tdbPagerGetPageSize
(
SPager
*
pPager
);
#ifdef __cplusplus
}
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录