提交 e73b1c48 编写于 作者: S slzhou

fix: support more rows with udf unit test

上级 7ab15e8f
...@@ -41,41 +41,41 @@ int scalarFuncTest() { ...@@ -41,41 +41,41 @@ int scalarFuncTest() {
fnError("setup udf failure"); fnError("setup udf failure");
return -1; return -1;
} }
int64_t beg = taosGetTimestampUs();
SSDataBlock block = {0}; for (int k = 0; k < 1; ++k) {
SSDataBlock *pBlock = &block; SSDataBlock block = {0};
pBlock->pDataBlock = taosArrayInit(1, sizeof(SColumnInfoData)); SSDataBlock *pBlock = &block;
pBlock->info.numOfCols = 1; pBlock->pDataBlock = taosArrayInit(1, sizeof(SColumnInfoData));
pBlock->info.rows = 4; pBlock->info.numOfCols = 1;
char data[16] = {0}; pBlock->info.rows = 1024;
char bitmap[4] = {0}; for (int32_t i = 0; i < pBlock->info.numOfCols; ++i) {
for (int32_t i = 0; i < pBlock->info.numOfCols; ++i) { SColumnInfoData colInfo = {0};
SColumnInfoData colInfo = {0}; colInfo.info.type = TSDB_DATA_TYPE_INT;
colInfo.info.type = TSDB_DATA_TYPE_INT; colInfo.info.bytes = sizeof(int32_t);
colInfo.info.bytes = sizeof(int32_t); colInfo.info.colId = 1;
colInfo.info.colId = 1; colInfoDataEnsureCapacity(&colInfo, 0, pBlock->info.rows);
colInfo.pData = data; for (int32_t j = 0; j < pBlock->info.rows; ++j) {
colInfo.nullbitmap = bitmap; colDataAppendInt32(&colInfo, j, &j);
for (int32_t j = 0; j < pBlock->info.rows; ++j) { }
colDataAppendInt32(&colInfo, j, &j); taosArrayPush(pBlock->pDataBlock, &colInfo);
} }
taosArrayPush(pBlock->pDataBlock, &colInfo);
}
SScalarParam input = {0}; SScalarParam input = {0};
input.numOfRows = pBlock->info.rows; input.numOfRows = pBlock->info.rows;
input.columnData = taosArrayGet(pBlock->pDataBlock, 0); input.columnData = taosArrayGet(pBlock->pDataBlock, 0);
SScalarParam output = {0}; SScalarParam output = {0};
doCallUdfScalarFunc(handle, &input, 1, &output); doCallUdfScalarFunc(handle, &input, 1, &output);
taosArrayDestroy(pBlock->pDataBlock); taosArrayDestroy(pBlock->pDataBlock);
SColumnInfoData *col = output.columnData; SColumnInfoData *col = output.columnData;
for (int32_t i = 0; i < output.numOfRows; ++i) { for (int32_t i = 0; i < output.numOfRows; ++i) {
fprintf(stderr, "%d\t%d\n", i, *(int32_t *)(col->pData + i * sizeof(int32_t))); if (i % 100 == 0)
fprintf(stderr, "%d\t%d\n", i, *(int32_t *)(col->pData + i * sizeof(int32_t)));
}
colDataDestroy(output.columnData);
taosMemoryFree(output.columnData);
} }
int64_t end = taosGetTimestampUs();
colDataDestroy(output.columnData); fprintf(stderr, "time: %f\n", (end-beg)/1000.0);
taosMemoryFree(output.columnData);
doTeardownUdf(handle); doTeardownUdf(handle);
return 0; return 0;
...@@ -93,16 +93,13 @@ int aggregateFuncTest() { ...@@ -93,16 +93,13 @@ int aggregateFuncTest() {
SSDataBlock *pBlock = &block; SSDataBlock *pBlock = &block;
pBlock->pDataBlock = taosArrayInit(1, sizeof(SColumnInfoData)); pBlock->pDataBlock = taosArrayInit(1, sizeof(SColumnInfoData));
pBlock->info.numOfCols = 1; pBlock->info.numOfCols = 1;
pBlock->info.rows = 4; pBlock->info.rows = 1024;
char data[16] = {0};
char bitmap[4] = {0};
for (int32_t i = 0; i < pBlock->info.numOfCols; ++i) { for (int32_t i = 0; i < pBlock->info.numOfCols; ++i) {
SColumnInfoData colInfo = {0}; SColumnInfoData colInfo = {0};
colInfo.info.type = TSDB_DATA_TYPE_INT; colInfo.info.type = TSDB_DATA_TYPE_INT;
colInfo.info.bytes = sizeof(int32_t); colInfo.info.bytes = sizeof(int32_t);
colInfo.info.colId = 1; colInfo.info.colId = 1;
colInfo.pData = data; colInfoDataEnsureCapacity(&colInfo, 0, pBlock->info.rows);
colInfo.nullbitmap = bitmap;
for (int32_t j = 0; j < pBlock->info.rows; ++j) { for (int32_t j = 0; j < pBlock->info.rows; ++j) {
colDataAppendInt32(&colInfo, j, &j); colDataAppendInt32(&colInfo, j, &j);
} }
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册