datamanager: save previous wal in waldata

This commit is contained in:
Simone Gotti 2019-07-18 15:16:10 +02:00
parent 18c5ae0492
commit f7175c4592
1 changed files with 16 additions and 13 deletions

View File

@ -460,14 +460,15 @@ func (d *DataManager) WriteWalAdditionalOps(ctx context.Context, actions []*Acti
} }
d.log.Debugf("wrote wal file: %s", walDataFilePath) d.log.Debugf("wrote wal file: %s", walDataFilePath)
walsData.LastCommittedWalSequence = walSequence.String()
walData := &WalData{ walData := &WalData{
WalSequence: walSequence.String(), WalSequence: walSequence.String(),
WalDataFileID: walDataFileID, WalDataFileID: walDataFileID,
WalStatus: WalStatusCommitted, WalStatus: WalStatusCommitted,
PreviousWalSequence: walsData.LastCommittedWalSequence,
} }
walsData.LastCommittedWalSequence = walSequence.String()
walsDataj, err := json.Marshal(walsData) walsDataj, err := json.Marshal(walsData)
if err != nil { if err != nil {
return nil, err return nil, err
@ -922,9 +923,10 @@ func (d *DataManager) InitEtcd(ctx context.Context, dataStatus *DataStatus) erro
walFile.Close() walFile.Close()
walData := &WalData{ walData := &WalData{
WalSequence: wal.WalSequence, WalSequence: wal.WalSequence,
WalDataFileID: header.WalDataFileID, WalDataFileID: header.WalDataFileID,
WalStatus: WalStatusCommittedStorage, WalStatus: WalStatusCommittedStorage,
PreviousWalSequence: header.PreviousWalSequence,
} }
if wal.Checkpointed { if wal.Checkpointed {
walData.WalStatus = WalStatusCheckpointed walData.WalStatus = WalStatusCheckpointed
@ -1101,14 +1103,15 @@ func (d *DataManager) InitEtcd(ctx context.Context, dataStatus *DataStatus) erro
return err return err
} }
lastCommittedStorageWalSequence = walSequence.String()
walData := &WalData{ walData := &WalData{
WalSequence: walSequence.String(), WalSequence: walSequence.String(),
WalDataFileID: walDataFileID, WalDataFileID: walDataFileID,
WalStatus: WalStatusCommittedStorage, WalStatus: WalStatusCommittedStorage,
PreviousWalSequence: lastCommittedStorageWalSequence,
} }
lastCommittedStorageWalSequence = walSequence.String()
walsData := &WalsData{ walsData := &WalsData{
LastCommittedWalSequence: lastCommittedStorageWalSequence, LastCommittedWalSequence: lastCommittedStorageWalSequence,
} }