mirror of https://github.com/perkeep/perkeep.git
blobpacked: use blobserver.MergedEnumerate
Change-Id: I62160c56860a6433416373c04cedf12a5c4530bc
This commit is contained in:
parent
8ac4929b38
commit
ca56ca7356
|
@ -407,7 +407,21 @@ func (s *storage) StatBlobs(dest chan<- blob.SizedRef, blobs []blob.Ref) (err er
|
||||||
}
|
}
|
||||||
|
|
||||||
func (s *storage) EnumerateBlobs(ctx *context.Context, dest chan<- blob.SizedRef, after string, limit int) (err error) {
|
func (s *storage) EnumerateBlobs(ctx *context.Context, dest chan<- blob.SizedRef, after string, limit int) (err error) {
|
||||||
// TODO: merged numerate if s.assumeSmall
|
if s.assumeSmall {
|
||||||
|
return blobserver.MergedEnumerate(ctx, dest, []blobserver.BlobEnumerator{
|
||||||
|
s.small,
|
||||||
|
enumerator{s},
|
||||||
|
}, after, limit)
|
||||||
|
}
|
||||||
|
return enumerator{s}.EnumerateBlobs(ctx, dest, after, limit)
|
||||||
|
}
|
||||||
|
|
||||||
|
// enumerator implements EnumerateBlobs.
|
||||||
|
type enumerator struct {
|
||||||
|
*storage
|
||||||
|
}
|
||||||
|
|
||||||
|
func (s enumerator) EnumerateBlobs(ctx *context.Context, dest chan<- blob.SizedRef, after string, limit int) (err error) {
|
||||||
defer close(dest)
|
defer close(dest)
|
||||||
t := s.meta.Find(blobMetaPrefix+after, blobMetaPrefixLimit)
|
t := s.meta.Find(blobMetaPrefix+after, blobMetaPrefixLimit)
|
||||||
defer func() {
|
defer func() {
|
||||||
|
|
Loading…
Reference in New Issue