Merge remote-tracking branch 'origin/feature/vnode' into feature/dnode3
This commit is contained in:
commit
197a9f4ea9
|
@ -23,27 +23,27 @@ extern "C" {
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
// TYPES EXPOSED
|
// TYPES EXPOSED
|
||||||
typedef struct STsdb STsdb;
|
typedef struct STsdb STsdb;
|
||||||
typedef struct STsdbCfg STsdbCfg;
|
|
||||||
|
typedef struct STsdbCfg {
|
||||||
|
uint64_t lruCacheSize;
|
||||||
|
uint32_t keep0;
|
||||||
|
uint32_t keep1;
|
||||||
|
uint32_t keep2;
|
||||||
|
} STsdbCfg;
|
||||||
|
|
||||||
// STsdb
|
// STsdb
|
||||||
STsdb *tsdbOpen(const char *path, const STsdbCfg *pTsdbCfg, SMemAllocatorFactory *pMAF);
|
STsdb *tsdbOpen(const char *path, const STsdbCfg *pTsdbCfg, SMemAllocatorFactory *pMAF);
|
||||||
void tsdbClose(STsdb *);
|
void tsdbClose(STsdb *);
|
||||||
void tsdbRemove(const char *path);
|
void tsdbRemove(const char *path);
|
||||||
int tsdbInsertData(STsdb *pTsdb, SSubmitMsg *pMsg);
|
int tsdbInsertData(STsdb *pTsdb, SSubmitMsg *pMsg);
|
||||||
|
int tsdbPrepareCommit(STsdb *pTsdb);
|
||||||
|
int tsdbCommit(STsdb *pTsdb);
|
||||||
|
|
||||||
// STsdbCfg
|
// STsdbCfg
|
||||||
int tsdbOptionsInit(STsdbCfg *);
|
int tsdbOptionsInit(STsdbCfg *);
|
||||||
void tsdbOptionsClear(STsdbCfg *);
|
void tsdbOptionsClear(STsdbCfg *);
|
||||||
|
|
||||||
/* ------------------------ STRUCT DEFINITIONS ------------------------ */
|
|
||||||
struct STsdbCfg {
|
|
||||||
uint64_t lruCacheSize;
|
|
||||||
uint32_t keep0;
|
|
||||||
uint32_t keep1;
|
|
||||||
uint32_t keep2;
|
|
||||||
};
|
|
||||||
|
|
||||||
#ifdef __cplusplus
|
#ifdef __cplusplus
|
||||||
}
|
}
|
||||||
#endif
|
#endif
|
||||||
|
|
|
@ -39,6 +39,9 @@ typedef struct SMemAllocator {
|
||||||
TD_MEM_ALCT(SMemAllocator);
|
TD_MEM_ALCT(SMemAllocator);
|
||||||
} SMemAllocator;
|
} SMemAllocator;
|
||||||
|
|
||||||
|
#define tMalloc(pMA, SIZE) TD_MA_MALLOC(PMA, SIZE)
|
||||||
|
#define tFree(pMA, PTR) TD_MA_FREE(PMA, PTR)
|
||||||
|
|
||||||
typedef struct SMemAllocatorFactory {
|
typedef struct SMemAllocatorFactory {
|
||||||
void *impl;
|
void *impl;
|
||||||
SMemAllocator *(*create)(struct SMemAllocatorFactory *);
|
SMemAllocator *(*create)(struct SMemAllocatorFactory *);
|
||||||
|
|
|
@ -25,6 +25,10 @@ int vnodeAsyncCommit(SVnode *pVnode) {
|
||||||
pTask->execute = vnodeCommit; // TODO
|
pTask->execute = vnodeCommit; // TODO
|
||||||
pTask->arg = pVnode; // TODO
|
pTask->arg = pVnode; // TODO
|
||||||
|
|
||||||
|
tsdbPrepareCommit(pVnode->pTsdb);
|
||||||
|
// metaPrepareCommit(pVnode->pMeta);
|
||||||
|
// walPreapareCommit(pVnode->pWal);
|
||||||
|
|
||||||
vnodeScheduleTask(pTask);
|
vnodeScheduleTask(pTask);
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
@ -32,6 +36,10 @@ int vnodeAsyncCommit(SVnode *pVnode) {
|
||||||
int vnodeCommit(void *arg) {
|
int vnodeCommit(void *arg) {
|
||||||
SVnode *pVnode = (SVnode *)arg;
|
SVnode *pVnode = (SVnode *)arg;
|
||||||
|
|
||||||
|
metaCommit(pVnode->pMeta);
|
||||||
|
tqCommit(pVnode->pTq);
|
||||||
|
tsdbCommit(pVnode->pTq);
|
||||||
|
|
||||||
vnodeBufPoolRecycle(pVnode);
|
vnodeBufPoolRecycle(pVnode);
|
||||||
// TODO
|
// TODO
|
||||||
return 0;
|
return 0;
|
||||||
|
|
|
@ -50,7 +50,7 @@ STQ* tqOpen(const char* path, STqCfg* tqConfig, STqLogReader* tqLogReader, SMemA
|
||||||
pTq->tqConfig = tqConfig;
|
pTq->tqConfig = tqConfig;
|
||||||
pTq->tqLogReader = tqLogReader;
|
pTq->tqLogReader = tqLogReader;
|
||||||
pTq->tqMemRef.pAlloctorFactory = allocFac;
|
pTq->tqMemRef.pAlloctorFactory = allocFac;
|
||||||
pTq->tqMemRef.pAllocator = allocFac->create(allocFac);
|
// pTq->tqMemRef.pAllocator = allocFac->create(allocFac);
|
||||||
if (pTq->tqMemRef.pAllocator == NULL) {
|
if (pTq->tqMemRef.pAllocator == NULL) {
|
||||||
// TODO
|
// TODO
|
||||||
}
|
}
|
||||||
|
|
|
@ -15,7 +15,19 @@
|
||||||
|
|
||||||
#include "tsdbDef.h"
|
#include "tsdbDef.h"
|
||||||
|
|
||||||
|
int tsdbPrepareCommit(STsdb *pTsdb) {
|
||||||
|
if (pTsdb->mem == NULL) return 0;
|
||||||
|
|
||||||
|
// tsem_wait(&(pTsdb->canCommit));
|
||||||
|
ASSERT(pTsdb->imem == NULL);
|
||||||
|
|
||||||
|
pTsdb->imem = pTsdb->mem;
|
||||||
|
pTsdb->mem = NULL;
|
||||||
|
}
|
||||||
|
|
||||||
int tsdbCommit(STsdb *pTsdb) {
|
int tsdbCommit(STsdb *pTsdb) {
|
||||||
// TODO
|
// TODO
|
||||||
|
pTsdb->imem = NULL;
|
||||||
|
// tsem_post(&(pTsdb->canCommit));
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
Loading…
Reference in New Issue