goroutine 1211 [running]: runtime/pprof.writeGoroutineStacks({0x12b1d60, 0xc0005135e0}) /opt/hostedtoolcache/go/1.21.10/x64/src/runtime/pprof/pprof.go:703 +0x6a runtime/pprof.writeGoroutine({0x12b1d60?, 0xc0005135e0?}, 0xf?) /opt/hostedtoolcache/go/1.21.10/x64/src/runtime/pprof/pprof.go:692 +0x25 runtime/pprof.(*Profile).WriteTo(0xf83700?, {0x12b1d60?, 0xc0005135e0?}, 0xc?) /opt/hostedtoolcache/go/1.21.10/x64/src/runtime/pprof/pprof.go:329 +0x146 net/http/pprof.handler.ServeHTTP({0x10296c7, 0x9}, {0x12b99b8, 0xc0005135e0}, 0xc00004d800?) /opt/hostedtoolcache/go/1.21.10/x64/src/net/http/pprof/pprof.go:267 +0x4a8 github.com/go-chi/chi/v5.(*Mux).routeHTTP(0xc00029e9c0, {0x12b99b8, 0xc0005135e0}, 0xc0001ba300) /home/runner/go/pkg/mod/github.com/go-chi/chi/v5@v5.0.12/mux.go:459 +0x2b4 net/http.HandlerFunc.ServeHTTP(0xc0000cd750?, {0x12b99b8?, 0xc0005135e0?}, 0xd?) /opt/hostedtoolcache/go/1.21.10/x64/src/net/http/server.go:2136 +0x29 github.com/go-chi/chi/v5/middleware.NoCache.func1({0x12b99b8, 0xc0005135e0}, 0xc0001ba300) /home/runner/go/pkg/mod/github.com/go-chi/chi/v5@v5.0.12/middleware/nocache.go:55 +0x28e net/http.HandlerFunc.ServeHTTP(0xc0002b8540?, {0x12b99b8?, 0xc0005135e0?}, 0xc0000cd818?) /opt/hostedtoolcache/go/1.21.10/x64/src/net/http/server.go:2136 +0x29 github.com/go-chi/chi/v5.(*Mux).ServeHTTP(0xc00029e9c0, {0x12b99b8, 0xc0005135e0}, 0xc0001ba300) /home/runner/go/pkg/mod/github.com/go-chi/chi/v5@v5.0.12/mux.go:73 +0x371 github.com/go-chi/chi/v5.(*Mux).Mount.func1({0x12b99b8, 0xc0005135e0}, 0xc0001ba300) /home/runner/go/pkg/mod/github.com/go-chi/chi/v5@v5.0.12/mux.go:327 +0x1bb net/http.HandlerFunc.ServeHTTP(0xec6e80?, {0x12b99b8?, 0xc0005135e0?}, 0xc000412064?) /opt/hostedtoolcache/go/1.21.10/x64/src/net/http/server.go:2136 +0x29 github.com/go-chi/chi/v5.(*Mux).routeHTTP(0xc00029e960, {0x12b99b8, 0xc0005135e0}, 0xc0001ba300) /home/runner/go/pkg/mod/github.com/go-chi/chi/v5@v5.0.12/mux.go:459 +0x2b4 net/http.HandlerFunc.ServeHTTP(0xc0002ea820?, {0x12b99b8?, 0xc0005135e0?}, 0xc0001ba300?) /opt/hostedtoolcache/go/1.21.10/x64/src/net/http/server.go:2136 +0x29 github.com/go-chi/cors.(*Cors).Handler-fm.(*Cors).Handler.func1({0x12b99b8, 0xc0005135e0}, 0xc0001ba300) /home/runner/go/pkg/mod/github.com/go-chi/cors@v1.2.1/cors.go:228 +0x17e net/http.HandlerFunc.ServeHTTP(0xf83700?, {0x12b99b8?, 0xc0005135e0?}, 0x10?) /opt/hostedtoolcache/go/1.21.10/x64/src/net/http/server.go:2136 +0x29 github.com/0xERR0R/blocky/server.secureHeader.func1({0x12b99b8, 0xc0005135e0}, 0x1a01801?) /home/runner/work/blocky/blocky/server/server_endpoints.go:44 +0x310 net/http.HandlerFunc.ServeHTTP(0x12bbec8?, {0x12b99b8?, 0xc0005135e0?}, 0x1a01870?) /opt/hostedtoolcache/go/1.21.10/x64/src/net/http/server.go:2136 +0x29 github.com/go-chi/chi/v5.(*Mux).ServeHTTP(0xc00029e960, {0x12b99b8, 0xc0005135e0}, 0xc0001ba200) /home/runner/go/pkg/mod/github.com/go-chi/chi/v5@v5.0.12/mux.go:90 +0x330 net/http.serverHandler.ServeHTTP({0xc0002b8480?}, {0x12b99b8?, 0xc0005135e0?}, 0x6?) /opt/hostedtoolcache/go/1.21.10/x64/src/net/http/server.go:2938 +0x8e net/http.(*conn).serve(0xc0000be120, {0x12bbe90, 0xc00049d470}) /opt/hostedtoolcache/go/1.21.10/x64/src/net/http/server.go:2009 +0x5f4 created by net/http.(*Server).Serve in goroutine 59 /opt/hostedtoolcache/go/1.21.10/x64/src/net/http/server.go:3086 +0x5cb goroutine 1 [chan receive, 102 minutes]: github.com/0xERR0R/blocky/cmd.startServer(0xad29d31700000000?, {0xc00022fa18?, 0x0?, 0x0?}) /home/runner/work/blocky/blocky/cmd/serve.go:77 +0x392 github.com/0xERR0R/blocky/cmd.NewRootCommand.func1(0xc0001bb100?, {0xc0001fd7c0?, 0x4?, 0x10232be?}) /home/runner/work/blocky/blocky/cmd/root.go:43 +0xab github.com/spf13/cobra.(*Command).execute(0xc000004f00, {0xc00003e4c0, 0x2, 0x2}) /home/runner/go/pkg/mod/github.com/spf13/cobra@v1.8.0/command.go:983 +0xabc github.com/spf13/cobra.(*Command).ExecuteC(0xc000004f00) /home/runner/go/pkg/mod/github.com/spf13/cobra@v1.8.0/command.go:1115 +0x3ff github.com/spf13/cobra.(*Command).Execute(...) /home/runner/go/pkg/mod/github.com/spf13/cobra@v1.8.0/command.go:1039 github.com/0xERR0R/blocky/cmd.Execute() /home/runner/work/blocky/blocky/cmd/root.go:113 +0x18 main.main() /home/runner/work/blocky/blocky/main.go:10 +0x13 goroutine 41 [select, 102 minutes]: github.com/0xERR0R/blocky/config.(*SourceLoading).periodically(0x3?, {0x12bbec8, 0xc0002c2dc0}, 0xc00042cba0?, 0xc0002a3650) /home/runner/work/blocky/blocky/config/config.go:374 +0x109 created by github.com/0xERR0R/blocky/config.(*SourceLoading).StartPeriodicRefresh in goroutine 1 /home/runner/work/blocky/blocky/config/config.go:357 +0xe5 goroutine 10 [syscall, 102 minutes]: os/signal.signal_recv() /opt/hostedtoolcache/go/1.21.10/x64/src/runtime/sigqueue.go:152 +0x29 os/signal.loop() /opt/hostedtoolcache/go/1.21.10/x64/src/os/signal/signal_unix.go:23 +0x13 created by os/signal.Notify.func1.1 in goroutine 1 /opt/hostedtoolcache/go/1.21.10/x64/src/os/signal/signal.go:151 +0x1f goroutine 45 [select, 102 minutes]: github.com/0xERR0R/blocky/config.(*SourceLoading).periodically(0x3?, {0x12bbec8, 0xc0002c2dc0}, 0xc00042cd80?, 0xc0002a3660) /home/runner/work/blocky/blocky/config/config.go:374 +0x109 created by github.com/0xERR0R/blocky/config.(*SourceLoading).StartPeriodicRefresh in goroutine 1 /home/runner/work/blocky/blocky/config/config.go:357 +0xe5 goroutine 46 [select]: github.com/0xERR0R/blocky/cache/expirationcache.periodicCleanup[...]({0x12bbec8, 0xc0002c2dc0}, 0xc000122000) /home/runner/work/blocky/blocky/cache/expirationcache/expiration_cache.go:104 +0xf8 created by github.com/0xERR0R/blocky/cache/expirationcache.NewCacheWithOnExpired[...] in goroutine 1 /home/runner/work/blocky/blocky/cache/expirationcache/expiration_cache.go:94 +0x305 goroutine 47 [select, 44 minutes]: github.com/0xERR0R/blocky/cache/expirationcache.periodicCleanup[...]({0x12bbec8, 0xc0002c2dc0}, 0xc000122270) /home/runner/work/blocky/blocky/cache/expirationcache/expiration_cache.go:104 +0xf8 created by github.com/0xERR0R/blocky/cache/expirationcache.NewCacheWithOnExpired[...] in goroutine 1 /home/runner/work/blocky/blocky/cache/expirationcache/expiration_cache.go:94 +0x305 goroutine 48 [select, 102 minutes]: github.com/0xERR0R/blocky/config.(*SourceLoading).periodically(0x0?, {0x12bbec8, 0xc0002c2dc0}, 0x0?, 0xc0001fd120) /home/runner/work/blocky/blocky/config/config.go:374 +0x109 created by github.com/0xERR0R/blocky/config.(*SourceLoading).StartPeriodicRefresh in goroutine 1 /home/runner/work/blocky/blocky/config/config.go:357 +0xe5 goroutine 49 [select, 38 minutes]: github.com/0xERR0R/blocky/resolver.(*QueryLoggingResolver).writeLog(0xc0002f8a80, {0x12bbec8?, 0xc0002c2dc0?}) /home/runner/work/blocky/blocky/resolver/query_logging_resolver.go:197 +0xea created by github.com/0xERR0R/blocky/resolver.NewQueryLoggingResolver in goroutine 1 /home/runner/work/blocky/blocky/resolver/query_logging_resolver.go:86 +0x4d1 goroutine 54 [select]: github.com/0xERR0R/blocky/cache/expirationcache.periodicCleanup[...]({0x12bbec8, 0xc0002c2dc0}, 0xc000122db0) /home/runner/work/blocky/blocky/cache/expirationcache/expiration_cache.go:104 +0xf8 created by github.com/0xERR0R/blocky/cache/expirationcache.NewCacheWithOnExpired[...] in goroutine 1 /home/runner/work/blocky/blocky/cache/expirationcache/expiration_cache.go:94 +0x305 goroutine 55 [IO wait]: internal/poll.runtime_pollWait(0x7a41fb5afad0, 0x72) /opt/hostedtoolcache/go/1.21.10/x64/src/runtime/netpoll.go:343 +0x85 internal/poll.(*pollDesc).wait(0xc000190000?, 0xc0004ee000?, 0x0) /opt/hostedtoolcache/go/1.21.10/x64/src/internal/poll/fd_poll_runtime.go:84 +0x27 internal/poll.(*pollDesc).waitRead(...) /opt/hostedtoolcache/go/1.21.10/x64/src/internal/poll/fd_poll_runtime.go:89 internal/poll.(*FD).ReadMsgInet6(0xc000190000, {0xc0004ee000, 0xffff, 0xffff}, {0xc000376780, 0x28, 0x28}, 0x0?, 0x0?) /opt/hostedtoolcache/go/1.21.10/x64/src/internal/poll/fd_unix.go:355 +0x339 net.(*netFD).readMsgInet6(0xc000190000, {0xc0004ee000?, 0xc000010048?, 0x0?}, {0xc000376780?, 0x419813?, 0x2000?}, 0x0?, 0x1a49948?) /opt/hostedtoolcache/go/1.21.10/x64/src/net/fd_posix.go:90 +0x31 net.(*UDPConn).readMsg(0xc000223bb0?, {0xc0004ee000?, 0x7a41fb5afb18?, 0x4b6dde781efb8?}, {0xc000376780?, 0x11a9870?, 0xf1b020?}) /opt/hostedtoolcache/go/1.21.10/x64/src/net/udpsock_posix.go:106 +0x9c net.(*UDPConn).ReadMsgUDPAddrPort(0xc00004e488, {0xc0004ee000?, 0x7a424216a108?, 0x30?}, {0xc000376780?, 0xc000376780?, 0x0?}) /opt/hostedtoolcache/go/1.21.10/x64/src/net/udpsock.go:203 +0x3e net.(*UDPConn).ReadMsgUDP(0x4a85c0?, {0xc0004ee000?, 0xc27158adb6fb7a02?, 0x59e4bfa4045?}, {0xc000376780?, 0xc000223bf8?, 0x47c738?}) /opt/hostedtoolcache/go/1.21.10/x64/src/net/udpsock.go:191 +0x25 github.com/miekg/dns.ReadFromSessionUDP(0xc000284450?, {0xc0004ee000, 0xffff, 0xffff}) /home/runner/go/pkg/mod/github.com/miekg/dns@v1.1.59/udp.go:43 +0x85 github.com/miekg/dns.(*Server).readUDP(0xc000284360, 0xc00004e488, 0xc0002c23c0?) /home/runner/go/pkg/mod/github.com/miekg/dns@v1.1.59/server.go:699 +0x105 github.com/miekg/dns.defaultReader.ReadUDP({0xc0002c33b0?}, 0x12b1a40?, 0xc0002c23c0?) /home/runner/go/pkg/mod/github.com/miekg/dns@v1.1.59/server.go:174 +0x13 github.com/miekg/dns.(*Server).serveUDP(0xc000284360, {0x12c1320?, 0xc00004e488}) /home/runner/go/pkg/mod/github.com/miekg/dns@v1.1.59/server.go:517 +0x292 github.com/miekg/dns.(*Server).ListenAndServe(0xc000284360) /home/runner/go/pkg/mod/github.com/miekg/dns@v1.1.59/server.go:346 +0x585 github.com/0xERR0R/blocky/server.(*Server).Start.func1() /home/runner/work/blocky/blocky/server/server.go:487 +0x29 created by github.com/0xERR0R/blocky/server.(*Server).Start in goroutine 1 /home/runner/work/blocky/blocky/server/server.go:486 +0xdf goroutine 56 [IO wait, 63 minutes]: internal/poll.runtime_pollWait(0x7a41fb5af9d8, 0x72) /opt/hostedtoolcache/go/1.21.10/x64/src/runtime/netpoll.go:343 +0x85 internal/poll.(*pollDesc).wait(0xc000190100?, 0x4?, 0x0) /opt/hostedtoolcache/go/1.21.10/x64/src/internal/poll/fd_poll_runtime.go:84 +0x27 internal/poll.(*pollDesc).waitRead(...) /opt/hostedtoolcache/go/1.21.10/x64/src/internal/poll/fd_poll_runtime.go:89 internal/poll.(*FD).Accept(0xc000190100) /opt/hostedtoolcache/go/1.21.10/x64/src/internal/poll/fd_unix.go:611 +0x2ac net.(*netFD).accept(0xc000190100) /opt/hostedtoolcache/go/1.21.10/x64/src/net/fd_unix.go:172 +0x29 net.(*TCPListener).accept(0xc0001fc640) /opt/hostedtoolcache/go/1.21.10/x64/src/net/tcpsock_posix.go:152 +0x1e net.(*TCPListener).Accept(0xc0001fc640) /opt/hostedtoolcache/go/1.21.10/x64/src/net/tcpsock.go:315 +0x30 github.com/miekg/dns.(*Server).serveTCP(0xc000284480, {0x12b9b08?, 0xc0001fc640}) /home/runner/go/pkg/mod/github.com/miekg/dns@v1.1.59/server.go:461 +0x142 github.com/miekg/dns.(*Server).ListenAndServe(0xc000284480) /home/runner/go/pkg/mod/github.com/miekg/dns@v1.1.59/server.go:318 +0x3d3 github.com/0xERR0R/blocky/server.(*Server).Start.func1() /home/runner/work/blocky/blocky/server/server.go:487 +0x29 created by github.com/0xERR0R/blocky/server.(*Server).Start in goroutine 1 /home/runner/work/blocky/blocky/server/server.go:486 +0xdf goroutine 57 [IO wait, 44 minutes]: internal/poll.runtime_pollWait(0x7a41fb5af8e0, 0x72) /opt/hostedtoolcache/go/1.21.10/x64/src/runtime/netpoll.go:343 +0x85 internal/poll.(*pollDesc).wait(0xc000190180?, 0x0?, 0x0) /opt/hostedtoolcache/go/1.21.10/x64/src/internal/poll/fd_poll_runtime.go:84 +0x27 internal/poll.(*pollDesc).waitRead(...) /opt/hostedtoolcache/go/1.21.10/x64/src/internal/poll/fd_poll_runtime.go:89 internal/poll.(*FD).Accept(0xc000190180) /opt/hostedtoolcache/go/1.21.10/x64/src/internal/poll/fd_unix.go:611 +0x2ac net.(*netFD).accept(0xc000190180) /opt/hostedtoolcache/go/1.21.10/x64/src/net/fd_unix.go:172 +0x29 net.(*TCPListener).accept(0xc0001fc680) /opt/hostedtoolcache/go/1.21.10/x64/src/net/tcpsock_posix.go:152 +0x1e net.(*TCPListener).Accept(0xc0001fc680) /opt/hostedtoolcache/go/1.21.10/x64/src/net/tcpsock.go:315 +0x30 crypto/tls.(*listener).Accept(0xc0003d63a8) /opt/hostedtoolcache/go/1.21.10/x64/src/crypto/tls/tls.go:66 +0x27 github.com/miekg/dns.(*Server).serveTCP(0xc0002845a0, {0x12b9aa8?, 0xc0003d63a8}) /home/runner/go/pkg/mod/github.com/miekg/dns@v1.1.59/server.go:461 +0x142 github.com/miekg/dns.(*Server).ListenAndServe(0xc0002845a0) /home/runner/go/pkg/mod/github.com/miekg/dns@v1.1.59/server.go:332 +0x878 github.com/0xERR0R/blocky/server.(*Server).Start.func1() /home/runner/work/blocky/blocky/server/server.go:487 +0x29 created by github.com/0xERR0R/blocky/server.(*Server).Start in goroutine 1 /home/runner/work/blocky/blocky/server/server.go:486 +0xdf goroutine 58 [IO wait, 18 minutes]: internal/poll.runtime_pollWait(0x7a41fb5afeb0, 0x72) /opt/hostedtoolcache/go/1.21.10/x64/src/runtime/netpoll.go:343 +0x85 internal/poll.(*pollDesc).wait(0xc0002e8300?, 0x4?, 0x0) /opt/hostedtoolcache/go/1.21.10/x64/src/internal/poll/fd_poll_runtime.go:84 +0x27 internal/poll.(*pollDesc).waitRead(...) /opt/hostedtoolcache/go/1.21.10/x64/src/internal/poll/fd_poll_runtime.go:89 internal/poll.(*FD).Accept(0xc0002e8300) /opt/hostedtoolcache/go/1.21.10/x64/src/internal/poll/fd_unix.go:611 +0x2ac net.(*netFD).accept(0xc0002e8300) /opt/hostedtoolcache/go/1.21.10/x64/src/net/fd_unix.go:172 +0x29 net.(*TCPListener).accept(0xc0002b5b60) /opt/hostedtoolcache/go/1.21.10/x64/src/net/tcpsock_posix.go:152 +0x1e net.(*TCPListener).Accept(0xc0002b5b60) /opt/hostedtoolcache/go/1.21.10/x64/src/net/tcpsock.go:315 +0x30 net/http.(*Server).Serve(0xc0001b60f0, {0x12b9b08, 0xc0002b5b60}) /opt/hostedtoolcache/go/1.21.10/x64/src/net/http/server.go:3056 +0x364 github.com/0xERR0R/blocky/server.(*Server).Start.func2() /home/runner/work/blocky/blocky/server/server.go:507 +0x145 created by github.com/0xERR0R/blocky/server.(*Server).Start in goroutine 1 /home/runner/work/blocky/blocky/server/server.go:497 +0x185 goroutine 59 [IO wait]: internal/poll.runtime_pollWait(0x7a41fb5afdb8, 0x72) /opt/hostedtoolcache/go/1.21.10/x64/src/runtime/netpoll.go:343 +0x85 internal/poll.(*pollDesc).wait(0xc0002e8380?, 0x0?, 0x0) /opt/hostedtoolcache/go/1.21.10/x64/src/internal/poll/fd_poll_runtime.go:84 +0x27 internal/poll.(*pollDesc).waitRead(...) /opt/hostedtoolcache/go/1.21.10/x64/src/internal/poll/fd_poll_runtime.go:89 internal/poll.(*FD).Accept(0xc0002e8380) /opt/hostedtoolcache/go/1.21.10/x64/src/internal/poll/fd_unix.go:611 +0x2ac net.(*netFD).accept(0xc0002e8380) /opt/hostedtoolcache/go/1.21.10/x64/src/net/fd_unix.go:172 +0x29 net.(*TCPListener).accept(0xc0002b5b80) /opt/hostedtoolcache/go/1.21.10/x64/src/net/tcpsock_posix.go:152 +0x1e net.(*TCPListener).Accept(0xc0002b5b80) /opt/hostedtoolcache/go/1.21.10/x64/src/net/tcpsock.go:315 +0x30 crypto/tls.(*listener).Accept(0xc0003d6420) /opt/hostedtoolcache/go/1.21.10/x64/src/crypto/tls/tls.go:66 +0x27 net/http.(*Server).Serve(0xc0001b61e0, {0x12b9aa8, 0xc0003d6420}) /opt/hostedtoolcache/go/1.21.10/x64/src/net/http/server.go:3056 +0x364 net/http.(*Server).ServeTLS(0xc0001b61e0, {0x12b9b08?, 0xc0002b5b80}, {0x0, 0x0}, {0x0, 0x0}) /opt/hostedtoolcache/go/1.21.10/x64/src/net/http/server.go:3126 +0x4a6 github.com/0xERR0R/blocky/server.(*Server).Start.func3() /home/runner/work/blocky/blocky/server/server.go:533 +0x30c created by github.com/0xERR0R/blocky/server.(*Server).Start in goroutine 1 /home/runner/work/blocky/blocky/server/server.go:517 +0x2c5 goroutine 60 [select, 102 minutes]: github.com/0xERR0R/blocky/server.registerPrintConfigurationTrigger.func1() /home/runner/work/blocky/blocky/server/server_config_trigger.go:19 +0x8e created by github.com/0xERR0R/blocky/server.registerPrintConfigurationTrigger in goroutine 1 /home/runner/work/blocky/blocky/server/server_config_trigger.go:17 +0xe5 goroutine 61 [select, 102 minutes]: github.com/0xERR0R/blocky/cmd.startServer.func1() /home/runner/work/blocky/blocky/cmd/serve.go:63 +0x96 created by github.com/0xERR0R/blocky/cmd.startServer in goroutine 1 /home/runner/work/blocky/blocky/cmd/serve.go:62 +0x2b5 goroutine 1212 [runnable]: net/http.(*connReader).startBackgroundRead.func2() /opt/hostedtoolcache/go/1.21.10/x64/src/net/http/server.go:679 runtime.goexit() /opt/hostedtoolcache/go/1.21.10/x64/src/runtime/asm_amd64.s:1650 +0x1 created by net/http.(*connReader).startBackgroundRead in goroutine 1211 /opt/hostedtoolcache/go/1.21.10/x64/src/net/http/server.go:679 +0xba