未验证 提交 9ffb72aa 编写于 作者: H Hui Li 提交者: GitHub

Merge pull request #16137 from taosdata/feature/stream

fix(stream): window delete
...@@ -17,7 +17,7 @@ ...@@ -17,7 +17,7 @@
#include "tmsg.h" #include "tmsg.h"
#include "tq.h" #include "tq.h"
int32_t tdBuildDeleteReq(SVnode* pVnode, const char* stbFullName, const SSDataBlock* pDataBlock, int32_t tqBuildDeleteReq(SVnode* pVnode, const char* stbFullName, const SSDataBlock* pDataBlock,
SBatchDeleteReq* deleteReq) { SBatchDeleteReq* deleteReq) {
ASSERT(pDataBlock->info.type == STREAM_DELETE_RESULT); ASSERT(pDataBlock->info.type == STREAM_DELETE_RESULT);
int32_t totRow = pDataBlock->info.rows; int32_t totRow = pDataBlock->info.rows;
...@@ -68,9 +68,10 @@ SSubmitReq* tqBlockToSubmit(SVnode* pVnode, const SArray* pBlocks, const STSchem ...@@ -68,9 +68,10 @@ SSubmitReq* tqBlockToSubmit(SVnode* pVnode, const SArray* pBlocks, const STSchem
SSDataBlock* pDataBlock = taosArrayGet(pBlocks, i); SSDataBlock* pDataBlock = taosArrayGet(pBlocks, i);
if (pDataBlock->info.type == STREAM_DELETE_RESULT) { if (pDataBlock->info.type == STREAM_DELETE_RESULT) {
int32_t padding1 = 0; int32_t padding1 = 0;
void* padding2 = taosMemoryMalloc(1); void* padding2 = NULL;
taosArrayPush(schemaReqSz, &padding1); taosArrayPush(schemaReqSz, &padding1);
taosArrayPush(schemaReqs, &padding2); taosArrayPush(schemaReqs, &padding2);
continue;
} }
STagVal tagVal = { STagVal tagVal = {
...@@ -138,8 +139,7 @@ SSubmitReq* tqBlockToSubmit(SVnode* pVnode, const SArray* pBlocks, const STSchem ...@@ -138,8 +139,7 @@ SSubmitReq* tqBlockToSubmit(SVnode* pVnode, const SArray* pBlocks, const STSchem
continue; continue;
} }
int32_t rows = pDataBlock->info.rows; int32_t rows = pDataBlock->info.rows;
// TODO min /*int32_t rowSize = pDataBlock->info.rowSize;*/
int32_t rowSize = pDataBlock->info.rowSize;
int32_t maxLen = TD_ROW_MAX_BYTES_FROM_SCHEMA(pTSchema); int32_t maxLen = TD_ROW_MAX_BYTES_FROM_SCHEMA(pTSchema);
int32_t schemaLen = 0; int32_t schemaLen = 0;
...@@ -150,7 +150,6 @@ SSubmitReq* tqBlockToSubmit(SVnode* pVnode, const SArray* pBlocks, const STSchem ...@@ -150,7 +150,6 @@ SSubmitReq* tqBlockToSubmit(SVnode* pVnode, const SArray* pBlocks, const STSchem
} }
// assign data // assign data
// TODO
ret = rpcMallocCont(cap); ret = rpcMallocCont(cap);
ret->header.vgId = pVnode->config.vgId; ret->header.vgId = pVnode->config.vgId;
ret->length = sizeof(SSubmitReq); ret->length = sizeof(SSubmitReq);
...@@ -161,13 +160,12 @@ SSubmitReq* tqBlockToSubmit(SVnode* pVnode, const SArray* pBlocks, const STSchem ...@@ -161,13 +160,12 @@ SSubmitReq* tqBlockToSubmit(SVnode* pVnode, const SArray* pBlocks, const STSchem
SSDataBlock* pDataBlock = taosArrayGet(pBlocks, i); SSDataBlock* pDataBlock = taosArrayGet(pBlocks, i);
if (pDataBlock->info.type == STREAM_DELETE_RESULT) { if (pDataBlock->info.type == STREAM_DELETE_RESULT) {
pDeleteReq->suid = suid; pDeleteReq->suid = suid;
tdBuildDeleteReq(pVnode, stbFullName, pDataBlock, pDeleteReq); tqBuildDeleteReq(pVnode, stbFullName, pDataBlock, pDeleteReq);
continue; continue;
} }
blkHead->numOfRows = htonl(pDataBlock->info.rows); blkHead->numOfRows = htonl(pDataBlock->info.rows);
blkHead->sversion = htonl(pTSchema->version); blkHead->sversion = htonl(pTSchema->version);
// TODO
blkHead->suid = htobe64(suid); blkHead->suid = htobe64(suid);
// uid is assigned by vnode // uid is assigned by vnode
blkHead->uid = 0; blkHead->uid = 0;
......
...@@ -196,9 +196,9 @@ int32_t tsdbDeleteTableData(STsdb *pTsdb, int64_t version, tb_uid_t suid, tb_uid ...@@ -196,9 +196,9 @@ int32_t tsdbDeleteTableData(STsdb *pTsdb, int64_t version, tb_uid_t suid, tb_uid
tsdbCacheDeleteLast(pTsdb->lruCache, pTbData->uid, eKey); tsdbCacheDeleteLast(pTsdb->lruCache, pTbData->uid, eKey);
} }
tsdbError("vgId:%d, delete data from table suid:%" PRId64 " uid:%" PRId64 " skey:%" PRId64 " eKey:%" PRId64 tsdbInfo("vgId:%d, delete data from table suid:%" PRId64 " uid:%" PRId64 " skey:%" PRId64 " eKey:%" PRId64
" since %s", " since %s",
TD_VID(pTsdb->pVnode), suid, uid, sKey, eKey, tstrerror(code)); TD_VID(pTsdb->pVnode), suid, uid, sKey, eKey, tstrerror(code));
return code; return code;
_err: _err:
......
...@@ -237,8 +237,8 @@ ...@@ -237,8 +237,8 @@
./test.sh -f tsim/stream/distributeInterval0.sim ./test.sh -f tsim/stream/distributeInterval0.sim
./test.sh -f tsim/stream/distributeIntervalRetrive0.sim ./test.sh -f tsim/stream/distributeIntervalRetrive0.sim
./test.sh -f tsim/stream/distributeSession0.sim ./test.sh -f tsim/stream/distributeSession0.sim
#./test.sh -f tsim/stream/session0.sim ./test.sh -f tsim/stream/session0.sim
#./test.sh -f tsim/stream/session1.sim ./test.sh -f tsim/stream/session1.sim
./test.sh -f tsim/stream/state0.sim ./test.sh -f tsim/stream/state0.sim
./test.sh -f tsim/stream/triggerInterval0.sim ./test.sh -f tsim/stream/triggerInterval0.sim
./test.sh -f tsim/stream/triggerSession0.sim ./test.sh -f tsim/stream/triggerSession0.sim
......
...@@ -83,22 +83,22 @@ if $data11 != 3 then ...@@ -83,22 +83,22 @@ if $data11 != 3 then
goto loop0 goto loop0
endi endi
if $data12 != NULL then if $data12 != 10 then
print ======data12=$data12 print ======data12=$data12
goto loop0 goto loop0
endi endi
if $data13 != NULL then if $data13 != 10 then
print ======data13=$data13 print ======data13=$data13
goto loop0 goto loop0
endi endi
if $data14 != NULL then if $data14 != 1.100000000 then
print ======data14=$data14 print ======data14=$data14
return -1 return -1
endi endi
if $data15 != NULL then if $data15 != 0.000000000 then
print ======data15=$data15 print ======data15=$data15
return -1 return -1
endi endi
...@@ -141,38 +141,38 @@ if $data01 != 7 then ...@@ -141,38 +141,38 @@ if $data01 != 7 then
goto loop1 goto loop1
endi endi
if $data02 != NULL then if $data02 != 18 then
print =====data02=$data02 print =====data02=$data02
goto loop1 goto loop1
endi endi
if $data03 != NULL then if $data03 != 4 then
print =====data03=$data03 print =====data03=$data03
goto loop1 goto loop1
endi endi
if $data04 != NULL then if $data04 != 1.000000000 then
print ======$data04 print ======data04=$data04
return -1 return -1
endi endi
if $data05 != NULL then if $data05 != 1.154700538 then
print ======$data05 print ======data05=$data05
return -1 return -1
endi endi
if $data06 != 4 then if $data06 != 4 then
print ======$data06 print ======data06=$data06
return -1 return -1
endi endi
if $data07 != 1.000000000 then if $data07 != 1.000000000 then
print ======$data07 print ======data07=$data07
return -1 return -1
endi endi
if $data08 != 13 then if $data08 != 13 then
print ======$data08 print ======data08=$data08
return -1 return -1
endi endi
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册