refact vnode code

This commit is contained in:
Hongze Cheng 2022-04-08 03:56:30 +00:00
parent afea903a98
commit e41abf9916
2 changed files with 57 additions and 36 deletions

View File

@ -4,4 +4,3 @@ add_subdirectory(qnode)
add_subdirectory(snode) add_subdirectory(snode)
add_subdirectory(bnode) add_subdirectory(bnode)
add_subdirectory(mgmt) add_subdirectory(mgmt)
add_subdirectory(vnode2)

View File

@ -1,54 +1,76 @@
set(META_DB_IMPL_LIST "BDB" "TDB") # vnode
set(META_DB_IMPL "TDB" CACHE STRING "Use BDB as the default META implementation") add_library(vnode STATIC "")
set_property(CACHE META_DB_IMPL PROPERTY STRINGS ${META_DB_IMPL_LIST}) target_sources(
vnode
PRIVATE
# vnode
"src/vnd/vnodeArenaMAImpl.c"
"src/vnd/vnodeBufferPool.c"
"src/vnd/vnodeCfg.c"
"src/vnd/vnodeCommit.c"
"src/vnd/vnodeInt.c"
"src/vnd/vnodeMain.c"
"src/vnd/vnodeMgr.c"
"src/vnd/vnodeQuery.c"
"src/vnd/vnodeStateMgr.c"
"src/vnd/vnodeWrite.c"
if(META_DB_IMPL IN_LIST META_DB_IMPL_LIST) # meta
message(STATUS "META DB Impl: ${META_DB_IMPL}==============") # "src/meta/metaBDBImpl.c"
else() "src/meta/metaCache.c"
message(FATAL_ERROR "Invalid META DB IMPL: ${META_DB_IMPL}==============") "src/meta/metaCfg.c"
endif() "src/meta/metaIdx.c"
"src/meta/metaMain.c"
"src/meta/metaQuery.c"
"src/meta/metaTable.c"
"src/meta/metaTbCfg.c"
"src/meta/metaTbTag.c"
"src/meta/metaTbUid.c"
"src/meta/metaTDBImpl.c"
aux_source_directory(src/meta META_SRC) # tsdb
if(${META_DB_IMPL} STREQUAL "BDB") "src/tsdb/tsdbBDBImpl.c"
list(REMOVE_ITEM META_SRC "src/meta/metaTDBImpl.c") "src/tsdb/tsdbCommit.c"
elseif(${META_DB_IMPL} STREQUAL "TDB") "src/tsdb/tsdbCompact.c"
list(REMOVE_ITEM META_SRC "src/meta/metaBDBImpl.c") "src/tsdb/tsdbFile.c"
endif() "src/tsdb/tsdbFS.c"
"src/tsdb/tsdbMain.c"
"src/tsdb/tsdbMemTable.c"
"src/tsdb/tsdbOptions.c"
"src/tsdb/tsdbRead.c"
"src/tsdb/tsdbReadImpl.c"
"src/tsdb/tsdbScan.c"
"src/tsdb/tsdbSma.c"
"src/tsdb/tsdbWrite.c"
aux_source_directory(src/tq TQ_SRC) # tq
aux_source_directory(src/tsdb TSDB_SRC) "src/tq/tq.c"
aux_source_directory(src/vnd VND_SRC) "src/tq/tqCommit.c"
"src/tq/tqMetaStore.c"
list(APPEND "src/tq/tqOffset.c"
VNODE_SRC "src/tq/tqPush.c"
${META_SRC} "src/tq/tqRead.c"
${TQ_SRC}
${TSDB_SRC}
${VND_SRC}
) )
add_library(vnode STATIC ${VNODE_SRC})
target_include_directories( target_include_directories(
vnode vnode
PUBLIC inc PUBLIC "inc"
PRIVATE src/inc PRIVATE "src/inc"
) )
target_link_libraries( target_link_libraries(
vnode vnode
PUBLIC os PUBLIC os
PUBLIC util PUBLIC util
PUBLIC common PUBLIC common
PUBLIC transport
PUBLIC tfs PUBLIC tfs
PUBLIC wal PUBLIC wal
PUBLIC scheduler
PUBLIC executor
PUBLIC stream
PUBLIC qworker PUBLIC qworker
PUBLIC sync PUBLIC sync
# TODO: get rid of BDB PUBLIC executor
PUBLIC bdb PUBLIC scheduler
PUBLIC tdb PUBLIC tdb
PUBLIC bdb
PUBLIC transport
PUBLIC stream
) )
if(${BUILD_TEST}) if(${BUILD_TEST})