@@ -22,7 +22,6 @@ import (
2222 "encoding/json"
2323 "fmt"
2424 "math/rand"
25- "strings"
2625 "sync"
2726 "sync/atomic"
2827 "time"
@@ -78,7 +77,6 @@ func (u *unpacker) unpack(
7877 rCtx * RemoteContext ,
7978 h images.Handler ,
8079 config ocispec.Descriptor ,
81- parentDesc ocispec.Descriptor ,
8280 layers []ocispec.Descriptor ,
8381) error {
8482 p , err := content .ReadBlob (ctx , u .c .ContentStore (), config )
@@ -247,31 +245,6 @@ EachLayer:
247245 "chainID" : chainID ,
248246 }).Debug ("image unpacked" )
249247
250- if rCtx .DiscardContent {
251- // delete references to successfully unpacked layers
252- layersMap := map [string ]struct {}{}
253- for _ , desc := range layers {
254- layersMap [desc .Digest .String ()] = struct {}{}
255- }
256- pinfo , err := cs .Info (ctx , parentDesc .Digest )
257- if err != nil {
258- return err
259- }
260- fields := []string {}
261- for k , v := range pinfo .Labels {
262- if strings .HasPrefix (k , "containerd.io/gc.ref.content." ) {
263- if _ , ok := layersMap [v ]; ok {
264- // We've already unpacked this layer content
265- pinfo .Labels [k ] = ""
266- fields = append (fields , "labels." + k )
267- }
268- }
269- }
270- if _ , err := cs .Update (ctx , pinfo , fields ... ); err != nil {
271- return err
272- }
273- }
274-
275248 return nil
276249}
277250
@@ -314,7 +287,6 @@ func (u *unpacker) handlerWrapper(
314287 var (
315288 lock sync.Mutex
316289 layers = map [digest.Digest ][]ocispec.Descriptor {}
317- parent = map [digest.Digest ]ocispec.Descriptor {}
318290 )
319291 return images .HandlerFunc (func (ctx context.Context , desc ocispec.Descriptor ) ([]ocispec.Descriptor , error ) {
320292 children , err := f .Handle (ctx , desc )
@@ -340,20 +312,18 @@ func (u *unpacker) handlerWrapper(
340312 lock .Lock ()
341313 for _ , nl := range nonLayers {
342314 layers [nl .Digest ] = manifestLayers
343- parent [nl .Digest ] = desc
344315 }
345316 lock .Unlock ()
346317
347318 children = nonLayers
348319 case images .MediaTypeDockerSchema2Config , ocispec .MediaTypeImageConfig :
349320 lock .Lock ()
350321 l := layers [desc .Digest ]
351- p := parent [desc .Digest ]
352322 lock .Unlock ()
353323 if len (l ) > 0 {
354324 atomic .AddInt32 (unpacks , 1 )
355325 eg .Go (func () error {
356- return u .unpack (uctx , rCtx , f , desc , p , l )
326+ return u .unpack (uctx , rCtx , f , desc , l )
357327 })
358328 }
359329 }
0 commit comments