goroutine profile: total 30 3 @ 0x47972e 0x456fd7 0x8c97f7 0x4811a1 # 0x8c97f6 github.com/0xERR0R/blocky/config.(*SourceLoading).periodically+0xf6 /go/config/config.go:382 2 @ 0x47972e 0x411d25 0x4118b2 0xef930c 0x4811a1 # 0xef930b github.com/0xERR0R/blocky/server.(*httpServer).Serve.func1+0x2b /go/server/http.go:45 1 @ 0x417309 0x47b649 0x8d7a73 0x4811a1 # 0x47b648 os/signal.signal_recv+0x28 /usr/local/go/src/runtime/sigqueue.go:152 # 0x8d7a72 os/signal.loop+0x12 /usr/local/go/src/os/signal/signal_unix.go:23 1 @ 0x439a91 0x47853d 0xed80f1 0xed7f25 0xed4d4b 0xeee24f 0x83bdc2 0x6f8189 0xef520d 0x6f8189 0x83984f 0x83b1db 0x6f8189 0x83bdc2 0x6f8189 0x83984f 0x83b1db 0x6f8189 0x83bdc2 0x6f8189 0x913f1e 0x6f8189 0xef98f2 0x6f8189 0x83980e 0x718c4e 0x6f6685 0x4811a1 # 0xed80f0 runtime/pprof.writeRuntimeProfile+0xb0 /usr/local/go/src/runtime/pprof/pprof.go:796 # 0xed7f24 runtime/pprof.writeGoroutine+0x44 /usr/local/go/src/runtime/pprof/pprof.go:755 # 0xed4d4a runtime/pprof.(*Profile).WriteTo+0x14a /usr/local/go/src/runtime/pprof/pprof.go:377 # 0xeee24e net/http/pprof.handler.ServeHTTP+0x52e /usr/local/go/src/net/http/pprof/pprof.go:272 # 0x83bdc1 github.com/go-chi/chi/v5.(*Mux).routeHTTP+0x2e1 /gomod-cache/github.com/go-chi/chi/v5@v5.2.1/mux.go:480 # 0x6f8188 net/http.HandlerFunc.ServeHTTP+0x28 /usr/local/go/src/net/http/server.go:2294 # 0xef520c github.com/go-chi/chi/v5/middleware.NoCache.func1+0x28c /gomod-cache/github.com/go-chi/chi/v5@v5.2.1/middleware/nocache.go:55 # 0x6f8188 net/http.HandlerFunc.ServeHTTP+0x28 /usr/local/go/src/net/http/server.go:2294 # 0x83984e github.com/go-chi/chi/v5.(*Mux).ServeHTTP+0x32e /gomod-cache/github.com/go-chi/chi/v5@v5.2.1/mux.go:73 # 0x83b1da github.com/go-chi/chi/v5.(*Mux).Mount.func1+0x1ba /gomod-cache/github.com/go-chi/chi/v5@v5.2.1/mux.go:327 # 0x6f8188 net/http.HandlerFunc.ServeHTTP+0x28 /usr/local/go/src/net/http/server.go:2294 # 0x83bdc1 github.com/go-chi/chi/v5.(*Mux).routeHTTP+0x2e1 /gomod-cache/github.com/go-chi/chi/v5@v5.2.1/mux.go:480 # 0x6f8188 net/http.HandlerFunc.ServeHTTP+0x28 /usr/local/go/src/net/http/server.go:2294 # 0x83984e github.com/go-chi/chi/v5.(*Mux).ServeHTTP+0x32e /gomod-cache/github.com/go-chi/chi/v5@v5.2.1/mux.go:73 # 0x83b1da github.com/go-chi/chi/v5.(*Mux).Mount.func1+0x1ba /gomod-cache/github.com/go-chi/chi/v5@v5.2.1/mux.go:327 # 0x6f8188 net/http.HandlerFunc.ServeHTTP+0x28 /usr/local/go/src/net/http/server.go:2294 # 0x83bdc1 github.com/go-chi/chi/v5.(*Mux).routeHTTP+0x2e1 /gomod-cache/github.com/go-chi/chi/v5@v5.2.1/mux.go:480 # 0x6f8188 net/http.HandlerFunc.ServeHTTP+0x28 /usr/local/go/src/net/http/server.go:2294 # 0x913f1d github.com/go-chi/cors.(*Cors).Handler-fm.(*Cors).Handler.func1+0x17d /gomod-cache/github.com/go-chi/cors@v1.2.1/cors.go:228 # 0x6f8188 net/http.HandlerFunc.ServeHTTP+0x28 /usr/local/go/src/net/http/server.go:2294 # 0xef98f1 github.com/0xERR0R/blocky/server.secureHeadersMiddleware.func1+0x311 /go/server/http.go:79 # 0x6f8188 net/http.HandlerFunc.ServeHTTP+0x28 /usr/local/go/src/net/http/server.go:2294 # 0x83980d github.com/go-chi/chi/v5.(*Mux).ServeHTTP+0x2ed /gomod-cache/github.com/go-chi/chi/v5@v5.2.1/mux.go:90 # 0x718c4d net/http.serverHandler.ServeHTTP+0x8d /usr/local/go/src/net/http/server.go:3301 # 0x6f6684 net/http.(*conn).serve+0x624 /usr/local/go/src/net/http/server.go:2102 1 @ 0x47972e 0x411d25 0x4118b2 0xf03c0b 0xf04626 0x89344a 0x893d8f 0xf03738 0xf0372f 0xf05bb3 0x44482b 0x4811a1 # 0xf03c0a github.com/0xERR0R/blocky/cmd.startServer+0x36a /go/cmd/serve.go:79 # 0xf04625 github.com/0xERR0R/blocky/cmd.NewRootCommand.func1+0xc5 /go/cmd/root.go:42 # 0x893449 github.com/spf13/cobra.(*Command).execute+0xaa9 /gomod-cache/github.com/spf13/cobra@v1.9.1/command.go:1015 # 0x893d8e github.com/spf13/cobra.(*Command).ExecuteC+0x46e /gomod-cache/github.com/spf13/cobra@v1.9.1/command.go:1148 # 0xf03737 github.com/spf13/cobra.(*Command).Execute+0x17 /gomod-cache/github.com/spf13/cobra@v1.9.1/command.go:1071 # 0xf0372e github.com/0xERR0R/blocky/cmd.Execute+0xe /go/cmd/root.go:112 # 0xf05bb2 main.main+0x12 /go/main.go:10 # 0x44482a runtime.main+0x28a /usr/local/go/src/runtime/proc.go:283 1 @ 0x47972e 0x411d25 0x4118b2 0xf0530c 0x4811a1 # 0xf0530b github.com/ramr/go-reaper.sigChildHandler+0x6b /gomod-cache/github.com/ramr/go-reaper@v0.2.3/reaper.go:70 1 @ 0x47972e 0x411d25 0x4118b2 0xf0543d 0x4811a1 # 0xf0543c github.com/ramr/go-reaper.reapChildren+0xdc /gomod-cache/github.com/ramr/go-reaper@v0.2.3/reaper.go:96 1 @ 0x47972e 0x43d317 0x478945 0x4bde47 0x4bf13a 0x4bf128 0x5a8c45 0x5b8b25 0x66e9e3 0x66f4e9 0xa52c67 0xa52bd3 0xa52e47 0xa932e7 0xa932d3 0xa56824 0xa931ef 0xa93cfe 0xa93ce6 0x4811a1 # 0x478944 internal/poll.runtime_pollWait+0x84 /usr/local/go/src/runtime/netpoll.go:351 # 0x4bde46 internal/poll.(*pollDesc).wait+0x26 /usr/local/go/src/internal/poll/fd_poll_runtime.go:84 # 0x4bf139 internal/poll.(*pollDesc).waitRead+0x279 /usr/local/go/src/internal/poll/fd_poll_runtime.go:89 # 0x4bf127 internal/poll.(*FD).Read+0x267 /usr/local/go/src/internal/poll/fd_unix.go:165 # 0x5a8c44 net.(*netFD).Read+0x24 /usr/local/go/src/net/fd_posix.go:55 # 0x5b8b24 net.(*conn).Read+0x44 /usr/local/go/src/net/net.go:194 # 0x66e9e2 bufio.(*Reader).fill+0x102 /usr/local/go/src/bufio/bufio.go:113 # 0x66f4e8 bufio.(*Reader).ReadSlice+0x28 /usr/local/go/src/bufio/bufio.go:380 # 0xa52c66 github.com/go-redis/redis/v8/internal/proto.(*Reader).readLine+0x26 /gomod-cache/github.com/go-redis/redis/v8@v8.11.5/internal/proto/reader.go:73 # 0xa52bd2 github.com/go-redis/redis/v8/internal/proto.(*Reader).ReadLine+0x12 /gomod-cache/github.com/go-redis/redis/v8@v8.11.5/internal/proto/reader.go:59 # 0xa52e46 github.com/go-redis/redis/v8/internal/proto.(*Reader).ReadReply+0x26 /gomod-cache/github.com/go-redis/redis/v8@v8.11.5/internal/proto/reader.go:97 # 0xa932e6 github.com/go-redis/redis/v8.(*Cmd).readReply+0x26 /gomod-cache/github.com/go-redis/redis/v8@v8.11.5/command.go:467 # 0xa932d2 github.com/go-redis/redis/v8.(*PubSub).ReceiveTimeout.func1+0x12 /gomod-cache/github.com/go-redis/redis/v8@v8.11.5/pubsub.go:375 # 0xa56823 github.com/go-redis/redis/v8/internal/pool.(*Conn).WithReader+0x63 /gomod-cache/github.com/go-redis/redis/v8@v8.11.5/internal/pool/conn.go:70 # 0xa931ee github.com/go-redis/redis/v8.(*PubSub).ReceiveTimeout+0xee /gomod-cache/github.com/go-redis/redis/v8@v8.11.5/pubsub.go:374 # 0xa93cfd github.com/go-redis/redis/v8.(*PubSub).Receive+0x7d /gomod-cache/github.com/go-redis/redis/v8@v8.11.5/pubsub.go:391 # 0xa93ce5 github.com/go-redis/redis/v8.(*channel).initMsgChan.func1+0x65 /gomod-cache/github.com/go-redis/redis/v8@v8.11.5/pubsub.go:571 1 @ 0x47972e 0x43d317 0x478945 0x4bde47 0x4c0cf0 0x4c0cda 0x5a9311 0x5c4870 0x5c309e 0x5c2fa5 0x811a05 0x7ffd1d 0x7fce33 0x7fe9a5 0x7fd4d9 0xefd369 0x4811a1 # 0x478944 internal/poll.runtime_pollWait+0x84 /usr/local/go/src/runtime/netpoll.go:351 # 0x4bde46 internal/poll.(*pollDesc).wait+0x26 /usr/local/go/src/internal/poll/fd_poll_runtime.go:84 # 0x4c0cef internal/poll.(*pollDesc).waitRead+0x32f /usr/local/go/src/internal/poll/fd_poll_runtime.go:89 # 0x4c0cd9 internal/poll.(*FD).ReadMsgInet6+0x319 /usr/local/go/src/internal/poll/fd_unix.go:356 # 0x5a9310 net.(*netFD).readMsgInet6+0x30 /usr/local/go/src/net/fd_posix.go:90 # 0x5c486f net.(*UDPConn).readMsg+0x8f /usr/local/go/src/net/udpsock_posix.go:106 # 0x5c309d net.(*UDPConn).ReadMsgUDPAddrPort+0x3d /usr/local/go/src/net/udpsock.go:203 # 0x5c2fa4 net.(*UDPConn).ReadMsgUDP+0x24 /usr/local/go/src/net/udpsock.go:191 # 0x811a04 github.com/miekg/dns.ReadFromSessionUDP+0x84 /gomod-cache/github.com/miekg/dns@v1.1.66/udp.go:43 # 0x7ffd1c github.com/miekg/dns.(*Server).readUDP+0xfc /gomod-cache/github.com/miekg/dns@v1.1.66/server.go:717 # 0x7fce32 github.com/miekg/dns.defaultReader.ReadUDP+0x12 /gomod-cache/github.com/miekg/dns@v1.1.66/server.go:174 # 0x7fe9a4 github.com/miekg/dns.(*Server).serveUDP+0x244 /gomod-cache/github.com/miekg/dns@v1.1.66/server.go:531 # 0x7fd4d8 github.com/miekg/dns.(*Server).ListenAndServe+0x558 /gomod-cache/github.com/miekg/dns@v1.1.66/server.go:360 # 0xefd368 github.com/0xERR0R/blocky/server.(*Server).Start.func1+0x28 /go/server/server.go:398 1 @ 0x47972e 0x43d317 0x478945 0x4bde47 0x4c3215 0x4c3203 0x5aabe9 0x5c1a3b 0x5c0c30 0x6672a4 0x6fbb6c 0xef929b 0xefd230 0x4811a1 # 0x478944 internal/poll.runtime_pollWait+0x84 /usr/local/go/src/runtime/netpoll.go:351 # 0x4bde46 internal/poll.(*pollDesc).wait+0x26 /usr/local/go/src/internal/poll/fd_poll_runtime.go:84 # 0x4c3214 internal/poll.(*pollDesc).waitRead+0x294 /usr/local/go/src/internal/poll/fd_poll_runtime.go:89 # 0x4c3202 internal/poll.(*FD).Accept+0x282 /usr/local/go/src/internal/poll/fd_unix.go:620 # 0x5aabe8 net.(*netFD).accept+0x28 /usr/local/go/src/net/fd_unix.go:172 # 0x5c1a3a net.(*TCPListener).accept+0x1a /usr/local/go/src/net/tcpsock_posix.go:159 # 0x5c0c2f net.(*TCPListener).Accept+0x2f /usr/local/go/src/net/tcpsock.go:380 # 0x6672a3 crypto/tls.(*listener).Accept+0x23 /usr/local/go/src/crypto/tls/tls.go:67 # 0x6fbb6b net/http.(*Server).Serve+0x30b /usr/local/go/src/net/http/server.go:3424 # 0xef929a github.com/0xERR0R/blocky/server.(*httpServer).Serve+0x9a /go/server/http.go:50 # 0xefd22f github.com/0xERR0R/blocky/server.(*Server).Start.func2+0x12f /go/server/server.go:410 1 @ 0x47972e 0x43d317 0x478945 0x4bde47 0x4c3215 0x4c3203 0x5aabe9 0x5c1a3b 0x5c0c30 0x6672a4 0x7fe367 0x7fd798 0xefd369 0x4811a1 # 0x478944 internal/poll.runtime_pollWait+0x84 /usr/local/go/src/runtime/netpoll.go:351 # 0x4bde46 internal/poll.(*pollDesc).wait+0x26 /usr/local/go/src/internal/poll/fd_poll_runtime.go:84 # 0x4c3214 internal/poll.(*pollDesc).waitRead+0x294 /usr/local/go/src/internal/poll/fd_poll_runtime.go:89 # 0x4c3202 internal/poll.(*FD).Accept+0x282 /usr/local/go/src/internal/poll/fd_unix.go:620 # 0x5aabe8 net.(*netFD).accept+0x28 /usr/local/go/src/net/fd_unix.go:172 # 0x5c1a3a net.(*TCPListener).accept+0x1a /usr/local/go/src/net/tcpsock_posix.go:159 # 0x5c0c2f net.(*TCPListener).Accept+0x2f /usr/local/go/src/net/tcpsock.go:380 # 0x6672a3 crypto/tls.(*listener).Accept+0x23 /usr/local/go/src/crypto/tls/tls.go:67 # 0x7fe366 github.com/miekg/dns.(*Server).serveTCP+0x106 /gomod-cache/github.com/miekg/dns@v1.1.66/server.go:475 # 0x7fd797 github.com/miekg/dns.(*Server).ListenAndServe+0x817 /gomod-cache/github.com/miekg/dns@v1.1.66/server.go:346 # 0xefd368 github.com/0xERR0R/blocky/server.(*Server).Start.func1+0x28 /go/server/server.go:398 1 @ 0x47972e 0x43d317 0x478945 0x4bde47 0x4c3215 0x4c3203 0x5aabe9 0x5c1a3b 0x5c0c30 0x6fbb6c 0xef929b 0xefd230 0x4811a1 # 0x478944 internal/poll.runtime_pollWait+0x84 /usr/local/go/src/runtime/netpoll.go:351 # 0x4bde46 internal/poll.(*pollDesc).wait+0x26 /usr/local/go/src/internal/poll/fd_poll_runtime.go:84 # 0x4c3214 internal/poll.(*pollDesc).waitRead+0x294 /usr/local/go/src/internal/poll/fd_poll_runtime.go:89 # 0x4c3202 internal/poll.(*FD).Accept+0x282 /usr/local/go/src/internal/poll/fd_unix.go:620 # 0x5aabe8 net.(*netFD).accept+0x28 /usr/local/go/src/net/fd_unix.go:172 # 0x5c1a3a net.(*TCPListener).accept+0x1a /usr/local/go/src/net/tcpsock_posix.go:159 # 0x5c0c2f net.(*TCPListener).Accept+0x2f /usr/local/go/src/net/tcpsock.go:380 # 0x6fbb6b net/http.(*Server).Serve+0x30b /usr/local/go/src/net/http/server.go:3424 # 0xef929a github.com/0xERR0R/blocky/server.(*httpServer).Serve+0x9a /go/server/http.go:50 # 0xefd22f github.com/0xERR0R/blocky/server.(*Server).Start.func2+0x12f /go/server/server.go:410 1 @ 0x47972e 0x43d317 0x478945 0x4bde47 0x4c3215 0x4c3203 0x5aabe9 0x5c1a3b 0x5c0c30 0x7fe367 0x7fd35e 0xefd369 0x4811a1 # 0x478944 internal/poll.runtime_pollWait+0x84 /usr/local/go/src/runtime/netpoll.go:351 # 0x4bde46 internal/poll.(*pollDesc).wait+0x26 /usr/local/go/src/internal/poll/fd_poll_runtime.go:84 # 0x4c3214 internal/poll.(*pollDesc).waitRead+0x294 /usr/local/go/src/internal/poll/fd_poll_runtime.go:89 # 0x4c3202 internal/poll.(*FD).Accept+0x282 /usr/local/go/src/internal/poll/fd_unix.go:620 # 0x5aabe8 net.(*netFD).accept+0x28 /usr/local/go/src/net/fd_unix.go:172 # 0x5c1a3a net.(*TCPListener).accept+0x1a /usr/local/go/src/net/tcpsock_posix.go:159 # 0x5c0c2f net.(*TCPListener).Accept+0x2f /usr/local/go/src/net/tcpsock.go:380 # 0x7fe366 github.com/miekg/dns.(*Server).serveTCP+0x106 /gomod-cache/github.com/miekg/dns@v1.1.66/server.go:475 # 0x7fd35d github.com/miekg/dns.(*Server).ListenAndServe+0x3dd /gomod-cache/github.com/miekg/dns@v1.1.66/server.go:332 # 0xefd368 github.com/0xERR0R/blocky/server.(*Server).Start.func1+0x28 /go/server/server.go:398 1 @ 0x47972e 0x456fd7 0xa58bd7 0x4811a1 # 0xa58bd6 github.com/go-redis/redis/v8/internal/pool.(*ConnPool).reaper+0xb6 /gomod-cache/github.com/go-redis/redis/v8@v8.11.5/internal/pool/pool.go:485 1 @ 0x47972e 0x456fd7 0xa93a70 0x4811a1 # 0xa93a6f github.com/go-redis/redis/v8.(*channel).initHealthCheck.func1+0xcf /gomod-cache/github.com/go-redis/redis/v8@v8.11.5/pubsub.go:542 1 @ 0x47972e 0x456fd7 0xbd82e6 0x4811a1 # 0xbd82e5 github.com/0xERR0R/blocky/redis.(*Client).startup.func1+0x105 /go/redis/redis.go:189 1 @ 0x47972e 0x456fd7 0xe959fa 0x4811a1 # 0xe959f9 github.com/0xERR0R/blocky/resolver.(*BlockingResolver).redisSubscriber+0xd9 /go/resolver/blocking_resolver.go:179 1 @ 0x47972e 0x456fd7 0xe9d6ba 0x4811a1 # 0xe9d6b9 github.com/0xERR0R/blocky/resolver.(*CachingResolver).redisSubscriber+0xd9 /go/resolver/caching_resolver.go:179 1 @ 0x47972e 0x456fd7 0xeaba0a 0x4811a1 # 0xeaba09 github.com/0xERR0R/blocky/resolver.(*QueryLoggingResolver).writeLog+0xe9 /go/resolver/query_logging_resolver.go:223 1 @ 0x47972e 0x456fd7 0xeb75af 0x4811a1 # 0xeb75ae github.com/0xERR0R/blocky/cache/expirationcache.periodicCleanup[...]+0xee /go/cache/expirationcache/expiration_cache.go:104 1 @ 0x47972e 0x456fd7 0xeb88ef 0x4811a1 # 0xeb88ee github.com/0xERR0R/blocky/cache/expirationcache.periodicCleanup[...]+0xee /go/cache/expirationcache/expiration_cache.go:104 1 @ 0x47972e 0x456fd7 0xeb9d2f 0x4811a1 # 0xeb9d2e github.com/0xERR0R/blocky/cache/expirationcache.periodicCleanup[...]+0xee /go/cache/expirationcache/expiration_cache.go:104 1 @ 0x47972e 0x456fd7 0xeba96f 0x4811a1 # 0xeba96e github.com/0xERR0R/blocky/cache/expirationcache.periodicCleanup[...]+0xee /go/cache/expirationcache/expiration_cache.go:104 1 @ 0x47972e 0x456fd7 0xebc04f 0x4811a1 # 0xebc04e github.com/0xERR0R/blocky/cache/expirationcache.periodicCleanup[...]+0xee /go/cache/expirationcache/expiration_cache.go:104 1 @ 0x47972e 0x456fd7 0xefedee 0x4811a1 # 0xefeded github.com/0xERR0R/blocky/server.registerPrintConfigurationTrigger.func1+0x8d /go/server/server_config_trigger.go:19 1 @ 0x47972e 0x456fd7 0xf03d16 0x4811a1 # 0xf03d15 github.com/0xERR0R/blocky/cmd.startServer.func1+0x95 /go/cmd/serve.go:65 1 @ 0x49a2c5 0x498838 0x4bf16e 0x4bf156 0x4beff1 0x5a8c45 0x5b8b25 0x6f0557 0x4811a1 # 0x49a2c4 syscall.Syscall+0x24 /usr/local/go/src/syscall/syscall_linux.go:73 # 0x498837 syscall.read+0x37 /usr/local/go/src/syscall/zsyscall_linux_amd64.go:736 # 0x4bf16d syscall.Read+0x2ad /usr/local/go/src/syscall/syscall_unix.go:183 # 0x4bf155 internal/poll.ignoringEINTRIO+0x295 /usr/local/go/src/internal/poll/fd_unix.go:745 # 0x4beff0 internal/poll.(*FD).Read+0x130 /usr/local/go/src/internal/poll/fd_unix.go:161 # 0x5a8c44 net.(*netFD).Read+0x24 /usr/local/go/src/net/fd_posix.go:55 # 0x5b8b24 net.(*conn).Read+0x44 /usr/local/go/src/net/net.go:194 # 0x6f0556 net/http.(*connReader).backgroundRead+0x36 /usr/local/go/src/net/http/server.go:690