From 7d7c380c3904f5db4b3be1f56cfebfe3f3d0dcee Mon Sep 17 00:00:00 2001 From: Hongze Cheng Date: Fri, 15 Oct 2021 15:13:46 +0800 Subject: [PATCH] more --- include/server/vnode/meta/meta.h | 30 +++++++++++++++++- source/server/vnode/meta/inc/metaDef.h | 27 ---------------- source/server/vnode/meta/inc/metaUid.h | 3 +- source/server/vnode/meta/test/metaTests.cpp | 34 +++++++++++---------- 4 files changed, 48 insertions(+), 46 deletions(-) diff --git a/include/server/vnode/meta/meta.h b/include/server/vnode/meta/meta.h index df6c79d077..4775b8c2ad 100644 --- a/include/server/vnode/meta/meta.h +++ b/include/server/vnode/meta/meta.h @@ -24,9 +24,10 @@ extern "C" { #endif -typedef uint64_t tuid_t; +/* ------------------------ APIs Exposed ------------------------ */ // Types exported +typedef uint64_t tb_uid_t; typedef struct SMeta SMeta; typedef struct SMetaOpts SMetaOpts; typedef struct SMetaQueryHandle SMetaQueryHandle; @@ -59,6 +60,33 @@ void metaQueryOptionsDestroy(SMetaQueryOpts *); // STableOpts void metaTableOptsInit(STableOpts *, int8_t type, const char *name, const STSchema *pSchema); +/* ------------------------ Impl should hidden ------------------------ */ +typedef enum { META_SUPER_TABLE = 0, META_CHILD_TABLE = 1, META_NORMAL_TABLE = 2 } EMetaTableT; +typedef struct SSuperTableOpts { + tb_uid_t uid; + STSchema *pSchema; // (ts timestamp, a int) + STSchema *pTagSchema; // (tag1 binary(10), tag2 int) +} SSuperTableOpts; + +typedef struct SChildTableOpts { + tb_uid_t suid; // super table uid + SKVRow tags; // tag value of the child table +} SChildTableOpts; + +typedef struct SNormalTableOpts { + STSchema *pSchema; +} SNormalTableOpts; + +struct STableOpts { + EMetaTableT type; + char * name; + union { + SSuperTableOpts superOpts; + SChildTableOpts childOpts; + SNormalTableOpts normalOpts; + }; +}; + #ifdef __cplusplus } #endif diff --git a/source/server/vnode/meta/inc/metaDef.h b/source/server/vnode/meta/inc/metaDef.h index 3ff239e01e..f5d0b7f74c 100644 --- a/source/server/vnode/meta/inc/metaDef.h +++ b/source/server/vnode/meta/inc/metaDef.h @@ -34,33 +34,6 @@ struct SMeta { // STkvCache* metaCache; // TODO: add a global cache here }; -/* ------------------------ TEST CODE ------------------------ */ -typedef enum { META_SUPER_TABLE = 0, META_CHILD_TABLE = 1, META_NORMAL_TABLE = 2 } EMetaTableT; -typedef struct SSuperTableOpts { - tb_uid_t uid; - STSchema* pSchema; // (ts timestamp, a int) - STSchema* pTagSchema; // (tag1 binary(10), tag2 int) -} SSuperTableOpts; - -typedef struct SChildTableOpts { - tb_uid_t suid; // super table uid - SKVRow tags; // tag value of the child table -} SChildTableOpts; - -typedef struct SNormalTableOpts { - STSchema* pSchema; -} SNormalTableOpts; - -struct STableOpts { - EMetaTableT type; - char* name; - union { - SSuperTableOpts superOpts; - SChildTableOpts childOpts; - SNormalTableOpts normalOpts; - }; -}; - #ifdef __cplusplus } #endif diff --git a/source/server/vnode/meta/inc/metaUid.h b/source/server/vnode/meta/inc/metaUid.h index f0a747bc74..37c3fac6ba 100644 --- a/source/server/vnode/meta/inc/metaUid.h +++ b/source/server/vnode/meta/inc/metaUid.h @@ -16,14 +16,13 @@ #ifndef _TD_META_UID_H_ #define _TD_META_UID_H_ -#include "os.h" +#include "meta.h" #ifdef __cplusplus extern "C" { #endif /* ------------------------ APIS EXPOSED ------------------------ */ -typedef uint64_t tb_uid_t; typedef struct STableUidGenerator STableUidGenerator; // tb_uid_t diff --git a/source/server/vnode/meta/test/metaTests.cpp b/source/server/vnode/meta/test/metaTests.cpp index 6e26243aeb..c352b49603 100644 --- a/source/server/vnode/meta/test/metaTests.cpp +++ b/source/server/vnode/meta/test/metaTests.cpp @@ -9,23 +9,25 @@ TEST(MetaTest, meta_open_test) { 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); +#if 0 + // 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); - // } + metaCreateTable(meta, &tbOpts); + } +#endif // Close Meta metaClose(meta);