TD-100
This commit is contained in:
parent
ca08379439
commit
dfa8e5be9b
|
@ -46,6 +46,7 @@ typedef struct {
|
||||||
// --------- TSDB REPOSITORY CONFIGURATION DEFINITION
|
// --------- TSDB REPOSITORY CONFIGURATION DEFINITION
|
||||||
typedef struct {
|
typedef struct {
|
||||||
int8_t precision;
|
int8_t precision;
|
||||||
|
int8_t compression;
|
||||||
int32_t tsdbId;
|
int32_t tsdbId;
|
||||||
int32_t maxTables; // maximum number of tables this repository can have
|
int32_t maxTables; // maximum number of tables this repository can have
|
||||||
int32_t daysPerFile; // day per file sharding policy
|
int32_t daysPerFile; // day per file sharding policy
|
||||||
|
|
|
@ -12,15 +12,16 @@
|
||||||
#include <tlog.h>
|
#include <tlog.h>
|
||||||
#include <unistd.h>
|
#include <unistd.h>
|
||||||
|
|
||||||
// #include "taosdef.h"
|
|
||||||
// #include "disk.h"
|
|
||||||
#include "os.h"
|
#include "os.h"
|
||||||
#include "talgo.h"
|
#include "talgo.h"
|
||||||
#include "tsdb.h"
|
#include "tsdb.h"
|
||||||
#include "tsdbMain.h"
|
#include "tsdbMain.h"
|
||||||
|
#include "tscompression.h"
|
||||||
|
|
||||||
#define TSDB_DEFAULT_PRECISION TSDB_PRECISION_MILLI // default precision
|
#define TSDB_DEFAULT_PRECISION TSDB_PRECISION_MILLI // default precision
|
||||||
#define IS_VALID_PRECISION(precision) (((precision) >= TSDB_PRECISION_MILLI) && ((precision) <= TSDB_PRECISION_NANO))
|
#define IS_VALID_PRECISION(precision) (((precision) >= TSDB_PRECISION_MILLI) && ((precision) <= TSDB_PRECISION_NANO))
|
||||||
|
#define TSDB_DEFAULT_COMPRESSION TWO_STAGE_COMP
|
||||||
|
#define IS_VALID_COMPRESSION(compression) (((compression) >= NO_COMPRESSION) && ((compression) <= TWO_STAGE_COMP))
|
||||||
#define TSDB_MIN_ID 0
|
#define TSDB_MIN_ID 0
|
||||||
#define TSDB_MAX_ID INT_MAX
|
#define TSDB_MAX_ID INT_MAX
|
||||||
#define TSDB_MIN_TABLES 10
|
#define TSDB_MIN_TABLES 10
|
||||||
|
@ -83,6 +84,7 @@ void tsdbSetDefaultCfg(STsdbCfg *pCfg) {
|
||||||
pCfg->maxRowsPerFileBlock = -1;
|
pCfg->maxRowsPerFileBlock = -1;
|
||||||
pCfg->keep = -1;
|
pCfg->keep = -1;
|
||||||
pCfg->maxCacheSize = -1;
|
pCfg->maxCacheSize = -1;
|
||||||
|
pCfg->compression = TWO_STAGE_COMP;
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
@ -547,6 +549,13 @@ static int32_t tsdbCheckAndSetDefaultCfg(STsdbCfg *pCfg) {
|
||||||
if (!IS_VALID_PRECISION(pCfg->precision)) return -1;
|
if (!IS_VALID_PRECISION(pCfg->precision)) return -1;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// Check compression
|
||||||
|
if (pCfg->compression == -1) {
|
||||||
|
pCfg->compression = TSDB_DEFAULT_COMPRESSION;
|
||||||
|
} else {
|
||||||
|
if (!IS_VALID_COMPRESSION(pCfg->compression)) return -1;
|
||||||
|
}
|
||||||
|
|
||||||
// Check tsdbId
|
// Check tsdbId
|
||||||
if (pCfg->tsdbId < 0) return -1;
|
if (pCfg->tsdbId < 0) return -1;
|
||||||
|
|
||||||
|
@ -841,16 +850,14 @@ static void *tsdbCommitData(void *arg) {
|
||||||
}
|
}
|
||||||
|
|
||||||
// Create a write helper for commit data
|
// Create a write helper for commit data
|
||||||
SHelperCfg hcfg = {
|
SHelperCfg hcfg = {.type = TSDB_WRITE_HELPER,
|
||||||
.type = TSDB_WRITE_HELPER,
|
.maxTables = pCfg->maxTables,
|
||||||
.maxTables = pCfg->maxTables,
|
.maxRowSize = pMeta->maxRowBytes,
|
||||||
.maxRowSize = pMeta->maxRowBytes,
|
.maxRows = pCfg->maxRowsPerFileBlock,
|
||||||
.maxRows = pCfg->maxRowsPerFileBlock,
|
.maxCols = pMeta->maxCols,
|
||||||
.maxCols = pMeta->maxCols,
|
.minRowsPerFileBlock = pCfg->minRowsPerFileBlock,
|
||||||
.minRowsPerFileBlock = pCfg->minRowsPerFileBlock,
|
.maxRowsPerFileBlock = pCfg->maxRowsPerFileBlock,
|
||||||
.maxRowsPerFileBlock = pCfg->maxRowsPerFileBlock,
|
.compress = pCfg->compression};
|
||||||
.compress = 2 // TODO make it a configuration
|
|
||||||
};
|
|
||||||
if (tsdbInitHelper(&whelper, &hcfg) < 0) goto _exit;
|
if (tsdbInitHelper(&whelper, &hcfg) < 0) goto _exit;
|
||||||
if ((pDataCols = tdNewDataCols(pMeta->maxRowBytes, pMeta->maxCols, pCfg->maxRowsPerFileBlock)) == NULL) goto _exit;
|
if ((pDataCols = tdNewDataCols(pMeta->maxRowBytes, pMeta->maxCols, pCfg->maxRowsPerFileBlock)) == NULL) goto _exit;
|
||||||
|
|
||||||
|
|
|
@ -88,6 +88,7 @@ int32_t vnodeCreate(SMDCreateVnodeMsg *pVnodeCfg) {
|
||||||
|
|
||||||
STsdbCfg tsdbCfg = {0};
|
STsdbCfg tsdbCfg = {0};
|
||||||
tsdbCfg.precision = pVnodeCfg->cfg.precision;
|
tsdbCfg.precision = pVnodeCfg->cfg.precision;
|
||||||
|
tsdbCfg.compression = -1;
|
||||||
tsdbCfg.tsdbId = pVnodeCfg->cfg.vgId;
|
tsdbCfg.tsdbId = pVnodeCfg->cfg.vgId;
|
||||||
tsdbCfg.maxTables = pVnodeCfg->cfg.maxSessions;
|
tsdbCfg.maxTables = pVnodeCfg->cfg.maxSessions;
|
||||||
tsdbCfg.daysPerFile = pVnodeCfg->cfg.daysPerFile;
|
tsdbCfg.daysPerFile = pVnodeCfg->cfg.daysPerFile;
|
||||||
|
|
Loading…
Reference in New Issue