fix:[TS-5776]error in create table time
This commit is contained in:
parent
9dcac195cb
commit
07e4265dde
|
@ -457,7 +457,7 @@ int64_t metaGetTableCreateTime(SMeta *pMeta, tb_uid_t uid, int lock) {
|
|||
int nData = 0;
|
||||
int64_t version = 0;
|
||||
SDecoder dc = {0};
|
||||
int64_t createTime = 0;
|
||||
int64_t createTime = INT64_MAX;
|
||||
if (lock) {
|
||||
metaRLock(pMeta);
|
||||
}
|
||||
|
|
|
@ -1102,7 +1102,6 @@ int32_t tqRetrieveTaosxBlock(STqReader* pReader, SMqDataRsp* pRsp, SArray* block
|
|||
int64_t uid = pSubmitTbData->uid;
|
||||
pReader->lastBlkUid = uid;
|
||||
|
||||
int64_t createTime = 0;
|
||||
tDeleteSchemaWrapper(pReader->pSchemaWrapper);
|
||||
pReader->pSchemaWrapper = metaGetTableSchema(pReader->pVnodeMeta, uid, sversion, 1);
|
||||
if (pReader->pSchemaWrapper == NULL) {
|
||||
|
|
|
@ -418,15 +418,17 @@ static void preProcessSubmitMsg(STqHandle* pHandle, const SMqPollReq* pRequest,
|
|||
continue;
|
||||
}
|
||||
|
||||
int64_t createTime = 0;
|
||||
int64_t createTime = INT64_MAX;
|
||||
int64_t *cTime = (int64_t*)taosHashGet(pHandle->tableCreateTimeHash, &uid, LONG_BYTES);
|
||||
if (cTime != NULL){
|
||||
createTime = *cTime;
|
||||
} else{
|
||||
createTime = metaGetTableCreateTime(pReader->pVnodeMeta, uid, 1);
|
||||
int32_t code = taosHashPut(pHandle->tableCreateTimeHash, &uid, LONG_BYTES, &createTime, LONG_BYTES);
|
||||
if (code != 0){
|
||||
tqError("failed to add table create time to hash,code:%d, uid:%"PRId64, code, uid);
|
||||
if (createTime != INT64_MAX){
|
||||
int32_t code = taosHashPut(pHandle->tableCreateTimeHash, &uid, LONG_BYTES, &createTime, LONG_BYTES);
|
||||
if (code != 0){
|
||||
tqError("failed to add table create time to hash,code:%d, uid:%"PRId64, code, uid);
|
||||
}
|
||||
}
|
||||
}
|
||||
if (pHandle->fetchMeta == WITH_DATA || pSubmitTbData->ctimeMs > createTime){
|
||||
|
|
Loading…
Reference in New Issue