| 674 | } |
| 675 | |
| 676 | func (it *Iterator) fill(item *Item) { |
| 677 | vs := it.iitr.Value() |
| 678 | item.meta = vs.Meta |
| 679 | item.userMeta = vs.UserMeta |
| 680 | item.expiresAt = vs.ExpiresAt |
| 681 | |
| 682 | item.version = y.ParseTs(it.iitr.Key()) |
| 683 | item.key = y.SafeCopy(item.key, y.ParseKey(it.iitr.Key())) |
| 684 | |
| 685 | item.vptr = y.SafeCopy(item.vptr, vs.Value) |
| 686 | item.val = nil |
| 687 | if it.opt.PrefetchValues { |
| 688 | item.wg.Add(1) |
| 689 | go func() { |
| 690 | // FIXME we are not handling errors here. |
| 691 | item.prefetchValue() |
| 692 | item.wg.Done() |
| 693 | }() |
| 694 | } |
| 695 | } |
| 696 | |
| 697 | func (it *Iterator) prefetch() { |
| 698 | prefetchSize := 2 |