ebfd0967c1
gates / gates (push) Failing after 12s
Two whole_guest_backup_failed alerts at 04:30 and 04:32 CEST were one incident, and not on either customer box: ep0's proxmox-backup-proxy was active, holding its listening socket, and accepting nothing. Root cause: accept() returning EMFILE. The process held exactly 1024 fds -- its systemd-default soft RLIMIT_NOFILE -- of which 1016 were sockets and 547 connections sat in CLOSE-WAIT. The 1024-deep accept backlog had overflowed (Recv-Q 1025), so every client timed out. It was wedged from its own loopback too, which is what moved this from a network problem to a process problem. Fed by ~85k requests/day (a flat 3,538/hour) against an endpoint written to weekly, that leak reached the ceiling in 14 days of uptime. Fix: LimitNOFILE=65536 drop-ins for both PBS units, restart, verified from both boxes (200 in ~0.1s, felhom-pbs active), then re-drove the missed backups through the product path -- POST /backup?target=felhom-pbs on each agent's local API, not a hand-run vzdump. demo-felhom ct/9201/2026-08-18T03:57:43Z 4.10 GB 36.4s demo-hp ct/9201/2026-08-18T03:58:43Z 4.29 GB 41.5s Both host reports now carry felhom-pbs success=true, so the hub is green on the evidence rather than on a restart having been performed. No data lost, no backup skipped: the daily local tier was never affected and the PBS tier is weekly, so the window cost exactly one attempt. Evidence copied off ep0 BEFORE the restart, per standing rule 5. Filed: R-336 (the ~1 req/s poll rate is the real defect; the raised ceiling is mitigation, not a cure), R-337 (a status endpoint that trailed its own artifact by minutes then caught up -- WATCHING, downgraded from the defect I first wrote, because it self-corrected), R-338 (demo-hp is not on the R-50 island at all and nodes.md says it is; its local API is bound to the customer LAN). R-334 updated: still open, now one version wider (controller 0.216.0 vs golden 0.214.0). golden-currency is the only failing gate and is inherited -- it reads files this session did not touch -- so this push used --no-verify, stated per .claude/rules/gates.md. Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_016p1PTCzb8rF5G9Aa1qhpBN
29 lines
953 B
Plaintext
29 lines
953 B
Plaintext
### date
|
|
Tue Aug 18 03:54:48 UTC 2026
|
|
### ss -lnt 8007
|
|
State Recv-Q Send-Q Local Address:Port Peer Address:Port
|
|
LISTEN 1025 1024 *:8007 *:*
|
|
### socket states
|
|
543 CLOSE-WAIT
|
|
1011 ESTAB
|
|
1 LISTEN
|
|
### fd count
|
|
1024
|
|
### fd types
|
|
1016 socket:anon
|
|
3 anon_inode:anon
|
|
1 0
|
|
1 /var/log/proxmox-backup/api/auth.log
|
|
1 /var/log/proxmox-backup/api/access.log
|
|
1 /var/lib/proxmox-backup/rrdb/rrd.journal-6a834fcb
|
|
1 /mnt/pbs-datastore/.lock
|
|
1 /dev/null
|
|
### limits
|
|
Max open files 1024 524288 files
|
|
### versions
|
|
proxmox-backup-server 4.2.5-1 running version: 4.2.2
|
|
### uptime
|
|
03:54:48 up 14 days, 16:41, 1 user, load average: 1.76, 1.88, 1.87
|
|
### last served request
|
|
::ffff:10.77.0.2 - felhom@pbs!demo-felhom [17/08/2026:18:15:32 +0000] "GET /api2/json/admin/datastore/felhom-offsite/snapshots?ns=demo-felhom" 400 27 Go-http-client/1.1
|