This commit is contained in:
Hongze Cheng 2021-12-14 09:56:24 +08:00
parent e5cd09151b
commit 79006358d7
5 changed files with 23 additions and 3 deletions

View File

@ -68,9 +68,11 @@ typedef struct SVnodeCfg {
/** /**
* @brief Initialize the vnode module * @brief Initialize the vnode module
* *
* @param nthreads number of commit threads. 0 for no threads and
* a schedule queue should be given (TODO)
* @return int 0 for success and -1 for failure * @return int 0 for success and -1 for failure
*/ */
int vnodeInit(); int vnodeInit(uint16_t nthreads);
/** /**
* @brief clear a vnode * @brief clear a vnode

View File

@ -22,6 +22,9 @@
extern "C" { extern "C" {
#endif #endif
int vnodeInitCommit(uint16_t nthreads);
void vnodeClearCommit();
#define vnodeShouldCommit vnodeBufPoolIsFull #define vnodeShouldCommit vnodeBufPoolIsFull
int vnodeAsyncCommit(SVnode *pVnode); int vnodeAsyncCommit(SVnode *pVnode);

View File

@ -18,6 +18,15 @@
static int vnodeStartCommit(SVnode *pVnode); static int vnodeStartCommit(SVnode *pVnode);
static int vnodeEndCommit(SVnode *pVnode); static int vnodeEndCommit(SVnode *pVnode);
int vnodeInitCommit(uint16_t nthreads) {
// TODO
return 0;
}
void vnodeClearCommit() {
// TODO
}
int vnodeAsyncCommit(SVnode *pVnode) { int vnodeAsyncCommit(SVnode *pVnode) {
#if 0 #if 0
if (vnodeStartCommit(pVnode) < 0) { if (vnodeStartCommit(pVnode) < 0) {

View File

@ -24,7 +24,7 @@ static void vnodeCloseImpl(SVnode *pVnode);
TD_DEF_MOD_INIT_FLAG(vnode); TD_DEF_MOD_INIT_FLAG(vnode);
TD_DEF_MOD_CLEAR_FLAG(vnode); TD_DEF_MOD_CLEAR_FLAG(vnode);
int vnodeInit() { int vnodeInit(uint16_t nthreads) {
if (TD_CHECK_AND_SET_MODE_INIT(vnode) == TD_MOD_INITIALIZED) { if (TD_CHECK_AND_SET_MODE_INIT(vnode) == TD_MOD_INITIALIZED) {
return 0; return 0;
} }
@ -33,6 +33,10 @@ int vnodeInit() {
return -1; return -1;
} }
if (vnodeInitCommit(nthreads) < 0) {
return -1;
}
return 0; return 0;
} }
@ -42,6 +46,8 @@ void vnodeClear() {
} }
walCleanUp(); walCleanUp();
vnodeClearCommit();
} }
SVnode *vnodeOpen(const char *path, const SVnodeCfg *pVnodeCfg) { SVnode *vnodeOpen(const char *path, const SVnodeCfg *pVnodeCfg) {

View File

@ -92,7 +92,7 @@ TEST(vnodeApiTest, test_create_table_encode_and_decode_function) {
#endif #endif
TEST(vnodeApiTest, vnodeOpen_vnodeClose_test) { TEST(vnodeApiTest, vnodeOpen_vnodeClose_test) {
GTEST_ASSERT_GE(vnodeInit(), 0); GTEST_ASSERT_GE(vnodeInit(2), 0);
// Create and open a vnode // Create and open a vnode
SVnode *pVnode = vnodeOpen("vnode1", NULL); SVnode *pVnode = vnodeOpen("vnode1", NULL);