Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Go panic state for the environments list handler #7047

Closed
WaysonWei opened this issue Jun 9, 2022 · 2 comments
Closed

Go panic state for the environments list handler #7047

WaysonWei opened this issue Jun 9, 2022 · 2 comments
Labels
Milestone

Comments

@WaysonWei
Copy link
Collaborator

If a user manipulates environment quickly, it will cause go panic.

Example go panic txt:
`g] [endpoint_id: 6] [status: ACTIVE] [status_time_seconds: 251.393900] [message: environment tunnel monitoring]"
level=info msg="2022/05/11 00:04:25 [DEBUG] [chisel,monitoring] [endpoint_id: 6] [status: ACTIVE] [status_time_seconds: 261.394322] [message: environment tunnel monitoring]"
level=info msg="2022/05/11 00:04:35 [DEBUG] [chisel,monitoring] [endpoint_id: 6] [status: ACTIVE] [status_time_seconds: 271.394960] [message: environment tunnel monitoring]"
level=info msg="2022/05/11 00:04:35 [DEBUG] [chisel,monitoring] [endpoint_id: 6] [status: ACTIVE] [status_time_seconds: 271.394960] [timeout_seconds: 270.000000] [message: ACTIVE state timeout exceeded]"
2022/05/11 00:04:39 server: proxy#1:R:0.0.0.0:49259=>172.17.0.3:9001: Closed
level=info msg="Create EdgeAsyncCommand" command="&{7 edgeJob 6 1652230565 false remove /edgejob/2 }"
level=info msg="Create EdgeAsyncCommand" command="&{8 edgeJob 6 1652230582 false add /edgejob/3 0xc000d08300}"
fatal error: concurrent map writes

goroutine 6998 [running]:
runtime.throw({0x228b8a9, 0x2074120})
/usr/local/go/src/runtime/panic.go:1198 +0x71 fp=0xc000862ce0 sp=0xc000862cb0 pc=0x4346d1
runtime.mapassign_fast64(0x1efc060, 0xc000e69140, 0x1)
/usr/local/go/src/runtime/map_fast64.go:176 +0x2b4 fp=0xc000862d18 sp=0xc000862ce0 pc=0x411834
github.com/portainer/portainer-ee/api/http/handler/endpoints.(*Handler).endpointList(0xc00022f500, {0x7fbba45a5cf8, 0xc00000fca8}, 0xc001121168)
/Users/a./work/portainer-ee/api/http/handler/endpoints/endpoint_list.go:99 +0x1071 fp=0xc000863120 sp=0xc000862d18 pc=0x1ac68d1
github.com/portainer/portainer-ee/api/http/handler/endpoints.(*Handler).endpointList-fm({0x7fbba45a5cf8, 0xc00000fca8}, 0xc00000fca8)
/Users/a./work/portainer-ee/api/http/handler/endpoints/endpoint_list.go:56 +0x3c fp=0xc000863150 sp=0xc000863120 pc=0x1ad1c3c
github.com/portainer/libhttp/error.LoggerHandler.ServeHTTP(0xc000c29900, {0x7fbba45a5cf8, 0xc00000fca8}, 0xc001121210)
/Users/a./go/pkg/mod/github.com/portainer/libhttp@v0.0.0-20211208103139-07a5f798eb3f/error/error.go:22 +0x2f fp=0xc000863178 sp=0xc000863150 pc=0x14ddeaf
github.com/portainer/portainer-ee/api/http/useractivity.LogUserActivityWithContext.func1.1({0x26ea830, 0xc000c21500}, 0xc000c29900)
/Users/a./work/portainer-ee/api/http/useractivity/useractivity.go:36 +0x166 fp=0xc000863220 sp=0xc000863178 pc=0x151b966
net/http.HandlerFunc.ServeHTTP(0xc000bc4510, {0x26ea830, 0xc000c21500}, 0xc001121268)
/usr/local/go/src/net/http/server.go:2047 +0x2f fp=0xc000863248 sp=0xc000863220 pc=0x79b40f
github.com/portainer/portainer-ee/api/http/security.(*RequestBouncer).mwUpgradeToRestrictedRequest.func1({0x26ea830, 0xc000c21500}, 0xc000c29800)
/Users/a./work/portainer-ee/api/http/security/bouncer.go:317 +0x274 fp=0xc000863308 sp=0xc000863248 pc=0x14e42d4
net/http.HandlerFunc.ServeHTTP(0xc001121358, {0x26ea830, 0xc000c21500}, 0x1412b59)
/usr/local/go/src/net/http/server.go:2047 +0x2f fp=0xc000863330 sp=0xc000863308 pc=0x79b40f
github.com/portainer/portainer-ee/api/http/security.(*RequestBouncer).mwCheckPortainerAuthorizations.func1({0x26ea830, 0xc000c21500}, 0xc000c29800)
/Users/a./work/portainer-ee/api/http/security/bouncer.go:272 +0x3b2 fp=0xc000863460 sp=0xc000863330 pc=0x14e3e92
net/http.HandlerFunc.ServeHTTP(0xc000ee4090, {0x26ea830, 0xc000c21500}, 0xc001121520)
/usr/local/go/src/net/http/server.go:2047 +0x2f fp=0xc000863488 sp=0xc000863460 pc=0x79b40f
github.com/portainer/portainer-ee/api/http/security.(*RequestBouncer).mwCheckLicense.func1({0x26ea830, 0xc000c21500}, 0xc000cd9f01)
/Users/a./work/portainer-ee/api/http/security/bouncer.go:245 +0x17a fp=0xc000863530 sp=0xc000863488 pc=0x14e393a
net/http.HandlerFunc.ServeHTTP(0xc000949f70, {0x26ea830, 0xc000c21500}, 0x40cf14)
/usr/local/go/src/net/http/server.go:2047 +0x2f fp=0xc000863558 sp=0xc000863530 pc=0x79b40f
github.com/portainer/portainer-ee/api/http/security.(*RequestBouncer).mwAuthenticateFirst.func1({0x26ea830, 0xc000c21500}, 0xc000c29700)
/Users/a./work/portainer-ee/api/http/security/bouncer.go:347 +0x334 fp=0xc000863638 sp=0xc000863558 pc=0x14e48b4
net/http.HandlerFunc.ServeHTTP(0x1e13540, {0x26ea830, 0xc000c21500}, 0x16)
/usr/local/go/src/net/http/server.go:2047 +0x2f fp=0xc000863660 sp=0xc000863638 pc=0x79b40f
github.com/portainer/portainer-ee/api/http/security.mwSecureHeaders.func1({0x26ea830, 0xc000c21500}, 0xc000cd9d10)
/Users/a./work/portainer-ee/api/http/security/bouncer.go:451 +0x1ee fp=0xc0008636e8 sp=0xc000863660 pc=0x14e548e
net/http.HandlerFunc.ServeHTTP(0xc000c29600, {0x26ea830, 0xc000c21500}, 0x0)
/usr/local/go/src/net/http/server.go:2047 +0x2f fp=0xc000863710 sp=0xc0008636e8 pc=0x79b40f
github.com/gorilla/mux.(*Router).ServeHTTP(0xc00022f440, {0x26ea830, 0xc000c21500}, 0xc000c29500)
/Users/a./go/pkg/mod/github.com/gorilla/mux@v1.8.0/mux.go:210 +0x1cf fp=0xc000863838 sp=0xc000863710 pc=0x14edccf
github.com/portainer/portainer-ee/api/http/handler/endpoints.(*Handler).ServeHTTP(0xc00022f500, {0x26ea830, 0xc000c21500}, 0x10000bbcb3da108)
:1 +0x34 fp=0xc000863868 sp=0xc000863838 pc=0x1ad3394
net/http.StripPrefix.func1({0x26ea830, 0xc000c21500}, 0xc000c29400)
/usr/local/go/src/net/http/server.go:2090 +0x330 fp=0xc000863908 sp=0xc000863868 pc=0x79bb70
net/http.HandlerFunc.ServeHTTP(0x22666e4, {0x26ea830, 0xc000c21500}, 0xc00022f500)
/usr/local/go/src/net/http/server.go:2047 +0x2f fp=0xc000863930 sp=0xc000863908 pc=0x79b40f
github.com/portainer/portainer-ee/api/http/handler.(*Handler).ServeHTTP(0xc0007268c0, {0x26ea830, 0xc000c21500}, 0xc000c29400)
/Users/a./work/portainer-ee/api/http/handler/handler.go:212 +0x13b5 fp=0xc000863960 sp=0xc000863930 pc=0x1b75ad5
github.com/portainer/portainer-ee/api/http/offlinegate.(*OfflineGate).WaitingMiddleware.func1({0x26ea830, 0xc000c21500}, 0xc000c29400)
/Users/a./work/portainer-ee/api/http/offlinegate/offlinegate.go:38 +0x184 fp=0xc0008639e8 sp=0xc000863960 pc=0x16de9a4
net/http.HandlerFunc.ServeHTTP(0xc000c21540, {0x26ea830, 0xc000c21500}, 0x4faa6d)
/usr/local/go/src/net/http/server.go:2047 +0x2f fp=0xc000863a10 sp=0xc0008639e8 pc=0x79b40f
github.com/portainer/portainer-ee/api/adminmonitor.(*Monitor).WithRedirect.func1({0x26ea830, 0xc000c21500}, 0xc000c29400)
/Users/a./work/portainer-ee/api/adminmonitor/admin_monitor.go:111 +0x233 fp=0xc000863a98 sp=0xc000863a10 pc=0x16dd013
net/http.HandlerFunc.ServeHTTP(0xc000c1f8d3, {0x26ea830, 0xc000c21500}, 0x4622ce)
/usr/local/go/src/net/http/server.go:2047 +0x2f fp=0xc000863ac0 sp=0xc000863a98 pc=0x79b40f
net/http.serverHandler.ServeHTTP({0xc000cd9b60}, {0x26ea830, 0xc000c21500}, 0xc000c29400)
/usr/local/go/src/net/http/server.go:2879 +0x43b fp=0xc000863b80 sp=0xc000863ac0 pc=0x79ee3b
net/http.(*conn).serve(0xc000576a00, {0x26fc0e8, 0xc000a26600})
/usr/local/go/src/net/http/server.go:1930 +0xb08 fp=0xc000863fb8 sp=0xc000863b80 pc=0x79a4e8
net/http.(*Server).Serve·dwrap·87()
/usr/local/go/src/net/http/server.go:3034 +0x2e fp=0xc000863fe0 sp=0xc000863fb8 pc=0x79f78e
runtime.goexit()
/usr/local/go/src/runtime/asm_amd64.s:1581 +0x1 fp=0xc000863fe8 sp=0xc000863fe0 pc=0x464361
created by net/http.(*Server).Serve
/usr/local/go/src/net/http/server.go:3034 +0x4e8

goroutine 1 [IO wait, 67 minutes]:
internal/poll.runtime_pollWait(0x7fbba476e878, 0x72)
/usr/local/go/src/runtime/netpoll.go:234 +0x89
internal/poll.(*pollDesc).wait(0xc0001a6580, 0x203000, 0x0)
/usr/local/go/src/internal/poll/fd_poll_runtime.go:84 +0x32
internal/poll.(*pollDesc).waitRead(...)
/usr/local/go/src/internal/poll/fd_poll_runtime.go:89
internal/poll.(*FD).Accept(0xc0001a6580)
/usr/local/go/src/internal/poll/fd_unix.go:402 +0x22c
net.(*netFD).accept(0xc0001a6580)
/usr/local/go/src/net/fd_unix.go:173 +0x35
net.(*TCPListener).accept(0xc00000c7c8)
/usr/local/go/src/net/tcpsock_posix.go:140 +0x28
net.(*TCPListener).Accept(0xc00000c7c8)
/usr/local/go/src/net/tcpsock.go:262 +0x3d
crypto/tls.(*listener).Accept(0xc00000c7e0)
/usr/local/go/src/crypto/tls/tls.go:66 +0x2d
net/http.(*Server).Serve(0xc0001b47e0, {0x26deda0, 0xc00000c7e0})
/usr/local/go/src/net/http/server.go:3002 +0x394
net/http.(*Server).ServeTLS(0xc0001b47e0, {0x26ea620, 0xc00000c7c8}, {0x0, 0x30}, {0x0, 0x0})
/usr/local/go/src/net/http/server.go:3074 +0x3fe
net/http.(*Server).ListenAndServeTLS(0xc0001b47e0, {0x0, 0x0}, {0x0, 0x0})
/usr/local/go/src/net/http/server.go:3229 +0x12f
github.com/portainer/portainer-ee/api/http.(*Server).Start(0xc000a38240)
/Users/a./work/portainer-ee/api/http/server.go:386 +0x25dc
main.main()
/Users/a./work/portainer-ee/api/cmd/portainer/main.go:840 +0xc9

goroutine 19 [select]:
github.com/patrickmn/go-cache.(*janitor).Run(0xc000948150, 0xc0003c4600)
/Users/a./go/pkg/mod/github.com/patrickmn/go-cache@v2.1.0+incompatible/cache.go:1079 +0x89
created by github.com/patrickmn/go-cache.runJanitor
/Users/a./go/pkg/mod/github.com/patrickmn/go-cache@v2.1.0+incompatible/cache.go:1099 +0xf2

goroutine 9 [select]:
github.com/patrickmn/go-cache.(*janitor).Run(0xc0007d0f30, 0xc000122180)
/Users/a./go/pkg/mod/github.com/patrickmn/go-cache@v2.1.0+incompatible/cache.go:1079 +0x89
created by github.com/patrickmn/go-cache.runJanitor
/Users/a./go/pkg/mod/github.com/patrickmn/go-cache@v2.1.0+incompatible/cache.go:1099 +0xf2

goroutine 10 [select, 2 minutes]:
github.com/patrickmn/go-cache.(*janitor).Run(0xc0007d0f40, 0x0)
/Users/a./go/pkg/mod/github.com/patrickmn/go-cache@v2.1.0+incompatible/cache.go:1079 +0x89
created by github.com/patrickmn/go-cache.runJanitor
/Users/a./go/pkg/mod/github.com/patrickmn/go-cache@v2.1.0+incompatible/cache.go:1099 +0xf2

goroutine 11 [select]:
github.com/patrickmn/go-cache.(*janitor).Run(0xc0007d0f50, 0x0)
/Users/a./go/pkg/mod/github.com/patrickmn/go-cache@v2.1.0+incompatible/cache.go:1079 +0x89
created by github.com/patrickmn/go-cache.runJanitor
/Users/a./go/pkg/mod/github.com/patrickmn/go-cache@v2.1.0+incompatible/cache.go:1099 +0xf2

goroutine 20 [select, 53 minutes]:
io.(*pipe).Read(0xc000346a80, {0xc0001941f5, 0xe0b, 0xc000af3df0})
/usr/local/go/src/io/pipe.go:57 +0xb7
io.(*PipeReader).Read(0xc000af3dd8, {0xc0001941f5, 0xb12219, 0xc00017bd50})
/usr/local/go/src/io/pipe.go:134 +0x25
bufio.(*Scanner).Scan(0xc000af3f28)
/usr/local/go/src/bufio/scan.go:215 +0x865
github.com/sirupsen/logrus.(*Entry).writerScanner(0x0, 0xc00000e248, 0xc000949b90)
/Users/a./go/pkg/mod/github.com/sirupsen/logrus@v1.8.1/writer.go:59 +0xa5
created by github.com/sirupsen/logrus.(*Entry).WriterLevel
/Users/a./go/pkg/mod/github.com/sirupsen/logrus@v1.8.1/writer.go:51 +0x3d6

goroutine 78 [select, 2 minutes]:
github.com/portainer/portainer-ee/api/internal/snapshot.(*Service).startSnapshotLoop(0xc000312ba0)
/Users/a./work/portainer-ee/api/internal/snapshot/snapshot.go:158 +0x11e
created by github.com/portainer/portainer-ee/api/internal/snapshot.(*Service).Start
/Users/a./work/portainer-ee/api/internal/snapshot/snapshot.go:72 +0x5b

goroutine 80 [select, 67 minutes]:
github.com/portainer/portainer-ee/api/cloud.(*CloudClusterInfoService).Start.func1()
/Users/a./work/portainer-ee/api/cloud/cluster_info.go:106 +0xd6
created by github.com/portainer/portainer-ee/api/cloud.(*CloudClusterInfoService).Start
/Users/a./work/portainer-ee/api/cloud/cluster_info.go:100 +0x8f

goroutine 76 [chan receive, 67 minutes]:
main.initDataStore.func1()
/Users/a./work/portainer-ee/api/cmd/portainer/main.go:160 +0x50
created by main.initDataStore
/Users/a./work/portainer-ee/api/cmd/portainer/main.go:159 +0x5a5

goroutine 101 [select, 67 minutes]:
github.com/portainer/portainer-ee/api/useractivity.(*Store).cleanupLoop(0xc0000637d0, {0x26fc040, 0xc000125740})
/Users/a./work/portainer-ee/api/useractivity/cleanup.go:34 +0xb3
created by github.com/portainer/portainer-ee/api/useractivity.(*Store).startCleanupLoop
/Users/a./work/portainer-ee/api/useractivity/cleanup.go:25 +0x15d

goroutine 79 [select, 67 minutes]:
github.com/portainer/portainer-ee/api/cloud.(*CloudClusterSetupService).Start.func1()
/Users/a./work/portainer-ee/api/cloud/cluster_setup.go:75 +0xe5
created by github.com/portainer/portainer-ee/api/cloud.(*CloudClusterSetupService).Start
/Users/a./work/portainer-ee/api/cloud/cluster_setup.go:73 +0xa8

goroutine 107 [select]:
github.com/portainer/portainer-ee/api/chisel.(*Service).startTunnelVerificationLoop(0xc0004adb90)
/Users/a./work/portainer-ee/api/chisel/service.go:170 +0xed
created by github.com/portainer/portainer-ee/api/chisel.(*Service).StartTunnelServer
/Users/a./work/portainer-ee/api/chisel/service.go:133 +0x26f

goroutine 123 [IO wait, 67 minutes]:
internal/poll.runtime_pollWait(0x7fbba476e308, 0x72)
/usr/local/go/src/runtime/netpoll.go:234 +0x89
internal/poll.(*pollDesc).wait(0xc000778300, 0xc000734000, 0x0)
/usr/local/go/src/internal/poll/fd_poll_runtime.go:84 +0x32
internal/poll.(*pollDesc).waitRead(...)
/usr/local/go/src/internal/poll/fd_poll_runtime.go:89
internal/poll.(*FD).Read(0xc000778300, {0xc000734000, 0x1000, 0x1000})
/usr/local/go/src/internal/poll/fd_unix.go:167 +0x25a
net.(*netFD).Read(0xc000778300, {0xc000734000, 0xc0000c900d, 0xc0009776b0})
/usr/local/go/src/net/fd_posix.go:56 +0x29
net.(*conn).Read(0xc000120198, {0xc000734000, 0xc0008b68a0, 0xc00074ca88})
/usr/local/go/src/net/net.go:183 +0x45
net/http.(*connReader).Read(0xc00074ca80, {0xc000734000, 0x1000, 0x1000})
/usr/local/go/src/net/http/server.go:780 +0x16d
bufio.(*Reader).fill(0xc00039b860)
/usr/local/go/src/bufio/bufio.go:101 +0x103
bufio.(*Reader).ReadSlice(0xc00039b860, 0x4a)
/usr/local/go/src/bufio/bufio.go:360 +0x2f
bufio.(*Reader).ReadLine(0xc00039b860)
/usr/local/go/src/bufio/bufio.go:389 +0x27
net/textproto.(*Reader).readLineSlice(0xc00074cab0)
/usr/local/go/src/net/textproto/reader.go:57 +0x99
net/textproto.(*Reader).ReadLine(...)
/usr/local/go/src/net/textproto/reader.go:38
net/http.readRequest(0xc000120198)
/usr/local/go/src/net/http/request.go:1029 +0x79
net/http.(*conn).readRequest(0xc00049ea00, {0x26fc040, 0xc0003ff140})
/usr/local/go/src/net/http/server.go:966 +0x225
net/http.(*conn).serve(0xc00049ea00, {0x26fc0e8, 0xc000a26600})
/usr/local/go/src/net/http/server.go:1856 +0x865
created by net/http.(*Server).Serve
/usr/local/go/src/net/http/server.go:3034 +0x4e8

goroutine 102 [chan receive, 67 minutes]:
main.shutdownUserActivityStore({0x26fc040, 0xc000910700}, {0x2718ca8, 0xc000896b80})
/Users/a./work/portainer-ee/api/cmd/portainer/main.go:82 +0x38
created by main.initUserActivity
/Users/a./work/portainer-ee/api/cmd/portainer/main.go:76 +0x145

goroutine 106 [IO wait, 57 minutes]:
internal/poll.runtime_pollWait(0x7fbba476ea48, 0x72)
/usr/local/go/src/runtime/netpoll.go:234 +0x89
internal/poll.(*pollDesc).wait(0xc0001a6d80, 0xc000058800, 0x0)
/usr/local/go/src/internal/poll/fd_poll_runtime.go:84 +0x32
internal/poll.(*pollDesc).waitRead(...)
/usr/local/go/src/internal/poll/fd_poll_runtime.go:89
internal/poll.(*FD).Accept(0xc0001a6d80)
/usr/local/go/src/internal/poll/fd_unix.go:402 +0x22c
net.(*netFD).accept(0xc0001a6d80)
/usr/local/go/src/net/fd_unix.go:173 +0x35
net.(*TCPListener).accept(0xc0008bd818)
/usr/local/go/src/net/tcpsock_posix.go:140 +0x28
net.(*TCPListener).Accept(0xc0008bd818)
/usr/local/go/src/net/tcpsock.go:262 +0x3d
net/http.(*Server).Serve(0xc00099e380, {0x26ea620, 0xc0008bd818})
/usr/local/go/src/net/http/server.go:3002 +0x394
github.com/jpillora/chisel/share.(*HTTPServer).GoListenAndServe.func1()
/Users/a./go/pkg/mod/github.com/jpillora/chisel@v0.0.0-20190724232113-f3a8df20e389/share/http_server.go:38 +0x2d
created by github.com/jpillora/chisel/share.(*HTTPServer).GoListenAndServe
/Users/a./go/pkg/mod/github.com/jpillora/chisel@v0.0.0-20190724232113-f3a8df20e389/share/http_server.go:37 +0x126

goroutine 121 [IO wait, 67 minutes]:
internal/poll.runtime_pollWait(0x7fbba476e5c0, 0x72)
/usr/local/go/src/runtime/netpoll.go:234 +0x89
internal/poll.(*pollDesc).wait(0xc000778200, 0xc00073d000, 0x0)
/usr/local/go/src/internal/poll/fd_poll_runtime.go:84 +0x32
internal/poll.(*pollDesc).waitRead(...)
/usr/local/go/src/internal/poll/fd_poll_runtime.go:89
internal/poll.(*FD).Read(0xc000778200, {0xc00073d000, 0x1000, 0x1000})
/usr/local/go/src/internal/poll/fd_unix.go:167 +0x25a
net.(*netFD).Read(0xc000778200, {0xc00073d000, 0x0, 0xc000a756b0})
/usr/local/go/src/net/fd_posix.go:56 +0x29
net.(*conn).Read(0xc000120078, {0xc00073d000, 0x7fbba4574120, 0xc000a26ae8})
/usr/local/go/src/net/net.go:183 +0x45
net/http.(*connReader).Read(0xc000a26ae0, {0xc00073d000, 0x1000, 0x1000})
/usr/local/go/src/net/http/server.go:780 +0x16d
bufio.(*Reader).fill(0xc0003b2c00)
/usr/local/go/src/bufio/bufio.go:101 +0x103
bufio.(*Reader).ReadSlice(0xc0003b2c00, 0xe0)
/usr/local/go/src/bufio/bufio.go:360 +0x2f
bufio.(*Reader).ReadLine(0xc0003b2c00)
/usr/local/go/src/bufio/bufio.go:389 +0x27
net/textproto.(*Reader).readLineSlice(0xc000a26b10)
/usr/local/go/src/net/textproto/reader.go:57 +0x99
net/textproto.(*Reader).ReadLine(...)
/usr/local/go/src/net/textproto/reader.go:38
net/http.readRequest(0xc000120078)
/usr/local/go/src/net/http/request.go:1029 +0x79
net/http.(*conn).readRequest(0xc00049e780, {0x26fc040, 0xc000a3a380})
/usr/local/go/src/net/http/server.go:966 +0x225
net/http.(*conn).serve(0xc00049e780, {0x26fc0e8, 0xc000a26600})
/usr/local/go/src/net/http/server.go:1856 +0x865
created by net/http.(*Server).Serve
/usr/local/go/src/net/http/server.go:3034 +0x4e8

goroutine 130 [select, 67 minutes]:
github.com/portainer/portainer-ee/api/license.(*Service).startSyncLoop.func1()
/Users/a./work/portainer-ee/api/license/sync.go:25 +0x8b
created by github.com/portainer/portainer-ee/api/license.(*Service).startSyncLoop
/Users/a./work/portainer-ee/api/license/sync.go:23 +0x97

goroutine 118 [chan receive, 67 minutes]:
github.com/portainer/portainer-ee/api/http.shutdown({0x26fc040, 0xc000910700}, 0x1e13540, 0xc000a240f0)
/Users/a./work/portainer-ee/api/http/server.go:390 +0x53
created by github.com/portainer/portainer-ee/api/http.(*Server).Start.func1
/Users/a./work/portainer-ee/api/http/server.go:359 +0x185

goroutine 131 [select, 67 minutes]:
github.com/robfig/cron/v3.(*Cron).run(0xc000d19b80)
/Users/a./go/pkg/mod/github.com/robfig/cron/v3@v3.0.1/cron.go:263 +0xade
created by github.com/robfig/cron/v3.(*Cron).Start
/Users/a./go/pkg/mod/github.com/robfig/cron/v3@v3.0.1/cron.go:222 +0xcf

goroutine 132 [chan receive, 67 minutes]:
github.com/portainer/portainer-ee/api/scheduler.NewScheduler.func1()
/Users/a./work/portainer-ee/api/scheduler/scheduler.go:32 +0x32
created by github.com/portainer/portainer-ee/api/scheduler.NewScheduler
/Users/a./work/portainer-ee/api/scheduler/scheduler.go:31 +0x19d

goroutine 133 [select]:
github.com/g07cha/defender.(*Defender).CleanupTask(0xc000d2fbf0, 0xc000c69560)
/Users/a./go/pkg/mod/github.com/g07cha/defender@v0.0.0-20180505193036-5665c627c814/defender.go:129 +0x96
created by github.com/portainer/portainer-ee/api/http/security.NewRateLimiter
/Users/a./work/portainer-ee/api/http/security/rate_limiter.go:22 +0xe5

goroutine 135 [select, 67 minutes]:
github.com/robfig/cron/v3.(*Cron).run(0xc0004141e0)
/Users/a./go/pkg/mod/github.com/robfig/cron/v3@v3.0.1/cron.go:263 +0xade
created by github.com/robfig/cron/v3.(*Cron).Start
/Users/a./go/pkg/mod/github.com/robfig/cron/v3@v3.0.1/cron.go:222 +0xcf

goroutine 136 [IO wait]:
internal/poll.runtime_pollWait(0x7fbba476e790, 0x72)
/usr/local/go/src/runtime/netpoll.go:234 +0x89
internal/poll.(*pollDesc).wait(0xc000778100, 0xc000056000, 0x0)
/usr/local/go/src/internal/poll/fd_poll_runtime.go:84 +0x32
internal/poll.(*pollDesc).waitRead(...)
/usr/local/go/src/internal/poll/fd_poll_runtime.go:89
internal/poll.(*FD).Accept(0xc000778100)
/usr/local/go/src/internal/poll/fd_unix.go:402 +0x22c
net.(*netFD).accept(0xc000778100)
/usr/local/go/src/net/fd_unix.go:173 +0x35
net.(*TCPListener).accept(0xc000a0a108)
/usr/local/go/src/net/tcpsock_posix.go:140 +0x28
net.(*TCPListener).Accept(0xc000a0a108)
/usr/local/go/src/net/tcpsock.go:262 +0x3d
net/http.(*Server).Serve(0xc000d1f180, {0x26ea620, 0xc000a0a108})
/usr/local/go/src/net/http/server.go:3002 +0x394
net/http.(*Server).ListenAndServe(0xc000d1f180)
/usr/local/go/src/net/http/server.go:2931 +0x7d
github.com/portainer/portainer-ee/api/http.(*Server).Start.func1()
/Users/a./work/portainer-ee/api/http/server.go:360 +0x18f
created by github.com/portainer/portainer-ee/api/http.(*Server).Start
/Users/a./work/portainer-ee/api/http/server.go:352 +0x2268

goroutine 137 [chan receive, 67 minutes]:
github.com/portainer/portainer-ee/api/http.shutdown({0x26fc040, 0xc000910700}, 0x0, 0x0)
/Users/a./work/portainer-ee/api/http/server.go:390 +0x53
created by github.com/portainer/portainer-ee/api/http.(*Server).Start
/Users/a./work/portainer-ee/api/http/server.go:385 +0x25c5

goroutine 138 [IO wait, 67 minutes]:
internal/poll.runtime_pollWait(0x7fbba476e4d8, 0x72)
/usr/local/go/src/runtime/netpoll.go:234 +0x89
internal/poll.(*pollDesc).wait(0xc0001a6600, 0xc000732000, 0x0)
/usr/local/go/src/internal/poll/fd_poll_runtime.go:84 +0x32
internal/poll.(*pollDesc).waitRead(...)
/usr/local/go/src/internal/poll/fd_poll_runtime.go:89
internal/poll.(*FD).Read(0xc0001a6600, {0xc000732000, 0x1000, 0x1000})
/usr/local/go/src/internal/poll/fd_unix.go:167 +0x25a
net.(*netFD).Read(0xc0001a6600, {0xc000732000, 0x4ccf05, 0xc0009766b0})
/usr/local/go/src/net/fd_posix.go:56 +0x29
net.(*conn).Read(0xc00000f980, {0xc000732000, 0xc0004f6140, 0xc00074c9f8})
/usr/local/go/src/net/net.go:183 +0x45
net/http.(*connReader).Read(0xc00074c9f0, {0xc000732000, 0x1000, 0x1000})
/usr/local/go/src/net/http/server.go:780 +0x16d
bufio.(*Reader).fill(0xc00039b800)
/usr/local/go/src/bufio/bufio.go:101 +0x103
bufio.(*Reader).ReadSlice(0xc00039b800, 0xe0)
/usr/local/go/src/bufio/bufio.go:360 +0x2f
bufio.(*Reader).ReadLine(0xc00039b800)
/usr/local/go/src/bufio/bufio.go:389 +0x27
net/textproto.(*Reader).readLineSlice(0xc00074ca20)
/usr/local/go/src/net/textproto/reader.go:57 +0x99
net/textproto.(*Reader).ReadLine(...)
/usr/local/go/src/net/textproto/reader.go:38
net/http.readRequest(0xc00000f980)
/usr/local/go/src/net/http/request.go:1029 +0x79
net/http.(*conn).readRequest(0xc000728820, {0x26fc040, 0xc0003ff080})
/usr/local/go/src/net/http/server.go:966 +0x225
net/http.(*conn).serve(0xc000728820, {0x26fc0e8, 0xc000a26600})
/usr/local/go/src/net/http/server.go:1856 +0x865
created by net/http.(*Server).Serve
/usr/local/go/src/net/http/server.go:3034 +0x4e8

goroutine 125 [IO wait, 67 minutes]:
internal/poll.runtime_pollWait(0x7fbba476e138, 0x72)
/usr/local/go/src/runtime/netpoll.go:234 +0x89
internal/poll.(*pollDesc).wait(0xc000778400, 0xc000a7c000, 0x0)
/usr/local/go/src/internal/poll/fd_poll_runtime.go:84 +0x32
internal/poll.(*pollDesc).waitRead(...)
/usr/local/go/src/internal/poll/fd_poll_runtime.go:89
internal/poll.(*FD).Read(0xc000778400, {0xc000a7c000, 0x1000, 0x1000})
/usr/local/go/src/internal/poll/fd_unix.go:167 +0x25a
net.(*netFD).Read(0xc000778400, {0xc000a7c000, 0x0, 0xc000a706b0})
/usr/local/go/src/net/fd_posix.go:56 +0x29
net.(*conn).Read(0xc000120260, {0xc000a7c000, 0x0, 0xc000a271d8})
/usr/local/go/src/net/net.go:183 +0x45
net/http.(*connReader).Read(0xc000a271d0, {0xc000a7c000, 0x1000, 0x1000})
/usr/local/go/src/net/http/server.go:780 +0x16d
bufio.(*Reader).fill(0xc0003b2d20)
/usr/local/go/src/bufio/bufio.go:101 +0x103
bufio.(*Reader).ReadSlice(0xc0003b2d20, 0x0)
/usr/local/go/src/bufio/bufio.go:360 +0x2f
bufio.(*Reader).ReadLine(0xc0003b2d20)
/usr/local/go/src/bufio/bufio.go:389 +0x27
net/textproto.(*Reader).readLineSlice(0xc000a27200)
/usr/local/go/src/net/textproto/reader.go:57 +0x99
net/textproto.(*Reader).ReadLine(...)
/usr/local/go/src/net/textproto/reader.go:38
net/http.readRequest(0xc000120260)
/usr/local/go/src/net/http/request.go:1029 +0x79
net/http.(*conn).readRequest(0xc00049ec80, {0x26fc040, 0xc000a3a640})
/usr/local/go/src/net/http/server.go:966 +0x225
net/http.(*conn).serve(0xc00049ec80, {0x26fc0e8, 0xc000a26600})
/usr/local/go/src/net/http/server.go:1856 +0x865
created by net/http.(*Server).Serve
/usr/local/go/src/net/http/server.go:3034 +0x4e8

goroutine 139 [IO wait, 67 minutes]:
internal/poll.runtime_pollWait(0x7fbba476e050, 0x72)
/usr/local/go/src/runtime/netpoll.go:234 +0x89
internal/poll.(*pollDesc).wait(0xc0001a6680, 0xc000736000, 0x0)
/usr/local/go/src/internal/poll/fd_poll_runtime.go:84 +0x32
internal/poll.(*pollDesc).waitRead(...)
/usr/local/go/src/internal/poll/fd_poll_runtime.go:89
internal/poll.(*FD).Read(0xc0001a6680, {0xc000736000, 0x1000, 0x1000})
/usr/local/go/src/internal/poll/fd_unix.go:167 +0x25a
net.(*netFD).Read(0xc0001a6680, {0xc000736000, 0xc00075d590, 0xc00075d6b0})
/usr/local/go/src/net/fd_posix.go:56 +0x29
net.(*conn).Read(0xc00000f988, {0xc000736000, 0xc00075ddc0, 0xc00074cbd8})
/usr/local/go/src/net/net.go:183 +0x45
net/http.(*connReader).Read(0xc00074cbd0, {0xc000736000, 0x1000, 0x1000})
/usr/local/go/src/net/http/server.go:780 +0x16d
bufio.(*Reader).fill(0xc00039b8c0)
/usr/local/go/src/bufio/bufio.go:101 +0x103
bufio.(*Reader).ReadSlice(0xc00039b8c0, 0x1)
/usr/local/go/src/bufio/bufio.go:360 +0x2f
bufio.(*Reader).ReadLine(0xc00039b8c0)
/usr/local/go/src/bufio/bufio.go:389 +0x27
net/textproto.(*Reader).readLineSlice(0xc00074cc30)
/usr/local/go/src/net/textproto/reader.go:57 +0x99
net/textproto.(*Reader).ReadLine(...)
/usr/local/go/src/net/textproto/reader.go:38
net/http.readRequest(0xc00000f988)
/usr/local/go/src/net/http/request.go:1029 +0x79
net/http.(*conn).readRequest(0xc0007288c0, {0x26fc040, 0xc0003ff200})
/usr/local/go/src/net/http/server.go:966 +0x225
net/http.(*conn).serve(0xc0007288c0, {0x26fc0e8, 0xc000a26600})
/usr/local/go/src/net/http/server.go:1856 +0x865
created by net/http.(*Server).Serve
/usr/local/go/src/net/http/server.go:3034 +0x4e8

goroutine 143 [IO wait, 67 minutes]:
internal/poll.runtime_pollWait(0x7fbba448ffd8, 0x72)
/usr/local/go/src/runtime/netpoll.go:234 +0x89
internal/poll.(*pollDesc).wait(0xc0001a6880, 0xc000780000, 0x0)
/usr/local/go/src/internal/poll/fd_poll_runtime.go:84 +0x32
internal/poll.(*pollDesc).waitRead(...)
/usr/local/go/src/internal/poll/fd_poll_runtime.go:89
internal/poll.(*FD).Read(0xc0001a6880, {0xc000780000, 0x1000, 0x1000})
/usr/local/go/src/internal/poll/fd_unix.go:167 +0x25a
net.(*netFD).Read(0xc0001a6880, {0xc000780000, 0x0, 0xc0007596b0})
/usr/local/go/src/net/fd_posix.go:56 +0x29
net.(*conn).Read(0xc00000f9a8, {0xc000780000, 0xc00033e2f0, 0xc00074d058})
/usr/local/go/src/net/net.go:183 +0x45
net/http.(*connReader).Read(0xc00074d050, {0xc000780000, 0x1000, 0x1000})
/usr/local/go/src/net/http/server.go:780 +0x16d
bufio.(*Reader).fill(0xc00039ba40)
/usr/local/go/src/bufio/bufio.go:101 +0x103
bufio.(*Reader).ReadSlice(0xc00039ba40, 0x0)
/usr/local/go/src/bufio/bufio.go:360 +0x2f
bufio.(*Reader).ReadLine(0xc00039ba40)
/usr/local/go/src/bufio/bufio.go:389 +0x27
net/textproto.(*Reader).readLineSlice(0xc00074d080)
/usr/local/go/src/net/textproto/reader.go:57 +0x99
net/textproto.(*Reader).ReadLine(...)
/usr/local/go/src/net/textproto/reader.go:38
net/http.readRequest(0xc00000f9a8)
/usr/local/go/src/net/http/request.go:1029 +0x79
net/http.(*conn).readRequest(0xc000728be0, {0x26fc040, 0xc0003ff680})
/usr/local/go/src/net/http/server.go:966 +0x225
net/http.(*conn).serve(0xc000728be0, {0x26fc0e8, 0xc000a26600})
/usr/local/go/src/net/http/server.go:1856 +0x865
created by net/http.(*Server).Serve
/usr/local/go/src/net/http/server.go:3034 +0x4e8

goroutine 6997 [runnable]:
internal/poll.runtime_pollWait(0x7fbba476e960, 0x72)
/usr/local/go/src/runtime/netpoll.go:234 +0x89
internal/poll.(*pollDesc).wait(0xc000504800, 0xc000a85000, 0x0)
/usr/local/go/src/internal/poll/fd_poll_runtime.go:84 +0x32
internal/poll.(*pollDesc).waitRead(...)
/usr/local/go/src/internal/poll/fd_poll_runtime.go:89
internal/poll.(*FD).Read(0xc000504800, {0xc000a85000, 0x1000, 0x1000})
/usr/local/go/src/internal/poll/fd_unix.go:167 +0x25a
net.(*netFD).Read(0xc000504800, {0xc000a85000, 0xc000cc4e00, 0xc00075a6b0})
/usr/local/go/src/net/fd_posix.go:56 +0x29
net.(*conn).Read(0xc00000fc68, {0xc000a85000, 0x0, 0xc000e68a88})
/usr/local/go/src/net/net.go:183 +0x45
net/http.(*connReader).Read(0xc000e68a80, {0xc000a85000, 0x1000, 0x1000})
/usr/local/go/src/net/http/server.go:780 +0x16d
bufio.(*Reader).fill(0xc0002e4780)
/usr/local/go/src/bufio/bufio.go:101 +0x103
bufio.(*Reader).ReadSlice(0xc0002e4780, 0x90)
/usr/local/go/src/bufio/bufio.go:360 +0x2f
bufio.(*Reader).ReadLine(0xc0002e4780)
/usr/local/go/src/bufio/bufio.go:389 +0x27
net/textproto.(*Reader).readLineSlice(0xc000e08780)
/usr/local/go/src/net/textproto/reader.go:57 +0x99
net/textproto.(*Reader).ReadLine(...)
/usr/local/go/src/net/textproto/reader.go:38
net/http.readRequest(0xc00000fc68)
/usr/local/go/src/net/http/request.go:1029 +0x79
net/http.(*conn).readRequest(0xc000576500, {0x26fc040, 0xc000a3b800})
/usr/local/go/src/net/http/server.go:966 +0x225
net/http.(*conn).serve(0xc000576500, {0x26fc0e8, 0xc000a26600})
/usr/local/go/src/net/http/server.go:1856 +0x865
created by net/http.(*Server).Serve
/usr/local/go/src/net/http/server.go:3034 +0x4e8

goroutine 7009 [runnable]:
net/http.(*connReader).startBackgroundRead·dwrap·75()
/usr/local/go/src/net/http/server.go:668
runtime.goexit()
/usr/local/go/src/runtime/asm_amd64.s:1581 +0x1
created by net/http.(*connReader).startBackgroundRead
/usr/local/go/src/net/http/server.go:668 +0xcf

goroutine 6999 [runnable]:
net/http.(*connReader).startBackgroundRead·dwrap·75()
/usr/local/go/src/net/http/server.go:668
runtime.goexit()
/usr/local/go/src/runtime/asm_amd64.s:1581 +0x1
created by net/http.(*connReader).startBackgroundRead
/usr/local/go/src/net/http/server.go:668 +0xcf

goroutine 6995 [runnable]:
internal/poll.runtime_pollWait(0x7fbba476e3f0, 0x72)
/usr/local/go/src/runtime/netpoll.go:234 +0x89
internal/poll.(*pollDesc).wait(0xc000504680, 0xc000da5000, 0x0)
/usr/local/go/src/internal/poll/fd_poll_runtime.go:84 +0x32
internal/poll.(*pollDesc).waitRead(...)
/usr/local/go/src/internal/poll/fd_poll_runtime.go:89
internal/poll.(*FD).Read(0xc000504680, {0xc000da5000, 0x1000, 0x1000})
/usr/local/go/src/internal/poll/fd_unix.go:167 +0x25a
net.(*netFD).Read(0xc000504680, {0xc000da5000, 0xc000ae3e00, 0xc00097b6b0})
/usr/local/go/src/net/fd_posix.go:56 +0x29
net.(*conn).Read(0xc00000fc58, {0xc000da5000, 0x0, 0xc000cd9a48})
/usr/local/go/src/net/net.go:183 +0x45
net/http.(*connReader).Read(0xc000cd9a40, {0xc000da5000, 0x1000, 0x1000})
/usr/local/go/src/net/http/server.go:780 +0x16d
bufio.(*Reader).fill(0xc000346900)
/usr/local/go/src/bufio/bufio.go:101 +0x103
bufio.(*Reader).ReadSlice(0xc000346900, 0x90)
/usr/local/go/src/bufio/bufio.go:360 +0x2f
bufio.(*Reader).ReadLine(0xc000346900)
/usr/local/go/src/bufio/bufio.go:389 +0x27
net/textproto.(*Reader).readLineSlice(0xc000d140f0)
/usr/local/go/src/net/textproto/reader.go:57 +0x99
net/textproto.(*Reader).ReadLine(...)
/usr/local/go/src/net/textproto/reader.go:38
net/http.readRequest(0xc00000fc58)
/usr/local/go/src/net/http/request.go:1029 +0x79
net/http.(*conn).readRequest(0xc000319f40, {0x26fc040, 0xc0003ff600})
/usr/local/go/src/net/http/server.go:966 +0x225
net/http.(*conn).serve(0xc000319f40, {0x26fc0e8, 0xc000a26600})
/usr/local/go/src/net/http/server.go:1856 +0x865
created by net/http.(*Server).Serve
/usr/local/go/src/net/http/server.go:3034 +0x4e8

goroutine 6996 [runnable]:
github.com/json-iterator/go.(*Iterator).Read.func2(0xc00097ed80, {0xc000cfb1d0, 0xa})
/Users/a./go/pkg/mod/github.com/json-iterator/go@v1.1.12/iter.go:320 +0x85
github.com/json-iterator/go.(*Iterator).ReadMapCB(0xc00097ed80, 0xc000f6c1b0)
/Users/a./go/pkg/mod/github.com/json-iterator/go@v1.1.12/iter_object.go:193 +0x367
github.com/json-iterator/go.(*Iterator).Read(0xc00097ed80)
/Users/a./go/pkg/mod/github.com/json-iterator/go@v1.1.12/iter.go:317 +0x1e5
github.com/json-iterator/go.(*efaceDecoder).Decode(0xc0001ca900, 0xc000cfdf20, 0xc000f6c288)
/Users/a./go/pkg/mod/github.com/json-iterator/go@v1.1.12/reflect_dynamic.go:29 +0x1fa
github.com/json-iterator/go.(*Iterator).ReadVal(0xc00097ed80, {0x1d9b160, 0xc000cfdf20})
/Users/a./go/pkg/mod/github.com/json-iterator/go@v1.1.12/reflect.go:79 +0x129
github.com/json-iterator/go.(*Iterator).Read.func1(0xc00097ed80)
/Users/a./go/pkg/mod/github.com/json-iterator/go@v1.1.12/iter.go:310 +0x4f
github.com/json-iterator/go.(*Iterator).ReadArrayCB(0xc00097ed80, 0xc000f6c3a0)
/Users/a./go/pkg/mod/github.com/json-iterator/go@v1.1.12/iter_array.go:37 +0x71
github.com/json-iterator/go.(*Iterator).Read(0xc00097ed80)
/Users/a./go/pkg/mod/github.com/json-iterator/go@v1.1.12/iter.go:308 +0x245
github.com/json-iterator/go.(*efaceDecoder).Decode(0xc000f6c4b0, 0xc000cdabf0, 0x8)
/Users/a./go/pkg/mod/github.com/json-iterator/go@v1.1.12/reflect_dynamic.go:29 +0x1fa
github.com/json-iterator/go.(*placeholderDecoder).Decode(0xc000cfb120, 0x412557, 0xc000f6c508)
/Users/a./go/pkg/mod/github.com/json-iterator/go@v1.1.12/reflect.go:324 +0x22
github.com/json-iterator/go.(*structFieldDecoder).Decode(0xc00039d080, 0xc000747290, 0xc00097ed80)
/Users/a./go/pkg/mod/github.com/json-iterator/go@v1.1.12/reflect_struct_decoder.go:1054 +0x56
github.com/json-iterator/go.(*generalStructDecoder).decodeOneField(0xc00039d100, 0x11, 0xc00097ed80)
/Users/a./go/pkg/mod/github.com/json-iterator/go@v1.1.12/reflect_struct_decoder.go:552 +0x2a6
github.com/json-iterator/go.(*generalStructDecoder).Decode(0xc00039d100, 0x412557, 0xc00097ed80)
/Users/a./go/pkg/mod/github.com/json-iterator/go@v1.1.12/reflect_struct_decoder.go:508 +0x96
github.com/json-iterator/go.(*structFieldDecoder).Decode(0xc00039d500, 0xc000747a70, 0xc00097ed80)
/Users/a./go/pkg/mod/github.com/json-iterator/go@v1.1.12/reflect_struct_decoder.go:1054 +0x56
github.com/json-iterator/go.(*generalStructDecoder).decodeOneField(0xc00039d5c0, 0x0, 0xc00097ed80)
/Users/a./go/pkg/mod/github.com/json-iterator/go@v1.1.12/reflect_struct_decoder.go:552 +0x2a6
github.com/json-iterator/go.(*generalStructDecoder).Decode(0xc00039d5c0, 0xc000cb18f8, 0xc00097ed80)
/Users/a./go/pkg/mod/github.com/json-iterator/go@v1.1.12/reflect_struct_decoder.go:508 +0x96
github.com/json-iterator/go.(*sliceDecoder).doDecode(0xc000657cf8, 0xc000cb18f8, 0xc00097ed80)
/Users/a./go/pkg/mod/github.com/json-iterator/go@v1.1.12/reflect_slice.go:86 +0xad
github.com/json-iterator/go.(*sliceDecoder).Decode(0xc000657cf8, 0x412557, 0xc00097ed80)
/Users/a./go/pkg/mod/github.com/json-iterator/go@v1.1.12/reflect_slice.go:60 +0x27
github.com/json-iterator/go.(*structFieldDecoder).Decode(0xc000873c40, 0xc0007750b0, 0xc00097ed80)
/Users/a./go/pkg/mod/github.com/json-iterator/go@v1.1.12/reflect_struct_decoder.go:1054 +0x56
github.com/json-iterator/go.(*generalStructDecoder).decodeOneField(0xc00077a040, 0x409c4d, 0xc00097ed80)
/Users/a./go/pkg/mod/github.com/json-iterator/go@v1.1.12/reflect_struct_decoder.go:552 +0x2a6
github.com/json-iterator/go.(*generalStructDecoder).Decode(0xc00077a040, 0x1e13800, 0xc00097ed80)
/Users/a./go/pkg/mod/github.com/json-iterator/go@v1.1.12/reflect_struct_decoder.go:508 +0x96
github.com/json-iterator/go.(*Iterator).ReadVal(0xc00097ed80, {0x1d90060, 0xc000cb1800})
/Users/a./go/pkg/mod/github.com/json-iterator/go@v1.1.12/reflect.go:79 +0x129
github.com/json-iterator/go.(*efaceDecoder).Decode(0xc0001ca900, 0xc000cfc450, 0xc000f6ca60)
/Users/a./go/pkg/mod/github.com/json-iterator/go@v1.1.12/reflect_dynamic.go:52 +0x159
github.com/json-iterator/go.(*Iterator).ReadVal(0xc00097ed80, {0x1d9b160, 0xc000cfc450})
/Users/a./go/pkg/mod/github.com/json-iterator/go@v1.1.12/reflect.go:79 +0x129
github.com/json-iterator/go.(*frozenConfig).Unmarshal(0xc000173cc0, {0x7fbba4535038, 0x9, 0x7fbba453053e}, {0x1d9b160, 0xc000cfc450})
/Users/a./go/pkg/mod/github.com/json-iterator/go@v1.1.12/config.go:348 +0xa5
github.com/portainer/portainer-ee/api/database/boltdb.(*DbConnection).UnmarshalObjectWithJsoniter(0xc000938640, {0x7fbba4535038, 0x3dd6, 0x3dd6}, {0x1d90060, 0xc000cb1800})
/Users/a./work/portainer-ee/api/database/boltdb/json.go:69 +0x135
github.com/portainer/portainer-ee/api/database/boltdb.(*DbConnection).GetAllWithJsoniter.func1(0xc000cdaa80)
/Users/a./work/portainer-ee/api/database/boltdb/db.go:376 +0x105
go.etcd.io/bbolt.(*DB).View(0xc000cfc440, 0xc000f6cc88)
/Users/a./go/pkg/mod/go.etcd.io/bbolt@v1.3.6/db.go:772 +0x82
github.com/portainer/portainer-ee/api/database/boltdb.(*DbConnection).GetAllWithJsoniter(0x40d267, {0x2272880, 0x411605}, {0x1d90060, 0xc000cb1800}, 0x40dd01)
/Users/a./work/portainer-ee/api/database/boltdb/db.go:371 +0x74
github.com/portainer/portainer-ee/api/dataservices/endpoint.(*Service).Endpoints(0xc00046d1c0)
/Users/a./work/portainer-ee/api/dataservices/endpoint/endpoint.go:66 +0xd6
github.com/portainer/portainer-ee/api/http/handler/endpoints.(*Handler).endpointList(0xc00022f500, {0x7fbba45a5cf8, 0xc000ce0ef8}, 0xc00111f168)
/Users/a./work/portainer-ee/api/http/handler/endpoints/endpoint_list.go:102 +0x422
github.com/portainer/libhttp/error.LoggerHandler.ServeHTTP(0xc000cc5900, {0x7fbba45a5cf8, 0xc000ce0ef8}, 0xc00111f210)
/Users/a./go/pkg/mod/github.com/portainer/libhttp@v0.0.0-20211208103139-07a5f798eb3f/error/error.go:22 +0x2f
github.com/portainer/portainer-ee/api/http/useractivity.LogUserActivityWithContext.func1.1({0x26ea830, 0xc000cda700}, 0xc000cc5900)
/Users/a./work/portainer-ee/api/http/useractivity/useractivity.go:36 +0x166
net/http.HandlerFunc.ServeHTTP(0xc00097ed80, {0x26ea830, 0xc000cda700}, 0xc00111f268)
/usr/local/go/src/net/http/server.go:2047 +0x2f
github.com/portainer/portainer-ee/api/http/security.(*RequestBouncer).mwUpgradeToRestrictedRequest.func1({0x26ea830, 0xc000cda700}, 0xc000cc5800)
/Users/a./work/portainer-ee/api/http/security/bouncer.go:317 +0x274
net/http.HandlerFunc.ServeHTTP(0xc00111f358, {0x26ea830, 0xc000cda700}, 0x1412b59)
/usr/local/go/src/net/http/server.go:2047 +0x2f
github.com/portainer/portainer-ee/api/http/security.(*RequestBouncer).mwCheckPortainerAuthorizations.func1({0x26ea830, 0xc000cda700}, 0xc000cc5800)
/Users/a./work/portainer-ee/api/http/security/bouncer.go:272 +0x3b2
net/http.HandlerFunc.ServeHTTP(0xc000e68f60, {0x26ea830, 0xc000cda700}, 0xc00111f520)
/usr/local/go/src/net/http/server.go:2047 +0x2f
github.com/portainer/portainer-ee/api/http/security.(*RequestBouncer).mwCheckLicense.func1({0x26ea830, 0xc000cda700}, 0xc000e68e01)
/Users/a./work/portainer-ee/api/http/security/bouncer.go:245 +0x17a
net/http.HandlerFunc.ServeHTTP(0xc000949f70, {0x26ea830, 0xc000cda700}, 0x40cf14)
/usr/local/go/src/net/http/server.go:2047 +0x2f
github.com/portainer/portainer-ee/api/http/security.(*RequestBouncer).mwAuthenticateFirst.func1({0x26ea830, 0xc000cda700}, 0xc000cc5700)
/Users/a./work/portainer-ee/api/http/security/bouncer.go:347 +0x334
net/http.HandlerFunc.ServeHTTP(0x1e13540, {0x26ea830, 0xc000cda700}, 0x16)
/usr/local/go/src/net/http/server.go:2047 +0x2f
github.com/portainer/portainer-ee/api/http/security.mwSecureHeaders.func1({0x26ea830, 0xc000cda700}, 0xc000e68c30)
/Users/a./work/portainer-ee/api/http/security/bouncer.go:451 +0x1ee
net/http.HandlerFunc.ServeHTTP(0xc000cc5600, {0x26ea830, 0xc000cda700}, 0x0)
/usr/local/go/src/net/http/server.go:2047 +0x2f
github.com/gorilla/mux.(*Router).ServeHTTP(0xc00022f440, {0x26ea830, 0xc000cda700}, 0xc000cc5500)
/Users/a./go/pkg/mod/github.com/gorilla/mux@v1.8.0/mux.go:210 +0x1cf
net/http.StripPrefix.func1({0x26ea830, 0xc000cda700}, 0xc000c29200)
/usr/local/go/src/net/http/server.go:2090 +0x330
net/http.HandlerFunc.ServeHTTP(0x22666e4, {0x26ea830, 0xc000cda700}, 0xc00022f500)
/usr/local/go/src/net/http/server.go:2047 +0x2f
github.com/portainer/portainer-ee/api/http/handler.(*Handler).ServeHTTP(0xc0007268c0, {0x26ea830, 0xc000cda700}, 0xc000c29200)
/Users/a./work/portainer-ee/api/http/handler/handler.go:212 +0x13b5
github.com/portainer/portainer-ee/api/http/offlinegate.(*OfflineGate).WaitingMiddleware.func1({0x26ea830, 0xc000cda700}, 0xc000c29200)
/Users/a./work/portainer-ee/api/http/offlinegate/offlinegate.go:38 +0x184
net/http.HandlerFunc.ServeHTTP(0xc000cda740, {0x26ea830, 0xc000cda700}, 0x4faa6d)
/usr/local/go/src/net/http/server.go:2047 +0x2f
github.com/portainer/portainer-ee/api/adminmonitor.(*Monitor).WithRedirect.func1({0x26ea830, 0xc000cda700}, 0xc000c29200)
/Users/a./work/portainer-ee/api/adminmonitor/admin_monitor.go:111 +0x233
net/http.HandlerFunc.ServeHTTP(0xc000c69993, {0x26ea830, 0xc000cda700}, 0x4622ce)
/usr/local/go/src/net/http/server.go:2047 +0x2f
net/http.serverHandler.ServeHTTP({0xc000cd99e0}, {0x26ea830, 0xc000cda700}, 0xc000c29200)
/usr/local/go/src/net/http/server.go:2879 +0x43b
net/http.(*conn).serve(0xc000576280, {0x26fc0e8, 0xc000a26600})
/usr/local/go/src/net/http/server.go:1930 +0xb08
created by net/http.(*Server).Serve
/usr/local/go/src/net/http/server.go:3034 +0x4e8`

@WaysonWei WaysonWei added this to the CE-2.14.0 milestone Jun 9, 2022
@WaysonWei
Copy link
Collaborator Author

#6918

@jamest-portainer
Copy link

jamest-portainer commented Aug 2, 2022

This likely wasn't 100% resolved correctly in CE-2.14.
Hence, a new change is being made for CE-2.15 (#7441).

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

No branches or pull requests

2 participants