idsFromForwardMap get all free page IDs from f.forwardMap. used by test only.
()
| 267 | // idsFromForwardMap get all free page IDs from f.forwardMap. |
| 268 | // used by test only. |
| 269 | func (f *hashMap) idsFromForwardMap() map[common.Pgid]struct{} { |
| 270 | ids := make(map[common.Pgid]struct{}) |
| 271 | for start, size := range f.forwardMap { |
| 272 | for i := 0; i < int(size); i++ { |
| 273 | id := start + common.Pgid(i) |
| 274 | if _, ok := ids[id]; ok { |
| 275 | panic(fmt.Sprintf("detected duplicated free page ID: %d in f.forwardMap: %v", id, f.forwardMap)) |
| 276 | } |
| 277 | ids[id] = struct{}{} |
| 278 | } |
| 279 | } |
| 280 | return ids |
| 281 | } |
| 282 | |
| 283 | // idsFromBackwardMap get all free page IDs from f.backwardMap. |
| 284 | // used by test only. |