Get implements Wal.Get.
(index uint64)
| 85 | |
| 86 | // Get implements Wal.Get. |
| 87 | func (p *MemWal) Get(index uint64) (l *kt.Log, err error) { |
| 88 | if atomic.LoadUint32(&p.closed) == 1 { |
| 89 | err = ErrWalClosed |
| 90 | return |
| 91 | } |
| 92 | |
| 93 | p.RLock() |
| 94 | defer p.RUnlock() |
| 95 | |
| 96 | var i int |
| 97 | var exists bool |
| 98 | if i, exists = p.revIndex[index]; !exists { |
| 99 | err = ErrNotExists |
| 100 | return |
| 101 | } |
| 102 | |
| 103 | l = p.logs[i] |
| 104 | |
| 105 | return |
| 106 | } |
| 107 | |
| 108 | // Close implements Wal.Close. |
| 109 | func (p *MemWal) Close() { |
no outgoing calls