fix: log file size over 4G report error on windows

This commit is contained in:
Alex Duan 2023-04-25 17:03:58 +08:00
parent d173213798
commit ee93500619
2 changed files with 3 additions and 4 deletions

View File

@ -538,10 +538,11 @@ int32_t taosFStatFile(TdFilePtr pFile, int64_t *size, int32_t *mtime) {
return -1; return -1;
} }
struct stat fileStat;
#ifdef WINDOWS #ifdef WINDOWS
struct __stat64 fileStat;
int32_t code = _fstat(pFile->fd, &fileStat); int32_t code = _fstat(pFile->fd, &fileStat);
#else #else
struct stat fileStat;
int32_t code = fstat(pFile->fd, &fileStat); int32_t code = fstat(pFile->fd, &fileStat);
#endif #endif
if (code < 0) { if (code < 0) {

View File

@ -347,7 +347,6 @@ static int32_t taosOpenLogFile(char *fn, int32_t maxLines, int32_t maxFileNum) {
char name[LOG_FILE_NAME_LEN + 50] = "\0"; char name[LOG_FILE_NAME_LEN + 50] = "\0";
int32_t logstat0_mtime, logstat1_mtime; int32_t logstat0_mtime, logstat1_mtime;
int32_t size;
tsLogObj.maxLines = maxLines; tsLogObj.maxLines = maxLines;
tsLogObj.fileNum = maxFileNum; tsLogObj.fileNum = maxFileNum;
@ -395,8 +394,7 @@ static int32_t taosOpenLogFile(char *fn, int32_t maxLines, int32_t maxFileNum) {
printf("\nfailed to fstat log file:%s, reason:%s\n", fileName, strerror(errno)); printf("\nfailed to fstat log file:%s, reason:%s\n", fileName, strerror(errno));
return -1; return -1;
} }
size = (int32_t)filesize; tsLogObj.lines = (int32_t)(filesize / 60);
tsLogObj.lines = size / 60;
taosLSeekFile(tsLogObj.logHandle->pFile, 0, SEEK_END); taosLSeekFile(tsLogObj.logHandle->pFile, 0, SEEK_END);