-
Notifications
You must be signed in to change notification settings - Fork 6
Description
Environment
Device and OS: Gitlab Runner / Ubuntu Linux
App/package versions: package/uds-bundle-xxxx-elk-amd64-fa00da3c7c4a1dd334b277b6fbe9e366c15d782d.tar.zst
Kubernetes distro being used: Rancher
Other:
Steps to reproduce
- attempt to push a 12GB image on a VM with only 8 GB of memory
Expected result
The push is successful and does not panic
Actual Result
The process panics due to OOM
Visual Proof (screenshots, videos, text, etc)
Publishing xxxx-elk/bundles/xxxx-elk:fa00da3c7c4a1dd334b277b6fbe9e366c15d782d 5% | 1sfatal error: runtime: out of memory
runtime stack:
runtime.throw({0x637d9c9?, 0x2030?})
/opt/hostedtoolcache/go/1.25.0/x64/src/runtime/panic.go:1094 +0x48 fp=0x7ffd119481a8 sp=0x7ffd11948178 pc=0x481d08
runtime.sysMapOS(0xc049800000, 0x2cfc00000, {0x6316616, 0x4})
/opt/hostedtoolcache/go/1.25.0/x64/src/runtime/mem_linux.go:175 +0x13b fp=0x7ffd119481e8 sp=0x7ffd119481a8 pc=0x42349b
runtime.sysMap(0xc049800000, 0x2cfc00000, 0xb1a7108?, {0x6316616, 0x4})
/opt/hostedtoolcache/go/1.25.0/x64/src/runtime/mem.go:178 +0x45 fp=0x7ffd11948218 sp=0x7ffd119481e8 pc=0x422d25
runtime.(*mheap).grow(0xb196f00, 0x167da7?)
/opt/hostedtoolcache/go/1.25.0/x64/src/runtime/mheap.go:1616 +0x265 fp=0x7ffd11948298 sp=0x7ffd11948218 pc=0x436ce5
runtime.(*mheap).allocSpan(0xb196f00, 0x167da7, 0x0, 0x1)
/opt/hostedtoolcache/go/1.25.0/x64/src/runtime/mheap.go:1299 +0x1ad fp=0x7ffd11948340 sp=0x7ffd11948298 pc=0x43632d
runtime.(*mheap).alloc.func1()
/opt/hostedtoolcache/go/1.25.0/x64/src/runtime/mheap.go:1017 +0x5c fp=0x7ffd11948388 sp=0x7ffd11948340 pc=0x435dfc
runtime.systemstack(0x48d29f)
/opt/hostedtoolcache/go/1.25.0/x64/src/runtime/asm_amd64.s:513 +0x4a fp=0x7ffd11948398 sp=0x7ffd11948388 pc=0x48892a
goroutine 148 gp=0xc001435180 m=0 mp=0xb17da00 [running]:
runtime.systemstack_switch()
/opt/hostedtoolcache/go/1.25.0/x64/src/runtime/asm_amd64.s:478 +0x8 fp=0xc0008b0d00 sp=0xc0008b0cf0 pc=0x4888c8
runtime.(*mheap).alloc(0x2cfb4e000?, 0x167da7?, 0x60?)
/opt/hostedtoolcache/go/1.25.0/x64/src/runtime/mheap.go:1011 +0x5b fp=0xc0008b0d48 sp=0xc0008b0d00 pc=0x435d5b
runtime.(*mcache).allocLarge(0xc0008b0de0?, 0x2cfb4ca05, 0x1)
/opt/hostedtoolcache/go/1.25.0/x64/src/runtime/mcache.go:236 +0x7d fp=0xc0008b0d98 sp=0xc0008b0d48 pc=0x4203fd
runtime.mallocgcLarge(0xc000e4ebb0?, 0x548f1e0, 0x1)
/opt/hostedtoolcache/go/1.25.0/x64/src/runtime/malloc.go:1552 +0x79 fp=0xc0008b0df0 sp=0xc0008b0d98 pc=0x41d659
runtime.mallocgc(0x2cfb4ca05, 0x548f1e0, 0x1)
/opt/hostedtoolcache/go/1.25.0/x64/src/runtime/malloc.go:1072 +0xcc fp=0xc0008b0e20 sp=0xc0008b0df0 pc=0x47f56c
runtime.makeslice(0xb1a91a0?, 0xc000d0ca80?, 0x668c?)
/opt/hostedtoolcache/go/1.25.0/x64/src/runtime/slice.go:116 +0x49 fp=0xc0008b0e48 sp=0xc0008b0e20 pc=0x484829
github.com/defenseunicorns/pkg/helpers/v2.(*Transport).roundTrip(0xc000adcc40, 0xc000300640)
/home/runner/go/pkg/mod/github.com/defenseunicorns/pkg/helpers/v2@v2.0.4/transport.go:92 +0xeb fp=0xc0008b0ed8 sp=0xc0008b0e48 pc=0x7a15cb
github.com/defenseunicorns/pkg/helpers/v2.(*Transport).RoundTrip(0xc000adcc40, 0xc000300640)
/home/runner/go/pkg/mod/github.com/defenseunicorns/pkg/helpers/v2@v2.0.4/transport.go:38 +0x99 fp=0xc0008b0fa0 sp=0xc0008b0ed8 pc=0x7a1299
net/http.send(0xc000300640, {0x760b960, 0xc000adcc40}, {0xc0002d5001?, 0xc001d5e5b0?, 0x0?})
/opt/hostedtoolcache/go/1.25.0/x64/src/net/http/client.go:259 +0x5e2 fp=0xc0008b1190 sp=0xc0008b0fa0 pc=0x71ce62
net/http.(*Client).send(0xb0d5020, 0xc000300640, {0x41d154?, 0xc001d5e5a0?, 0x0?})
/opt/hostedtoolcache/go/1.25.0/x64/src/net/http/client.go:180 +0x91 fp=0xc0008b1208 sp=0xc0008b1190 pc=0x71c711
net/http.(*Client).do(0xb0d5020, 0xc000300640)
/opt/hostedtoolcache/go/1.25.0/x64/src/net/http/client.go:729 +0x9c9 fp=0xc0008b13f8 sp=0xc0008b1208 pc=0x71ec29
net/http.(*Client).Do(...)
/opt/hostedtoolcache/go/1.25.0/x64/src/net/http/client.go:587
oras.land/oras-go/v2/registry/remote/auth.(*Client).send(0xc00144e080, 0xc000300640)
/home/runner/go/pkg/mod/oras.land/oras-go/v2@v2.6.0/registry/remote/auth/client.go:139 +0x1a5 fp=0xc0008b14c0 sp=0xc0008b13f8 pc=0x99ac85
oras.land/oras-go/v2/registry/remote/auth.(*Client).Do(0xc00144e080, 0xc000300500)
/home/runner/go/pkg/mod/oras.land/oras-go/v2@v2.6.0/registry/remote/auth/client.go:203 +0x44b fp=0xc0008b16c0 sp=0xc0008b14c0 pc=0x99b24b
oras.land/oras-go/v2/registry/remote.(*Repository).do(0x767c350?, 0xc000ef1440?)
/home/runner/go/pkg/mod/oras.land/oras-go/v2@v2.6.0/registry/remote/repository.go:261 +0x102 fp=0xc0008b1700 sp=0xc0008b16c0 pc=0x9a3182
oras.land/oras-go/v2/registry/remote.(*blobStore).Resolve(0xc000a48288, {0x767c388, 0xc001d7c0f0}, {0xc0008d4f00?, 0x5c70000?})
/home/runner/go/pkg/mod/oras.land/oras-go/v2@v2.6.0/registry/remote/repository.go:963 +0x27f fp=0xc0008b1900 sp=0xc0008b1700 pc=0x9aa3bf
oras.land/oras-go/v2/registry/remote.(*blobStore).Exists(0xc0007eeb70?, {0x767c388?, 0xc001d7c0f0?}, {{0xc0007eeb70, 0x22}, {0xc0008d4f00, 0x47}, 0x2cfb4ca05, {0x0, 0x0, ...}, ...})
/home/runner/go/pkg/mod/oras.land/oras-go/v2@v2.6.0/registry/remote/repository.go:931 +0x7b fp=0xc0008b1a38 sp=0xc0008b1900 pc=0x9a9f9b
oras.land/oras-go/v2/registry/remote.(*Repository).Exists(0xc000e4e0b0, {0x767c388, 0xc001d7c0f0}, {{0xc0007eeb70, 0x22}, {0xc0008d4f00, 0x47}, 0x2cfb4ca05, {0x0, 0x0, ...}, ...})
/home/runner/go/pkg/mod/oras.land/oras-go/v2@v2.6.0/registry/remote/repository.go:305 +0x206 fp=0xc0008b1b68 sp=0xc0008b1a38 pc=0x9a3b66
oras.land/oras-go/v2.copyGraph.func1({0x767c388, 0xc001d7c0f0}, 0xc001deaba0, {{0xc0007eeb70, 0x22}, {0xc0008d4f00, 0x47}, 0x2cfb4ca05, {0x0, 0x0, ...}, ...})
/home/runner/go/pkg/mod/oras.land/oras-go/v2@v2.6.0/copy.go:229 +0x19a fp=0xc0008b1e68 sp=0xc0008b1b68 pc=0x9c48da
oras.land/oras-go/v2/internal/syncutil.Go[...].func1.func2()
/home/runner/go/pkg/mod/oras.land/oras-go/v2@v2.6.0/internal/syncutil/limit.go:94 +0x11a fp=0xc0008b1f78 sp=0xc0008b1e68 pc=0x98ab3a
golang.org/x/sync/errgroup.(*Group).Go.func1()
/home/runner/go/pkg/mod/golang.org/x/sync@v0.18.0/errgroup/errgroup.go:93 +0x50 fp=0xc0008b1fe0 sp=0xc0008b1f78 pc=0x591710
runtime.goexit({})
/opt/hostedtoolcache/go/1.25.0/x64/src/runtime/asm_amd64.s:1693 +0x1 fp=0xc0008b1fe8 sp=0xc0008b1fe0 pc=0x48a761
created by golang.org/x/sync/errgroup.(*Group).Go in goroutine 96
/home/runner/go/pkg/mod/golang.org/x/sync@v0.18.0/errgroup/errgroup.go:78 +0x95
goroutine 1 gp=0xc000002380 m=nil [sync.WaitGroup.Wait]:
runtime.gopark(0xc000f22f70?, 0x41d154?, 0x20?, 0xdf?, 0x7b521d1fc4a0?)
/opt/hostedtoolcache/go/1.25.0/x64/src/runtime/proc.go:460 +0xce fp=0xc000f22f10 sp=0xc000f22ef0 pc=0x481e2e
runtime.goparkunlock(...)
/opt/hostedtoolcache/go/1.25.0/x64/src/runtime/proc.go:466
runtime.semacquire1(0xc00144e5d0, 0x0, 0x1, 0x0, 0x19)
/opt/hostedtoolcache/go/1.25.0/x64/src/runtime/sema.go:192 +0x21d fp=0xc000f22f78 sp=0xc000f22f10 pc=0x45f69d
sync.runtime_SemacquireWaitGroup(0xc00133fab8?, 0x80?)
/opt/hostedtoolcache/go/1.25.0/x64/src/runtime/sema.go:114 +0x2e fp=0xc000f22fb0 sp=0xc000f22f78 pc=0x483a6e
sync.(*WaitGroup).Wait(0xc00144e5c8)
/opt/hostedtoolcache/go/1.25.0/x64/src/sync/waitgroup.go:206 +0x85 fp=0xc000f22fd8 sp=0xc000f22fb0 pc=0x496985
golang.org/x/sync/errgroup.(*Group).Wait(0xc00144e5c0)
/home/runner/go/pkg/mod/golang.org/x/sync@v0.18.0/errgroup/errgroup.go:56 +0x1e fp=0xc000f22ff8 sp=0xc000f22fd8 pc=0x5915be
oras.land/oras-go/v2/internal/syncutil.Go[...]({0x767c270, 0xb1adba0?}, 0xc001d7cd20?, 0xc0013a07e0, {0xc000f23218, 0x1, 0x61dae58})
/home/runner/go/pkg/mod/oras.land/oras-go/v2@v2.6.0/internal/syncutil/limit.go:103 +0x395 fp=0xc000f23198 sp=0xc000f22ff8 pc=0x98a955
oras.land/oras-go/v2.copyGraph({0x767c270, 0xb1adba0}, {0x7b521cf90b28, 0xc000e74000}, {0x7b521cf90b90, 0xc000e4e0b0}, {{0xc000f715c0, 0x2a}, {0xc0008d51d0, 0x47}, ...}, ...)
/home/runner/go/pkg/mod/oras.land/oras-go/v2@v2.6.0/copy.go:281 +0x466 fp=0xc000f232a8 sp=0xc000f23198 pc=0x9c4686
oras.land/oras-go/v2.Copy({0x767c270, 0xb1adba0}, {0x765d210, 0xc000e74000}, {_, }, {, }, {0xc00066eeb4, 0x28}, ...)
/home/runner/go/pkg/mod/oras.land/oras-go/v2@v2.6.0/copy.go:166 +0x8a5 fp=0xc000f23510 sp=0xc000f232a8 pc=0x9c3fe5
github.com/defenseunicorns/uds-cli/src/pkg/bundle.(*tarballBundleProvider).PublishBundle(, {{0xc000f01ff4, 0x9}, {{0xc00148c060, 0xa}, {0xc000f70750, 0x2b}, {0xc000f70840, 0x28}, {0x0, ...}, ...}, ...}, ...)
/home/runner/work/uds-cli/uds-cli/src/pkg/bundle/tarball.go:335 +0xe27 fp=0xc000f23848 sp=0xc000f23510 pc=0x4fbfd87
github.com/defenseunicorns/uds-cli/src/pkg/bundle.(*Bundle).Publish(0xc000ef4780)
/home/runner/work/uds-cli/uds-cli/src/pkg/bundle/publish.go:74 +0x6dd fp=0xc000f23ba8 sp=0xc000f23848 pc=0x4fb60bd
github.com/defenseunicorns/uds-cli/src/cmd.init.func10(0xc000eda300?, {0xc000d03b60?, 0x4?, 0x63164f6?})
/home/runner/work/uds-cli/uds-cli/src/cmd/uds.go:179 +0x1b6 fp=0xc000f23c68 sp=0xc000f23ba8 pc=0x501c316
github.com/spf13/cobra.(*Command).execute(0xb114c20, {0xc000d03b00, 0x6, 0x6})
/home/runner/go/pkg/mod/github.com/spf13/cobra@v1.10.1/command.go:1015 +0xb02 fp=0xc000f23e10 sp=0xc000f23c68 pc=0xaf5522
github.com/spf13/cobra.(*Command).ExecuteC(0xb116040)
/home/runner/go/pkg/mod/github.com/spf13/cobra@v1.10.1/command.go:1148 +0x465 fp=0xc000f23f00 sp=0xc000f23e10 pc=0xaf5e65
github.com/spf13/cobra.(*Command).Execute(...)
/home/runner/go/pkg/mod/github.com/spf13/cobra@v1.10.1/command.go:1071
github.com/defenseunicorns/uds-cli/src/cmd.Execute()
/home/runner/work/uds-cli/uds-cli/src/cmd/root.go:63 +0x1a fp=0xc000f23f40 sp=0xc000f23f00 pc=0x501f25a
main.main()
/home/runner/work/uds-cli/uds-cli/main.go:19 +0x47 fp=0xc000f23f50 sp=0xc000f23f40 pc=0x5021647
runtime.main()
/opt/hostedtoolcache/go/1.25.0/x64/src/runtime/proc.go:285 +0x29d fp=0xc000f23fe0 sp=0xc000f23f50 pc=0x44b47d
runtime.goexit({})
/opt/hostedtoolcache/go/1.25.0/x64/src/runtime/asm_amd64.s:1693 +0x1 fp=0xc000f23fe8 sp=0xc000f23fe0 pc=0x48a761
goroutine 2 gp=0xc0000028c0 m=nil [force gc (idle), 2 minutes]:
runtime.gopark(0x0?, 0x0?, 0x0?, 0x0?, 0x0?)
/opt/hostedtoolcache/go/1.25.0/x64/src/runtime/proc.go:460 +0xce fp=0xc0000f2fa8 sp=0xc0000f2f88 pc=0x481e2e
runtime.goparkunlock(...)
/opt/hostedtoolcache/go/1.25.0/x64/src/runtime/proc.go:466
runtime.forcegchelper()
/opt/hostedtoolcache/go/1.25.0/x64/src/runtime/proc.go:373 +0xb3 fp=0xc0000f2fe0 sp=0xc0000f2fa8 pc=0x44b7b3
runtime.goexit({})
/opt/hostedtoolcache/go/1.25.0/x64/src/runtime/asm_amd64.s:1693 +0x1 fp=0xc0000f2fe8 sp=0xc0000f2fe0 pc=0x48a761
created by runtime.init.7 in goroutine 1
/opt/hostedtoolcache/go/1.25.0/x64/src/runtime/proc.go:361 +0x1a
goroutine 3 gp=0xc000002e00 m=nil [GC sweep wait]:
runtime.gopark(0x1?, 0x0?, 0x0?, 0x0?, 0x0?)
/opt/hostedtoolcache/go/1.25.0/x64/src/runtime/proc.go:460 +0xce fp=0xc0000f3780 sp=0xc0000f3760 pc=0x481e2e
runtime.goparkunlock(...)
/opt/hostedtoolcache/go/1.25.0/x64/src/runtime/proc.go:466
runtime.bgsweep(0xc0000c6100)
/opt/hostedtoolcache/go/1.25.0/x64/src/runtime/mgcsweep.go:323 +0xdf fp=0xc0000f37c8 sp=0xc0000f3780 pc=0x4327ff
runtime.gcenable.gowrap1()
/opt/hostedtoolcache/go/1.25.0/x64/src/runtime/mgc.go:212 +0x25 fp=0xc0000f37e0 sp=0xc0000f37c8 pc=0x4267e5
runtime.goexit({})
/opt/hostedtoolcache/go/1.25.0/x64/src/runtime/asm_amd64.s:1693 +0x1 fp=0xc0000f37e8 sp=0xc0000f37e0 pc=0x48a761
created by runtime.gcenable in goroutine 1
/opt/hostedtoolcache/go/1.25.0/x64/src/runtime/mgc.go:212 +0x66
goroutine 4 gp=0xc000002fc0 m=nil [GC scavenge wait]:
runtime.gopark(0x10000?, 0x1296b04a?, 0x0?, 0x0?, 0x0?)
/opt/hostedtoolcache/go/1.25.0/x64/src/runtime/proc.go:460 +0xce fp=0xc0000f3f78 sp=0xc0000f3f58 pc=0x481e2e
runtime.goparkunlock(...)
/opt/hostedtoolcache/go/1.25.0/x64/src/runtime/proc.go:466
runtime.(*scavengerState).park(0xb175b60)
/opt/hostedtoolcache/go/1.25.0/x64/src/runtime/mgcscavenge.go:425 +0x49 fp=0xc0000f3fa8 sp=0xc0000f3f78 pc=0x430269
runtime.bgscavenge(0xc0000c6100)
/opt/hostedtoolcache/go/1.25.0/x64/src/runtime/mgcscavenge.go:658 +0x59 fp=0xc0000f3fc8 sp=0xc0000f3fa8 pc=0x430819
runtime.gcenable.gowrap2()
/opt/hostedtoolcache/go/1.25.0/x64/src/runtime/mgc.go:213 +0x25 fp=0xc0000f3fe0 sp=0xc0000f3fc8 pc=0x426785
runtime.goexit({})
/opt/hostedtoolcache/go/1.25.0/x64/src/runtime/asm_amd64.s:1693 +0x1 fp=0xc0000f3fe8 sp=0xc0000f3fe0 pc=0x48a761
created by runtime.gcenable in goroutine 1
/opt/hostedtoolcache/go/1.25.0/x64/src/runtime/mgc.go:213 +0xa5
goroutine 17 gp=0xc000122000 m=nil [GOMAXPROCS updater (idle), 2 minutes]:
runtime.gopark(0x0?, 0x0?, 0x0?, 0x0?, 0x0?)
/opt/hostedtoolcache/go/1.25.0/x64/src/runtime/proc.go:460 +0xce fp=0xc0000ee788 sp=0xc0000ee768 pc=0x481e2e
runtime.goparkunlock(...)
/opt/hostedtoolcache/go/1.25.0/x64/src/runtime/proc.go:466
runtime.updateMaxProcsGoroutine()
/opt/hostedtoolcache/go/1.25.0/x64/src/runtime/proc.go:6706 +0xe7 fp=0xc0000ee7e0 sp=0xc0000ee788 pc=0x459787
runtime.goexit({})
/opt/hostedtoolcache/go/1.25.0/x64/src/runtime/asm_amd64.s:1693 +0x1 fp=0xc0000ee7e8 sp=0xc0000ee7e0 pc=0x48a761
created by runtime.defaultGOMAXPROCSUpdateEnable in goroutine 1
/opt/hostedtoolcache/go/1.25.0/x64/src/runtime/proc.go:6694 +0x37
goroutine 18 gp=0xc0001221c0 m=nil [finalizer wait, 2 minutes]:
runtime.gopark(0x45a755?, 0x42f75c?, 0xc0?, 0x50?, 0x490013?)
/opt/hostedtoolcache/go/1.25.0/x64/src/runtime/proc.go:460 +0xce fp=0xc0000f2620 sp=0xc0000f2600 pc=0x481e2e
runtime.runFinalizers()
/opt/hostedtoolcache/go/1.25.0/x64/src/runtime/mfinal.go:210 +0x107 fp=0xc0000f27e0 sp=0xc0000f2620 pc=0x4256e7
runtime.goexit({})
/opt/hostedtoolcache/go/1.25.0/x64/src/runtime/asm_amd64.s:1693 +0x1 fp=0xc0000f27e8 sp=0xc0000f27e0 pc=0x48a761
created by runtime.createfing in goroutine 1
/opt/hostedtoolcache/go/1.25.0/x64/src/runtime/mfinal.go:172 +0x3d
goroutine 19 gp=0xc0001228c0 m=nil [GC worker (idle)]:
runtime.gopark(0x3d785cc087f?, 0x0?, 0x0?, 0x0?, 0x0?)
/opt/hostedtoolcache/go/1.25.0/x64/src/runtime/proc.go:460 +0xce fp=0xc0014c4f38 sp=0xc0014c4f18 pc=0x481e2e
runtime.gcBgMarkWorker(0xc000127f80)
/opt/hostedtoolcache/go/1.25.0/x64/src/runtime/mgc.go:1463 +0xeb fp=0xc0014c4fc8 sp=0xc0014c4f38 pc=0x428ecb
runtime.gcBgMarkStartWorkers.gowrap1()
/opt/hostedtoolcache/go/1.25.0/x64/src/runtime/mgc.go:1373 +0x25 fp=0xc0014c4fe0 sp=0xc0014c4fc8 pc=0x428da5
runtime.goexit({})
/opt/hostedtoolcache/go/1.25.0/x64/src/runtime/asm_amd64.s:1693 +0x1 fp=0xc0014c4fe8 sp=0xc0014c4fe0 pc=0x48a761
created by runtime.gcBgMarkStartWorkers in goroutine 1
/opt/hostedtoolcache/go/1.25.0/x64/src/runtime/mgc.go:1373 +0x105
goroutine 5 gp=0xc000003500 m=nil [GC worker (idle)]:
runtime.gopark(0x3d785cb74ca?, 0x0?, 0x0?, 0x0?, 0x0?)
/opt/hostedtoolcache/go/1.25.0/x64/src/runtime/proc.go:460 +0xce fp=0xc0000f4f38 sp=0xc0000f4f18 pc=0x481e2e
runtime.gcBgMarkWorker(0xc000127f80)
/opt/hostedtoolcache/go/1.25.0/x64/src/runtime/mgc.go:1463 +0xeb fp=0xc0000f4fc8 sp=0xc0000f4f38 pc=0x428ecb
runtime.gcBgMarkStartWorkers.gowrap1()
/opt/hostedtoolcache/go/1.25.0/x64/src/runtime/mgc.go:1373 +0x25 fp=0xc0000f4fe0 sp=0xc0000f4fc8 pc=0x428da5
runtime.goexit({})
/opt/hostedtoolcache/go/1.25.0/x64/src/runtime/asm_amd64.s:1693 +0x1 fp=0xc0000f4fe8 sp=0xc0000f4fe0 pc=0x48a761
created by runtime.gcBgMarkStartWorkers in goroutine 1
/opt/hostedtoolcache/go/1.25.0/x64/src/runtime/mgc.go:1373 +0x105
goroutine 6 gp=0xc000123c00 m=nil [select]:
runtime.gopark(0xc0000f4778?, 0x3?, 0x28?, 0x46?, 0xc0000f4772?)
/opt/hostedtoolcache/go/1.25.0/x64/src/runtime/proc.go:460 +0xce fp=0xc0000f45f8 sp=0xc0000f45d8 pc=0x481e2e
runtime.selectgo(0xc0000f4778, 0xc0000f476c, 0xc0000b2100?, 0x0, 0x1000000?, 0x1)
/opt/hostedtoolcache/go/1.25.0/x64/src/runtime/select.go:351 +0x845 fp=0xc0000f4738 sp=0xc0000f45f8 pc=0x45e545
go.opencensus.io/stats/view.(*worker).start(0xc0000b2100)
/home/runner/go/pkg/mod/go.opencensus.io@v0.24.0/stats/view/worker.go:292 +0x9f fp=0xc0000f47c8 sp=0xc0000f4738 pc=0x17c54ff
go.opencensus.io/stats/view.init.0.gowrap1()
/home/runner/go/pkg/mod/go.opencensus.io@v0.24.0/stats/view/worker.go:34 +0x25 fp=0xc0000f47e0 sp=0xc0000f47c8 pc=0x17c4865
runtime.goexit({})
/opt/hostedtoolcache/go/1.25.0/x64/src/runtime/asm_amd64.s:1693 +0x1 fp=0xc0000f47e8 sp=0xc0000f47e0 pc=0x48a761
created by go.opencensus.io/stats/view.init.0 in goroutine 1
/home/runner/go/pkg/mod/go.opencensus.io@v0.24.0/stats/view/worker.go:34 +0x8d
goroutine 7 gp=0xc0006ce000 m=nil [cleanup wait, 2 minutes]:
runtime.gopark(0x0?, 0x0?, 0x0?, 0x0?, 0x0?)
/opt/hostedtoolcache/go/1.25.0/x64/src/runtime/proc.go:460 +0xce fp=0xc0000f5f68 sp=0xc0000f5f48 pc=0x481e2e
runtime.goparkunlock(...)
/opt/hostedtoolcache/go/1.25.0/x64/src/runtime/proc.go:466
runtime.(*cleanupQueue).dequeue(0xb1768e0)
/opt/hostedtoolcache/go/1.25.0/x64/src/runtime/mcleanup.go:439 +0xc5 fp=0xc0000f5fa0 sp=0xc0000f5f68 pc=0x4223e5
runtime.runCleanups()
/opt/hostedtoolcache/go/1.25.0/x64/src/runtime/mcleanup.go:635 +0x45 fp=0xc0000f5fe0 sp=0xc0000f5fa0 pc=0x422aa5
runtime.goexit({})
/opt/hostedtoolcache/go/1.25.0/x64/src/runtime/asm_amd64.s:1693 +0x1 fp=0xc0000f5fe8 sp=0xc0000f5fe0 pc=0x48a761
created by runtime.(*cleanupQueue).createGs in goroutine 1
/opt/hostedtoolcache/go/1.25.0/x64/src/runtime/mcleanup.go:589 +0xa5
goroutine 56 gp=0xc001434700 m=nil [select]:
runtime.gopark(0xc00012efb0?, 0x2?, 0x70?, 0xee?, 0xc00012ef8c?)
/opt/hostedtoolcache/go/1.25.0/x64/src/runtime/proc.go:460 +0xce fp=0xc00012ee18 sp=0xc00012edf8 pc=0x481e2e
runtime.selectgo(0xc00012efb0, 0xc00012ef88, 0xb174f40?, 0x0, 0xd97374bff3321614?, 0x1)
/opt/hostedtoolcache/go/1.25.0/x64/src/runtime/select.go:351 +0x845 fp=0xc00012ef58 sp=0xc00012ee18 pc=0x45e545
atomicgo.dev/schedule.Every.func1()
/home/runner/go/pkg/mod/atomicgo.dev/schedule@v0.1.0/schedule.go:104 +0x7e fp=0xc00012efe0 sp=0xc00012ef58 pc=0xa8b0de
runtime.goexit({})
/opt/hostedtoolcache/go/1.25.0/x64/src/runtime/asm_amd64.s:1693 +0x1 fp=0xc00012efe8 sp=0xc00012efe0 pc=0x48a761
created by atomicgo.dev/schedule.Every in goroutine 1
/home/runner/go/pkg/mod/atomicgo.dev/schedule@v0.1.0/schedule.go:102 +0x14c
goroutine 64 gp=0xc001434c40 m=nil [IO wait]:
runtime.gopark(0xc001fc5760?, 0x0?, 0x6?, 0x3e?, 0xb?)
/opt/hostedtoolcache/go/1.25.0/x64/src/runtime/proc.go:460 +0xce fp=0xc0018cf6f8 sp=0xc0018cf6d8 pc=0x481e2e
runtime.netpollblock(0x4abc58?, 0x4132c6?, 0x0?)
/opt/hostedtoolcache/go/1.25.0/x64/src/runtime/netpoll.go:575 +0xf7 fp=0xc0018cf730 sp=0xc0018cf6f8 pc=0x443cd7
internal/poll.runtime_pollWait(0x7b521d45e400, 0x72)
/opt/hostedtoolcache/go/1.25.0/x64/src/runtime/netpoll.go:351 +0x85 fp=0xc0018cf750 sp=0xc0018cf730 pc=0x481005
internal/poll.(*pollDesc).wait(0xc000e9c200?, 0xc000470d80?, 0x0)
/opt/hostedtoolcache/go/1.25.0/x64/src/internal/poll/fd_poll_runtime.go:84 +0x27 fp=0xc0018cf778 sp=0xc0018cf750 pc=0x515b27
internal/poll.(*pollDesc).waitRead(...)
/opt/hostedtoolcache/go/1.25.0/x64/src/internal/poll/fd_poll_runtime.go:89
internal/poll.(*FD).Read(0xc000e9c200, {0xc000470d80, 0xd80, 0xd80})
/opt/hostedtoolcache/go/1.25.0/x64/src/internal/poll/fd_unix.go:165 +0x279 fp=0xc0018cf810 sp=0xc0018cf778 pc=0x516e19
net.(*netFD).Read(0xc000e9c200, {0xc000470d80?, 0x1d?, 0x47f54c?})
/opt/hostedtoolcache/go/1.25.0/x64/src/net/fd_posix.go:68 +0x25 fp=0xc0018cf858 sp=0xc0018cf810 pc=0x622de5
net.(*conn).Read(0xc000132fd8, {0xc000470d80?, 0x7b521d0828f0?, 0x7b5263f2a108?})
/opt/hostedtoolcache/go/1.25.0/x64/src/net/net.go:196 +0x45 fp=0xc0018cf8a0 sp=0xc0018cf858 pc=0x632f25
crypto/tls.(*atLeastReader).Read(0xc00133fe18, {0xc000470d80?, 0xf?, 0x2?})
/opt/hostedtoolcache/go/1.25.0/x64/src/crypto/tls/conn.go:816 +0x3b fp=0xc0018cf8e8 sp=0xc0018cf8a0 pc=0x69aa3b
bytes.(*Buffer).ReadFrom(0xc0009842a8, {0x760d000, 0xc00133fe18})
/opt/hostedtoolcache/go/1.25.0/x64/src/bytes/buffer.go:217 +0x98 fp=0xc0018cf940 sp=0xc0018cf8e8 pc=0x54e6d8
crypto/tls.(*Conn).readFromUntil(0xc000984008, {0x760b580, 0xc000132fd8}, 0x4471b4?)
/opt/hostedtoolcache/go/1.25.0/x64/src/crypto/tls/conn.go:838 +0xde fp=0xc0018cf978 sp=0xc0018cf940 pc=0x69ac1e
crypto/tls.(*Conn).readRecordOrCCS(0xc000984008, 0x0)
/opt/hostedtoolcache/go/1.25.0/x64/src/crypto/tls/conn.go:627 +0x3db fp=0xc0018cfbf0 sp=0xc0018cf978 pc=0x697c9b
crypto/tls.(*Conn).readRecord(...)
/opt/hostedtoolcache/go/1.25.0/x64/src/crypto/tls/conn.go:589
crypto/tls.(*Conn).Read(0xc000984008, {0xc000644000, 0x1000, 0x6314546?})
/opt/hostedtoolcache/go/1.25.0/x64/src/crypto/tls/conn.go:1392 +0x145 fp=0xc0018cfc58 sp=0xc0018cfbf0 pc=0x69e545
bufio.(*Reader).Read(0xc0008c9e60, {0xc001d7e3c0, 0x9, 0xc8?})
/opt/hostedtoolcache/go/1.25.0/x64/src/bufio/bufio.go:245 +0x197 fp=0xc0018cfc90 sp=0xc0018cfc58 pc=0x554d37
io.ReadAtLeast({0x760a440, 0xc0008c9e60}, {0xc001d7e3c0, 0x9, 0x9}, 0x9)
/opt/hostedtoolcache/go/1.25.0/x64/src/io/io.go:335 +0x8e fp=0xc0018cfcd8 sp=0xc0018cfc90 pc=0x49ac0e
io.ReadFull(...)
/opt/hostedtoolcache/go/1.25.0/x64/src/io/io.go:354
net/http.http2readFrameHeader({0xc001d7e3c0, 0x9, 0xc001435880?}, {0x760a440?, 0xc0008c9e60?})
/opt/hostedtoolcache/go/1.25.0/x64/src/net/http/h2_bundle.go:1811 +0x65 fp=0xc0018cfd28 sp=0xc0018cfcd8 pc=0x72be45
net/http.(*http2Framer).ReadFrame(0xc001d7e380)
/opt/hostedtoolcache/go/1.25.0/x64/src/net/http/h2_bundle.go:2078 +0x7d fp=0xc0018cfe10 sp=0xc0018cfd28 pc=0x72c51d
net/http.(*http2clientConnReadLoop).run(0xc0018cffa8)
/opt/hostedtoolcache/go/1.25.0/x64/src/net/http/h2_bundle.go:9539 +0xda fp=0xc0018cff60 sp=0xc0018cfe10 pc=0x74f6ba
net/http.(*http2ClientConn).readLoop(0xc001fa6c40)
/opt/hostedtoolcache/go/1.25.0/x64/src/net/http/h2_bundle.go:9408 +0x79 fp=0xc0018cffc8 sp=0xc0018cff60 pc=0x74ea39
net/http.(*http2Transport).newClientConn.gowrap1()
/opt/hostedtoolcache/go/1.25.0/x64/src/net/http/h2_bundle.go:8192 +0x25 fp=0xc0018cffe0 sp=0xc0018cffc8 pc=0x748765
runtime.goexit({})
/opt/hostedtoolcache/go/1.25.0/x64/src/runtime/asm_amd64.s:1693 +0x1 fp=0xc0018cffe8 sp=0xc0018cffe0 pc=0x48a761
created by net/http.(*http2Transport).newClientConn in goroutine 63
/opt/hostedtoolcache/go/1.25.0/x64/src/net/http/h2_bundle.go:8192 +0xde5
goroutine 68 gp=0xc001434e00 m=nil [select]:
runtime.gopark(0xc0008b3958?, 0x2?, 0xc0?, 0x50?, 0xc0008b391c?)
/opt/hostedtoolcache/go/1.25.0/x64/src/runtime/proc.go:460 +0xce fp=0xc0008b37a8 sp=0xc0008b3788 pc=0x481e2e
runtime.selectgo(0xc0008b3958, 0xc0008b3918, 0xb1b50c0?, 0x0, 0x41d154?, 0x1)
/opt/hostedtoolcache/go/1.25.0/x64/src/runtime/select.go:351 +0x845 fp=0xc0008b38e8 sp=0xc0008b37a8 pc=0x45e545
golang.org/x/sync/semaphore.(*Weighted).Acquire(0xc001d7cd20, {0x767c388, 0xc000922410}, 0x1)
/home/runner/go/pkg/mod/golang.org/x/sync@v0.18.0/semaphore/semaphore.go:74 +0x333 fp=0xc0008b3998 sp=0xc0008b38e8 pc=0x592f53
oras.land/oras-go/v2/internal/syncutil.(*LimitedRegion).Start(0xc001deac60)
/home/runner/go/pkg/mod/oras.land/oras-go/v2@v2.6.0/internal/syncutil/limit.go:49 +0x36 fp=0xc0008b39c8 sp=0xc0008b3998 pc=0x987eb6
oras.land/oras-go/v2/internal/syncutil.Go[...]({0x767c388, 0xc000922190?}, 0xc001d7cd20?, 0xc0013a07e0, {0xc000c95008, 0x18, 0x0})
/home/runner/go/pkg/mod/oras.land/oras-go/v2@v2.6.0/internal/syncutil/limit.go:76 +0x273 fp=0xc0008b3b68 sp=0xc0008b39c8 pc=0x98a833
oras.land/oras-go/v2.copyGraph.func1({0x767c388, 0xc000922190}, 0xc001dea220, {{0xc0007ee0c0, 0x22}, {0xc0000c4b40, 0x47}, 0x1b34, {0x0, 0x0, ...}, ...})
/home/runner/go/pkg/mod/oras.land/oras-go/v2@v2.6.0/copy.go:252 +0x815 fp=0xc0008b3e68 sp=0xc0008b3b68 pc=0x9c4f55
oras.land/oras-go/v2/internal/syncutil.Go[...].func1.func2()
/home/runner/go/pkg/mod/oras.land/oras-go/v2@v2.6.0/internal/syncutil/limit.go:94 +0x11a fp=0xc0008b3f78 sp=0xc0008b3e68 pc=0x98ab3a
golang.org/x/sync/errgroup.(*Group).Go.func1()
/home/runner/go/pkg/mod/golang.org/x/sync@v0.18.0/errgroup/errgroup.go:93 +0x50 fp=0xc0008b3fe0 sp=0xc0008b3f78 pc=0x591710
runtime.goexit({})
/opt/hostedtoolcache/go/1.25.0/x64/src/runtime/asm_amd64.s:1693 +0x1 fp=0xc0008b3fe8 sp=0xc0008b3fe0 pc=0x48a761
created by golang.org/x/sync/errgroup.(*Group).Go in goroutine 66
/home/runner/go/pkg/mod/golang.org/x/sync@v0.18.0/errgroup/errgroup.go:78 +0x95
goroutine 96 gp=0xc001434fc0 m=nil [select]:
runtime.gopark(0xc0018d5958?, 0x2?, 0x3e?, 0xf4?, 0xc0018d591c?)
/opt/hostedtoolcache/go/1.25.0/x64/src/runtime/proc.go:460 +0xce fp=0xc0018d57a8 sp=0xc0018d5788 pc=0x481e2e
runtime.selectgo(0xc0018d5958, 0xc0018d5918, 0xb1b50c0?, 0x0, 0x41d154?, 0x1)
/opt/hostedtoolcache/go/1.25.0/x64/src/runtime/select.go:351 +0x845 fp=0xc0018d58e8 sp=0xc0018d57a8 pc=0x45e545
golang.org/x/sync/semaphore.(*Weighted).Acquire(0xc001d7cd20, {0x767c388, 0xc001d7c0f0}, 0x1)
/home/runner/go/pkg/mod/golang.org/x/sync@v0.18.0/semaphore/semaphore.go:74 +0x333 fp=0xc0018d5998 sp=0xc0018d58e8 pc=0x592f53
oras.land/oras-go/v2/internal/syncutil.(*LimitedRegion).Start(0xc001fc4b80)
/home/runner/go/pkg/mod/oras.land/oras-go/v2@v2.6.0/internal/syncutil/limit.go:49 +0x36 fp=0xc0018d59c8 sp=0xc0018d5998 pc=0x987eb6
oras.land/oras-go/v2/internal/syncutil.Go[...]({0x767c388, 0xc000922190?}, 0xc001d7cd20?, 0xc0013a07e0, {0xc001107808, 0xc, 0x0})
/home/runner/go/pkg/mod/oras.land/oras-go/v2@v2.6.0/internal/syncutil/limit.go:76 +0x273 fp=0xc0018d5b68 sp=0xc0018d59c8 pc=0x98a833
oras.land/oras-go/v2.copyGraph.func1({0x767c388, 0xc000922190}, 0xc001dea000, {{0xc0007ee2a0, 0x22}, {0xc0000c5270, 0x47}, 0xdcc, {0x0, 0x0, ...}, ...})
/home/runner/go/pkg/mod/oras.land/oras-go/v2@v2.6.0/copy.go:252 +0x815 fp=0xc0018d5e68 sp=0xc0018d5b68 pc=0x9c4f55
oras.land/oras-go/v2/internal/syncutil.Go[...].func1.func2()
/home/runner/go/pkg/mod/oras.land/oras-go/v2@v2.6.0/internal/syncutil/limit.go:94 +0x11a fp=0xc0018d5f78 sp=0xc0018d5e68 pc=0x98ab3a
golang.org/x/sync/errgroup.(*Group).Go.func1()
/home/runner/go/pkg/mod/golang.org/x/sync@v0.18.0/errgroup/errgroup.go:93 +0x50 fp=0xc0018d5fe0 sp=0xc0018d5f78 pc=0x591710
runtime.goexit({})
/opt/hostedtoolcache/go/1.25.0/x64/src/runtime/asm_amd64.s:1693 +0x1 fp=0xc0018d5fe8 sp=0xc0018d5fe0 pc=0x48a761
created by golang.org/x/sync/errgroup.(*Group).Go in goroutine 66
/home/runner/go/pkg/mod/golang.org/x/sync@v0.18.0/errgroup/errgroup.go:78 +0x95
goroutine 66 gp=0xc001435340 m=nil [sync.WaitGroup.Wait]:
runtime.gopark(0xc0018d3940?, 0x41d154?, 0x40?, 0xd4?, 0xb1b50c0?)
/opt/hostedtoolcache/go/1.25.0/x64/src/runtime/proc.go:460 +0xce fp=0xc0018d38e0 sp=0xc0018d38c0 pc=0x481e2e
runtime.goparkunlock(...)
/opt/hostedtoolcache/go/1.25.0/x64/src/runtime/proc.go:466
runtime.semacquire1(0xc000eee1d0, 0x0, 0x1, 0x0, 0x19)
/opt/hostedtoolcache/go/1.25.0/x64/src/runtime/sema.go:192 +0x21d fp=0xc0018d3948 sp=0xc0018d38e0 pc=0x45f69d
sync.runtime_SemacquireWaitGroup(0xc00133f8a8?, 0x40?)
/opt/hostedtoolcache/go/1.25.0/x64/src/runtime/sema.go:114 +0x2e fp=0xc0018d3980 sp=0xc0018d3948 pc=0x483a6e
sync.(*WaitGroup).Wait(0xc000eee1c8)
/opt/hostedtoolcache/go/1.25.0/x64/src/sync/waitgroup.go:206 +0x85 fp=0xc0018d39a8 sp=0xc0018d3980 pc=0x496985
golang.org/x/sync/errgroup.(*Group).Wait(0xc000eee1c0)
/home/runner/go/pkg/mod/golang.org/x/sync@v0.18.0/errgroup/errgroup.go:56 +0x1e fp=0xc0018d39c8 sp=0xc0018d39a8 pc=0x5915be
oras.land/oras-go/v2/internal/syncutil.Go[...]({0x767c388, 0xc001d7cdc0?}, 0xc001d7cd20?, 0xc0013a07e0, {0xc001106008, 0xe, 0x0})
/home/runner/go/pkg/mod/oras.land/oras-go/v2@v2.6.0/internal/syncutil/limit.go:103 +0x395 fp=0xc0018d3b68 sp=0xc0018d39c8 pc=0x98a955
oras.land/oras-go/v2.copyGraph.func1({0x767c388, 0xc001d7cdc0}, 0xc001fc58e0, {{0xc000f715c0, 0x2a}, {0xc0008d51d0, 0x47}, 0x903, {0x0, 0x0, ...}, ...})
/home/runner/go/pkg/mod/oras.land/oras-go/v2@v2.6.0/copy.go:252 +0x815 fp=0xc0018d3e68 sp=0xc0018d3b68 pc=0x9c4f55
oras.land/oras-go/v2/internal/syncutil.Go[...].func1.func2()
/home/runner/go/pkg/mod/oras.land/oras-go/v2@v2.6.0/internal/syncutil/limit.go:94 +0x11a fp=0xc0018d3f78 sp=0xc0018d3e68 pc=0x98ab3a
golang.org/x/sync/errgroup.(*Group).Go.func1()
/home/runner/go/pkg/mod/golang.org/x/sync@v0.18.0/errgroup/errgroup.go:93 +0x50 fp=0xc0018d3fe0 sp=0xc0018d3f78 pc=0x591710
runtime.goexit({})
/opt/hostedtoolcache/go/1.25.0/x64/src/runtime/asm_amd64.s:1693 +0x1 fp=0xc0018d3fe8 sp=0xc0018d3fe0 pc=0x48a761
created by golang.org/x/sync/errgroup.(*Group).Go in goroutine 1
/home/runner/go/pkg/mod/golang.org/x/sync@v0.18.0/errgroup/errgroup.go:78 +0x95
ERROR: [2025-12-09 19:12:14] failed to push artifact {
"error": "exit status 2"
}
panic: exiting
goroutine 1 [running]:
zzzz.dcs1.dso.mil/yyyy/pipelines/dco-ci/build.Build({{0xc00004e1ce, 0x28}, {0x0, 0x0}, {0x0, 0x0}, {0x0, 0x0}, {0xc00004e30f, 0x28}, ...})
/builds/yyyy/platforms/xxxx/xxxx-elk/dco-ci-repo/build/build.go:137 +0xb38
zzzz.dcs1.dso.mil/yyyy/pipelines/dco-ci/cmd.(*buildOptions).run(0xe451b66c35e0a9cb?, 0xc0002163e8?, {0x0?, 0x0?, 0x0?})
/builds/yyyy/platforms/xxxx/xxxx-elk/dco-ci-repo/cmd/build.go:71 +0x198
github.com/spf13/cobra.(*Command).execute(0xc0001b9b08, {0x224f2c0, 0x0, 0x0})
/tmp/go/pkg/mod/github.com/spf13/cobra@v1.9.1/command.go:1015 +0xb02
github.com/spf13/cobra.(*Command).ExecuteC(0xc0001b9808)
/tmp/go/pkg/mod/github.com/spf13/cobra@v1.9.1/command.go:1148 +0x465
github.com/spf13/cobra.(*Command).Execute(...)
/tmp/go/pkg/mod/github.com/spf13/cobra@v1.9.1/command.go:1071
zzzz.dcs1.dso.mil/yyyy/pipelines/dco-ci/cmd.Execute()
/builds/yyyy/platforms/xxxx/xxxx-elk/dco-ci-repo/cmd/root.go:47 +0x1a
main.main()
/builds/yyyy/platforms/xxxx/xxxx-elk/dco-ci-repo/main.go:38 +0x4ac
Severity/Priority
UDS causes panic, seems kinda high
Additional Context
Add any other context or screenshots about the technical debt here.
Possible solution
// roundTrip calls base roundtrip while keeping track of the current request.
// this is currently only used to track the progress of publishes, not pulls.
func (t *Transport) roundTrip(req *http.Request) (resp *http.Response, err error) {
if req.Method != http.MethodHead && req.Body != nil && t.ProgressBar != nil {
req.Body = io.NopCloser(io.TeeReader(req.Body, t.ProgressBar))
}
resp, err = t.Base.RoundTrip(req)
if resp != nil && req.Method == http.MethodHead && err == nil && t.ProgressBar != nil {
if resp.ContentLength > 0 {
// Write progress in chunks to avoid allocating a large byte slice
const chunkSize = 8192 // 8KB chunks
remaining := resp.ContentLength
buf := make([]byte, chunkSize)
for remaining > 0 {
writeSize := chunkSize
if remaining < int64(chunkSize) {
writeSize = int(remaining)
}
_, _ = t.ProgressBar.Write(buf[:writeSize])
remaining -= int64(writeSize)
}
}
}
return resp, err
}