diff --git a/include/libs/tkv/tkv.h b/include/libs/tkv/tkv.h
index edade1dc3641250ecfe71670faa6cc5c0132b14f..98194f090c0e86f18b8d95cfb9383192caf3ac9c 100644
--- a/include/libs/tkv/tkv.h
+++ b/include/libs/tkv/tkv.h
@@ -16,6 +16,7 @@
#ifndef _TD_TKV_H_
#define _TD_TKV_H_
+#if 0
#include "os.h"
#ifdef __cplusplus
@@ -59,4 +60,5 @@ void tkvWriteOptsDestroy(STkvWriteOpts *);
}
#endif
+#endif
#endif /*_TD_TKV_H_*/
\ No newline at end of file
diff --git a/source/libs/tkv/CMakeLists.txt b/source/libs/tkv/CMakeLists.txt
index 529b2703f740cbd133b46278a22f7e7ac038a4e7..0620e12f55b65fd4bca763e2f1f88123ebd93e81 100644
--- a/source/libs/tkv/CMakeLists.txt
+++ b/source/libs/tkv/CMakeLists.txt
@@ -8,10 +8,4 @@ target_include_directories(
target_link_libraries(
tkv
PUBLIC os
-)
-if(${BUILD_WITH_ROCKSDB})
- target_link_libraries(
- tkv
- PUBLIC rocksdb
- )
-endif(${BUILD_WITH_ROCKSDB})
+)
\ No newline at end of file
diff --git a/source/libs/tkv/inc/tkvDef.h b/source/libs/tkv/inc/tDiskMgr.h
similarity index 60%
rename from source/libs/tkv/inc/tkvDef.h
rename to source/libs/tkv/inc/tDiskMgr.h
index 7433b1a4dd5d52ee5fe715146a2635673957c325..43f5bca5824fbc3d5c17598640a8840d60ea6f70 100644
--- a/source/libs/tkv/inc/tkvDef.h
+++ b/source/libs/tkv/inc/tDiskMgr.h
@@ -13,46 +13,23 @@
* along with this program. If not, see .
*/
-#ifndef _TD_TKV_DEF_H_
-#define _TD_TKV_DEF_H_
-
-#ifdef USE_ROCKSDB
-#include
-#endif
+#ifndef _TD_TDISK_MGR_H_
+#define _TD_TDISK_MGR_H_
#ifdef __cplusplus
extern "C" {
#endif
-struct STkvDb {
-#ifdef USE_ROCKSDB
- rocksdb_t *db;
-#endif
-};
-struct STkvOpts {
-#ifdef USE_ROCKSDB
- rocksdb_options_t *opts;
-#endif
-};
+#include "os.h"
-struct STkvCache {
- // TODO
-};
+typedef struct SDiskMgr SDiskMgr;
-struct STkvReadOpts {
-#ifdef USE_ROCKSDB
- rocksdb_readoptions_t *ropts;
-#endif
-};
-
-struct STkvWriteOpts {
-#ifdef USE_ROCKSDB
- rocksdb_writeoptions_t *wopts;
-#endif
-};
+int tdmReadPage(int32_t pgid, char *pData);
+int tdmWritePage(int32_t pgid, const char *pData);
+int32_t tdmAllocPage(SDiskMgr *pDiskMgr);
#ifdef __cplusplus
}
#endif
-#endif /*_TD_TKV_DEF_H_*/
\ No newline at end of file
+#endif /*_TD_TDISK_MGR_H_*/
\ No newline at end of file
diff --git a/source/libs/tkv/inc/tkvRocksdb.h b/source/libs/tkv/inc/tkvMacro.h
similarity index 89%
rename from source/libs/tkv/inc/tkvRocksdb.h
rename to source/libs/tkv/inc/tkvMacro.h
index 658deb335f5d69e56542dcac67e5c482285278be..6e3458c0215569810bddf9ccfb89c73acb487580 100644
--- a/source/libs/tkv/inc/tkvRocksdb.h
+++ b/source/libs/tkv/inc/tkvMacro.h
@@ -13,8 +13,8 @@
* along with this program. If not, see .
*/
-#ifndef _TD_TVK_ROCKSDB_H_
-#define _TD_TVK_ROCKSDB_H_
+#ifndef _TD_TKV_MACRO_H_
+#define _TD_TKV_MACRO_H_
#ifdef __cplusplus
extern "C" {
@@ -24,4 +24,4 @@ extern "C" {
}
#endif
-#endif /*_TD_TVK_ROCKSDB_H_*/
\ No newline at end of file
+#endif /*_TD_TKV_MACRO_H_*/
\ No newline at end of file
diff --git a/source/libs/tkv/src/tkvRocksdb.c b/source/libs/tkv/src/tDiskMgr.c
similarity index 71%
rename from source/libs/tkv/src/tkvRocksdb.c
rename to source/libs/tkv/src/tDiskMgr.c
index 6dea4a4e57392be988126c579648f39a8270b9bf..916eaf66d65016407002e2de7b69accee8f890af 100644
--- a/source/libs/tkv/src/tkvRocksdb.c
+++ b/source/libs/tkv/src/tDiskMgr.c
@@ -11,4 +11,18 @@
*
* You should have received a copy of the GNU Affero General Public License
* along with this program. If not, see .
- */
\ No newline at end of file
+ */
+
+#include "tDiskMgr.h"
+
+struct SDiskMgr {
+ const char *fname;
+ uint16_t pgsize;
+ int fd;
+};
+
+int tdmReadPage(int32_t pgid, char *pData) {}
+
+int tdmWritePage(int32_t pgid, const char *pData) {}
+
+int32_t tdmAllocPage(SDiskMgr *pDiskMgr) {}
\ No newline at end of file
diff --git a/source/libs/tkv/src/tkv.c b/source/libs/tkv/src/tkv.c
deleted file mode 100644
index 0c6f896d56ef430a246546a2b96972d0f2e56fc9..0000000000000000000000000000000000000000
--- a/source/libs/tkv/src/tkv.c
+++ /dev/null
@@ -1,171 +0,0 @@
-/*
- * Copyright (c) 2019 TAOS Data, Inc.
- *
- * This program is free software: you can use, redistribute, and/or modify
- * it under the terms of the GNU Affero General Public License, version 3
- * or later ("AGPL"), as published by the Free Software Foundation.
- *
- * This program is distributed in the hope that it will be useful, but WITHOUT
- * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
- * FITNESS FOR A PARTICULAR PURPOSE.
- *
- * You should have received a copy of the GNU Affero General Public License
- * along with this program. If not, see .
- */
-
-#include "tkv.h"
-#include "tkvDef.h"
-
-static pthread_once_t isInit = PTHREAD_ONCE_INIT;
-static STkvReadOpts defaultReadOpts;
-static STkvWriteOpts defaultWriteOpts;
-
-static void tkvInit();
-
-STkvDb *tkvOpen(const STkvOpts *options, const char *path) {
- pthread_once(&isInit, tkvInit);
- STkvDb *pDb = NULL;
-
- pDb = (STkvDb *)malloc(sizeof(*pDb));
- if (pDb == NULL) {
- return NULL;
- }
-
-#ifdef USE_ROCKSDB
- char *err = NULL;
-
- pDb->db = rocksdb_open(options->opts, path, &err);
- // TODO: check err
-#endif
-
- return pDb;
-}
-
-void tkvClose(STkvDb *pDb) {
- if (pDb) {
-#ifdef USE_ROCKSDB
- rocksdb_close(pDb->db);
-#endif
- free(pDb);
- }
-}
-
-void tkvPut(STkvDb *pDb, const STkvWriteOpts *pwopts, const char *key, size_t keylen, const char *val, size_t vallen) {
-#ifdef USE_ROCKSDB
- char *err = NULL;
- rocksdb_put(pDb->db, pwopts ? pwopts->wopts : defaultWriteOpts.wopts, key, keylen, val, vallen, &err);
- // TODO: check error
-#endif
-}
-
-char *tkvGet(STkvDb *pDb, const STkvReadOpts *propts, const char *key, size_t keylen, size_t *vallen) {
- char *ret = NULL;
-
-#ifdef USE_ROCKSDB
- char *err = NULL;
- ret = rocksdb_get(pDb->db, propts ? propts->ropts : defaultReadOpts.ropts, key, keylen, vallen, &err);
- // TODD: check error
-#endif
-
- return ret;
-}
-
-STkvOpts *tkvOptsCreate() {
- STkvOpts *pOpts = NULL;
-
- pOpts = (STkvOpts *)malloc(sizeof(*pOpts));
- if (pOpts == NULL) {
- return NULL;
- }
-
-#ifdef USE_ROCKSDB
- pOpts->opts = rocksdb_options_create();
- // TODO: check error
-#endif
-
- return pOpts;
-}
-
-void tkvOptsDestroy(STkvOpts *pOpts) {
- if (pOpts) {
-#ifdef USE_ROCKSDB
- rocksdb_options_destroy(pOpts->opts);
-#endif
- free(pOpts);
- }
-}
-
-void tkvOptionsSetCache(STkvOpts *popts, STkvCache *pCache) {
- // TODO
-}
-
-void tkvOptsSetCreateIfMissing(STkvOpts *pOpts, unsigned char c) {
-#ifdef USE_ROCKSDB
- rocksdb_options_set_create_if_missing(pOpts->opts, c);
-#endif
-}
-
-STkvReadOpts *tkvReadOptsCreate() {
- STkvReadOpts *pReadOpts = NULL;
-
- pReadOpts = (STkvReadOpts *)malloc(sizeof(*pReadOpts));
- if (pReadOpts == NULL) {
- return NULL;
- }
-
-#ifdef USE_ROCKSDB
- pReadOpts->ropts = rocksdb_readoptions_create();
-#endif
-
- return pReadOpts;
-}
-
-void tkvReadOptsDestroy(STkvReadOpts *pReadOpts) {
- if (pReadOpts) {
-#ifdef USE_ROCKSDB
- rocksdb_readoptions_destroy(pReadOpts->ropts);
-#endif
- free(pReadOpts);
- }
-}
-
-STkvWriteOpts *tkvWriteOptsCreate() {
- STkvWriteOpts *pWriteOpts = NULL;
-
- pWriteOpts = (STkvWriteOpts *)malloc(sizeof(*pWriteOpts));
- if (pWriteOpts == NULL) {
- return NULL;
- }
-
-#ifdef USE_ROCKSDB
- pWriteOpts->wopts = rocksdb_writeoptions_create();
-#endif
-
- return pWriteOpts;
-}
-
-void tkvWriteOptsDestroy(STkvWriteOpts *pWriteOpts) {
- if (pWriteOpts) {
-#ifdef USE_ROCKSDB
- rocksdb_writeoptions_destroy(pWriteOpts->wopts);
-#endif
- free(pWriteOpts);
- }
-}
-
-/* ------------------------ STATIC METHODS ------------------------ */
-static void tkvInit() {
-#ifdef USE_ROCKSDB
- defaultReadOpts.ropts = rocksdb_readoptions_create();
- defaultWriteOpts.wopts = rocksdb_writeoptions_create();
- rocksdb_writeoptions_disable_WAL(defaultWriteOpts.wopts, true);
-
-#endif
-}
-
-static void tkvClear() {
-#ifdef USE_ROCKSDB
- rocksdb_readoptions_destroy(defaultReadOpts.ropts);
- rocksdb_writeoptions_destroy(defaultWriteOpts.wopts);
-#endif
-}