enh(sync): add privateTerm into SSyncSnapshotSender, SyncAppendEntries, SyncAppendEntriesReply
This commit is contained in:
parent
305f4a8580
commit
7852188394
|
@ -301,6 +301,7 @@ typedef struct SyncAppendEntries {
|
||||||
SyncIndex prevLogIndex;
|
SyncIndex prevLogIndex;
|
||||||
SyncTerm prevLogTerm;
|
SyncTerm prevLogTerm;
|
||||||
SyncIndex commitIndex;
|
SyncIndex commitIndex;
|
||||||
|
SyncTerm privateTerm;
|
||||||
uint32_t dataLen;
|
uint32_t dataLen;
|
||||||
char data[];
|
char data[];
|
||||||
} SyncAppendEntries;
|
} SyncAppendEntries;
|
||||||
|
@ -332,6 +333,7 @@ typedef struct SyncAppendEntriesReply {
|
||||||
SRaftId destId;
|
SRaftId destId;
|
||||||
// private data
|
// private data
|
||||||
SyncTerm term;
|
SyncTerm term;
|
||||||
|
SyncTerm privateTerm;
|
||||||
bool success;
|
bool success;
|
||||||
SyncIndex matchIndex;
|
SyncIndex matchIndex;
|
||||||
} SyncAppendEntriesReply;
|
} SyncAppendEntriesReply;
|
||||||
|
|
|
@ -47,6 +47,7 @@ typedef struct SSyncSnapshotSender {
|
||||||
SSyncNode *pSyncNode;
|
SSyncNode *pSyncNode;
|
||||||
int32_t replicaIndex;
|
int32_t replicaIndex;
|
||||||
SyncTerm term;
|
SyncTerm term;
|
||||||
|
SyncTerm privateTerm;
|
||||||
bool finish;
|
bool finish;
|
||||||
} SSyncSnapshotSender;
|
} SSyncSnapshotSender;
|
||||||
|
|
||||||
|
|
|
@ -1343,6 +1343,9 @@ cJSON* syncAppendEntries2Json(const SyncAppendEntries* pMsg) {
|
||||||
snprintf(u64buf, sizeof(u64buf), "%lu", pMsg->term);
|
snprintf(u64buf, sizeof(u64buf), "%lu", pMsg->term);
|
||||||
cJSON_AddStringToObject(pRoot, "term", u64buf);
|
cJSON_AddStringToObject(pRoot, "term", u64buf);
|
||||||
|
|
||||||
|
snprintf(u64buf, sizeof(u64buf), "%lu", pMsg->privateTerm);
|
||||||
|
cJSON_AddStringToObject(pRoot, "privateTerm", u64buf);
|
||||||
|
|
||||||
snprintf(u64buf, sizeof(u64buf), "%ld", pMsg->prevLogIndex);
|
snprintf(u64buf, sizeof(u64buf), "%ld", pMsg->prevLogIndex);
|
||||||
cJSON_AddStringToObject(pRoot, "prevLogIndex", u64buf);
|
cJSON_AddStringToObject(pRoot, "prevLogIndex", u64buf);
|
||||||
|
|
||||||
|
@ -1504,6 +1507,9 @@ cJSON* syncAppendEntriesReply2Json(const SyncAppendEntriesReply* pMsg) {
|
||||||
cJSON_AddNumberToObject(pDestId, "vgId", pMsg->destId.vgId);
|
cJSON_AddNumberToObject(pDestId, "vgId", pMsg->destId.vgId);
|
||||||
cJSON_AddItemToObject(pRoot, "destId", pDestId);
|
cJSON_AddItemToObject(pRoot, "destId", pDestId);
|
||||||
|
|
||||||
|
snprintf(u64buf, sizeof(u64buf), "%lu", pMsg->privateTerm);
|
||||||
|
cJSON_AddStringToObject(pRoot, "privateTerm", u64buf);
|
||||||
|
|
||||||
snprintf(u64buf, sizeof(u64buf), "%lu", pMsg->term);
|
snprintf(u64buf, sizeof(u64buf), "%lu", pMsg->term);
|
||||||
cJSON_AddStringToObject(pRoot, "term", u64buf);
|
cJSON_AddStringToObject(pRoot, "term", u64buf);
|
||||||
cJSON_AddNumberToObject(pRoot, "success", pMsg->success);
|
cJSON_AddNumberToObject(pRoot, "success", pMsg->success);
|
||||||
|
|
|
@ -275,6 +275,8 @@ cJSON *snapshotSender2Json(SSyncSnapshotSender *pSender) {
|
||||||
cJSON_AddNumberToObject(pRoot, "replicaIndex", pSender->replicaIndex);
|
cJSON_AddNumberToObject(pRoot, "replicaIndex", pSender->replicaIndex);
|
||||||
snprintf(u64buf, sizeof(u64buf), "%lu", pSender->term);
|
snprintf(u64buf, sizeof(u64buf), "%lu", pSender->term);
|
||||||
cJSON_AddStringToObject(pRoot, "term", u64buf);
|
cJSON_AddStringToObject(pRoot, "term", u64buf);
|
||||||
|
snprintf(u64buf, sizeof(u64buf), "%lu", pSender->privateTerm);
|
||||||
|
cJSON_AddStringToObject(pRoot, "privateTerm", u64buf);
|
||||||
cJSON_AddNumberToObject(pRoot, "finish", pSender->finish);
|
cJSON_AddNumberToObject(pRoot, "finish", pSender->finish);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -22,6 +22,8 @@ SyncAppendEntriesReply *createMsg() {
|
||||||
pMsg->destId.vgId = 100;
|
pMsg->destId.vgId = 100;
|
||||||
pMsg->success = true;
|
pMsg->success = true;
|
||||||
pMsg->matchIndex = 77;
|
pMsg->matchIndex = 77;
|
||||||
|
pMsg->term = 33;
|
||||||
|
pMsg->privateTerm = 44;
|
||||||
return pMsg;
|
return pMsg;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -23,6 +23,7 @@ SyncAppendEntries *createMsg() {
|
||||||
pMsg->prevLogIndex = 11;
|
pMsg->prevLogIndex = 11;
|
||||||
pMsg->prevLogTerm = 22;
|
pMsg->prevLogTerm = 22;
|
||||||
pMsg->commitIndex = 33;
|
pMsg->commitIndex = 33;
|
||||||
|
pMsg->privateTerm = 44;
|
||||||
strcpy(pMsg->data, "hello world");
|
strcpy(pMsg->data, "hello world");
|
||||||
return pMsg;
|
return pMsg;
|
||||||
}
|
}
|
||||||
|
|
|
@ -40,6 +40,7 @@ SSyncSnapshotSender* createSender() {
|
||||||
pSyncNode->pFsm->FpSnapshotStartRead = SnapshotStartRead;
|
pSyncNode->pFsm->FpSnapshotStartRead = SnapshotStartRead;
|
||||||
pSyncNode->pFsm->FpSnapshotStopRead = SnapshotStopRead;
|
pSyncNode->pFsm->FpSnapshotStopRead = SnapshotStopRead;
|
||||||
pSyncNode->pFsm->FpSnapshotDoRead = SnapshotDoRead;
|
pSyncNode->pFsm->FpSnapshotDoRead = SnapshotDoRead;
|
||||||
|
pSyncNode->pFsm->FpGetSnapshot = GetSnapshot;
|
||||||
|
|
||||||
SSyncSnapshotSender* pSender = snapshotSenderCreate(pSyncNode, 2);
|
SSyncSnapshotSender* pSender = snapshotSenderCreate(pSyncNode, 2);
|
||||||
pSender->start = true;
|
pSender->start = true;
|
||||||
|
@ -54,6 +55,7 @@ SSyncSnapshotSender* createSender() {
|
||||||
pSender->snapshot.lastApplyTerm = 88;
|
pSender->snapshot.lastApplyTerm = 88;
|
||||||
pSender->sendingMS = 77;
|
pSender->sendingMS = 77;
|
||||||
pSender->term = 66;
|
pSender->term = 66;
|
||||||
|
pSender->privateTerm = 99;
|
||||||
|
|
||||||
return pSender;
|
return pSender;
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in New Issue