back compatible
This commit is contained in:
parent
eab26d39e2
commit
c8ef616ac5
|
@ -108,8 +108,6 @@ int tsdbApplyMFileChange(SMFile *from, SMFile *to) {
|
||||||
int tsdbCreateMFile(SMFile *pMFile, bool updateHeader) {
|
int tsdbCreateMFile(SMFile *pMFile, bool updateHeader) {
|
||||||
ASSERT(pMFile->info.size == 0 && pMFile->info.magic == TSDB_FILE_INIT_MAGIC);
|
ASSERT(pMFile->info.size == 0 && pMFile->info.magic == TSDB_FILE_INIT_MAGIC);
|
||||||
|
|
||||||
char buf[TSDB_FILE_HEAD_SIZE] = "\0";
|
|
||||||
|
|
||||||
pMFile->fd = open(TSDB_FILE_FULL_NAME(pMFile), O_WRONLY | O_CREAT | O_TRUNC, 0755);
|
pMFile->fd = open(TSDB_FILE_FULL_NAME(pMFile), O_WRONLY | O_CREAT | O_TRUNC, 0755);
|
||||||
if (pMFile->fd < 0) {
|
if (pMFile->fd < 0) {
|
||||||
terrno = TAOS_SYSTEM_ERROR(errno);
|
terrno = TAOS_SYSTEM_ERROR(errno);
|
||||||
|
@ -120,10 +118,7 @@ int tsdbCreateMFile(SMFile *pMFile, bool updateHeader) {
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
void *ptr = buf;
|
if (tsdbUpdateMFileHeader(pMFile) < 0) {
|
||||||
tsdbEncodeMFInfo(&ptr, &(pMFile->info));
|
|
||||||
|
|
||||||
if (tsdbWriteMFile(pMFile, buf, TSDB_FILE_HEAD_SIZE) < 0) {
|
|
||||||
tsdbCloseMFile(pMFile);
|
tsdbCloseMFile(pMFile);
|
||||||
tsdbRemoveMFile(pMFile);
|
tsdbRemoveMFile(pMFile);
|
||||||
return -1;
|
return -1;
|
||||||
|
@ -307,9 +302,6 @@ static void *tsdbDecodeSDFileEx(void *buf, SDFile *pDFile) {
|
||||||
int tsdbCreateDFile(SDFile *pDFile, bool updateHeader) {
|
int tsdbCreateDFile(SDFile *pDFile, bool updateHeader) {
|
||||||
ASSERT(pDFile->info.size == 0 && pDFile->info.magic == TSDB_FILE_INIT_MAGIC);
|
ASSERT(pDFile->info.size == 0 && pDFile->info.magic == TSDB_FILE_INIT_MAGIC);
|
||||||
|
|
||||||
char buf[TSDB_FILE_HEAD_SIZE] = "\0";
|
|
||||||
// TODO: need to check if directory exists, if not, create the directory
|
|
||||||
|
|
||||||
pDFile->fd = open(TSDB_FILE_FULL_NAME(pDFile), O_WRONLY | O_CREAT | O_TRUNC, 0755);
|
pDFile->fd = open(TSDB_FILE_FULL_NAME(pDFile), O_WRONLY | O_CREAT | O_TRUNC, 0755);
|
||||||
if (pDFile->fd < 0) {
|
if (pDFile->fd < 0) {
|
||||||
terrno = TAOS_SYSTEM_ERROR(errno);
|
terrno = TAOS_SYSTEM_ERROR(errno);
|
||||||
|
@ -320,10 +312,7 @@ int tsdbCreateDFile(SDFile *pDFile, bool updateHeader) {
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
void *ptr = buf;
|
if (tsdbUpdateDFileHeader(pDFile) < 0) {
|
||||||
tsdbEncodeDFInfo(&ptr, &(pDFile->info));
|
|
||||||
|
|
||||||
if (tsdbWriteDFile(pDFile, buf, TSDB_FILE_HEAD_SIZE) < 0) {
|
|
||||||
tsdbCloseDFile(pDFile);
|
tsdbCloseDFile(pDFile);
|
||||||
tsdbRemoveDFile(pDFile);
|
tsdbRemoveDFile(pDFile);
|
||||||
return -1;
|
return -1;
|
||||||
|
@ -342,6 +331,7 @@ int tsdbUpdateDFileHeader(SDFile *pDFile) {
|
||||||
}
|
}
|
||||||
|
|
||||||
void *ptr = buf;
|
void *ptr = buf;
|
||||||
|
taosEncodeFixedU32(&ptr, TSDB_FS_VERSION);
|
||||||
tsdbEncodeDFInfo(&ptr, &(pDFile->info));
|
tsdbEncodeDFInfo(&ptr, &(pDFile->info));
|
||||||
|
|
||||||
if (tsdbWriteDFile(pDFile, buf, TSDB_FILE_HEAD_SIZE) < 0) {
|
if (tsdbWriteDFile(pDFile, buf, TSDB_FILE_HEAD_SIZE) < 0) {
|
||||||
|
@ -353,6 +343,7 @@ int tsdbUpdateDFileHeader(SDFile *pDFile) {
|
||||||
|
|
||||||
int tsdbLoadDFileHeader(SDFile *pDFile, SDFInfo *pInfo) {
|
int tsdbLoadDFileHeader(SDFile *pDFile, SDFInfo *pInfo) {
|
||||||
char buf[TSDB_FILE_HEAD_SIZE] = "\0";
|
char buf[TSDB_FILE_HEAD_SIZE] = "\0";
|
||||||
|
uint32_t version;
|
||||||
|
|
||||||
ASSERT(TSDB_FILE_OPENED(pDFile));
|
ASSERT(TSDB_FILE_OPENED(pDFile));
|
||||||
|
|
||||||
|
@ -364,7 +355,9 @@ int tsdbLoadDFileHeader(SDFile *pDFile, SDFInfo *pInfo) {
|
||||||
return -1;
|
return -1;
|
||||||
}
|
}
|
||||||
|
|
||||||
tsdbDecodeDFInfo(buf, pInfo);
|
void *pBuf = buf;
|
||||||
|
pBuf = taosDecodeFixedU32(pBuf, &version);
|
||||||
|
pBuf = tsdbDecodeDFInfo(buf, pInfo);
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue