goroutine 87235570 [running]: runtime/pprof.writeGoroutineStacks({0x55ad97668aa0, 0xc00011ca50}) runtime/pprof/pprof.go:756 +0x6b runtime/pprof.writeGoroutine({0x55ad97668aa0?, 0xc00011ca50?}, 0x3f?) runtime/pprof/pprof.go:745 +0x25 runtime/pprof.(*Profile).WriteTo(0x55ad97e8dac0?, {0x55ad97668aa0?, 0xc00011ca50?}, 0xc?) runtime/pprof/pprof.go:371 +0x14b net/http/pprof.handler.ServeHTTP({0x55ad96e8c392, 0x9}, {0x55ad97671798, 0xc00011ca50}, 0xc0001b1b80) net/http/pprof/pprof.go:272 +0x52a github.com/go-chi/chi/v5.(*Mux).routeHTTP(0xc0002e69c0, {0x55ad97671798, 0xc00011ca50}, 0xc0001b1b80) github.com/go-chi/chi/v5@v5.2.1/mux.go:480 +0x2e2 net/http.HandlerFunc.ServeHTTP(0x55ad975cdde0?, {0x55ad97671798?, 0xc00011ca50?}, 0x6?) net/http/server.go:2322 +0x29 github.com/go-chi/chi/v5/middleware.NoCache.func1({0x55ad97671798, 0xc00011ca50}, 0xc0001b1b80) github.com/go-chi/chi/v5@v5.2.1/middleware/nocache.go:55 +0x28d net/http.HandlerFunc.ServeHTTP(0xc00b38d8f0?, {0x55ad97671798?, 0xc00011ca50?}, 0xc00039b678?) net/http/server.go:2322 +0x29 github.com/go-chi/chi/v5.(*Mux).ServeHTTP(0xc0002e69c0, {0x55ad97671798, 0xc00011ca50}, 0xc0001b1b80) github.com/go-chi/chi/v5@v5.2.1/mux.go:73 +0x32f github.com/go-chi/chi/v5.(*Mux).Mount.func1({0x55ad97671798, 0xc00011ca50}, 0xc0001b1b80) github.com/go-chi/chi/v5@v5.2.1/mux.go:327 +0x1bb net/http.HandlerFunc.ServeHTTP(0xc00011c2d0?, {0x55ad97671798?, 0xc00011ca50?}, 0xc0003c4858?) net/http/server.go:2322 +0x29 github.com/go-chi/chi/v5.(*Mux).routeHTTP(0xc0002e6000, {0x55ad97671798, 0xc00011ca50}, 0xc0001b1b80) github.com/go-chi/chi/v5@v5.2.1/mux.go:480 +0x2e2 net/http.HandlerFunc.ServeHTTP(0xc00b38d8f0?, {0x55ad97671798?, 0xc00011ca50?}, 0xc00039b848?) net/http/server.go:2322 +0x29 github.com/go-chi/chi/v5.(*Mux).ServeHTTP(0xc0002e6000, {0x55ad97671798, 0xc00011ca50}, 0xc0001b1b80) github.com/go-chi/chi/v5@v5.2.1/mux.go:73 +0x32f github.com/go-chi/chi/v5.(*Mux).Mount.func1({0x55ad97671798, 0xc00011ca50}, 0xc0001b1b80) github.com/go-chi/chi/v5@v5.2.1/mux.go:327 +0x1bb net/http.HandlerFunc.ServeHTTP(0xc00011c2d0?, {0x55ad97671798?, 0xc00011ca50?}, 0xc002b5d204?) net/http/server.go:2322 +0x29 github.com/go-chi/chi/v5.(*Mux).routeHTTP(0xc0002e6a20, {0x55ad97671798, 0xc00011ca50}, 0xc0001b1b80) github.com/go-chi/chi/v5@v5.2.1/mux.go:480 +0x2e2 net/http.HandlerFunc.ServeHTTP(0xc00013f900?, {0x55ad97671798?, 0xc00011ca50?}, 0xc0001b1b80?) net/http/server.go:2322 +0x29 github.com/go-chi/cors.(*Cors).Handler-fm.(*Cors).Handler.func1({0x55ad97671798, 0xc00011ca50}, 0xc0001b1b80) github.com/go-chi/cors@v1.2.1/cors.go:228 +0x164 net/http.HandlerFunc.ServeHTTP(0x55ad975cdde0?, {0x55ad97671798?, 0xc00011ca50?}, 0x10?) net/http/server.go:2322 +0x29 github.com/0xERR0R/blocky/server.secureHeadersMiddleware.func1({0x55ad97671798?, 0xc00011ca50?}, 0xc0001b1b80?) github.com/0xERR0R/blocky/server/http.go:79 +0x312 net/http.HandlerFunc.ServeHTTP(0x55ad97673cb0?, {0x55ad97671798?, 0xc00011ca50?}, 0x55ad97e865e0?) net/http/server.go:2322 +0x29 github.com/go-chi/chi/v5.(*Mux).ServeHTTP(0xc0002e6a20, {0x55ad97671798, 0xc00011ca50}, 0xc0001b17c0) github.com/go-chi/chi/v5@v5.2.1/mux.go:90 +0x2ee net/http.serverHandler.ServeHTTP({0xc00379ea00?}, {0x55ad97671798?, 0xc00011ca50?}, 0x6?) net/http/server.go:3340 +0x8e net/http.(*conn).serve(0xc0000ded80, {0x55ad97673c78, 0xc000ca99b0}) net/http/server.go:2109 +0x665 created by net/http.(*Server).Serve in goroutine 75 net/http/server.go:3493 +0x485 goroutine 1 [chan receive, 7239 minutes]: github.com/0xERR0R/blocky/cmd.startServer(0xc0004acd00?, {0xc000271c60?, 0x4?, 0x55ad96e85b77?}) github.com/0xERR0R/blocky/cmd/serve.go:79 +0x36b github.com/spf13/cobra.(*Command).execute(0xc0004de008, {0xc000271c40, 0x2, 0x2}) github.com/spf13/cobra@v1.9.1/command.go:1015 +0xb02 github.com/spf13/cobra.(*Command).ExecuteC(0xc000145208) github.com/spf13/cobra@v1.9.1/command.go:1148 +0x465 github.com/spf13/cobra.(*Command).Execute(...) github.com/spf13/cobra@v1.9.1/command.go:1071 github.com/0xERR0R/blocky/cmd.Execute() github.com/0xERR0R/blocky/cmd/root.go:112 +0x18 main.main() github.com/0xERR0R/blocky/main.go:10 +0x13 goroutine 61 [select, 40 minutes]: github.com/0xERR0R/blocky/config.(*SourceLoading).periodically(0xc00032dfd0?, {0x55ad97673cb0, 0xc0000e86e0}, 0xc00036c850?, 0xc000891100) github.com/0xERR0R/blocky/config/config.go:382 +0xf7 created by github.com/0xERR0R/blocky/config.(*SourceLoading).StartPeriodicRefresh in goroutine 1 github.com/0xERR0R/blocky/config/config.go:365 +0xc6 goroutine 14 [syscall, 7239 minutes]: os/signal.signal_recv() runtime/sigqueue.go:152 +0x29 os/signal.loop() os/signal/signal_unix.go:23 +0x13 created by os/signal.Notify.func1.1 in goroutine 1 os/signal/signal.go:152 +0x1f goroutine 64 [select, 5 minutes]: github.com/0xERR0R/blocky/resolver.(*QueryLoggingResolver).writeLog(0xc00094ef50, {0x55ad97673cb0?, 0xc0000e86e0?}) github.com/0xERR0R/blocky/resolver/query_logging_resolver.go:223 +0xea created by github.com/0xERR0R/blocky/resolver.NewQueryLoggingResolver in goroutine 1 github.com/0xERR0R/blocky/resolver/query_logging_resolver.go:110 +0x4b9 goroutine 57 [select, 39 minutes]: github.com/0xERR0R/blocky/config.(*SourceLoading).periodically(0xc0000617d0?, {0x55ad97673cb0, 0xc0000e86e0}, 0xc00036c620?, 0xc0001b37b0) github.com/0xERR0R/blocky/config/config.go:382 +0xf7 created by github.com/0xERR0R/blocky/config.(*SourceLoading).StartPeriodicRefresh in goroutine 1 github.com/0xERR0R/blocky/config/config.go:365 +0xc6 goroutine 63 [select, 40 minutes]: github.com/0xERR0R/blocky/cache/expirationcache.periodicCleanup[...]({0x55ad97673cb0, 0xc0000e86e0}, 0xc000ca9350) github.com/0xERR0R/blocky/cache/expirationcache/expiration_cache.go:104 +0xef created by github.com/0xERR0R/blocky/cache/expirationcache.NewCacheWithOnExpired[...] in goroutine 1 github.com/0xERR0R/blocky/cache/expirationcache/expiration_cache.go:94 +0x2db goroutine 62 [select]: github.com/0xERR0R/blocky/cache/expirationcache.periodicCleanup[...]({0x55ad97673cb0, 0xc0000e86e0}, 0xc000ca9260) github.com/0xERR0R/blocky/cache/expirationcache/expiration_cache.go:104 +0xef created by github.com/0xERR0R/blocky/cache/expirationcache.NewCacheWithOnExpired[...] in goroutine 1 github.com/0xERR0R/blocky/cache/expirationcache/expiration_cache.go:94 +0x2db goroutine 65 [select, 40 minutes]: github.com/0xERR0R/blocky/resolver.(*QueryLoggingResolver).periodicCleanUp(0xc00094ef50, {0x55ad97673cb0, 0xc0000e86e0}) github.com/0xERR0R/blocky/resolver/query_logging_resolver.go:126 +0xed created by github.com/0xERR0R/blocky/resolver.NewQueryLoggingResolver in goroutine 1 github.com/0xERR0R/blocky/resolver/query_logging_resolver.go:114 +0x537 goroutine 66 [select, 40 minutes]: github.com/0xERR0R/blocky/config.(*SourceLoading).periodically(0xc0000657d0?, {0x55ad97673cb0, 0xc0000e86e0}, 0x55ad9767b690?, 0xc000f610e0) github.com/0xERR0R/blocky/config/config.go:382 +0xf7 created by github.com/0xERR0R/blocky/config.(*SourceLoading).StartPeriodicRefresh in goroutine 1 github.com/0xERR0R/blocky/config/config.go:365 +0xc6 goroutine 67 [select]: github.com/0xERR0R/blocky/cache/expirationcache.periodicCleanup[...]({0x55ad97673cb0, 0xc0000e86e0}, 0xc000ca9530) github.com/0xERR0R/blocky/cache/expirationcache/expiration_cache.go:104 +0xef created by github.com/0xERR0R/blocky/cache/expirationcache.NewCacheWithOnExpired[...] in goroutine 1 github.com/0xERR0R/blocky/cache/expirationcache/expiration_cache.go:94 +0x2db goroutine 72 [IO wait]: internal/poll.runtime_pollWait(0x7fc9b323d600, 0x72) runtime/netpoll.go:351 +0x85 internal/poll.(*pollDesc).wait(0xc0001ae180?, 0xc000556000?, 0x0) internal/poll/fd_poll_runtime.go:84 +0x27 internal/poll.(*pollDesc).waitRead(...) internal/poll/fd_poll_runtime.go:89 internal/poll.(*FD).ReadMsgInet6(0xc0001ae180, {0xc000556000, 0xffff, 0xffff}, {0xc002b5cea0, 0x28, 0x28}, 0x0, 0xc00180da60) internal/poll/fd_unix.go:349 +0x330 net.(*netFD).readMsgInet6(0xc0001ae180, {0xc000556000?, 0xc0000105e8?, 0x0?}, {0xc002b5cea0?, 0x55ad9636a7f3?, 0xc0003ee000?}, 0xc00180da70?, 0x55ad963924b6?) net/fd_posix.go:103 +0x31 net.(*UDPConn).readMsg(0xc00180dbc0?, {0xc000556000?, 0x7fc9b323d648?, 0x18b1b746c3797?}, {0xc002b5cea0?, 0x55ad9765e7f0?, 0x55ad9754f660?}) net/udpsock_posix.go:106 +0x90 net.(*UDPConn).ReadMsgUDPAddrPort(0xc0000503c0, {0xc000556000?, 0x55ad9638fa45?, 0x55ad963d8245?}, {0xc002b5cea0?, 0xc00180dc30?, 0x55ad963d8189?}) net/udpsock.go:200 +0x3e net.(*UDPConn).ReadMsgUDP(0x18b15e3974a65?, {0xc000556000?, 0x55ad963d8220?, 0xc0001ae180?}, {0xc002b5cea0?, 0xc00180dc78?, 0x55ad964d49e8?}) net/udpsock.go:188 +0x25 github.com/miekg/dns.ReadFromSessionUDP(0xc0000503c0, {0xc000556000, 0xffff, 0xffff}) github.com/miekg/dns@v1.1.66/udp.go:43 +0x85 github.com/miekg/dns.(*Server).readUDP(0xc000114ea0, 0xc0000503c0, 0x77359400) github.com/miekg/dns@v1.1.66/server.go:717 +0xfd github.com/miekg/dns.defaultReader.ReadUDP({0xc00022a250?}, 0x1?, 0xc00022a220?) github.com/miekg/dns@v1.1.66/server.go:174 +0x13 github.com/miekg/dns.(*Server).serveUDP(0xc000114ea0, {0x55ad9767a540, 0xc0000503c0}) github.com/miekg/dns@v1.1.66/server.go:531 +0x245 github.com/miekg/dns.(*Server).ListenAndServe(0xc000114ea0) github.com/miekg/dns@v1.1.66/server.go:360 +0x559 github.com/0xERR0R/blocky/server.(*Server).Start.func1() github.com/0xERR0R/blocky/server/server.go:398 +0x29 created by github.com/0xERR0R/blocky/server.(*Server).Start in goroutine 1 github.com/0xERR0R/blocky/server/server.go:397 +0xbe goroutine 73 [IO wait, 15 minutes]: internal/poll.runtime_pollWait(0x7fc9b323d400, 0x72) runtime/netpoll.go:351 +0x85 internal/poll.(*pollDesc).wait(0xc0001ae280?, 0x900000036?, 0x0) internal/poll/fd_poll_runtime.go:84 +0x27 internal/poll.(*pollDesc).waitRead(...) internal/poll/fd_poll_runtime.go:89 internal/poll.(*FD).Accept(0xc0001ae280) internal/poll/fd_unix.go:613 +0x28c net.(*netFD).accept(0xc0001ae280) net/fd_unix.go:161 +0x29 net.(*TCPListener).accept(0xc000028480) net/tcpsock_posix.go:159 +0x1b net.(*TCPListener).Accept(0xc000028480) net/tcpsock.go:380 +0x30 github.com/miekg/dns.(*Server).serveTCP(0xc000114fc0, {0x55ad976718b8, 0xc000028480}) github.com/miekg/dns@v1.1.66/server.go:475 +0x107 github.com/miekg/dns.(*Server).ListenAndServe(0xc000114fc0) github.com/miekg/dns@v1.1.66/server.go:332 +0x3de github.com/0xERR0R/blocky/server.(*Server).Start.func1() github.com/0xERR0R/blocky/server/server.go:398 +0x29 created by github.com/0xERR0R/blocky/server.(*Server).Start in goroutine 1 github.com/0xERR0R/blocky/server/server.go:397 +0xbe goroutine 74 [IO wait, 33 minutes]: internal/poll.runtime_pollWait(0x7fc9b323d200, 0x72) runtime/netpoll.go:351 +0x85 internal/poll.(*pollDesc).wait(0xc0001ae300?, 0x900000036?, 0x0) internal/poll/fd_poll_runtime.go:84 +0x27 internal/poll.(*pollDesc).waitRead(...) internal/poll/fd_poll_runtime.go:89 internal/poll.(*FD).Accept(0xc0001ae300) internal/poll/fd_unix.go:613 +0x28c net.(*netFD).accept(0xc0001ae300) net/fd_unix.go:161 +0x29 net.(*TCPListener).accept(0xc0000284c0) net/tcpsock_posix.go:159 +0x1b net.(*TCPListener).Accept(0xc0000284c0) net/tcpsock.go:380 +0x30 crypto/tls.(*listener).Accept(0xc000ba2438) crypto/tls/tls.go:79 +0x24 github.com/miekg/dns.(*Server).serveTCP(0xc000115440, {0x55ad97671828, 0xc000ba2438}) github.com/miekg/dns@v1.1.66/server.go:475 +0x107 github.com/miekg/dns.(*Server).ListenAndServe(0xc000115440) github.com/miekg/dns@v1.1.66/server.go:346 +0x819 github.com/0xERR0R/blocky/server.(*Server).Start.func1() github.com/0xERR0R/blocky/server/server.go:398 +0x29 created by github.com/0xERR0R/blocky/server.(*Server).Start in goroutine 1 github.com/0xERR0R/blocky/server/server.go:397 +0xbe goroutine 75 [IO wait]: internal/poll.runtime_pollWait(0x7fc9b323da00, 0x72) runtime/netpoll.go:351 +0x85 internal/poll.(*pollDesc).wait(0xc0001afd00?, 0x900000036?, 0x0) internal/poll/fd_poll_runtime.go:84 +0x27 internal/poll.(*pollDesc).waitRead(...) internal/poll/fd_poll_runtime.go:89 internal/poll.(*FD).Accept(0xc0001afd00) internal/poll/fd_unix.go:613 +0x28c net.(*netFD).accept(0xc0001afd00) net/fd_unix.go:161 +0x29 net.(*TCPListener).accept(0xc00003f080) net/tcpsock_posix.go:159 +0x1b net.(*TCPListener).Accept(0xc00003f080) net/tcpsock.go:380 +0x30 crypto/tls.(*listener).Accept(0xc0003ff068) crypto/tls/tls.go:79 +0x24 net/http.(*Server).Serve(0xc000115b00, {0x55ad97671828, 0xc0003ff068}) net/http/server.go:3463 +0x30c github.com/0xERR0R/blocky/server.(*httpServer).Serve(0xc000115b00, {0x55ad97673cb0, 0xc0000e86e0}, {0x55ad97671828, 0xc0003ff068}) github.com/0xERR0R/blocky/server/http.go:50 +0x9b github.com/0xERR0R/blocky/server.(*Server).Start.func2() github.com/0xERR0R/blocky/server/server.go:410 +0x11d created by github.com/0xERR0R/blocky/server.(*Server).Start in goroutine 1 github.com/0xERR0R/blocky/server/server.go:407 +0x194 goroutine 76 [select, 7239 minutes]: github.com/0xERR0R/blocky/server.registerPrintConfigurationTrigger.func1() github.com/0xERR0R/blocky/server/server_config_trigger.go:19 +0x8e created by github.com/0xERR0R/blocky/server.registerPrintConfigurationTrigger in goroutine 1 github.com/0xERR0R/blocky/server/server_config_trigger.go:17 +0xce goroutine 77 [select, 7239 minutes]: github.com/0xERR0R/blocky/cmd.startServer.func1() github.com/0xERR0R/blocky/cmd/serve.go:65 +0x96 created by github.com/0xERR0R/blocky/cmd.startServer in goroutine 1 github.com/0xERR0R/blocky/cmd/serve.go:64 +0x286 goroutine 79 [chan receive, 7239 minutes]: github.com/0xERR0R/blocky/server.(*httpServer).Serve.func1() github.com/0xERR0R/blocky/server/http.go:45 +0x2c created by github.com/0xERR0R/blocky/server.(*httpServer).Serve in goroutine 75 github.com/0xERR0R/blocky/server/http.go:44 +0x85 goroutine 87235572 [runnable]: net/http.(*connReader).startBackgroundRead.gowrap2() net/http/server.go:698 runtime.goexit({}) runtime/asm_amd64.s:1693 +0x1 created by net/http.(*connReader).startBackgroundRead in goroutine 87235570 net/http/server.go:698 +0xb6 goroutine 87235569 [IO wait]: internal/poll.runtime_pollWait(0x7fc96997fe00, 0x72) runtime/netpoll.go:351 +0x85 internal/poll.(*pollDesc).wait(0xc000023180?, 0xc000e52d80?, 0x0) internal/poll/fd_poll_runtime.go:84 +0x27 internal/poll.(*pollDesc).waitRead(...) internal/poll/fd_poll_runtime.go:89 internal/poll.(*FD).Read(0xc000023180, {0xc000e52d80, 0x480, 0x480}) internal/poll/fd_unix.go:165 +0x279 net.(*netFD).Read(0xc000023180, {0xc000e52d80?, 0xc000049708?, 0x55ad963db385?}) net/fd_posix.go:68 +0x25 net.(*conn).Read(0xc000050470, {0xc000e52d80?, 0x7fc969ab1050?, 0x7fc9b34cd108?}) net/net.go:196 +0x45 crypto/tls.(*atLeastReader).Read(0xc00baeeaf8, {0xc000e52d80?, 0x0?, 0x1d2?}) crypto/tls/conn.go:816 +0x3b bytes.(*Buffer).ReadFrom(0xc0004d7b28, {0x55ad976698e0, 0xc00baeeaf8}) bytes/buffer.go:217 +0x98 crypto/tls.(*Conn).readFromUntil(0xc0004d7888, {0x55ad97669020, 0xc000050470}, 0x55ad96357914?) crypto/tls/conn.go:838 +0xde crypto/tls.(*Conn).readRecordOrCCS(0xc0004d7888, 0x0) crypto/tls/conn.go:627 +0x3db crypto/tls.(*Conn).readRecord(...) crypto/tls/conn.go:589 crypto/tls.(*Conn).Read(0xc0004d7888, {0xc000609000, 0x1000, 0xc000023180?}) crypto/tls/conn.go:1392 +0x145 net/http.(*connReader).Read(0xc00379e980, {0xc000609000, 0x1000, 0x1000}) net/http/server.go:812 +0x154 bufio.(*Reader).fill(0xc003219500) bufio/bufio.go:113 +0x103 bufio.(*Reader).Peek(0xc003219500, 0x4) bufio/bufio.go:152 +0x53 net/http.(*conn).serve(0xc0000decf0, {0x55ad97673c78, 0xc000ca99b0}) net/http/server.go:2145 +0x7c5 created by net/http.(*Server).Serve in goroutine 75 net/http/server.go:3493 +0x485