Merge branch 'develop' into feature/liaohj
This commit is contained in:
commit
9794fe6c0a
|
@ -819,6 +819,7 @@ STSBuf* tsBufCreateFromFile(const char* path, bool autoDelete) {
|
||||||
|
|
||||||
pTSBuf->f = fopen(pTSBuf->path, "r+");
|
pTSBuf->f = fopen(pTSBuf->path, "r+");
|
||||||
if (pTSBuf->f == NULL) {
|
if (pTSBuf->f == NULL) {
|
||||||
|
free(pTSBuf);
|
||||||
return NULL;
|
return NULL;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -860,7 +861,8 @@ STSBuf* tsBufCreateFromFile(const char* path, bool autoDelete) {
|
||||||
size_t infoSize = sizeof(STSVnodeBlockInfo) * pTSBuf->numOfVnodes;
|
size_t infoSize = sizeof(STSVnodeBlockInfo) * pTSBuf->numOfVnodes;
|
||||||
|
|
||||||
STSVnodeBlockInfo* buf = (STSVnodeBlockInfo*)calloc(1, infoSize);
|
STSVnodeBlockInfo* buf = (STSVnodeBlockInfo*)calloc(1, infoSize);
|
||||||
int64_t pos = ftell(pTSBuf->f);
|
|
||||||
|
//int64_t pos = ftell(pTSBuf->f); //pos not used
|
||||||
fread(buf, infoSize, 1, pTSBuf->f);
|
fread(buf, infoSize, 1, pTSBuf->f);
|
||||||
|
|
||||||
// the length value for each vnode is not kept in file, so does not set the length value
|
// the length value for each vnode is not kept in file, so does not set the length value
|
||||||
|
@ -1366,6 +1368,10 @@ bool tsBufNextPos(STSBuf* pTSBuf) {
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if (pBlockInfo == NULL) {
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
|
||||||
int32_t blockIndex = pCur->order == TSQL_SO_ASC ? 0 : pBlockInfo->numOfBlocks - 1;
|
int32_t blockIndex = pCur->order == TSQL_SO_ASC ? 0 : pBlockInfo->numOfBlocks - 1;
|
||||||
tsBufGetBlock(pTSBuf, pCur->vnodeIndex + step, blockIndex);
|
tsBufGetBlock(pTSBuf, pCur->vnodeIndex + step, blockIndex);
|
||||||
break;
|
break;
|
||||||
|
|
|
@ -74,8 +74,8 @@ static int32_t tscToDouble(SSQLToken *pToken, double *value, char **endPtr) {
|
||||||
}
|
}
|
||||||
|
|
||||||
int tsParseTime(SSQLToken *pToken, int64_t *time, char **next, char *error, int16_t timePrec) {
|
int tsParseTime(SSQLToken *pToken, int64_t *time, char **next, char *error, int16_t timePrec) {
|
||||||
char * token;
|
//char * token; //fang not used
|
||||||
int tokenlen;
|
//int tokenlen; //fang not used
|
||||||
int32_t index = 0;
|
int32_t index = 0;
|
||||||
SSQLToken sToken;
|
SSQLToken sToken;
|
||||||
int64_t interval;
|
int64_t interval;
|
||||||
|
@ -394,7 +394,7 @@ static int32_t tsCheckTimestamp(STableDataBlocks *pDataBlocks, const char *start
|
||||||
int tsParseOneRowData(char **str, STableDataBlocks *pDataBlocks, SSchema schema[], SParsedDataColInfo *spd, char *error,
|
int tsParseOneRowData(char **str, STableDataBlocks *pDataBlocks, SSchema schema[], SParsedDataColInfo *spd, char *error,
|
||||||
int16_t timePrec, int32_t *code, char* tmpTokenBuf) {
|
int16_t timePrec, int32_t *code, char* tmpTokenBuf) {
|
||||||
int32_t index = 0;
|
int32_t index = 0;
|
||||||
bool isPrevOptr;
|
//bool isPrevOptr; //fang, never used
|
||||||
SSQLToken sToken = {0};
|
SSQLToken sToken = {0};
|
||||||
char * payload = pDataBlocks->pData + pDataBlocks->size;
|
char * payload = pDataBlocks->pData + pDataBlocks->size;
|
||||||
|
|
||||||
|
@ -436,9 +436,9 @@ int tsParseOneRowData(char **str, STableDataBlocks *pDataBlocks, SSchema schema[
|
||||||
char delim = sToken.z[0];
|
char delim = sToken.z[0];
|
||||||
int32_t cnt = 0;
|
int32_t cnt = 0;
|
||||||
int32_t j = 0;
|
int32_t j = 0;
|
||||||
for (int32_t i = 1; i < sToken.n - 1; ++i) {
|
for (int32_t k = 1; k < sToken.n - 1; ++k) {
|
||||||
if (sToken.z[i] == delim || sToken.z[i] == '\\') {
|
if (sToken.z[k] == delim || sToken.z[k] == '\\') {
|
||||||
if (sToken.z[i + 1] == delim) {
|
if (sToken.z[k + 1] == delim) {
|
||||||
cnt++;
|
cnt++;
|
||||||
continue;
|
continue;
|
||||||
}
|
}
|
||||||
|
@ -1239,7 +1239,7 @@ static int tscInsertDataFromFile(SSqlObj *pSql, FILE *fp, char *tmpTokenBuf) {
|
||||||
while ((readLen = getline(&line, &n, fp)) != -1) {
|
while ((readLen = getline(&line, &n, fp)) != -1) {
|
||||||
// line[--readLen] = '\0';
|
// line[--readLen] = '\0';
|
||||||
if (('\r' == line[readLen - 1]) || ('\n' == line[readLen - 1])) line[--readLen] = 0;
|
if (('\r' == line[readLen - 1]) || ('\n' == line[readLen - 1])) line[--readLen] = 0;
|
||||||
if (readLen <= 0) continue;
|
if (readLen == 0) continue; //fang, <= to ==
|
||||||
|
|
||||||
char *lineptr = line;
|
char *lineptr = line;
|
||||||
strtolower(line, line);
|
strtolower(line, line);
|
||||||
|
|
|
@ -105,7 +105,7 @@ extern SSdbPeer *sdbPeer[];
|
||||||
|
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
void *sdbOpenTable(int maxRows, int32_t maxRowSize, char *name, char keyType, char *directory,
|
void *sdbOpenTable(int maxRows, int32_t maxRowSize, char *name, uint8_t keyType, char *directory,
|
||||||
void *(*appTool)(char, void *, char *, int, int *));
|
void *(*appTool)(char, void *, char *, int, int *));
|
||||||
|
|
||||||
void *sdbGetRow(void *handle, void *key);
|
void *sdbGetRow(void *handle, void *key);
|
||||||
|
|
|
@ -664,7 +664,7 @@ typedef struct {
|
||||||
uint32_t destId;
|
uint32_t destId;
|
||||||
char meterId[TSDB_UNI_LEN];
|
char meterId[TSDB_UNI_LEN];
|
||||||
char empty[3];
|
char empty[3];
|
||||||
char msgType;
|
uint8_t msgType;
|
||||||
int32_t msgLen;
|
int32_t msgLen;
|
||||||
uint8_t content[0];
|
uint8_t content[0];
|
||||||
} SIntMsg;
|
} SIntMsg;
|
||||||
|
|
|
@ -31,8 +31,6 @@
|
||||||
#include "tutil.h"
|
#include "tutil.h"
|
||||||
#include "lz4.h"
|
#include "lz4.h"
|
||||||
|
|
||||||
#pragma GCC diagnostic ignored "-Wpointer-to-int-cast"
|
|
||||||
|
|
||||||
typedef struct _msg_node {
|
typedef struct _msg_node {
|
||||||
struct _msg_node *next;
|
struct _msg_node *next;
|
||||||
void * ahandle;
|
void * ahandle;
|
||||||
|
@ -58,7 +56,7 @@ typedef struct {
|
||||||
uint16_t tranId; // outgoing transcation ID, for build message
|
uint16_t tranId; // outgoing transcation ID, for build message
|
||||||
uint16_t outTranId; // outgoing transcation ID
|
uint16_t outTranId; // outgoing transcation ID
|
||||||
uint16_t inTranId;
|
uint16_t inTranId;
|
||||||
char outType;
|
uint8_t outType;
|
||||||
char inType;
|
char inType;
|
||||||
char closing;
|
char closing;
|
||||||
char rspReceived;
|
char rspReceived;
|
||||||
|
@ -203,7 +201,7 @@ static STaosHeader* taosDecompressRpcMsg(STaosHeader* pHeader, SSchedMsg* pSched
|
||||||
//tDump(pHeader->content, msgLen);
|
//tDump(pHeader->content, msgLen);
|
||||||
|
|
||||||
if (buf) {
|
if (buf) {
|
||||||
int32_t originalLen = LZ4_decompress_safe(pHeader->content + overhead, buf + sizeof(STaosHeader),
|
int32_t originalLen = LZ4_decompress_safe((const char*)(pHeader->content + overhead), buf + sizeof(STaosHeader),
|
||||||
msgLen - overhead, contLen);
|
msgLen - overhead, contLen);
|
||||||
|
|
||||||
memcpy(buf, pHeader, sizeof(STaosHeader));
|
memcpy(buf, pHeader, sizeof(STaosHeader));
|
||||||
|
@ -220,6 +218,8 @@ static STaosHeader* taosDecompressRpcMsg(STaosHeader* pHeader, SSchedMsg* pSched
|
||||||
tError("failed to allocate memory to decompress msg, contLen:%d, reason:%s", contLen, strerror(errno));
|
tError("failed to allocate memory to decompress msg, contLen:%d, reason:%s", contLen, strerror(errno));
|
||||||
pSchedMsg->msg = NULL;
|
pSchedMsg->msg = NULL;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
return NULL;
|
||||||
}
|
}
|
||||||
|
|
||||||
char *taosBuildReqHeader(void *param, char type, char *msg) {
|
char *taosBuildReqHeader(void *param, char type, char *msg) {
|
||||||
|
@ -245,7 +245,10 @@ char *taosBuildReqHeader(void *param, char type, char *msg) {
|
||||||
pHeader->sourceId = pConn->ownId;
|
pHeader->sourceId = pConn->ownId;
|
||||||
pHeader->destId = pConn->peerId;
|
pHeader->destId = pConn->peerId;
|
||||||
pHeader->port = 0;
|
pHeader->port = 0;
|
||||||
|
|
||||||
|
#pragma GCC diagnostic ignored "-Wpointer-to-int-cast"
|
||||||
pHeader->uid = (uint32_t)pConn + (uint32_t)getpid();
|
pHeader->uid = (uint32_t)pConn + (uint32_t)getpid();
|
||||||
|
#pragma GCC diagnostic warning "-Wpointer-to-int-cast"
|
||||||
|
|
||||||
memcpy(pHeader->meterId, pConn->meterId, tListLen(pHeader->meterId));
|
memcpy(pHeader->meterId, pConn->meterId, tListLen(pHeader->meterId));
|
||||||
|
|
||||||
|
@ -276,7 +279,11 @@ char *taosBuildReqMsgWithSize(void *param, char type, int size) {
|
||||||
|
|
||||||
pHeader->sourceId = pConn->ownId;
|
pHeader->sourceId = pConn->ownId;
|
||||||
pHeader->destId = pConn->peerId;
|
pHeader->destId = pConn->peerId;
|
||||||
|
|
||||||
|
#pragma GCC diagnostic ignored "-Wpointer-to-int-cast"
|
||||||
pHeader->uid = (uint32_t)pConn + (uint32_t)getpid();
|
pHeader->uid = (uint32_t)pConn + (uint32_t)getpid();
|
||||||
|
#pragma GCC diagnostic warning "-Wpointer-to-int-cast"
|
||||||
|
|
||||||
memcpy(pHeader->meterId, pConn->meterId, tListLen(pHeader->meterId));
|
memcpy(pHeader->meterId, pConn->meterId, tListLen(pHeader->meterId));
|
||||||
|
|
||||||
return (char *)pHeader->content;
|
return (char *)pHeader->content;
|
||||||
|
|
|
@ -127,7 +127,7 @@ typedef struct {
|
||||||
} SMnodeStatus;
|
} SMnodeStatus;
|
||||||
|
|
||||||
typedef struct {
|
typedef struct {
|
||||||
char dbId;
|
uint8_t dbId;
|
||||||
char type;
|
char type;
|
||||||
uint64_t version;
|
uint64_t version;
|
||||||
short dataLen;
|
short dataLen;
|
||||||
|
|
|
@ -287,7 +287,7 @@ sdb_exit1:
|
||||||
return -1;
|
return -1;
|
||||||
}
|
}
|
||||||
|
|
||||||
void *sdbOpenTable(int maxRows, int32_t maxRowSize, char *name, char keyType, char *directory,
|
void *sdbOpenTable(int maxRows, int32_t maxRowSize, char *name, uint8_t keyType, char *directory,
|
||||||
void *(*appTool)(char, void *, char *, int, int *)) {
|
void *(*appTool)(char, void *, char *, int, int *)) {
|
||||||
SSdbTable *pTable = (SSdbTable *)malloc(sizeof(SSdbTable));
|
SSdbTable *pTable = (SSdbTable *)malloc(sizeof(SSdbTable));
|
||||||
if (pTable == NULL) return NULL;
|
if (pTable == NULL) return NULL;
|
||||||
|
|
Loading…
Reference in New Issue