[TD-2344]<fix>: fix bugs for percentile against float columns.
This commit is contained in:
parent
39f86dff5f
commit
56b0529dae
|
@ -2589,10 +2589,11 @@ static void percentile_next_step(SQLFunctionCtx *pCtx) {
|
||||||
// all data are null, set it completed
|
// all data are null, set it completed
|
||||||
if (pInfo->numOfElems == 0) {
|
if (pInfo->numOfElems == 0) {
|
||||||
pResInfo->complete = true;
|
pResInfo->complete = true;
|
||||||
|
} else {
|
||||||
|
pInfo->pMemBucket = tMemBucketCreate(pCtx->inputBytes, pCtx->inputType, GET_DOUBLE_VAL(&pInfo->minval), GET_DOUBLE_VAL(&pInfo->maxval));
|
||||||
}
|
}
|
||||||
|
|
||||||
pInfo->stage += 1;
|
pInfo->stage += 1;
|
||||||
pInfo->pMemBucket = tMemBucketCreate(pCtx->inputBytes, pCtx->inputType, GET_DOUBLE_VAL(&pInfo->minval), GET_DOUBLE_VAL(&pInfo->maxval));
|
|
||||||
} else {
|
} else {
|
||||||
pResInfo->complete = true;
|
pResInfo->complete = true;
|
||||||
}
|
}
|
||||||
|
|
|
@ -234,7 +234,13 @@ int32_t tBucketIntHash(tMemBucket *pBucket, const void *value) {
|
||||||
}
|
}
|
||||||
|
|
||||||
int32_t tBucketDoubleHash(tMemBucket *pBucket, const void *value) {
|
int32_t tBucketDoubleHash(tMemBucket *pBucket, const void *value) {
|
||||||
double v = GET_DOUBLE_VAL(value);
|
double v = 0;
|
||||||
|
if (pBucket->type == TSDB_DATA_TYPE_FLOAT) {
|
||||||
|
v = GET_FLOAT_VAL(value);
|
||||||
|
} else {
|
||||||
|
v = GET_DOUBLE_VAL(value);
|
||||||
|
}
|
||||||
|
|
||||||
int32_t index = -1;
|
int32_t index = -1;
|
||||||
|
|
||||||
if (pBucket->range.dMinVal == DBL_MAX) {
|
if (pBucket->range.dMinVal == DBL_MAX) {
|
||||||
|
|
Loading…
Reference in New Issue