GetLog is a method on FlyDbStore that retrieves a log entry by its index
(index uint64, log *raft.Log)
| 48 | |
| 49 | // GetLog is a method on FlyDbStore that retrieves a log entry by its index |
| 50 | func (fds *FlyDbStore) GetLog(index uint64, log *raft.Log) error { |
| 51 | val, err := fds.conn.Get(uint64ToBytes(index)) // Retrieve the log entry by index |
| 52 | if err != nil { |
| 53 | return err |
| 54 | } |
| 55 | if val == nil { |
| 56 | return raft.ErrLogNotFound // Return an error if the log entry is not found |
| 57 | } |
| 58 | return encoding.DecodeMessagePack(val, log) // Decode the log entry and assign it to the log variable |
| 59 | } |
| 60 | |
| 61 | // StoreLog is a method on FlyDbStore that stores a single log entry |
| 62 | func (fds *FlyDbStore) StoreLog(log *raft.Log) error { |