Public issue detail

Runaway CPU investigation for postgres: busy poll at psi_task_switch

postgres is stuck in a likely busy poll loop: 25.00% of sampled CPU passed through psi_task_switch, with repeated thread backtraces show 1 thread(s) around 0x00007f2f1a25e687 in __GI__IO_flush_all () from target:<path>.

highsource: linuxscore: 106reports: 1

Last seen: 2026-10-16 06:35 UTC. Public JSON: /v1/issues/01a1383d-aefb-7940-ab82-04e5a3259603

Technical snapshot

This is the clearest retained userspace thread cluster Fixer captured while the process was spinning.

Representative thread backtrace

  • Command: /usr/lib/postgresql/16/bin/postgres -D /tmp/postgis-pg16.jNTyRG/data -F -h -p 23091 -k /tmp/postgis-pg16.jNTyRG/socket -c fsync=off -c full_page_writes=off -c synchronous_commit=off
  • Why Fixer classified it this way: The trace repeatedly returns to a poll-family syscall without meaningful blocking, which suggests a busy event-loop wakeup.
  • Thread summary: thread backtraces show 1 thread(s) around 0x00007f2f1a25e687 in __GI__IO_flush_all () from target:<path>
  • Contention signals: event-loop-wakeups, gdb-stderr: gdb: warning: Couldn't determine a path for the index cache directory. warning: Target and debugger are in different PID namespaces; thread lists and other data are likely unreliable. Connect to gdbserver inside the container. warning: Expected absolute pathname for libpthread in the inferior, but got target:<path> warning: Unable to find libthread_db matching inferior's thread library, thread debugging will not be available.
  • Repeated loop: epoll_wait
  • Top syscalls: epoll_wait x1
  • Kernel: 7.1.8+deb14.1-amd64
  • Distribution: debian
0x00007f2f1a25e687 in __GI__IO_flush_all () from target:<path>
0x00007f2f1a25e6ad in __GI__IO_flush_all () from target:<path>
0x00007f2f1a2dfa6d in epoll_wait () from target:<path>
0x000056036d0a7f5b in WaitEventSetWait ()
0x000056036d040745 in ?? ()
0x000056036d04347c in PostmasterMain ()
0x000056036cd684ec in main ()

Possible duplicates

These are suggestions based on sanitized trigram similarity plus structured fields like package, subsystem, classification, and wait site. They are not auto-merged.

postgres is stuck in a likely busy poll loop: 7.33% of sampled CPU passed through __pte_offset_map_lock, with repeated thread backtraces show 1 thread(s) around 0x00007f322d29a7d2 in ?? () from target:<path>.

highpackage: postgresql-18source: postgresql-18score: 106reports: 2successful triagesimilarity: 92%

Why this looks related: same classification, same subsystem, same target, same wait site

Last seen: 2026-10-22 19:58 UTC. Public page: /issues/019e50c1-4b02-72f3-8479-d67944473579. Public JSON: /v1/issues/019e50c1-4b02-72f3-8479-d67944473579

postgres is stuck in a likely busy poll loop: 100.00% of sampled CPU passed through PreCommit_on_commit_actions, with repeated thread backtraces show 1 thread(s) around 0x00007f322d29a7d2 in ?? () from target:<path>.

highpackage: postgresql-18source: postgresql-18score: 106reports: 2similarity: 92%

Why this looks related: same classification, same subsystem, same target, same wait site

Last seen: 2026-10-22 20:40 UTC. Public page: /issues/019e5105-5337-7b80-ade1-c7185ee1c6f2. Public JSON: /v1/issues/019e5105-5337-7b80-ade1-c7185ee1c6f2

postgres is stuck in a likely busy poll loop: 9.57% of sampled CPU passed through sqlite3VdbeExec, with repeated thread backtraces show 1 thread(s) around 0x00007f3dd70ac60d in select () from target:<path>.

highscore: 106reports: 1similarity: 83%

Why this looks related: same classification, same subsystem, same target

Last seen: 2026-10-02 18:03 UTC. Public page: /issues/019f9de5-ae93-70a0-b43c-cc5fcfe33721. Public JSON: /v1/issues/019f9de5-ae93-70a0-b43c-cc5fcfe33721

postgres is stuck in a likely socket churn loop: 1.46% of sampled CPU passed through next_uptodate_folio, with repeated thread backtraces show 1 thread(s) around 0x00007f82fc478687 in __GI__IO_flush_all () from target:<path>.

highpackage: postgresql-18source: linuxscore: 106reports: 1similarity: 79%

Why this looks related: same source package, same subsystem, same target, same wait site

Last seen: 2026-10-16 07:15 UTC. Public page: /issues/019f777c-b6c6-73c1-9b2a-9e06e91c6ca9. Public JSON: /v1/issues/019f777c-b6c6-73c1-9b2a-9e06e91c6ca9

postgres is stuck in a likely file not found retry loop: 4.33% of sampled CPU passed through next_uptodate_folio, with repeated thread backtraces show 1 thread(s) around 0x00007f6114aba687 in __GI__IO_flush_all () from target:<path>.

highpackage: postgresql-14source: linuxscore: 106reports: 3successful triagesimilarity: 77%

Why this looks related: same source package, same subsystem, same target, same wait site

Last seen: 2026-10-12 08:43 UTC. Public page: /issues/019d3a17-b958-7a60-86fd-5304e697f42c. Public JSON: /v1/issues/019d3a17-b958-7a60-86fd-5304e697f42c

postgres is stuck in a likely file not found retry loop: 1.84% of sampled CPU passed through malloc, with repeated thread backtraces show 1 thread(s) around 0x00007f85b973a687 in __GI__IO_flush_all () from target:<path>.

highscore: 106reports: 1similarity: 73%

Why this looks related: same subsystem, same target, same wait site

Last seen: 2026-10-13 06:02 UTC. Public page: /issues/01a133a7-70dc-73b3-b590-4cd62ec20ac9. Public JSON: /v1/issues/01a133a7-70dc-73b3-b590-4cd62ec20ac9

Published attempts

No public attempts have been published for this issue yet.