fix: pass first round test
This commit is contained in:
parent
cc4a6c6d55
commit
ce48598f0d
|
@ -158,8 +158,8 @@ Automatically creating table and the table name is specified through the `tbname
|
||||||
|
|
||||||
```sql
|
```sql
|
||||||
INSERT INTO meters(tbname, location, groupId, ts, current, phase)
|
INSERT INTO meters(tbname, location, groupId, ts, current, phase)
|
||||||
values('d31001', 'California.SanFrancisco', 2, '2021-07-13 14:06:34.630', 10.2, 219, 0.32)
|
values('d31001', 'California.SanFrancisco', 2, '2021-07-13 14:06:34.630', 10.2, 0.32)
|
||||||
values('d31001', 'California.SanFrancisco', 2, '2021-07-13 14:06:35.779', 10.15, 217, 0.33)
|
('d31001', 'California.SanFrancisco', 2, '2021-07-13 14:06:35.779', 10.15, 0.33)
|
||||||
values('d31002', NULL, 2, '2021-07-13 14:06:34.255', 10.15, 217, 0.33)
|
('d31002', NULL, 2, '2021-07-13 14:06:34.255', 10.15, 0.33)
|
||||||
```
|
```
|
||||||
|
|
||||||
|
|
|
@ -158,7 +158,7 @@ INSERT INTO d21001 USING meters TAGS ('California.SanFrancisco', 2) FILE '/tmp/c
|
||||||
自动建表, 表名通过tbname列指定
|
自动建表, 表名通过tbname列指定
|
||||||
```sql
|
```sql
|
||||||
INSERT INTO meters(tbname, location, groupId, ts, current, phase)
|
INSERT INTO meters(tbname, location, groupId, ts, current, phase)
|
||||||
values('d31001', 'California.SanFrancisco', 2, '2021-07-13 14:06:34.630', 10.2, 219, 0.32)
|
values('d31001', 'California.SanFrancisco', 2, '2021-07-13 14:06:34.630', 10.2, 0.32)
|
||||||
values('d31001', 'California.SanFrancisco', 2, '2021-07-13 14:06:35.779', 10.15, 217, 0.33)
|
('d31001', 'California.SanFrancisco', 2, '2021-07-13 14:06:35.779', 10.15, 0.33)
|
||||||
values('d31002', NULL, 2, '2021-07-13 14:06:34.255', 10.15, 217, 0.33)
|
('d31002', NULL, 2, '2021-07-13 14:06:34.255', 10.15, 0.33)
|
||||||
```
|
```
|
||||||
|
|
|
@ -3268,7 +3268,6 @@ static void doGetBlockForTableMergeScan(SOperatorInfo* pOperator, bool* pFinishe
|
||||||
|
|
||||||
uint32_t status = 0;
|
uint32_t status = 0;
|
||||||
code = loadDataBlock(pOperator, &pInfo->base, pBlock, &status);
|
code = loadDataBlock(pOperator, &pInfo->base, pBlock, &status);
|
||||||
|
|
||||||
if (code != TSDB_CODE_SUCCESS) {
|
if (code != TSDB_CODE_SUCCESS) {
|
||||||
qInfo("table merge scan load datablock code %d, %s", code, GET_TASKID(pTaskInfo));
|
qInfo("table merge scan load datablock code %d, %s", code, GET_TASKID(pTaskInfo));
|
||||||
T_LONG_JMP(pTaskInfo->env, code);
|
T_LONG_JMP(pTaskInfo->env, code);
|
||||||
|
@ -3294,7 +3293,7 @@ static SSDataBlock* getBlockForTableMergeScan(void* param) {
|
||||||
SExecTaskInfo* pTaskInfo = pOperator->pTaskInfo;
|
SExecTaskInfo* pTaskInfo = pOperator->pTaskInfo;
|
||||||
SStorageAPI* pAPI = &pTaskInfo->storageAPI;
|
SStorageAPI* pAPI = &pTaskInfo->storageAPI;
|
||||||
|
|
||||||
SSDataBlock* pBlock = pInfo->pReaderBlock;
|
SSDataBlock* pBlock = NULL;
|
||||||
int32_t code = 0;
|
int32_t code = 0;
|
||||||
|
|
||||||
int64_t st = taosGetTimestampUs();
|
int64_t st = taosGetTimestampUs();
|
||||||
|
@ -3304,18 +3303,24 @@ static SSDataBlock* getBlockForTableMergeScan(void* param) {
|
||||||
while (true) {
|
while (true) {
|
||||||
if (pInfo->rtnNextDurationBlocks) {
|
if (pInfo->rtnNextDurationBlocks) {
|
||||||
if (pInfo->nextDurationBlocksIdx < pInfo->numNextDurationBlocks) {
|
if (pInfo->nextDurationBlocksIdx < pInfo->numNextDurationBlocks) {
|
||||||
copyDataBlock(pBlock, pInfo->nextDurationBlocks[pInfo->nextDurationBlocksIdx]);
|
pBlock = pInfo->nextDurationBlocks[pInfo->nextDurationBlocksIdx];
|
||||||
blockDataDestroy(pInfo->nextDurationBlocks[pInfo->nextDurationBlocksIdx]);
|
|
||||||
++pInfo->nextDurationBlocksIdx;
|
++pInfo->nextDurationBlocksIdx;
|
||||||
if (pInfo->nextDurationBlocksIdx >= pInfo->numNextDurationBlocks) {
|
} else {
|
||||||
|
for (int32_t i = 0; i < pInfo->numNextDurationBlocks; ++i) {
|
||||||
|
blockDataDestroy(pInfo->nextDurationBlocks[i]);
|
||||||
|
}
|
||||||
pInfo->rtnNextDurationBlocks = false;
|
pInfo->rtnNextDurationBlocks = false;
|
||||||
pInfo->nextDurationBlocksIdx = 0;
|
pInfo->nextDurationBlocksIdx = 0;
|
||||||
}
|
pInfo->numNextDurationBlocks = 0;
|
||||||
|
continue;
|
||||||
}
|
}
|
||||||
} else {
|
} else {
|
||||||
|
|
||||||
bool bFinished = false;
|
bool bFinished = false;
|
||||||
bool bSkipped = false;
|
bool bSkipped = false;
|
||||||
doGetBlockForTableMergeScan(pOperator, &bFinished, &bSkipped);
|
doGetBlockForTableMergeScan(pOperator, &bFinished, &bSkipped);
|
||||||
|
pBlock = pInfo->pReaderBlock;
|
||||||
|
|
||||||
if (bFinished) {
|
if (bFinished) {
|
||||||
pInfo->bNewFilesetEvent = false;
|
pInfo->bNewFilesetEvent = false;
|
||||||
break;
|
break;
|
||||||
|
@ -3346,7 +3351,6 @@ static SSDataBlock* getBlockForTableMergeScan(void* param) {
|
||||||
|
|
||||||
pOperator->resultInfo.totalRows += pBlock->info.rows;
|
pOperator->resultInfo.totalRows += pBlock->info.rows;
|
||||||
pInfo->base.readRecorder.elapsedTime += (taosGetTimestampUs() - st) / 1000.0;
|
pInfo->base.readRecorder.elapsedTime += (taosGetTimestampUs() - st) / 1000.0;
|
||||||
|
|
||||||
return pBlock;
|
return pBlock;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -3401,9 +3405,6 @@ int32_t startDurationForGroupTableMergeScan(SOperatorInfo* pOperator) {
|
||||||
|
|
||||||
pInfo->bNewFilesetEvent = false;
|
pInfo->bNewFilesetEvent = false;
|
||||||
pInfo->bNextDurationBlockEvent = false;
|
pInfo->bNextDurationBlockEvent = false;
|
||||||
pInfo->numNextDurationBlocks = 0;
|
|
||||||
pInfo->nextDurationBlocksIdx = 0;
|
|
||||||
pInfo->rtnNextDurationBlocks = false;
|
|
||||||
|
|
||||||
pInfo->sortBufSize = 2048 * pInfo->bufPageSize;
|
pInfo->sortBufSize = 2048 * pInfo->bufPageSize;
|
||||||
int32_t numOfBufPage = pInfo->sortBufSize / pInfo->bufPageSize;
|
int32_t numOfBufPage = pInfo->sortBufSize / pInfo->bufPageSize;
|
||||||
|
|
Loading…
Reference in New Issue