提交 b286a296 编写于 作者: S slguan

[TD-52] first version mpeer

上级 1fb5a8c2
...@@ -31,6 +31,10 @@ IF ((TD_LINUX_64) OR (TD_LINUX_32 AND TD_ARM)) ...@@ -31,6 +31,10 @@ IF ((TD_LINUX_64) OR (TD_LINUX_32 AND TD_ARM))
TARGET_LINK_LIBRARIES(taosd balance sync) TARGET_LINK_LIBRARIES(taosd balance sync)
ENDIF () ENDIF ()
IF (TD_MPEER)
TARGET_LINK_LIBRARIES(taosd mpeer sync)
ENDIF ()
SET(PREPARE_ENV_CMD "prepare_env_cmd") SET(PREPARE_ENV_CMD "prepare_env_cmd")
SET(PREPARE_ENV_TARGET "prepare_env_target") SET(PREPARE_ENV_TARGET "prepare_env_target")
ADD_CUSTOM_COMMAND(OUTPUT ${PREPARE_ENV_CMD} ADD_CUSTOM_COMMAND(OUTPUT ${PREPARE_ENV_CMD}
......
...@@ -24,6 +24,7 @@ int32_t dnodeInitMgmt(); ...@@ -24,6 +24,7 @@ int32_t dnodeInitMgmt();
void dnodeCleanupMgmt(); void dnodeCleanupMgmt();
void dnodeMgmt(SRpcMsg *rpcMsg); void dnodeMgmt(SRpcMsg *rpcMsg);
void dnodeUpdateDnodeId(int32_t dnodeId); void dnodeUpdateDnodeId(int32_t dnodeId);
int32_t dnodeGetDnodeId();
void* dnodeGetVnode(int32_t vgId); void* dnodeGetVnode(int32_t vgId);
int32_t dnodeGetVnodeStatus(void *pVnode); int32_t dnodeGetVnodeStatus(void *pVnode);
......
...@@ -294,4 +294,4 @@ uint32_t dnodeGetMnodeMasteIp() { ...@@ -294,4 +294,4 @@ uint32_t dnodeGetMnodeMasteIp() {
void* dnodeGetMpeerInfos() { void* dnodeGetMpeerInfos() {
return &tsMnodeInfos; return &tsMnodeInfos;
} }
\ No newline at end of file
...@@ -299,3 +299,7 @@ void dnodeUpdateDnodeId(int32_t dnodeId) { ...@@ -299,3 +299,7 @@ void dnodeUpdateDnodeId(int32_t dnodeId) {
dnodeSaveDnodeId(); dnodeSaveDnodeId();
} }
} }
int32_t dnodeGetDnodeId() {
return tsDnodeId;
}
\ No newline at end of file
...@@ -45,7 +45,6 @@ struct _mnode_obj; ...@@ -45,7 +45,6 @@ struct _mnode_obj;
typedef struct _mnode_obj { typedef struct _mnode_obj {
int32_t mnodeId; int32_t mnodeId;
int32_t dnodeId;
int64_t createdTime; int64_t createdTime;
int8_t reserved[14]; int8_t reserved[14];
int8_t updateEnd[1]; int8_t updateEnd[1];
......
...@@ -45,6 +45,11 @@ void mpeerGetMpeerInfos(void *mpeers); ...@@ -45,6 +45,11 @@ void mpeerGetMpeerInfos(void *mpeers);
char * mpeerGetMnodeStatusStr(int32_t status); char * mpeerGetMnodeStatusStr(int32_t status);
char * mpeerGetMnodeRoleStr(int32_t role); char * mpeerGetMnodeRoleStr(int32_t role);
int32_t mpeerAddMnode(int32_t dnodeId);
int32_t mpeerRemoveMnode(int32_t dnodeId);
int32_t sdbForwardDbReqToPeer(void *pHead);
#ifdef __cplusplus #ifdef __cplusplus
} }
#endif #endif
......
...@@ -34,6 +34,7 @@ typedef enum { ...@@ -34,6 +34,7 @@ typedef enum {
typedef enum { typedef enum {
SDB_KEY_STRING, SDB_KEY_STRING,
SDB_KEY_INT,
SDB_KEY_AUTO SDB_KEY_AUTO
} ESdbKeyType; } ESdbKeyType;
...@@ -66,8 +67,19 @@ typedef struct { ...@@ -66,8 +67,19 @@ typedef struct {
int32_t (*updateAllFp)(); int32_t (*updateAllFp)();
} SSdbTableDesc; } SSdbTableDesc;
typedef struct {
int32_t code;
int64_t version;
void * sync;
void * wal;
sem_t sem;
pthread_mutex_t mutex;
} SSdbObject;
int32_t sdbInit(); int32_t sdbInit();
void sdbCleanUp(); void sdbCleanUp();
SSdbObject *sdbGetObj();
int sdbProcessWrite(void *param, void *data, int type);
void * sdbOpenTable(SSdbTableDesc *desc); void * sdbOpenTable(SSdbTableDesc *desc);
void sdbCloseTable(void *handle); void sdbCloseTable(void *handle);
......
...@@ -109,6 +109,11 @@ int32_t mgmtStartSystem() { ...@@ -109,6 +109,11 @@ int32_t mgmtStartSystem() {
return -1; return -1;
} }
if (mpeerInit() < 0) {
mError("failed to init mpeers");
return -1;
}
if (sdbInit() < 0) { if (sdbInit() < 0) {
mError("failed to init sdb"); mError("failed to init sdb");
return -1; return -1;
...@@ -122,11 +127,6 @@ int32_t mgmtStartSystem() { ...@@ -122,11 +127,6 @@ int32_t mgmtStartSystem() {
return -1; return -1;
} }
if (mpeerInit() < 0) {
mError("failed to init mpeers");
return -1;
}
if (balanceInit() < 0) { if (balanceInit() < 0) {
mError("failed to init dnode balance") mError("failed to init dnode balance")
} }
......
...@@ -79,7 +79,7 @@ void mpeerGetMpeerInfos(void *param) { ...@@ -79,7 +79,7 @@ void mpeerGetMpeerInfos(void *param) {
strcpy(mpeers->nodeInfos[0].nodeName, tsMnodeObj.mnodeName); strcpy(mpeers->nodeInfos[0].nodeName, tsMnodeObj.mnodeName);
} }
void mpeerCleanupDnodes() {} void mpeerCleanupMnodes() {}
int32_t mpeerGetMnodesNum() { return 1; } int32_t mpeerGetMnodesNum() { return 1; }
void mpeerReleaseMnode(struct _mnode_obj *pMnode) {} void mpeerReleaseMnode(struct _mnode_obj *pMnode) {}
bool mpeerInServerStatus() { return tsMnodeObj.status == TAOS_MN_STATUS_READY; } bool mpeerInServerStatus() { return tsMnodeObj.status == TAOS_MN_STATUS_READY; }
...@@ -91,12 +91,11 @@ bool mpeerCheckRedirect() { return false; } ...@@ -91,12 +91,11 @@ bool mpeerCheckRedirect() { return false; }
int32_t mpeerInit() { int32_t mpeerInit() {
mgmtAddShellShowMetaHandle(TSDB_MGMT_TABLE_MNODE, mgmtGetMnodeMeta); mgmtAddShellShowMetaHandle(TSDB_MGMT_TABLE_MNODE, mgmtGetMnodeMeta);
mgmtAddShellShowRetrieveHandle(TSDB_MGMT_TABLE_MNODE, mgmtRetrieveMnodes); mgmtAddShellShowRetrieveHandle(TSDB_MGMT_TABLE_MNODE, mgmtRetrieveMnodes);
return mpeerInitMnodes(); return mpeerInitMnodes();
} }
void mpeerCleanup() { void mpeerCleanup() {
mpeerCleanupDnodes(); mpeerCleanupMnodes();
} }
char *mpeerGetMnodeStatusStr(int32_t status) { char *mpeerGetMnodeStatusStr(int32_t status) {
......
...@@ -24,19 +24,11 @@ ...@@ -24,19 +24,11 @@
#include "tutil.h" #include "tutil.h"
#include "twal.h" #include "twal.h"
#include "tsync.h" #include "tsync.h"
#include "mpeer.h"
#include "hashint.h" #include "hashint.h"
#include "hashstr.h" #include "hashstr.h"
#include "mgmtSdb.h" #include "mgmtSdb.h"
typedef struct {
int32_t code;
int64_t version;
void * sync;
void * wal;
sem_t sem;
pthread_mutex_t mutex;
} SSdbSync;
typedef struct _SSdbTable { typedef struct _SSdbTable {
char tableName[TSDB_DB_NAME_LEN + 1]; char tableName[TSDB_DB_NAME_LEN + 1];
ESdbTable tableId; ESdbTable tableId;
...@@ -70,17 +62,16 @@ typedef enum { ...@@ -70,17 +62,16 @@ typedef enum {
static SSdbTable *tsSdbTableList[SDB_TABLE_MAX] = {0}; static SSdbTable *tsSdbTableList[SDB_TABLE_MAX] = {0};
static int32_t tsSdbNumOfTables = 0; static int32_t tsSdbNumOfTables = 0;
static SSdbSync * tsSdbSync; static SSdbObject * tsSdbObj;
static void *(*sdbInitIndexFp[])(int32_t maxRows, int32_t dataSize) = {sdbOpenStrHash, sdbOpenIntHash}; static void *(*sdbInitIndexFp[])(int32_t maxRows, int32_t dataSize) = {sdbOpenStrHash, sdbOpenIntHash, sdbOpenIntHash};
static void *(*sdbAddIndexFp[])(void *handle, void *key, void *data) = {sdbAddStrHash, sdbAddIntHash}; static void *(*sdbAddIndexFp[])(void *handle, void *key, void *data) = {sdbAddStrHash, sdbAddIntHash, sdbAddIntHash};
static void (*sdbDeleteIndexFp[])(void *handle, void *key) = {sdbDeleteStrHash, sdbDeleteIntHash}; static void (*sdbDeleteIndexFp[])(void *handle, void *key) = {sdbDeleteStrHash, sdbDeleteIntHash, sdbDeleteIntHash};
static void *(*sdbGetIndexFp[])(void *handle, void *key) = {sdbGetStrHashData, sdbGetIntHashData}; static void *(*sdbGetIndexFp[])(void *handle, void *key) = {sdbGetStrHashData, sdbGetIntHashData, sdbGetIntHashData};
static void (*sdbCleanUpIndexFp[])(void *handle) = {sdbCloseStrHash, sdbCloseIntHash}; static void (*sdbCleanUpIndexFp[])(void *handle) = {sdbCloseStrHash, sdbCloseIntHash, sdbCloseIntHash};
static void *(*sdbFetchRowFp[])(void *handle, void *ptr, void **ppRow) = {sdbFetchStrHashData, sdbFetchIntHashData}; static void *(*sdbFetchRowFp[])(void *handle, void *ptr, void **ppRow) = {sdbFetchStrHashData, sdbFetchIntHashData, sdbFetchIntHashData};
static int sdbProcessWrite(void *param, void *data, int type);
uint64_t sdbGetVersion() { return tsSdbSync->version; } uint64_t sdbGetVersion() { return tsSdbObj->version; }
int64_t sdbGetId(void *handle) { return ((SSdbTable *)handle)->autoIndex; } int64_t sdbGetId(void *handle) { return ((SSdbTable *)handle)->autoIndex; }
int64_t sdbGetNumOfRows(void *handle) { return ((SSdbTable *)handle)->numOfRows; } int64_t sdbGetNumOfRows(void *handle) { return ((SSdbTable *)handle)->numOfRows; }
...@@ -101,6 +92,7 @@ static char *sdbGetkeyStr(SSdbTable *pTable, void *row) { ...@@ -101,6 +92,7 @@ static char *sdbGetkeyStr(SSdbTable *pTable, void *row) {
switch (pTable->keyType) { switch (pTable->keyType) {
case SDB_KEY_STRING: case SDB_KEY_STRING:
return (char *)row; return (char *)row;
case SDB_KEY_INT:
case SDB_KEY_AUTO: case SDB_KEY_AUTO:
sprintf(str, "%d", *(int32_t *)row); sprintf(str, "%d", *(int32_t *)row);
return str; return str;
...@@ -113,40 +105,30 @@ static void *sdbGetTableFromId(int32_t tableId) { ...@@ -113,40 +105,30 @@ static void *sdbGetTableFromId(int32_t tableId) {
return tsSdbTableList[tableId]; return tsSdbTableList[tableId];
} }
// static void mpeerConfirmForward(void *ahandle, void *param, int32_t code) { #ifndef _MPEER
// sem_post(&tsSdbSync->sem); int32_t sdbForwardDbReqToPeer(void *pHead) {
// mPrint("mpeerConfirmForward");
// }
static int32_t sdbForwardDbReqToPeer(SWalHead *pHead) {
// int32_t code = syncForwardToPeer(NULL, pHead, NULL);
// if (code < 0) {
// return code;
// }
// sem_wait(&tsSdbSync->sem);
// return tsSdbSync->code;
return TSDB_CODE_SUCCESS; return TSDB_CODE_SUCCESS;
} }
#endif
int32_t sdbInit() { int32_t sdbInit() {
tsSdbSync = calloc(1, sizeof(SSdbSync)); tsSdbObj = calloc(1, sizeof(SSdbObject));
sem_init(&tsSdbSync->sem, 0, 0); sem_init(&tsSdbObj->sem, 0, 0);
pthread_mutex_init(&tsSdbSync->mutex, NULL); pthread_mutex_init(&tsSdbObj->mutex, NULL);
SWalCfg walCfg = {.commitLog = 2, .wals = 2, .keep = 1}; SWalCfg walCfg = {.commitLog = 2, .wals = 2, .keep = 1};
tsSdbSync->wal = walOpen(tsMnodeDir, &walCfg); tsSdbObj->wal = walOpen(tsMnodeDir, &walCfg);
if (tsSdbSync->wal == NULL) { if (tsSdbObj->wal == NULL) {
sdbError("failed to open sdb in %s", tsMnodeDir); sdbError("failed to open sdb in %s", tsMnodeDir);
return -1; return -1;
} }
sdbTrace("open sdb file for read"); sdbTrace("open sdb file for read");
walRestore(tsSdbSync->wal, tsSdbSync, sdbProcessWrite); walRestore(tsSdbObj->wal, tsSdbObj, sdbProcessWrite);
int32_t totalRows = 0; int32_t totalRows = 0;
int32_t numOfTables = 0; int32_t numOfTables = 0;
for (int32_t tableId = SDB_TABLE_DNODE; tableId < SDB_TABLE_MAX; ++tableId) { for (int32_t tableId = SDB_TABLE_MNODE; tableId < SDB_TABLE_MAX; ++tableId) {
SSdbTable *pTable = sdbGetTableFromId(tableId); SSdbTable *pTable = sdbGetTableFromId(tableId);
if (pTable == NULL) continue; if (pTable == NULL) continue;
if (pTable->updateAllFp) { if (pTable->updateAllFp) {
...@@ -158,20 +140,24 @@ int32_t sdbInit() { ...@@ -158,20 +140,24 @@ int32_t sdbInit() {
sdbTrace("table:%s, is initialized, numOfRows:%d", pTable->tableName, pTable->numOfRows); sdbTrace("table:%s, is initialized, numOfRows:%d", pTable->tableName, pTable->numOfRows);
} }
sdbTrace("sdb is initialized, version:%d totalRows:%d numOfTables:%d", tsSdbSync->version, totalRows, numOfTables); sdbTrace("sdb is initialized, version:%d totalRows:%d numOfTables:%d", tsSdbObj->version, totalRows, numOfTables);
return TSDB_CODE_SUCCESS; return TSDB_CODE_SUCCESS;
} }
void sdbCleanUp() { void sdbCleanUp() {
if (tsSdbSync) { if (tsSdbObj) {
sem_destroy(&tsSdbSync->sem); sem_destroy(&tsSdbObj->sem);
pthread_mutex_destroy(&tsSdbSync->mutex); pthread_mutex_destroy(&tsSdbObj->mutex);
walClose(tsSdbSync->wal); walClose(tsSdbObj->wal);
free(tsSdbSync); free(tsSdbObj);
tsSdbSync = NULL; tsSdbObj = NULL;
} }
} }
SSdbObject *sdbGetObj() {
return tsSdbObj;
}
void sdbIncRef(void *handle, void *pRow) { void sdbIncRef(void *handle, void *pRow) {
if (pRow) { if (pRow) {
SSdbTable *pTable = handle; SSdbTable *pTable = handle;
...@@ -278,20 +264,20 @@ static int32_t sdbUpdateLocal(SSdbTable *pTable, SSdbOperDesc *pOper) { ...@@ -278,20 +264,20 @@ static int32_t sdbUpdateLocal(SSdbTable *pTable, SSdbOperDesc *pOper) {
static int32_t sdbProcessWriteFromApp(SSdbTable *pTable, SWalHead *pHead, int32_t action) { static int32_t sdbProcessWriteFromApp(SSdbTable *pTable, SWalHead *pHead, int32_t action) {
int32_t code = 0; int32_t code = 0;
pthread_mutex_lock(&tsSdbSync->mutex); pthread_mutex_lock(&tsSdbObj->mutex);
tsSdbSync->version++; tsSdbObj->version++;
pHead->version = tsSdbSync->version; pHead->version = tsSdbObj->version;
code = sdbForwardDbReqToPeer(pHead); code = sdbForwardDbReqToPeer(pHead);
if (code != TSDB_CODE_SUCCESS) { if (code != TSDB_CODE_SUCCESS) {
pthread_mutex_unlock(&tsSdbSync->mutex); pthread_mutex_unlock(&tsSdbObj->mutex);
sdbError("table:%s, failed to forward %s record:%s from file, version:%" PRId64 ", reason:%s", pTable->tableName, sdbError("table:%s, failed to forward %s record:%s from file, version:%" PRId64 ", reason:%s", pTable->tableName,
sdbGetActionStr(action), sdbGetkeyStr(pTable, pHead->cont), pHead->version, tstrerror(code)); sdbGetActionStr(action), sdbGetkeyStr(pTable, pHead->cont), pHead->version, tstrerror(code));
return code; return code;
} }
code = walWrite(tsSdbSync->wal, pHead); code = walWrite(tsSdbObj->wal, pHead);
pthread_mutex_unlock(&tsSdbSync->mutex); pthread_mutex_unlock(&tsSdbObj->mutex);
if (code < 0) { if (code < 0) {
sdbError("table:%s, failed to %s record:%s to file, version:%" PRId64 ", reason:%s", pTable->tableName, sdbError("table:%s, failed to %s record:%s to file, version:%" PRId64 ", reason:%s", pTable->tableName,
...@@ -301,26 +287,26 @@ static int32_t sdbProcessWriteFromApp(SSdbTable *pTable, SWalHead *pHead, int32_ ...@@ -301,26 +287,26 @@ static int32_t sdbProcessWriteFromApp(SSdbTable *pTable, SWalHead *pHead, int32_
sdbGetkeyStr(pTable, pHead->cont), pHead->version); sdbGetkeyStr(pTable, pHead->cont), pHead->version);
} }
walFsync(tsSdbSync->wal); walFsync(tsSdbObj->wal);
free(pHead); free(pHead);
return code; return code;
} }
static int32_t sdbProcessWriteFromWal(SSdbTable *pTable, SWalHead *pHead, int32_t action) { static int32_t sdbProcessWriteFromWal(SSdbTable *pTable, SWalHead *pHead, int32_t action) {
pthread_mutex_lock(&tsSdbSync->mutex); pthread_mutex_lock(&tsSdbObj->mutex);
if (pHead->version <= tsSdbSync->version) { if (pHead->version <= tsSdbObj->version) {
pthread_mutex_unlock(&tsSdbSync->mutex); pthread_mutex_unlock(&tsSdbObj->mutex);
return TSDB_CODE_SUCCESS; return TSDB_CODE_SUCCESS;
} else if (pHead->version != tsSdbSync->version + 1) { } else if (pHead->version != tsSdbObj->version + 1) {
pthread_mutex_unlock(&tsSdbSync->mutex); pthread_mutex_unlock(&tsSdbObj->mutex);
sdbError("table:%s, failed to restore %s record:%s from file, version:%" PRId64 " too large, sdb version:%" PRId64, sdbError("table:%s, failed to restore %s record:%s from file, version:%" PRId64 " too large, sdb version:%" PRId64,
pTable->tableName, sdbGetActionStr(action), sdbGetkeyStr(pTable, pHead->cont), pHead->version, pTable->tableName, sdbGetActionStr(action), sdbGetkeyStr(pTable, pHead->cont), pHead->version,
tsSdbSync->version); tsSdbObj->version);
return TSDB_CODE_OTHERS; return TSDB_CODE_OTHERS;
} }
tsSdbSync->version = pHead->version; tsSdbObj->version = pHead->version;
sdbTrace("table:%s, success to restore %s record:%s from file, version:%" PRId64, pTable->tableName, sdbTrace("table:%s, success to restore %s record:%s from file, version:%" PRId64, pTable->tableName,
sdbGetActionStr(action), sdbGetkeyStr(pTable, pHead->cont), pHead->version); sdbGetActionStr(action), sdbGetkeyStr(pTable, pHead->cont), pHead->version);
...@@ -335,7 +321,7 @@ static int32_t sdbProcessWriteFromWal(SSdbTable *pTable, SWalHead *pHead, int32_ ...@@ -335,7 +321,7 @@ static int32_t sdbProcessWriteFromWal(SSdbTable *pTable, SWalHead *pHead, int32_
if (code < 0) { if (code < 0) {
sdbTrace("table:%s, failed to decode %s record:%s from file, version:%" PRId64, pTable->tableName, sdbTrace("table:%s, failed to decode %s record:%s from file, version:%" PRId64, pTable->tableName,
sdbGetActionStr(action), sdbGetkeyStr(pTable, pHead->cont), pHead->version); sdbGetActionStr(action), sdbGetkeyStr(pTable, pHead->cont), pHead->version);
pthread_mutex_unlock(&tsSdbSync->mutex); pthread_mutex_unlock(&tsSdbObj->mutex);
return code; return code;
} }
...@@ -369,17 +355,17 @@ static int32_t sdbProcessWriteFromWal(SSdbTable *pTable, SWalHead *pHead, int32_ ...@@ -369,17 +355,17 @@ static int32_t sdbProcessWriteFromWal(SSdbTable *pTable, SWalHead *pHead, int32_
if (code < 0) { if (code < 0) {
sdbTrace("table:%s, failed to decode %s record:%s from file, version:%" PRId64, pTable->tableName, sdbTrace("table:%s, failed to decode %s record:%s from file, version:%" PRId64, pTable->tableName,
sdbGetActionStr(action), sdbGetkeyStr(pTable, pHead->cont), pHead->version); sdbGetActionStr(action), sdbGetkeyStr(pTable, pHead->cont), pHead->version);
pthread_mutex_unlock(&tsSdbSync->mutex); pthread_mutex_unlock(&tsSdbObj->mutex);
return code; return code;
} }
code = sdbInsertLocal(pTable, &oper2); code = sdbInsertLocal(pTable, &oper2);
} }
pthread_mutex_unlock(&tsSdbSync->mutex); pthread_mutex_unlock(&tsSdbObj->mutex);
return code; return code;
} }
static int sdbProcessWrite(void *param, void *data, int type) { int sdbProcessWrite(void *param, void *data, int type) {
SWalHead *pHead = data; SWalHead *pHead = data;
int32_t tableId = pHead->msgType / 10; int32_t tableId = pHead->msgType / 10;
int32_t action = pHead->msgType % 10; int32_t action = pHead->msgType % 10;
...@@ -426,7 +412,7 @@ int32_t sdbInsertRow(SSdbOperDesc *pOper) { ...@@ -426,7 +412,7 @@ int32_t sdbInsertRow(SSdbOperDesc *pOper) {
(*pTable->encodeFp)(pOper); (*pTable->encodeFp)(pOper);
pHead->len = pOper->rowSize; pHead->len = pOper->rowSize;
int32_t code = sdbProcessWrite(tsSdbSync, pHead, pHead->msgType); int32_t code = sdbProcessWrite(tsSdbObj, pHead, pHead->msgType);
if (code < 0) return code; if (code < 0) return code;
} }
...@@ -453,6 +439,7 @@ int32_t sdbDeleteRow(SSdbOperDesc *pOper) { ...@@ -453,6 +439,7 @@ int32_t sdbDeleteRow(SSdbOperDesc *pOper) {
case SDB_KEY_STRING: case SDB_KEY_STRING:
rowSize = strlen((char *)pOper->pObj) + 1; rowSize = strlen((char *)pOper->pObj) + 1;
break; break;
case SDB_KEY_INT:
case SDB_KEY_AUTO: case SDB_KEY_AUTO:
rowSize = sizeof(uint64_t); rowSize = sizeof(uint64_t);
break; break;
...@@ -467,7 +454,7 @@ int32_t sdbDeleteRow(SSdbOperDesc *pOper) { ...@@ -467,7 +454,7 @@ int32_t sdbDeleteRow(SSdbOperDesc *pOper) {
pHead->msgType = pTable->tableId * 10 + SDB_ACTION_DELETE; pHead->msgType = pTable->tableId * 10 + SDB_ACTION_DELETE;
memcpy(pHead->cont, pOper->pObj, rowSize); memcpy(pHead->cont, pOper->pObj, rowSize);
int32_t code = sdbProcessWrite(tsSdbSync, pHead, pHead->msgType); int32_t code = sdbProcessWrite(tsSdbObj, pHead, pHead->msgType);
if (code < 0) return code; if (code < 0) return code;
} }
...@@ -497,7 +484,7 @@ int32_t sdbUpdateRow(SSdbOperDesc *pOper) { ...@@ -497,7 +484,7 @@ int32_t sdbUpdateRow(SSdbOperDesc *pOper) {
(*pTable->encodeFp)(pOper); (*pTable->encodeFp)(pOper);
pHead->len = pOper->rowSize; pHead->len = pOper->rowSize;
int32_t code = sdbProcessWrite(tsSdbSync, pHead, pHead->msgType); int32_t code = sdbProcessWrite(tsSdbObj, pHead, pHead->msgType);
if (code < 0) return code; if (code < 0) return code;
} }
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册