more code
This commit is contained in:
parent
844a563295
commit
49f49fd238
|
@ -95,7 +95,7 @@ const static uint8_t BIT2_MAP[4] = {0b11111100, 0b11110011, 0b11001111, 0b001111
|
||||||
#define COL_VAL_IS_VALUE(CV) ((CV)->flag == CV_FLAG_VALUE)
|
#define COL_VAL_IS_VALUE(CV) ((CV)->flag == CV_FLAG_VALUE)
|
||||||
|
|
||||||
// SValueColumn ================================
|
// SValueColumn ================================
|
||||||
int32_t tValueColumnInit(SValueColumn *valCol, int8_t type);
|
int32_t tValueColumnInit(SValueColumn *valCol);
|
||||||
int32_t tValueColumnDestroy(SValueColumn *valCol);
|
int32_t tValueColumnDestroy(SValueColumn *valCol);
|
||||||
int32_t tValueColumnClear(SValueColumn *valCol);
|
int32_t tValueColumnClear(SValueColumn *valCol);
|
||||||
int32_t tValueColumnAppend(SValueColumn *valCol, const SValue *value);
|
int32_t tValueColumnAppend(SValueColumn *valCol, const SValue *value);
|
||||||
|
@ -291,6 +291,13 @@ STSchema *tBuildTSchema(SSchema *aSchema, int32_t numOfCols, int32_t version);
|
||||||
} \
|
} \
|
||||||
} while (0)
|
} while (0)
|
||||||
|
|
||||||
|
struct SValueColumn {
|
||||||
|
int8_t type;
|
||||||
|
uint32_t numOfValues;
|
||||||
|
SBuffer data;
|
||||||
|
SBuffer offsets;
|
||||||
|
};
|
||||||
|
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
#ifdef __cplusplus
|
#ifdef __cplusplus
|
||||||
|
|
|
@ -3786,15 +3786,8 @@ void (*tColDataCalcSMA[])(SColData *pColData, int64_t *sum, int64_t *max, int64_
|
||||||
};
|
};
|
||||||
|
|
||||||
// SValueColumn ================================
|
// SValueColumn ================================
|
||||||
struct SValueColumn {
|
int32_t tValueColumnInit(SValueColumn *valCol) {
|
||||||
int8_t type;
|
valCol->type = TSDB_DATA_TYPE_NULL;
|
||||||
uint32_t numOfValues;
|
|
||||||
SBuffer data;
|
|
||||||
SBuffer offsets;
|
|
||||||
};
|
|
||||||
|
|
||||||
int32_t tValueColumnInit(SValueColumn *valCol, int8_t type) {
|
|
||||||
valCol->type = type;
|
|
||||||
valCol->numOfValues = 0;
|
valCol->numOfValues = 0;
|
||||||
tBufferInit(&valCol->data);
|
tBufferInit(&valCol->data);
|
||||||
tBufferInit(&valCol->offsets);
|
tBufferInit(&valCol->offsets);
|
||||||
|
@ -3810,6 +3803,7 @@ int32_t tValueColumnDestroy(SValueColumn *valCol) {
|
||||||
}
|
}
|
||||||
|
|
||||||
int32_t tValueColumnClear(SValueColumn *valCol) {
|
int32_t tValueColumnClear(SValueColumn *valCol) {
|
||||||
|
valCol->type = TSDB_DATA_TYPE_NULL;
|
||||||
valCol->numOfValues = 0;
|
valCol->numOfValues = 0;
|
||||||
tBufferClear(&valCol->data);
|
tBufferClear(&valCol->data);
|
||||||
tBufferClear(&valCol->offsets);
|
tBufferClear(&valCol->offsets);
|
||||||
|
@ -3819,7 +3813,12 @@ int32_t tValueColumnClear(SValueColumn *valCol) {
|
||||||
int32_t tValueColumnAppend(SValueColumn *valCol, const SValue *value) {
|
int32_t tValueColumnAppend(SValueColumn *valCol, const SValue *value) {
|
||||||
int32_t code;
|
int32_t code;
|
||||||
|
|
||||||
|
if (valCol->numOfValues == 0) {
|
||||||
|
valCol->type = value->type;
|
||||||
|
}
|
||||||
|
|
||||||
ASSERT(value->type == valCol->type);
|
ASSERT(value->type == valCol->type);
|
||||||
|
|
||||||
if (IS_VAR_DATA_TYPE(value->type)) {
|
if (IS_VAR_DATA_TYPE(value->type)) {
|
||||||
int32_t offset = tBufferGetSize(&valCol->data);
|
int32_t offset = tBufferGetSize(&valCol->data);
|
||||||
if ((code = tBufferAppend(&valCol->offsets, &offset, sizeof(offset)))) {
|
if ((code = tBufferAppend(&valCol->offsets, &offset, sizeof(offset)))) {
|
||||||
|
|
Loading…
Reference in New Issue