Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
taosdata
TDengine
提交
87dcc7fd
T
TDengine
项目概览
taosdata
/
TDengine
1 年多 前同步成功
通知
1187
Star
22018
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看板
提交
87dcc7fd
编写于
10月 12, 2021
作者:
H
Hongze Cheng
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
make compile and run test
上级
b45884c1
变更
3
隐藏空白更改
内联
并排
Showing
3 changed file
with
42 addition
and
5 deletion
+42
-5
include/server/vnode/meta/meta.h
include/server/vnode/meta/meta.h
+1
-1
source/server/vnode/meta/src/meta.c
source/server/vnode/meta/src/meta.c
+17
-2
source/server/vnode/meta/test/metaTests.cpp
source/server/vnode/meta/test/metaTests.cpp
+24
-2
未找到文件。
include/server/vnode/meta/meta.h
浏览文件 @
87dcc7fd
...
...
@@ -57,7 +57,7 @@ SMetaQueryOpts *metaQueryOptionsCreate();
void
metaQueryOptionsDestroy
(
SMetaQueryOpts
*
);
// STableOpts
void
metaTableOptsInit
(
int8_t
type
,
const
char
*
name
,
const
STSchema
*
pSchema
);
void
metaTableOptsInit
(
STableOpts
*
,
int8_t
type
,
const
char
*
name
,
const
STSchema
*
pSchema
);
/* -------------------------------- Hided implementations -------------------------------- */
struct
STableOpts
{
...
...
source/server/vnode/meta/src/meta.c
浏览文件 @
87dcc7fd
...
...
@@ -146,10 +146,19 @@ int metaCreateTable(SMeta *pMeta, STableOpts *pTableOpts) {
wopt
=
rocksdb_writeoptions_create
();
// Add to tbname db
rocksdb_put
(
pMeta
->
tbnameDb
,
wopt
,
pTableOpts
->
name
,
strlen
(
pTableOpts
->
name
),
&
pTableObj
->
pTable
->
uid
,
sizeof
(
tb_uid_t
),
&
err
);
rocksdb_put
(
pMeta
->
schemaDb
,
wopt
,
pTableOpts
->
name
,
strlen
(
pTableOpts
->
name
),
&
pTableObj
->
pTable
->
uid
,
sizeof
(
tb_uid_t
),
&
err
);
// Add to schema db
char
id
[
12
];
char
buf
[
256
];
void
*
pBuf
=
buf
;
*
(
tb_uid_t
*
)
id
=
pTableObj
->
pTable
->
uid
;
*
(
int32_t
*
)(
id
+
sizeof
(
tb_uid_t
))
=
schemaVersion
(
pTableOpts
->
pSchema
);
int
size
=
tdEncodeSchema
(
&
pBuf
,
pTableOpts
->
pSchema
);
rocksdb_put
(
pMeta
->
schemaDb
,
wopt
,
id
,
12
,
buf
,
size
,
&
err
);
rocksdb_writeoptions_destroy
(
wopt
);
...
...
@@ -162,6 +171,12 @@ void metaDestroy(const char *path) { taosRemoveDir(path); }
int
metaCommit
(
SMeta
*
meta
)
{
return
0
;
}
void
metaTableOptsInit
(
STableOpts
*
pTableOpts
,
int8_t
type
,
const
char
*
name
,
const
STSchema
*
pSchema
)
{
pTableOpts
->
type
=
type
;
pTableOpts
->
name
=
strdup
(
name
);
pTableOpts
->
pSchema
=
tdDupSchema
(
pSchema
);
}
/* -------------------- Static Methods -------------------- */
static
STable
*
metaTableNew
(
tb_uid_t
uid
,
const
char
*
name
,
int32_t
sver
)
{
...
...
source/server/vnode/meta/test/metaTests.cpp
浏览文件 @
87dcc7fd
#include <gtest/gtest.h>
#include <string.h>
#include <iostream>
#include "meta.h"
TEST
(
MetaTest
,
meta_open_test
)
{
// Open Meta
SMeta
*
meta
=
metaOpen
(
NULL
);
std
::
cout
<<
"Meta is opened!"
<<
std
::
endl
;
// Create tables
STableOpts
tbOpts
;
char
tbname
[
128
];
STSchema
*
pSchema
;
STSchemaBuilder
sb
;
tdInitTSchemaBuilder
(
&
sb
,
0
);
for
(
size_t
i
=
0
;
i
<
10
;
i
++
)
{
tdAddColToSchema
(
&
sb
,
TSDB_DATA_TYPE_TIMESTAMP
,
i
,
8
);
}
pSchema
=
tdGetSchemaFromBuilder
(
&
sb
);
tdDestroyTSchemaBuilder
(
&
sb
);
for
(
size_t
i
=
0
;
i
<
1000000
;
i
++
)
{
sprintf
(
tbname
,
"tb%ld"
,
i
);
metaTableOptsInit
(
&
tbOpts
,
0
,
tbname
,
pSchema
);
metaCreateTable
(
meta
,
&
tbOpts
);
}
// Close Meta
metaClose
(
meta
);
std
::
cout
<<
"Meta is closed!"
<<
std
::
endl
;
metaDestroy
(
"meta"
);
std
::
cout
<<
"Meta is destroyed!"
<<
std
::
endl
;
// // Destroy Meta
// metaDestroy("meta");
// std::cout << "Meta is destroyed!" << std::endl;
}
\ No newline at end of file
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录