goroutine profile: total 66 15 @ 0x490fca 0x469137 0x10cc235 0x498401 # 0x10cc234 github.com/FerretDB/FerretDB/internal/util/ctxutil.WithDelay.func1+0xb4 github.com/FerretDB/FerretDB/internal/util/ctxutil/ctxutil.go:37 15 @ 0x490fca 0x469137 0x13a01c5 0x498401 # 0x13a01c4 github.com/FerretDB/FerretDB/internal/clientconn.(*conn).run.func2+0x84 github.com/FerretDB/FerretDB/internal/clientconn/conn.go:161 14 @ 0x490fca 0x44fb77 0x4901c5 0x50da27 0x50eaa8 0x50ea96 0x5ba365 0x5c9ec5 0x8ad473 0x4a6d63 0xbff645 0xbff5fb 0xbfe770 0x139c4d6 0x13a12ff 0x498401 # 0x4901c4 internal/poll.runtime_pollWait+0x84 runtime/netpoll.go:351 # 0x50da26 internal/poll.(*pollDesc).wait+0x26 internal/poll/fd_poll_runtime.go:84 # 0x50eaa7 internal/poll.(*pollDesc).waitRead+0x2a7 internal/poll/fd_poll_runtime.go:89 # 0x50ea95 internal/poll.(*FD).Read+0x295 internal/poll/fd_unix.go:170 # 0x5ba364 net.(*netFD).Read+0x24 net/fd_posix.go:68 # 0x5c9ec4 net.(*conn).Read+0x44 net/net.go:196 # 0x8ad472 bufio.(*Reader).Read+0x192 bufio/bufio.go:245 # 0x4a6d62 io.ReadAtLeast+0x82 io/io.go:335 # 0xbff644 io.ReadFull+0x64 io/io.go:354 # 0xbff5fa github.com/FerretDB/wire.(*MsgHeader).readFrom+0x1a github.com/FerretDB/wire@v0.1.7/msg_header.go:64 # 0xbfe76f github.com/FerretDB/wire.ReadMessage+0x4f github.com/FerretDB/wire@v0.1.7/msg_body.go:61 # 0x139c4d5 github.com/FerretDB/FerretDB/internal/clientconn.(*conn).run+0xbb5 github.com/FerretDB/FerretDB/internal/clientconn/conn.go:256 # 0x13a12fe github.com/FerretDB/FerretDB/internal/clientconn.acceptLoop.func1+0x57e github.com/FerretDB/FerretDB/internal/clientconn/listener.go:294 5 @ 0x490fca 0x44fb77 0x4901c5 0x50da27 0x50eaa8 0x50ea96 0x5ba365 0x5c9ec5 0xaf7210 0x8acf43 0x8ad072 0xafd093 0x498401 # 0x4901c4 internal/poll.runtime_pollWait+0x84 runtime/netpoll.go:351 # 0x50da26 internal/poll.(*pollDesc).wait+0x26 internal/poll/fd_poll_runtime.go:84 # 0x50eaa7 internal/poll.(*pollDesc).waitRead+0x2a7 internal/poll/fd_poll_runtime.go:89 # 0x50ea95 internal/poll.(*FD).Read+0x295 internal/poll/fd_unix.go:170 # 0x5ba364 net.(*netFD).Read+0x24 net/fd_posix.go:68 # 0x5c9ec4 net.(*conn).Read+0x44 net/net.go:196 # 0xaf720f net/http.(*connReader).Read+0x14f net/http/server.go:856 # 0x8acf42 bufio.(*Reader).fill+0x102 bufio/bufio.go:113 # 0x8ad071 bufio.(*Reader).Peek+0x51 bufio/bufio.go:152 # 0xafd092 net/http.(*conn).serve+0x832 net/http/server.go:2173 2 @ 0x490fca 0x469137 0x573109 0x498401 # 0x573108 database/sql.(*DB).connectionOpener+0x88 database/sql/sql.go:1266 1 @ 0x4224c9 0x4931b8 0x59f0d3 0x498401 # 0x4931b7 os/signal.signal_recv+0x97 runtime/sigqueue.go:152 # 0x59f0d2 os/signal.loop+0x12 os/signal/signal_unix.go:23 1 @ 0x44c251 0x48fd3d 0xb6ad91 0xb6aa65 0xb679c9 0x14b1554 0x14b1f9c 0xafec09 0xb007ef 0xb22a0e 0xafcf3c 0x498401 # 0xb6ad90 runtime/pprof.writeRuntimeProfile+0xb0 runtime/pprof/pprof.go:848 # 0xb6aa64 runtime/pprof.writeGoroutine+0x44 runtime/pprof/pprof.go:781 # 0xb679c8 runtime/pprof.(*Profile).WriteTo+0x148 runtime/pprof/pprof.go:405 # 0x14b1553 net/http/pprof.handler.ServeHTTP+0x553 net/http/pprof/pprof.go:272 # 0x14b1f9b net/http/pprof.Index+0xdb net/http/pprof/pprof.go:391 # 0xafec08 net/http.HandlerFunc.ServeHTTP+0x28 net/http/server.go:2338 # 0xb007ee net/http.(*ServeMux).ServeHTTP+0x1ce net/http/server.go:2903 # 0xb22a0d net/http.serverHandler.ServeHTTP+0x8d net/http/server.go:3413 # 0xafcf3b net/http.(*conn).serve+0x6db net/http/server.go:2137 1 @ 0x490fca 0x41c96e 0x41c492 0x139ef32 0x14e6625 0x14e4ab5 0x456b87 0x498401 # 0x139ef31 github.com/FerretDB/FerretDB/internal/clientconn.(*Listener).Run+0x211 github.com/FerretDB/FerretDB/internal/clientconn/listener.go:196 # 0x14e6624 main.run+0x12e4 github.com/FerretDB/FerretDB/cmd/ferretdb/main.go:604 # 0x14e4ab4 main.main+0x74 github.com/FerretDB/FerretDB/cmd/ferretdb/main.go:234 # 0x456b86 runtime.main+0x426 runtime/proc.go:302 1 @ 0x490fca 0x41c96e 0x41c492 0x14e1526 0x14e8bdf 0x498401 # 0x14e1525 github.com/FerretDB/FerretDB/internal/util/debug.(*Handler).Serve+0x6a5 github.com/FerretDB/FerretDB/internal/util/debug/debug.go:324 # 0x14e8bde main.run.func3+0x33e github.com/FerretDB/FerretDB/cmd/ferretdb/main.go:480 1 @ 0x490fca 0x41c96e 0x41c492 0x14e8cf5 0x498401 # 0x14e8cf4 main.run.func2+0x34 github.com/FerretDB/FerretDB/cmd/ferretdb/main.go:440 1 @ 0x490fca 0x44fb77 0x4901c5 0x50da27 0x5124bd 0x5124ab 0x5bc009 0x5d343b 0x5d2750 0x139f08f 0x13a0c8a 0x498401 # 0x4901c4 internal/poll.runtime_pollWait+0x84 runtime/netpoll.go:351 # 0x50da26 internal/poll.(*pollDesc).wait+0x26 internal/poll/fd_poll_runtime.go:84 # 0x5124bc internal/poll.(*pollDesc).waitRead+0x27c internal/poll/fd_poll_runtime.go:89 # 0x5124aa internal/poll.(*FD).Accept+0x26a internal/poll/fd_unix.go:618 # 0x5bc008 net.(*netFD).accept+0x28 net/fd_unix.go:149 # 0x5d343a net.(*TCPListener).accept+0x1a net/tcpsock_posix.go:159 # 0x5d274f net.(*TCPListener).Accept+0x2f net/tcpsock.go:387 # 0x139f08e github.com/FerretDB/FerretDB/internal/clientconn.acceptLoop+0x6e github.com/FerretDB/FerretDB/internal/clientconn/listener.go:224 # 0x13a0c89 github.com/FerretDB/FerretDB/internal/clientconn.(*Listener).Run.func1+0x69 github.com/FerretDB/FerretDB/internal/clientconn/listener.go:166 1 @ 0x490fca 0x44fb77 0x4901c5 0x50da27 0x5124bd 0x5124ab 0x5bc009 0x5d343b 0x5d2750 0xb02199 0x14e2e6a 0x498401 # 0x4901c4 internal/poll.runtime_pollWait+0x84 runtime/netpoll.go:351 # 0x50da26 internal/poll.(*pollDesc).wait+0x26 internal/poll/fd_poll_runtime.go:84 # 0x5124bc internal/poll.(*pollDesc).waitRead+0x27c internal/poll/fd_poll_runtime.go:89 # 0x5124aa internal/poll.(*FD).Accept+0x26a internal/poll/fd_unix.go:618 # 0x5bc008 net.(*netFD).accept+0x28 net/fd_unix.go:149 # 0x5d343a net.(*TCPListener).accept+0x1a net/tcpsock_posix.go:159 # 0x5d274f net.(*TCPListener).Accept+0x2f net/tcpsock.go:387 # 0xb02198 net/http.(*Server).Serve+0x378 net/http/server.go:3551 # 0x14e2e69 github.com/FerretDB/FerretDB/internal/util/debug.(*Handler).Serve.func2+0x49 github.com/FerretDB/FerretDB/internal/util/debug/debug.go:319 1 @ 0x490fca 0x469137 0x10c6e11 0x498401 # 0x10c6e10 github.com/FerretDB/FerretDB/internal/clientconn/cursor.(*Registry).NewCursor.func1+0xb0 github.com/FerretDB/FerretDB/internal/clientconn/cursor/registry.go:159 1 @ 0x490fca 0x469137 0x120c27a 0x12507c9 0x498401 # 0x120c279 github.com/FerretDB/FerretDB/internal/handler.(*Handler).runCappedCleanup+0x1d9 github.com/FerretDB/FerretDB/internal/handler/handler.go:424 # 0x12507c8 github.com/FerretDB/FerretDB/internal/handler.New.func1+0x48 github.com/FerretDB/FerretDB/internal/handler/handler.go:231 1 @ 0x490fca 0x469137 0x120c5fa 0x1250709 0x498401 # 0x120c5f9 github.com/FerretDB/FerretDB/internal/handler.(*Handler).runTTLCleanup+0x1d9 github.com/FerretDB/FerretDB/internal/handler/handler.go:450 # 0x1250708 github.com/FerretDB/FerretDB/internal/handler.New.func2+0x48 github.com/FerretDB/FerretDB/internal/handler/handler.go:239 1 @ 0x490fca 0x469137 0x12392b6 0x12377b6 0x1250402 0x139e130 0x139d77a 0x139c705 0x13a12ff 0x498401 # 0x12392b5 github.com/FerretDB/FerretDB/internal/handler.(*Handler).awaitData+0x3b5 github.com/FerretDB/FerretDB/internal/handler/msg_getmore.go:394 # 0x12377b5 github.com/FerretDB/FerretDB/internal/handler.(*Handler).MsgGetMore+0x1235 github.com/FerretDB/FerretDB/internal/handler/msg_getmore.go:252 # 0x1250401 github.com/FerretDB/FerretDB/internal/handler.(*Handler).initCommands.func2+0x61 github.com/FerretDB/FerretDB/internal/handler/commands.go:369 # 0x139e12f github.com/FerretDB/FerretDB/internal/clientconn.(*conn).handleOpMsg+0x6f github.com/FerretDB/FerretDB/internal/clientconn/conn.go:583 # 0x139d779 github.com/FerretDB/FerretDB/internal/clientconn.(*conn).route+0x6d9 github.com/FerretDB/FerretDB/internal/clientconn/conn.go:436 # 0x139c704 github.com/FerretDB/FerretDB/internal/clientconn.(*conn).run+0xde4 github.com/FerretDB/FerretDB/internal/clientconn/conn.go:286 # 0x13a12fe github.com/FerretDB/FerretDB/internal/clientconn.acceptLoop.func1+0x57e github.com/FerretDB/FerretDB/internal/clientconn/listener.go:294 1 @ 0x490fca 0x469137 0x124f0a6 0x1250649 0x498401 # 0x124f0a5 github.com/FerretDB/FerretDB/internal/handler.(*Handler).runSelfRegulation+0x265 github.com/FerretDB/FerretDB/internal/handler/selfregulate.go:224 # 0x1250648 github.com/FerretDB/FerretDB/internal/handler.New.func3+0x48 github.com/FerretDB/FerretDB/internal/handler/handler.go:247 1 @ 0x490fca 0x469137 0x14cd3a7 0x498401 # 0x14cd3a6 github.com/arl/statsviz.(*Server).init.func1+0x126 github.com/arl/statsviz@v0.8.2/statsviz.go:147 1 @ 0x490fca 0x469137 0x59f4dc 0x498401 # 0x59f4db os/signal.NotifyContext.func1+0x7b os/signal/signal.go:304 1 @ 0x4bb925 0x4b9938 0x50ea14 0x50e9ff 0x50e941 0x5ba365 0x5c9ec5 0xaf6df2 0x498401 # 0x4bb924 syscall.Syscall+0x24 syscall/syscall_linux.go:74 # 0x4b9937 syscall.read+0x37 syscall/zsyscall_linux_amd64.go:736 # 0x50ea13 syscall.Read+0x213 syscall/syscall_unix.go:183 # 0x50e9fe internal/poll.ignoringEINTRIO+0x1fe internal/poll/fd_unix.go:743 # 0x50e940 internal/poll.(*FD).Read+0x140 internal/poll/fd_unix.go:166 # 0x5ba364 net.(*netFD).Read+0x24 net/fd_posix.go:68 # 0x5c9ec4 net.(*conn).Read+0x44 net/net.go:196 # 0xaf6df1 net/http.(*connReader).backgroundRead+0x31 net/http/server.go:746